1 /* A Bison parser, made by GNU Bison 3.0.2.  */
2 
3 /* Bison implementation for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2013 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.2"
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 "/home/buildbot/git/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 #include "sql_type_json.h"
119 
120 /* this is to get the bison compilation windows warnings out */
121 #ifdef _MSC_VER
122 /* warning C4065: switch statement contains 'default' but no 'case' labels */
123 /* warning C4102: 'yyexhaustedlab': unreferenced label */
124 #pragma warning (disable : 4065 4102)
125 #endif
126 #ifdef __GNUC__
127 #pragma GCC diagnostic ignored "-Wunused-label" /* yyexhaustedlab: */
128 #endif
129 
130 int yylex(void *yylval, void *yythd);
131 
132 #define yyoverflow(A,B,C,D,E,F)               \
133   {                                           \
134     size_t val= *(F);                         \
135     if (unlikely(my_yyoverflow((B), (D), &val))) \
136     {                                         \
137       yyerror(thd, (char*) (A));              \
138       return 2;                               \
139     }                                         \
140     else                                      \
141     {                                         \
142       *(F)= (YYSIZE_T)val;                    \
143     }                                         \
144   }
145 
146 #define MYSQL_YYABORT                         \
147   do                                          \
148   {                                           \
149     LEX::cleanup_lex_after_parse_error(thd);  \
150     YYABORT;                                  \
151   } while (0)
152 
153 #define MYSQL_YYABORT_UNLESS(A)                  \
154   if (unlikely(!(A)))                            \
155   {                                              \
156     thd->parse_error();                          \
157     MYSQL_YYABORT;                               \
158   }
159 
160 #define my_yyabort_error(A)                      \
161   do { my_error A; MYSQL_YYABORT; } while(0)
162 
163 #ifndef DBUG_OFF
164 #define YYDEBUG 1
165 #else
166 #define YYDEBUG 0
167 #endif
168 
169 
escape(THD * thd)170 static Item* escape(THD *thd)
171 {
172   thd->lex->escape_used= false;
173   const char *esc= thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES ? "" : "\\";
174   return new (thd->mem_root) Item_string_ascii(thd, esc, MY_TEST(esc[0]));
175 }
176 
177 
178 /**
179   @brief Bison callback to report a syntax/OOM error
180 
181   This function is invoked by the bison-generated parser
182   when a syntax error, a parse error or an out-of-memory
183   condition occurs. This function is not invoked when the
184   parser is requested to abort by semantic action code
185   by means of YYABORT or YYACCEPT macros. This is why these
186   macros should not be used (use MYSQL_YYABORT/MYSQL_YYACCEPT
187   instead).
188 
189   The parser will abort immediately after invoking this callback.
190 
191   This function is not for use in semantic actions and is internal to
192   the parser, as it performs some pre-return cleanup.
193   In semantic actions, please use thd->parse_error() or my_error to
194   push an error into the error stack and MYSQL_YYABORT
195   to abort from the parser.
196 */
197 
MYSQLerror(THD * thd,const char * s)198 void MYSQLerror(THD *thd, const char *s)
199 {
200   /*
201     Restore the original LEX if it was replaced when parsing
202     a stored procedure. We must ensure that a parsing error
203     does not leave any side effects in the THD.
204   */
205   LEX::cleanup_lex_after_parse_error(thd);
206 
207   /* "parse error" changed into "syntax error" between bison 1.75 and 1.875 */
208   if (strcmp(s,"parse error") == 0 || strcmp(s,"syntax error") == 0)
209     s= ER_THD(thd, ER_SYNTAX_ERROR);
210   thd->parse_error(s, 0);
211 }
212 
213 
214 #ifndef DBUG_OFF
turn_parser_debug_on()215 void turn_parser_debug_on()
216 {
217   /*
218      MYSQLdebug is in sql/sql_yacc.cc, in bison generated code.
219      Turning this option on is **VERY** verbose, and should be
220      used when investigating a syntax error problem only.
221 
222      The syntax to run with bison traces is as follows :
223      - Starting a server manually :
224        mysqld --debug-dbug="d,parser_debug" ...
225      - Running a test :
226        mysql-test-run.pl --mysqld="--debug-dbug=d,parser_debug" ...
227 
228      The result will be in the process stderr (var/log/master.err)
229    */
230 
231   extern int yydebug;
232   yydebug= 1;
233 }
234 #endif
235 
236 
237 /**
238   Helper action for a case expression statement (the expr in 'CASE expr').
239   This helper is used for 'searched' cases only.
240   @param lex the parser lex context
241   @param expr the parsed expression
242   @return 0 on success
243 */
244 
case_stmt_action_expr(Item * expr)245 int LEX::case_stmt_action_expr(Item* expr)
246 {
247   int case_expr_id= spcont->register_case_expr();
248   sp_instr_set_case_expr *i;
249 
250   if (spcont->push_case_expr_id(case_expr_id))
251     return 1;
252 
253   i= new (thd->mem_root)
254     sp_instr_set_case_expr(sphead->instructions(), spcont, case_expr_id, expr,
255                            this);
256 
257   sphead->add_cont_backpatch(i);
258   return sphead->add_instr(i);
259 }
260 
261 /**
262   Helper action for a case when condition.
263   This helper is used for both 'simple' and 'searched' cases.
264   @param lex the parser lex context
265   @param when the parsed expression for the WHEN clause
266   @param simple true for simple cases, false for searched cases
267 */
268 
case_stmt_action_when(Item * when,bool simple)269 int LEX::case_stmt_action_when(Item *when, bool simple)
270 {
271   uint ip= sphead->instructions();
272   sp_instr_jump_if_not *i;
273   Item_case_expr *var;
274   Item *expr;
275 
276   if (simple)
277   {
278     var= new (thd->mem_root)
279          Item_case_expr(thd, spcont->get_current_case_expr_id());
280 
281 #ifdef DBUG_ASSERT_EXISTS
282     if (var)
283     {
284       var->m_sp= sphead;
285     }
286 #endif
287 
288     expr= new (thd->mem_root) Item_func_eq(thd, var, when);
289     i= new (thd->mem_root) sp_instr_jump_if_not(ip, spcont, expr, this);
290   }
291   else
292     i= new (thd->mem_root) sp_instr_jump_if_not(ip, spcont, when, this);
293 
294   /*
295     BACKPATCH: Registering forward jump from
296     "case_stmt_action_when" to "case_stmt_action_then"
297     (jump_if_not from instruction 2 to 5, 5 to 8 ... in the example)
298   */
299 
300   return
301     !MY_TEST(i) ||
302     sphead->push_backpatch(thd, i, spcont->push_label(thd, &empty_clex_str, 0)) ||
303     sphead->add_cont_backpatch(i) ||
304     sphead->add_instr(i);
305 }
306 
307 /**
308   Helper action for a case then statements.
309   This helper is used for both 'simple' and 'searched' cases.
310   @param lex the parser lex context
311 */
312 
case_stmt_action_then()313 int LEX::case_stmt_action_then()
314 {
315   uint ip= sphead->instructions();
316   sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(ip, spcont);
317   if (!MY_TEST(i) || sphead->add_instr(i))
318     return 1;
319 
320   /*
321     BACKPATCH: Resolving forward jump from
322     "case_stmt_action_when" to "case_stmt_action_then"
323     (jump_if_not from instruction 2 to 5, 5 to 8 ... in the example)
324   */
325 
326   sphead->backpatch(spcont->pop_label());
327 
328   /*
329     BACKPATCH: Registering forward jump from
330     "case_stmt_action_then" to after END CASE
331     (jump from instruction 4 to 12, 7 to 12 ... in the example)
332   */
333 
334   return sphead->push_backpatch(thd, i, spcont->last_label());
335 }
336 
337 
338 /**
339   Helper action for a SET statement.
340   Used to push a system variable into the assignment list.
341 
342   @param tmp      the system variable with base name
343   @param var_type the scope of the variable
344   @param val      the value being assigned to the variable
345 
346   @return TRUE if error, FALSE otherwise.
347 */
348 
349 bool
set_system_variable(enum enum_var_type var_type,sys_var * sysvar,const LEX_CSTRING * base_name,Item * val)350 LEX::set_system_variable(enum enum_var_type var_type,
351                          sys_var *sysvar, const LEX_CSTRING *base_name,
352                          Item *val)
353 {
354   set_var *setvar;
355 
356   /* No AUTOCOMMIT from a stored function or trigger. */
357   if (spcont && sysvar == Sys_autocommit_ptr)
358     sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
359 
360   if (val && val->type() == Item::FIELD_ITEM &&
361       ((Item_field*)val)->table_name)
362   {
363     my_error(ER_WRONG_TYPE_FOR_VAR, MYF(0), sysvar->name.str);
364     return TRUE;
365   }
366 
367   if (!(setvar= new (thd->mem_root) set_var(thd, var_type, sysvar,
368                                             base_name, val)))
369     return TRUE;
370 
371   return var_list.push_back(setvar, thd->mem_root);
372 }
373 
374 
375 /**
376   Helper action for a SET statement.
377   Used to SET a field of NEW row.
378 
379   @param name     the field name
380   @param val      the value being assigned to the row
381 
382   @return TRUE if error, FALSE otherwise.
383 */
384 
set_trigger_new_row(const LEX_CSTRING * name,Item * val)385 bool LEX::set_trigger_new_row(const LEX_CSTRING *name, Item *val)
386 {
387   Item_trigger_field *trg_fld;
388   sp_instr_set_trigger_field *sp_fld;
389 
390   /* QQ: Shouldn't this be field's default value ? */
391   if (! val)
392     val= new (thd->mem_root) Item_null(thd);
393 
394   DBUG_ASSERT(trg_chistics.action_time == TRG_ACTION_BEFORE &&
395               (trg_chistics.event == TRG_EVENT_INSERT ||
396                trg_chistics.event == TRG_EVENT_UPDATE));
397 
398   trg_fld= new (thd->mem_root)
399             Item_trigger_field(thd, current_context(),
400                                Item_trigger_field::NEW_ROW,
401                                name, UPDATE_ACL, FALSE);
402 
403   if (unlikely(trg_fld == NULL))
404     return TRUE;
405 
406   sp_fld= new (thd->mem_root)
407         sp_instr_set_trigger_field(sphead->instructions(),
408                                    spcont, trg_fld, val, this);
409 
410   if (unlikely(sp_fld == NULL))
411     return TRUE;
412 
413   /*
414     Let us add this item to list of all Item_trigger_field
415     objects in trigger.
416   */
417   trg_table_fields.link_in_list(trg_fld, &trg_fld->next_trg_field);
418 
419   return sphead->add_instr(sp_fld);
420 }
421 
422 
423 /**
424   Create an object to represent a SP variable in the Item-hierarchy.
425 
426   @param  name        The SP variable name.
427   @param  spvar       The SP variable (optional).
428   @param  start_in_q  Start position of the SP variable name in the query.
429   @param  end_in_q    End position of the SP variable name in the query.
430 
431   @remark If spvar is not specified, the name is used to search for the
432           variable in the parse-time context. If the variable does not
433           exist, a error is set and NULL is returned to the caller.
434 
435   @return An Item_splocal object representing the SP variable, or NULL on error.
436 */
437 Item_splocal*
create_item_for_sp_var(const Lex_ident_cli_st * cname,sp_variable * spvar)438 LEX::create_item_for_sp_var(const Lex_ident_cli_st *cname, sp_variable *spvar)
439 {
440   const Sp_rcontext_handler *rh;
441   Item_splocal *item;
442   const char *start_in_q= cname->pos();
443   const char *end_in_q= cname->end();
444   uint pos_in_q, len_in_q;
445   Lex_ident_sys name(thd, cname);
446 
447   if (name.is_null())
448     return NULL;  // EOM
449 
450   /* If necessary, look for the variable. */
451   if (spcont && !spvar)
452     spvar= find_variable(&name, &rh);
453 
454   if (!spvar)
455   {
456     my_error(ER_SP_UNDECLARED_VAR, MYF(0), name.str);
457     return NULL;
458   }
459 
460   DBUG_ASSERT(spcont && spvar);
461 
462   /* Position and length of the SP variable name in the query. */
463   pos_in_q= (uint)(start_in_q - sphead->m_tmp_query);
464   len_in_q= (uint)(end_in_q - start_in_q);
465 
466   item= new (thd->mem_root)
467     Item_splocal(thd, rh, &name, spvar->offset, spvar->type_handler(),
468                  pos_in_q, len_in_q);
469 
470 #ifdef DBUG_ASSERT_EXISTS
471   if (item)
472     item->m_sp= sphead;
473 #endif
474 
475   return item;
476 }
477 
478 /**
479   Helper to resolve the SQL:2003 Syntax exception 1) in <in predicate>.
480   See SQL:2003, Part 2, section 8.4 <in predicate>, Note 184, page 383.
481   This function returns the proper item for the SQL expression
482   <code>left [NOT] IN ( expr )</code>
483   @param thd the current thread
484   @param left the in predicand
485   @param equal true for IN predicates, false for NOT IN predicates
486   @param expr first and only expression of the in value list
487   @return an expression representing the IN predicate.
488 */
handle_sql2003_note184_exception(THD * thd,Item * left,bool equal,Item * expr)489 Item* handle_sql2003_note184_exception(THD *thd, Item* left, bool equal,
490                                        Item *expr)
491 {
492   /*
493     Relevant references for this issue:
494     - SQL:2003, Part 2, section 8.4 <in predicate>, page 383,
495     - SQL:2003, Part 2, section 7.2 <row value expression>, page 296,
496     - SQL:2003, Part 2, section 6.3 <value expression primary>, page 174,
497     - SQL:2003, Part 2, section 7.15 <subquery>, page 370,
498     - SQL:2003 Feature F561, "Full value expressions".
499 
500     The exception in SQL:2003 Note 184 means:
501     Item_singlerow_subselect, which corresponds to a <scalar subquery>,
502     should be re-interpreted as an Item_in_subselect, which corresponds
503     to a <table subquery> when used inside an <in predicate>.
504 
505     Our reading of Note 184 is reccursive, so that all:
506     - IN (( <subquery> ))
507     - IN ((( <subquery> )))
508     - IN '('^N <subquery> ')'^N
509     - etc
510     should be interpreted as a <table subquery>, no matter how deep in the
511     expression the <subquery> is.
512   */
513 
514   Item *result;
515 
516   DBUG_ENTER("handle_sql2003_note184_exception");
517 
518   if (expr->type() == Item::SUBSELECT_ITEM)
519   {
520     Item_subselect *expr2 = (Item_subselect*) expr;
521 
522     if (expr2->substype() == Item_subselect::SINGLEROW_SUBS)
523     {
524       Item_singlerow_subselect *expr3 = (Item_singlerow_subselect*) expr2;
525       st_select_lex *subselect;
526 
527       /*
528         Implement the mandated change, by altering the semantic tree:
529           left IN Item_singlerow_subselect(subselect)
530         is modified to
531           left IN (subselect)
532         which is represented as
533           Item_in_subselect(left, subselect)
534       */
535       subselect= expr3->invalidate_and_restore_select_lex();
536       result= new (thd->mem_root) Item_in_subselect(thd, left, subselect);
537 
538       if (! equal)
539         result = negate_expression(thd, result);
540 
541       DBUG_RETURN(result);
542     }
543   }
544 
545   if (equal)
546     result= new (thd->mem_root) Item_func_eq(thd, left, expr);
547   else
548     result= new (thd->mem_root) Item_func_ne(thd, left, expr);
549 
550   DBUG_RETURN(result);
551 }
552 
553 /**
554   Create a separate LEX for each assignment if in SP.
555 
556   If we are in SP we want have own LEX for each assignment.
557   This is mostly because it is hard for several sp_instr_set
558   and sp_instr_set_trigger instructions share one LEX.
559   (Well, it is theoretically possible but adds some extra
560   overhead on preparation for execution stage and IMO less
561   robust).
562 
563   QQ: May be we should simply prohibit group assignments in SP?
564 
565   @see sp_create_assignment_instr
566 
567   @param thd           Thread context
568   @param no_lookahead  True if the parser has no lookahead
569 */
570 
sp_create_assignment_lex(THD * thd,bool no_lookahead)571 bool sp_create_assignment_lex(THD *thd, bool no_lookahead)
572 {
573   LEX *lex= thd->lex;
574 
575   if (lex->sphead)
576   {
577     Lex_input_stream *lip= &thd->m_parser_state->m_lip;
578     LEX *old_lex= lex;
579     lex->sphead->reset_lex(thd);
580     lex= thd->lex;
581 
582     /* Set new LEX as if we at start of set rule. */
583     lex->sql_command= SQLCOM_SET_OPTION;
584     if (lex->main_select_push())
585       return true;
586     mysql_init_select(lex);
587     lex->var_list.empty();
588     lex->autocommit= 0;
589     /* get_ptr() is only correct with no lookahead. */
590     if (no_lookahead)
591         lex->sphead->m_tmp_query= lip->get_ptr();
592     else
593         lex->sphead->m_tmp_query= lip->get_tok_end();
594     /* Inherit from outer lex. */
595     lex->option_type= old_lex->option_type;
596   }
597   return false;
598 }
599 
600 
601 /**
602   Create a SP instruction for a SET assignment.
603 
604   @see sp_create_assignment_lex
605 
606   @param thd           Thread context
607   @param no_lookahead  True if the parser has no lookahead
608 
609   @return false if success, true otherwise.
610 */
611 
sp_create_assignment_instr(THD * thd,bool no_lookahead)612 bool sp_create_assignment_instr(THD *thd, bool no_lookahead)
613 {
614   LEX *lex= thd->lex;
615 
616   if (lex->sphead)
617   {
618     if (!lex->var_list.is_empty())
619     {
620       /*
621         We have assignment to user or system variable or
622         option setting, so we should construct sp_instr_stmt
623         for it.
624       */
625       Lex_input_stream *lip= &thd->m_parser_state->m_lip;
626 
627       /*
628         Extract the query statement from the tokenizer.  The
629         end is either lip->ptr, if there was no lookahead,
630         lip->tok_end otherwise.
631       */
632       static const LEX_CSTRING setsp= { STRING_WITH_LEN("SET ") };
633       const char *qend= no_lookahead ? lip->get_ptr() : lip->get_tok_end();
634       Lex_cstring qbuf(lex->sphead->m_tmp_query, qend);
635       if (lex->new_sp_instr_stmt(thd, setsp, qbuf))
636         return true;
637     }
638     lex->pop_select();
639     if (lex->check_main_unit_semantics())
640     {
641       /*
642         "lex" can be referrenced by:
643         - sp_instr_set                          SET a= expr;
644         - sp_instr_set_row_field                SET r.a= expr;
645         - sp_instr_stmt (just generated above)  SET @a= expr;
646         In this case, "lex" is fully owned by sp_instr_xxx and it will
647         be deleted by the destructor ~sp_instr_xxx().
648         So we should remove "lex" from the stack sp_head::m_lex,
649         to avoid double free.
650         Note, in case "lex" is not owned by any sp_instr_xxx,
651         it's also safe to remove it from the stack right now.
652         So we can remove it unconditionally, without testing lex->sp_lex_in_use.
653       */
654       lex->sphead->restore_lex(thd);
655       return true;
656     }
657     enum_var_type inner_option_type= lex->option_type;
658     if (lex->sphead->restore_lex(thd))
659       return true;
660     /* Copy option_type to outer lex in case it has changed. */
661     thd->lex->option_type= inner_option_type;
662   }
663   return false;
664 }
665 
add_key_to_list(LEX_CSTRING * field_name,enum Key::Keytype type,bool check_exists)666 void LEX::add_key_to_list(LEX_CSTRING *field_name,
667                           enum Key::Keytype type, bool check_exists)
668 {
669   Key *key;
670   MEM_ROOT *mem_root= thd->mem_root;
671   key= new (mem_root)
672         Key(type, &null_clex_str, HA_KEY_ALG_UNDEF, false,
673              DDL_options(check_exists ?
674                          DDL_options::OPT_IF_NOT_EXISTS :
675                          DDL_options::OPT_NONE));
676   key->columns.push_back(new (mem_root) Key_part_spec(field_name, 0),
677                          mem_root);
678   alter_info.key_list.push_back(key, mem_root);
679 }
680 
add_alter_list(const char * name,Virtual_column_info * expr,bool exists)681 bool LEX::add_alter_list(const char *name, Virtual_column_info *expr,
682                          bool exists)
683 {
684   MEM_ROOT *mem_root= thd->mem_root;
685   Alter_column *ac= new (mem_root) Alter_column(name, expr, exists);
686   if (unlikely(ac == NULL))
687     return true;
688   alter_info.alter_list.push_back(ac, mem_root);
689   alter_info.flags|= ALTER_CHANGE_COLUMN_DEFAULT;
690   return false;
691 }
692 
init_last_field(Column_definition * field,const LEX_CSTRING * field_name,const CHARSET_INFO * cs)693 void LEX::init_last_field(Column_definition *field,
694                           const LEX_CSTRING *field_name,
695                           const CHARSET_INFO *cs)
696 {
697   last_field= field;
698 
699   field->field_name= *field_name;
700 
701   /* reset LEX fields that are used in Create_field::set_and_check() */
702   charset= cs;
703 }
704 
705 
set_bincmp(CHARSET_INFO * cs,bool bin)706 bool LEX::set_bincmp(CHARSET_INFO *cs, bool bin)
707 {
708   /*
709      if charset is NULL - we're parsing a field declaration.
710      we cannot call find_bin_collation for a field here, because actual
711      field charset is determined in get_sql_field_charset() much later.
712      so we only set a flag.
713   */
714   if (!charset)
715   {
716     charset= cs;
717     last_field->flags|= bin ? BINCMP_FLAG : 0;
718     return false;
719   }
720 
721   charset= bin ? find_bin_collation(cs ? cs : charset)
722                :                    cs ? cs : charset;
723   return charset == NULL;
724 }
725 
726 #define bincmp_collation(X,Y)           \
727   do                                    \
728   {                                     \
729      if (unlikely(Lex->set_bincmp(X,Y))) \
730        MYSQL_YYABORT;                   \
731   } while(0)
732 
733 
add_virtual_expression(THD * thd,Item * expr)734 Virtual_column_info *add_virtual_expression(THD *thd, Item *expr)
735 {
736   Virtual_column_info *v= new (thd->mem_root) Virtual_column_info();
737   if (unlikely(!v))
738      return 0;
739    v->expr= expr;
740    v->utf8= 0;  /* connection charset */
741    return v;
742 }
743 
744 
745 
746 #line 747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:339  */
747 
748 # ifndef YY_NULLPTR
749 #  if defined __cplusplus && 201103L <= __cplusplus
750 #   define YY_NULLPTR nullptr
751 #  else
752 #   define YY_NULLPTR 0
753 #  endif
754 # endif
755 
756 /* Enabling verbose error messages.  */
757 #ifdef YYERROR_VERBOSE
758 # undef YYERROR_VERBOSE
759 # define YYERROR_VERBOSE 1
760 #else
761 # define YYERROR_VERBOSE 0
762 #endif
763 
764 /* In a future release of Bison, this section will be replaced
765    by #include "sql_yacc.hh".  */
766 #ifndef YY_MYSQL_HOME_BUILDBOT_GIT_MKDIST_SQL_SQL_YACC_HH_INCLUDED
767 # define YY_MYSQL_HOME_BUILDBOT_GIT_MKDIST_SQL_SQL_YACC_HH_INCLUDED
768 /* Debug traces.  */
769 #ifndef YYDEBUG
770 # define YYDEBUG 0
771 #endif
772 #if YYDEBUG
773 extern int MYSQLdebug;
774 #endif
775 
776 /* Token type.  */
777 #ifndef YYTOKENTYPE
778 # define YYTOKENTYPE
779   enum yytokentype
780   {
781     ABORT_SYM = 258,
782     ACCESSIBLE_SYM = 259,
783     ADD = 260,
784     ALL = 261,
785     ALTER = 262,
786     ANALYZE_SYM = 263,
787     AND_AND_SYM = 264,
788     AND_SYM = 265,
789     AS = 266,
790     ASC = 267,
791     ASENSITIVE_SYM = 268,
792     BEFORE_SYM = 269,
793     BETWEEN_SYM = 270,
794     BIGINT = 271,
795     BINARY = 272,
796     BIN_NUM = 273,
797     BIT_AND = 274,
798     BIT_OR = 275,
799     BIT_XOR = 276,
800     BLOB_MARIADB_SYM = 277,
801     BLOB_ORACLE_SYM = 278,
802     BODY_ORACLE_SYM = 279,
803     BOTH = 280,
804     BY = 281,
805     CALL_SYM = 282,
806     CASCADE = 283,
807     CASE_SYM = 284,
808     CAST_SYM = 285,
809     CHANGE = 286,
810     CHAR_SYM = 287,
811     CHECK_SYM = 288,
812     COLLATE_SYM = 289,
813     CONDITION_SYM = 290,
814     CONSTRAINT = 291,
815     CONTINUE_MARIADB_SYM = 292,
816     CONTINUE_ORACLE_SYM = 293,
817     CONVERT_SYM = 294,
818     COUNT_SYM = 295,
819     CREATE = 296,
820     CROSS = 297,
821     CUME_DIST_SYM = 298,
822     CURDATE = 299,
823     CURRENT_USER = 300,
824     CURRENT_ROLE = 301,
825     CURSOR_SYM = 302,
826     CURTIME = 303,
827     DATABASE = 304,
828     DATABASES = 305,
829     DATE_ADD_INTERVAL = 306,
830     DATE_SUB_INTERVAL = 307,
831     DAY_HOUR_SYM = 308,
832     DAY_MICROSECOND_SYM = 309,
833     DAY_MINUTE_SYM = 310,
834     DAY_SECOND_SYM = 311,
835     DECIMAL_NUM = 312,
836     DECIMAL_SYM = 313,
837     DECLARE_MARIADB_SYM = 314,
838     DECLARE_ORACLE_SYM = 315,
839     DEFAULT = 316,
840     DELETE_DOMAIN_ID_SYM = 317,
841     DELETE_SYM = 318,
842     DENSE_RANK_SYM = 319,
843     DESC = 320,
844     DESCRIBE = 321,
845     DETERMINISTIC_SYM = 322,
846     DISTINCT = 323,
847     DIV_SYM = 324,
848     DOUBLE_SYM = 325,
849     DO_DOMAIN_IDS_SYM = 326,
850     DOT_DOT_SYM = 327,
851     DROP = 328,
852     DUAL_SYM = 329,
853     EACH_SYM = 330,
854     ELSE = 331,
855     ELSEIF_MARIADB_SYM = 332,
856     ELSIF_ORACLE_SYM = 333,
857     ENCLOSED = 334,
858     END_OF_INPUT = 335,
859     EQUAL_SYM = 336,
860     ESCAPED = 337,
861     EXCEPT_SYM = 338,
862     EXISTS = 339,
863     EXTRACT_SYM = 340,
864     FALSE_SYM = 341,
865     FETCH_SYM = 342,
866     FIRST_VALUE_SYM = 343,
867     FLOAT_NUM = 344,
868     FLOAT_SYM = 345,
869     FOREIGN = 346,
870     FOR_SYM = 347,
871     FOR_SYSTEM_TIME_SYM = 348,
872     FROM = 349,
873     FULLTEXT_SYM = 350,
874     GE = 351,
875     GOTO_ORACLE_SYM = 352,
876     GRANT = 353,
877     GROUP_SYM = 354,
878     GROUP_CONCAT_SYM = 355,
879     LAG_SYM = 356,
880     LEAD_SYM = 357,
881     HAVING = 358,
882     HEX_NUM = 359,
883     HEX_STRING = 360,
884     HOUR_MICROSECOND_SYM = 361,
885     HOUR_MINUTE_SYM = 362,
886     HOUR_SECOND_SYM = 363,
887     IDENT = 364,
888     IDENT_QUOTED = 365,
889     IF_SYM = 366,
890     IGNORE_DOMAIN_IDS_SYM = 367,
891     IGNORE_SYM = 368,
892     INDEX_SYM = 369,
893     INFILE = 370,
894     INNER_SYM = 371,
895     INOUT_SYM = 372,
896     INSENSITIVE_SYM = 373,
897     INSERT = 374,
898     INTERSECT_SYM = 375,
899     INTERVAL_SYM = 376,
900     INTO = 377,
901     INT_SYM = 378,
902     IN_SYM = 379,
903     IS = 380,
904     ITERATE_SYM = 381,
905     JOIN_SYM = 382,
906     KEYS = 383,
907     KEY_SYM = 384,
908     KILL_SYM = 385,
909     LE = 386,
910     LEADING = 387,
911     LEAVE_SYM = 388,
912     LEFT = 389,
913     LEFT_PAREN_ALT = 390,
914     LEFT_PAREN_WITH = 391,
915     LEFT_PAREN_LIKE = 392,
916     LEX_HOSTNAME = 393,
917     LIKE = 394,
918     LIMIT = 395,
919     LINEAR_SYM = 396,
920     LINES = 397,
921     LOAD = 398,
922     LOCATOR_SYM = 399,
923     LOCK_SYM = 400,
924     LONGBLOB = 401,
925     LONGTEXT = 402,
926     LONG_NUM = 403,
927     LONG_SYM = 404,
928     LOOP_SYM = 405,
929     LOW_PRIORITY = 406,
930     MASTER_SSL_VERIFY_SERVER_CERT_SYM = 407,
931     MATCH = 408,
932     MAX_SYM = 409,
933     MAXVALUE_SYM = 410,
934     MEDIAN_SYM = 411,
935     MEDIUMBLOB = 412,
936     MEDIUMINT = 413,
937     MEDIUMTEXT = 414,
938     MINUTE_MICROSECOND_SYM = 415,
939     MINUTE_SECOND_SYM = 416,
940     MIN_SYM = 417,
941     MODIFIES_SYM = 418,
942     MOD_SYM = 419,
943     MYSQL_CONCAT_SYM = 420,
944     NATURAL = 421,
945     NCHAR_STRING = 422,
946     NE = 423,
947     NEG = 424,
948     NOT2_SYM = 425,
949     NOT_SYM = 426,
950     NOW_SYM = 427,
951     NO_WRITE_TO_BINLOG = 428,
952     NTILE_SYM = 429,
953     NULL_SYM = 430,
954     NUM = 431,
955     NUMERIC_SYM = 432,
956     NTH_VALUE_SYM = 433,
957     ON = 434,
958     OPTIMIZE = 435,
959     OPTIONALLY = 436,
960     ORACLE_CONCAT_SYM = 437,
961     OR2_SYM = 438,
962     ORDER_SYM = 439,
963     OR_SYM = 440,
964     OTHERS_ORACLE_SYM = 441,
965     OUTER = 442,
966     OUTFILE = 443,
967     OUT_SYM = 444,
968     OVER_SYM = 445,
969     PACKAGE_ORACLE_SYM = 446,
970     PAGE_CHECKSUM_SYM = 447,
971     PARAM_MARKER = 448,
972     PARSE_VCOL_EXPR_SYM = 449,
973     PARTITION_SYM = 450,
974     PERCENT_ORACLE_SYM = 451,
975     PERCENT_RANK_SYM = 452,
976     PERCENTILE_CONT_SYM = 453,
977     PERCENTILE_DISC_SYM = 454,
978     PORTION_SYM = 455,
979     POSITION_SYM = 456,
980     PRECISION = 457,
981     PRIMARY_SYM = 458,
982     PROCEDURE_SYM = 459,
983     PURGE = 460,
984     RAISE_ORACLE_SYM = 461,
985     RANGE_SYM = 462,
986     RANK_SYM = 463,
987     READS_SYM = 464,
988     READ_SYM = 465,
989     READ_WRITE_SYM = 466,
990     REAL = 467,
991     RECURSIVE_SYM = 468,
992     REF_SYSTEM_ID_SYM = 469,
993     REFERENCES = 470,
994     REGEXP = 471,
995     RELEASE_SYM = 472,
996     RENAME = 473,
997     REPEAT_SYM = 474,
998     REPLACE = 475,
999     REQUIRE_SYM = 476,
1000     RESIGNAL_SYM = 477,
1001     RESTRICT = 478,
1002     RETURNING_SYM = 479,
1003     RETURN_MARIADB_SYM = 480,
1004     RETURN_ORACLE_SYM = 481,
1005     REVOKE = 482,
1006     RIGHT = 483,
1007     ROWS_SYM = 484,
1008     ROWTYPE_ORACLE_SYM = 485,
1009     ROW_NUMBER_SYM = 486,
1010     SECOND_MICROSECOND_SYM = 487,
1011     SELECT_SYM = 488,
1012     SENSITIVE_SYM = 489,
1013     SEPARATOR_SYM = 490,
1014     SERVER_OPTIONS = 491,
1015     SET = 492,
1016     SET_VAR = 493,
1017     SHIFT_LEFT = 494,
1018     SHIFT_RIGHT = 495,
1019     SHOW = 496,
1020     SIGNAL_SYM = 497,
1021     SMALLINT = 498,
1022     SPATIAL_SYM = 499,
1023     SPECIFIC_SYM = 500,
1024     SQLEXCEPTION_SYM = 501,
1025     SQLSTATE_SYM = 502,
1026     SQLWARNING_SYM = 503,
1027     SQL_BIG_RESULT = 504,
1028     SQL_SMALL_RESULT = 505,
1029     SQL_SYM = 506,
1030     SSL_SYM = 507,
1031     STARTING = 508,
1032     STATS_AUTO_RECALC_SYM = 509,
1033     STATS_PERSISTENT_SYM = 510,
1034     STATS_SAMPLE_PAGES_SYM = 511,
1035     STDDEV_SAMP_SYM = 512,
1036     STD_SYM = 513,
1037     STRAIGHT_JOIN = 514,
1038     SUBSTRING = 515,
1039     SUM_SYM = 516,
1040     SYSDATE = 517,
1041     TABLE_REF_PRIORITY = 518,
1042     TABLE_SYM = 519,
1043     TERMINATED = 520,
1044     TEXT_STRING = 521,
1045     THEN_SYM = 522,
1046     TINYBLOB = 523,
1047     TINYINT = 524,
1048     TINYTEXT = 525,
1049     TO_SYM = 526,
1050     TRAILING = 527,
1051     TRIGGER_SYM = 528,
1052     TRIM = 529,
1053     TRUE_SYM = 530,
1054     ULONGLONG_NUM = 531,
1055     UNDERSCORE_CHARSET = 532,
1056     UNDO_SYM = 533,
1057     UNION_SYM = 534,
1058     UNIQUE_SYM = 535,
1059     UNLOCK_SYM = 536,
1060     UNSIGNED = 537,
1061     UPDATE_SYM = 538,
1062     USAGE = 539,
1063     USE_SYM = 540,
1064     USING = 541,
1065     UTC_DATE_SYM = 542,
1066     UTC_TIMESTAMP_SYM = 543,
1067     UTC_TIME_SYM = 544,
1068     VALUES = 545,
1069     VALUES_IN_SYM = 546,
1070     VALUES_LESS_SYM = 547,
1071     VARBINARY = 548,
1072     VARCHAR = 549,
1073     VARIANCE_SYM = 550,
1074     VARYING = 551,
1075     VAR_SAMP_SYM = 552,
1076     WHEN_SYM = 553,
1077     WHERE = 554,
1078     WHILE_SYM = 555,
1079     WITH = 556,
1080     WITH_CUBE_SYM = 557,
1081     WITH_ROLLUP_SYM = 558,
1082     WITH_SYSTEM_SYM = 559,
1083     XOR = 560,
1084     YEAR_MONTH_SYM = 561,
1085     ZEROFILL = 562,
1086     IMPOSSIBLE_ACTION = 563,
1087     BODY_MARIADB_SYM = 564,
1088     ELSEIF_ORACLE_SYM = 565,
1089     ELSIF_MARIADB_SYM = 566,
1090     EXCEPTION_ORACLE_SYM = 567,
1091     GOTO_MARIADB_SYM = 568,
1092     OTHERS_MARIADB_SYM = 569,
1093     PACKAGE_MARIADB_SYM = 570,
1094     RAISE_MARIADB_SYM = 571,
1095     ROWTYPE_MARIADB_SYM = 572,
1096     ACCOUNT_SYM = 573,
1097     ACTION = 574,
1098     ADMIN_SYM = 575,
1099     ADDDATE_SYM = 576,
1100     AFTER_SYM = 577,
1101     AGAINST = 578,
1102     AGGREGATE_SYM = 579,
1103     ALGORITHM_SYM = 580,
1104     ALWAYS_SYM = 581,
1105     ANY_SYM = 582,
1106     ASCII_SYM = 583,
1107     AT_SYM = 584,
1108     ATOMIC_SYM = 585,
1109     AUTHORS_SYM = 586,
1110     AUTOEXTEND_SIZE_SYM = 587,
1111     AUTO_INC = 588,
1112     AUTO_SYM = 589,
1113     AVG_ROW_LENGTH = 590,
1114     AVG_SYM = 591,
1115     BACKUP_SYM = 592,
1116     BEGIN_MARIADB_SYM = 593,
1117     BEGIN_ORACLE_SYM = 594,
1118     BINLOG_SYM = 595,
1119     BIT_SYM = 596,
1120     BLOCK_SYM = 597,
1121     BOOL_SYM = 598,
1122     BOOLEAN_SYM = 599,
1123     BTREE_SYM = 600,
1124     BYTE_SYM = 601,
1125     CACHE_SYM = 602,
1126     CASCADED = 603,
1127     CATALOG_NAME_SYM = 604,
1128     CHAIN_SYM = 605,
1129     CHANGED = 606,
1130     CHARSET = 607,
1131     CHECKPOINT_SYM = 608,
1132     CHECKSUM_SYM = 609,
1133     CIPHER_SYM = 610,
1134     CLASS_ORIGIN_SYM = 611,
1135     CLIENT_SYM = 612,
1136     CLOB_MARIADB_SYM = 613,
1137     CLOB_ORACLE_SYM = 614,
1138     CLOSE_SYM = 615,
1139     COALESCE = 616,
1140     CODE_SYM = 617,
1141     COLLATION_SYM = 618,
1142     COLON_ORACLE_SYM = 619,
1143     COLUMNS = 620,
1144     COLUMN_ADD_SYM = 621,
1145     COLUMN_CHECK_SYM = 622,
1146     COLUMN_CREATE_SYM = 623,
1147     COLUMN_DELETE_SYM = 624,
1148     COLUMN_GET_SYM = 625,
1149     COLUMN_SYM = 626,
1150     COLUMN_NAME_SYM = 627,
1151     COMMENT_SYM = 628,
1152     COMMITTED_SYM = 629,
1153     COMMIT_SYM = 630,
1154     COMPACT_SYM = 631,
1155     COMPLETION_SYM = 632,
1156     COMPRESSED_SYM = 633,
1157     CONCURRENT = 634,
1158     CONNECTION_SYM = 635,
1159     CONSISTENT_SYM = 636,
1160     CONSTRAINT_CATALOG_SYM = 637,
1161     CONSTRAINT_NAME_SYM = 638,
1162     CONSTRAINT_SCHEMA_SYM = 639,
1163     CONTAINS_SYM = 640,
1164     CONTEXT_SYM = 641,
1165     CONTRIBUTORS_SYM = 642,
1166     CPU_SYM = 643,
1167     CUBE_SYM = 644,
1168     CURRENT_SYM = 645,
1169     CURRENT_POS_SYM = 646,
1170     CURSOR_NAME_SYM = 647,
1171     CYCLE_SYM = 648,
1172     DATAFILE_SYM = 649,
1173     DATA_SYM = 650,
1174     DATETIME = 651,
1175     DATE_FORMAT_SYM = 652,
1176     DATE_SYM = 653,
1177     DAY_SYM = 654,
1178     DEALLOCATE_SYM = 655,
1179     DECODE_MARIADB_SYM = 656,
1180     DECODE_ORACLE_SYM = 657,
1181     DEFINER_SYM = 658,
1182     DELAYED_SYM = 659,
1183     DELAY_KEY_WRITE_SYM = 660,
1184     DES_KEY_FILE = 661,
1185     DIAGNOSTICS_SYM = 662,
1186     DIRECTORY_SYM = 663,
1187     DISABLE_SYM = 664,
1188     DISCARD = 665,
1189     DISK_SYM = 666,
1190     DO_SYM = 667,
1191     DUMPFILE = 668,
1192     DUPLICATE_SYM = 669,
1193     DYNAMIC_SYM = 670,
1194     ENABLE_SYM = 671,
1195     END = 672,
1196     ENDS_SYM = 673,
1197     ENGINES_SYM = 674,
1198     ENGINE_SYM = 675,
1199     ENUM = 676,
1200     ERROR_SYM = 677,
1201     ERRORS = 678,
1202     ESCAPE_SYM = 679,
1203     EVENTS_SYM = 680,
1204     EVENT_SYM = 681,
1205     EVERY_SYM = 682,
1206     EXCHANGE_SYM = 683,
1207     EXAMINED_SYM = 684,
1208     EXCLUDE_SYM = 685,
1209     EXECUTE_SYM = 686,
1210     EXCEPTION_MARIADB_SYM = 687,
1211     EXIT_MARIADB_SYM = 688,
1212     EXIT_ORACLE_SYM = 689,
1213     EXPANSION_SYM = 690,
1214     EXPIRE_SYM = 691,
1215     EXPORT_SYM = 692,
1216     EXTENDED_SYM = 693,
1217     EXTENT_SIZE_SYM = 694,
1218     FAST_SYM = 695,
1219     FAULTS_SYM = 696,
1220     FILE_SYM = 697,
1221     FIRST_SYM = 698,
1222     FIXED_SYM = 699,
1223     FLUSH_SYM = 700,
1224     FOLLOWS_SYM = 701,
1225     FOLLOWING_SYM = 702,
1226     FORCE_SYM = 703,
1227     FORMAT_SYM = 704,
1228     FOUND_SYM = 705,
1229     FULL = 706,
1230     FUNCTION_SYM = 707,
1231     GENERAL = 708,
1232     GENERATED_SYM = 709,
1233     GEOMETRYCOLLECTION = 710,
1234     GEOMETRY_SYM = 711,
1235     GET_FORMAT = 712,
1236     GET_SYM = 713,
1237     GLOBAL_SYM = 714,
1238     GRANTS = 715,
1239     HANDLER_SYM = 716,
1240     HARD_SYM = 717,
1241     HASH_SYM = 718,
1242     HELP_SYM = 719,
1243     HIGH_PRIORITY = 720,
1244     HISTORY_SYM = 721,
1245     HOST_SYM = 722,
1246     HOSTS_SYM = 723,
1247     HOUR_SYM = 724,
1248     ID_SYM = 725,
1249     IDENTIFIED_SYM = 726,
1250     IGNORE_SERVER_IDS_SYM = 727,
1251     IMMEDIATE_SYM = 728,
1252     IMPORT = 729,
1253     INCREMENT_SYM = 730,
1254     INDEXES = 731,
1255     INITIAL_SIZE_SYM = 732,
1256     INSERT_METHOD = 733,
1257     INSTALL_SYM = 734,
1258     INVOKER_SYM = 735,
1259     IO_SYM = 736,
1260     IPC_SYM = 737,
1261     ISOLATION = 738,
1262     ISOPEN_SYM = 739,
1263     ISSUER_SYM = 740,
1264     INVISIBLE_SYM = 741,
1265     JSON_SYM = 742,
1266     KEY_BLOCK_SIZE = 743,
1267     LANGUAGE_SYM = 744,
1268     LAST_SYM = 745,
1269     LAST_VALUE = 746,
1270     LASTVAL_SYM = 747,
1271     LEAVES = 748,
1272     LESS_SYM = 749,
1273     LEVEL_SYM = 750,
1274     LINESTRING = 751,
1275     LIST_SYM = 752,
1276     LOCAL_SYM = 753,
1277     LOCKS_SYM = 754,
1278     LOGFILE_SYM = 755,
1279     LOGS_SYM = 756,
1280     MASTER_CONNECT_RETRY_SYM = 757,
1281     MASTER_DELAY_SYM = 758,
1282     MASTER_GTID_POS_SYM = 759,
1283     MASTER_HOST_SYM = 760,
1284     MASTER_LOG_FILE_SYM = 761,
1285     MASTER_LOG_POS_SYM = 762,
1286     MASTER_PASSWORD_SYM = 763,
1287     MASTER_PORT_SYM = 764,
1288     MASTER_SERVER_ID_SYM = 765,
1289     MASTER_SSL_CAPATH_SYM = 766,
1290     MASTER_SSL_CA_SYM = 767,
1291     MASTER_SSL_CERT_SYM = 768,
1292     MASTER_SSL_CIPHER_SYM = 769,
1293     MASTER_SSL_CRL_SYM = 770,
1294     MASTER_SSL_CRLPATH_SYM = 771,
1295     MASTER_SSL_KEY_SYM = 772,
1296     MASTER_SSL_SYM = 773,
1297     MASTER_SYM = 774,
1298     MASTER_USER_SYM = 775,
1299     MASTER_USE_GTID_SYM = 776,
1300     MASTER_HEARTBEAT_PERIOD_SYM = 777,
1301     MAX_CONNECTIONS_PER_HOUR = 778,
1302     MAX_QUERIES_PER_HOUR = 779,
1303     MAX_ROWS = 780,
1304     MAX_SIZE_SYM = 781,
1305     MAX_UPDATES_PER_HOUR = 782,
1306     MAX_STATEMENT_TIME_SYM = 783,
1307     MAX_USER_CONNECTIONS_SYM = 784,
1308     MEDIUM_SYM = 785,
1309     MEMORY_SYM = 786,
1310     MERGE_SYM = 787,
1311     MESSAGE_TEXT_SYM = 788,
1312     MICROSECOND_SYM = 789,
1313     MIGRATE_SYM = 790,
1314     MINUTE_SYM = 791,
1315     MINVALUE_SYM = 792,
1316     MIN_ROWS = 793,
1317     MODE_SYM = 794,
1318     MODIFY_SYM = 795,
1319     MONTH_SYM = 796,
1320     MULTILINESTRING = 797,
1321     MULTIPOINT = 798,
1322     MULTIPOLYGON = 799,
1323     MUTEX_SYM = 800,
1324     MYSQL_SYM = 801,
1325     MYSQL_ERRNO_SYM = 802,
1326     NAMES_SYM = 803,
1327     NAME_SYM = 804,
1328     NATIONAL_SYM = 805,
1329     NCHAR_SYM = 806,
1330     NEVER_SYM = 807,
1331     NEW_SYM = 808,
1332     NEXT_SYM = 809,
1333     NEXTVAL_SYM = 810,
1334     NOCACHE_SYM = 811,
1335     NOCYCLE_SYM = 812,
1336     NODEGROUP_SYM = 813,
1337     NONE_SYM = 814,
1338     NOTFOUND_SYM = 815,
1339     NO_SYM = 816,
1340     NOMAXVALUE_SYM = 817,
1341     NOMINVALUE_SYM = 818,
1342     NO_WAIT_SYM = 819,
1343     NOWAIT_SYM = 820,
1344     NUMBER_MARIADB_SYM = 821,
1345     NUMBER_ORACLE_SYM = 822,
1346     NVARCHAR_SYM = 823,
1347     OF_SYM = 824,
1348     OFFSET_SYM = 825,
1349     OLD_PASSWORD_SYM = 826,
1350     ONE_SYM = 827,
1351     ONLY_SYM = 828,
1352     ONLINE_SYM = 829,
1353     OPEN_SYM = 830,
1354     OPTIONS_SYM = 831,
1355     OPTION = 832,
1356     OWNER_SYM = 833,
1357     PACK_KEYS_SYM = 834,
1358     PAGE_SYM = 835,
1359     PARSER_SYM = 836,
1360     PARTIAL = 837,
1361     PARTITIONS_SYM = 838,
1362     PARTITIONING_SYM = 839,
1363     PASSWORD_SYM = 840,
1364     PERIOD_SYM = 841,
1365     PERSISTENT_SYM = 842,
1366     PHASE_SYM = 843,
1367     PLUGINS_SYM = 844,
1368     PLUGIN_SYM = 845,
1369     POINT_SYM = 846,
1370     POLYGON = 847,
1371     PORT_SYM = 848,
1372     PRECEDES_SYM = 849,
1373     PRECEDING_SYM = 850,
1374     PREPARE_SYM = 851,
1375     PRESERVE_SYM = 852,
1376     PREV_SYM = 853,
1377     PREVIOUS_SYM = 854,
1378     PRIVILEGES = 855,
1379     PROCESS = 856,
1380     PROCESSLIST_SYM = 857,
1381     PROFILE_SYM = 858,
1382     PROFILES_SYM = 859,
1383     PROXY_SYM = 860,
1384     QUARTER_SYM = 861,
1385     QUERY_SYM = 862,
1386     QUICK = 863,
1387     RAW_MARIADB_SYM = 864,
1388     RAW_ORACLE_SYM = 865,
1389     READ_ONLY_SYM = 866,
1390     REBUILD_SYM = 867,
1391     RECOVER_SYM = 868,
1392     REDOFILE_SYM = 869,
1393     REDO_BUFFER_SIZE_SYM = 870,
1394     REDUNDANT_SYM = 871,
1395     RELAY = 872,
1396     RELAYLOG_SYM = 873,
1397     RELAY_LOG_FILE_SYM = 874,
1398     RELAY_LOG_POS_SYM = 875,
1399     RELAY_THREAD = 876,
1400     RELOAD = 877,
1401     REMOVE_SYM = 878,
1402     REORGANIZE_SYM = 879,
1403     REPAIR = 880,
1404     REPEATABLE_SYM = 881,
1405     REPLICATION = 882,
1406     RESET_SYM = 883,
1407     RESTART_SYM = 884,
1408     RESOURCES = 885,
1409     RESTORE_SYM = 886,
1410     RESUME_SYM = 887,
1411     RETURNED_SQLSTATE_SYM = 888,
1412     RETURNS_SYM = 889,
1413     REUSE_SYM = 890,
1414     REVERSE_SYM = 891,
1415     ROLE_SYM = 892,
1416     ROLLBACK_SYM = 893,
1417     ROLLUP_SYM = 894,
1418     ROUTINE_SYM = 895,
1419     ROWCOUNT_SYM = 896,
1420     ROW_SYM = 897,
1421     ROW_COUNT_SYM = 898,
1422     ROW_FORMAT_SYM = 899,
1423     RTREE_SYM = 900,
1424     SAVEPOINT_SYM = 901,
1425     SCHEDULE_SYM = 902,
1426     SCHEMA_NAME_SYM = 903,
1427     SECOND_SYM = 904,
1428     SECURITY_SYM = 905,
1429     SEQUENCE_SYM = 906,
1430     SERIALIZABLE_SYM = 907,
1431     SERIAL_SYM = 908,
1432     SESSION_SYM = 909,
1433     SERVER_SYM = 910,
1434     SETVAL_SYM = 911,
1435     SHARE_SYM = 912,
1436     SHUTDOWN = 913,
1437     SIGNED_SYM = 914,
1438     SIMPLE_SYM = 915,
1439     SLAVE = 916,
1440     SLAVES = 917,
1441     SLAVE_POS_SYM = 918,
1442     SLOW = 919,
1443     SNAPSHOT_SYM = 920,
1444     SOCKET_SYM = 921,
1445     SOFT_SYM = 922,
1446     SONAME_SYM = 923,
1447     SOUNDS_SYM = 924,
1448     SOURCE_SYM = 925,
1449     SQL_BUFFER_RESULT = 926,
1450     SQL_CACHE_SYM = 927,
1451     SQL_CALC_FOUND_ROWS = 928,
1452     SQL_NO_CACHE_SYM = 929,
1453     SQL_THREAD = 930,
1454     STAGE_SYM = 931,
1455     STARTS_SYM = 932,
1456     START_SYM = 933,
1457     STATEMENT_SYM = 934,
1458     STATUS_SYM = 935,
1459     STOP_SYM = 936,
1460     STORAGE_SYM = 937,
1461     STORED_SYM = 938,
1462     STRING_SYM = 939,
1463     SUBCLASS_ORIGIN_SYM = 940,
1464     SUBDATE_SYM = 941,
1465     SUBJECT_SYM = 942,
1466     SUBPARTITIONS_SYM = 943,
1467     SUBPARTITION_SYM = 944,
1468     SUPER_SYM = 945,
1469     SUSPEND_SYM = 946,
1470     SWAPS_SYM = 947,
1471     SWITCHES_SYM = 948,
1472     SYSTEM = 949,
1473     SYSTEM_TIME_SYM = 950,
1474     TABLES = 951,
1475     TABLESPACE = 952,
1476     TABLE_CHECKSUM_SYM = 953,
1477     TABLE_NAME_SYM = 954,
1478     TEMPORARY = 955,
1479     TEMPTABLE_SYM = 956,
1480     TEXT_SYM = 957,
1481     THAN_SYM = 958,
1482     TIES_SYM = 959,
1483     TIMESTAMP = 960,
1484     TIMESTAMP_ADD = 961,
1485     TIMESTAMP_DIFF = 962,
1486     TIME_SYM = 963,
1487     TRANSACTION_SYM = 964,
1488     TRANSACTIONAL_SYM = 965,
1489     TRIGGERS_SYM = 966,
1490     TRIM_ORACLE = 967,
1491     TRUNCATE_SYM = 968,
1492     TYPES_SYM = 969,
1493     TYPE_SYM = 970,
1494     UDF_RETURNS_SYM = 971,
1495     UNBOUNDED_SYM = 972,
1496     UNCOMMITTED_SYM = 973,
1497     UNDEFINED_SYM = 974,
1498     UNDOFILE_SYM = 975,
1499     UNDO_BUFFER_SIZE_SYM = 976,
1500     UNICODE_SYM = 977,
1501     UNINSTALL_SYM = 978,
1502     UNKNOWN_SYM = 979,
1503     UNTIL_SYM = 980,
1504     UPGRADE_SYM = 981,
1505     USER_SYM = 982,
1506     USE_FRM = 983,
1507     VALUE_SYM = 984,
1508     VARCHAR2_MARIADB_SYM = 985,
1509     VARCHAR2_ORACLE_SYM = 986,
1510     VARIABLES = 987,
1511     VERSIONING_SYM = 988,
1512     VIA_SYM = 989,
1513     VIEW_SYM = 990,
1514     VIRTUAL_SYM = 991,
1515     WAIT_SYM = 992,
1516     WARNINGS = 993,
1517     WEEK_SYM = 994,
1518     WEIGHT_STRING_SYM = 995,
1519     WINDOW_SYM = 996,
1520     WITHIN = 997,
1521     WITHOUT = 998,
1522     WORK_SYM = 999,
1523     WRAPPER_SYM = 1000,
1524     WRITE_SYM = 1001,
1525     X509_SYM = 1002,
1526     XA_SYM = 1003,
1527     XML_SYM = 1004,
1528     YEAR_SYM = 1005,
1529     CONDITIONLESS_JOIN = 1006,
1530     ON_SYM = 1007,
1531     PREC_BELOW_NOT = 1008,
1532     SUBQUERY_AS_EXPR = 1009,
1533     PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE = 1010,
1534     USER = 1011,
1535     PREC_BELOW_CONTRACTION_TOKEN2 = 1012,
1536     EMPTY_FROM_CLAUSE = 1013
1537   };
1538 #endif
1539 
1540 /* Value type.  */
1541 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
1542 typedef union YYSTYPE YYSTYPE;
1543 union YYSTYPE
1544 {
1545 #line 699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:355  */
1546 
1547   int  num;
1548   ulong ulong_num;
1549   ulonglong ulonglong_number;
1550   longlong longlong_number;
1551   uint sp_instr_addr;
1552 
1553   /* structs */
1554   LEX_CSTRING lex_str;
1555   Lex_ident_cli_st kwd;
1556   Lex_ident_cli_st ident_cli;
1557   Lex_ident_sys_st ident_sys;
1558   Lex_string_with_metadata_st lex_string_with_metadata;
1559   Lex_spblock_st spblock;
1560   Lex_spblock_handlers_st spblock_handlers;
1561   Lex_length_and_dec_st Lex_length_and_dec;
1562   Lex_cast_type_st Lex_cast_type;
1563   Lex_field_type_st Lex_field_type;
1564   Lex_dyncol_type_st Lex_dyncol_type;
1565   Lex_for_loop_st for_loop;
1566   Lex_for_loop_bounds_st for_loop_bounds;
1567   Lex_trim_st trim;
1568   vers_history_point_t vers_history_point;
1569   struct
1570   {
1571     enum sub_select_type unit_type;
1572     bool distinct;
1573   } unit_operation;
1574   struct
1575   {
1576     SELECT_LEX *first;
1577     SELECT_LEX *prev_last;
1578   } select_list;
1579   SQL_I_List<ORDER> *select_order;
1580   Lex_select_lock select_lock;
1581   Lex_select_limit select_limit;
1582   Lex_order_limit_lock *order_limit_lock;
1583 
1584   /* pointers */
1585   Create_field *create_field;
1586   Spvar_definition *spvar_definition;
1587   Row_definition_list *spvar_definition_list;
1588   const Type_handler *type_handler;
1589   CHARSET_INFO *charset;
1590   Condition_information_item *cond_info_item;
1591   DYNCALL_CREATE_DEF *dyncol_def;
1592   Diagnostics_information *diag_info;
1593   Item *item;
1594   Item_num *item_num;
1595   Item_param *item_param;
1596   Item_basic_constant *item_basic_constant;
1597   Key_part_spec *key_part;
1598   LEX *lex;
1599   sp_assignment_lex *assignment_lex;
1600   class sp_lex_cursor *sp_cursor_stmt;
1601   LEX_CSTRING *lex_str_ptr;
1602   LEX_USER *lex_user;
1603   USER_AUTH *user_auth;
1604   List<Condition_information_item> *cond_info_list;
1605   List<DYNCALL_CREATE_DEF> *dyncol_def_list;
1606   List<Item> *item_list;
1607   List<sp_assignment_lex> *sp_assignment_lex_list;
1608   List<Statement_information_item> *stmt_info_list;
1609   List<String> *string_list;
1610   List<LEX_CSTRING> *lex_str_list;
1611   Statement_information_item *stmt_info_item;
1612   String *string;
1613   TABLE_LIST *table_list;
1614   Table_ident *table;
1615   Qualified_column_ident *qualified_column_ident;
1616   char *simple_string;
1617   const char *const_simple_string;
1618   chooser_compare_func_creator boolfunc2creator;
1619   class my_var *myvar;
1620   class sp_condition_value *spcondvalue;
1621   class sp_head *sphead;
1622   class sp_name *spname;
1623   class sp_variable *spvar;
1624   class With_element_head *with_element_head;
1625   class With_clause *with_clause;
1626   class Virtual_column_info *virtual_column;
1627 
1628   handlerton *db_type;
1629   st_select_lex *select_lex;
1630   st_select_lex_unit *select_lex_unit;
1631   struct p_elem_val *p_elem_value;
1632   class Window_frame *window_frame;
1633   class Window_frame_bound *window_frame_bound;
1634   udf_func *udf;
1635   st_trg_execution_order trg_execution_order;
1636 
1637   /* enums */
1638   enum enum_sp_suid_behaviour sp_suid;
1639   enum enum_sp_aggregate_type sp_aggregate_type;
1640   enum enum_view_suid view_suid;
1641   enum Condition_information_item::Name cond_info_item_name;
1642   enum enum_diag_condition_item_name diag_condition_item_name;
1643   enum Diagnostics_information::Which_area diag_area;
1644   enum Field::geometry_type geom_type;
1645   enum enum_fk_option m_fk_option;
1646   enum Item_udftype udf_type;
1647   enum Key::Keytype key_type;
1648   enum Statement_information_item::Name stmt_info_item_name;
1649   enum enum_filetype filetype;
1650   enum enum_tx_isolation tx_isolation;
1651   enum enum_var_type var_type;
1652   enum enum_yes_no_unknown m_yes_no_unk;
1653   enum ha_choice choice;
1654   enum ha_key_alg key_alg;
1655   enum ha_rkey_function ha_rkey_mode;
1656   enum index_hint_type index_hint;
1657   enum interval_type interval, interval_time_st;
1658   enum row_type row_type;
1659   enum sp_variable::enum_mode spvar_mode;
1660   enum thr_lock_type lock_type;
1661   enum enum_mysql_timestamp_type date_time_type;
1662   enum Window_frame_bound::Bound_precedence_type bound_precedence_type;
1663   enum Window_frame::Frame_units frame_units;
1664   enum Window_frame::Frame_exclusion frame_exclusion;
1665   enum trigger_order_type trigger_action_order_type;
1666   DDL_options_st object_ddl_options;
1667   enum vers_sys_type_t vers_range_unit;
1668   enum Column_definition::enum_column_versioning vers_column_versioning;
1669   enum plsql_cursor_attr_t plsql_cursor_attr;
1670 
1671 #line 1672 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:355  */
1672 };
1673 # define YYSTYPE_IS_TRIVIAL 1
1674 # define YYSTYPE_IS_DECLARED 1
1675 #endif
1676 
1677 
1678 
1679 int MYSQLparse (THD *thd);
1680 
1681 #endif /* !YY_MYSQL_HOME_BUILDBOT_GIT_MKDIST_SQL_SQL_YACC_HH_INCLUDED  */
1682 
1683 /* Copy the second part of user declarations.  */
1684 #line 825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:358  */
1685 
1686 /* avoid unintentional %union size increases, it's what a parser stack made of */
1687 static_assert(sizeof(YYSTYPE) == sizeof(void*)*2+8, "%union size check");
1688 bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
1689 
1690 #line 1691 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:358  */
1691 
1692 #ifdef short
1693 # undef short
1694 #endif
1695 
1696 #ifdef YYTYPE_UINT8
1697 typedef YYTYPE_UINT8 yytype_uint8;
1698 #else
1699 typedef unsigned char yytype_uint8;
1700 #endif
1701 
1702 #ifdef YYTYPE_INT8
1703 typedef YYTYPE_INT8 yytype_int8;
1704 #else
1705 typedef signed char yytype_int8;
1706 #endif
1707 
1708 #ifdef YYTYPE_UINT16
1709 typedef YYTYPE_UINT16 yytype_uint16;
1710 #else
1711 typedef unsigned short int yytype_uint16;
1712 #endif
1713 
1714 #ifdef YYTYPE_INT16
1715 typedef YYTYPE_INT16 yytype_int16;
1716 #else
1717 typedef short int yytype_int16;
1718 #endif
1719 
1720 #ifndef YYSIZE_T
1721 # ifdef __SIZE_TYPE__
1722 #  define YYSIZE_T __SIZE_TYPE__
1723 # elif defined size_t
1724 #  define YYSIZE_T size_t
1725 # elif ! defined YYSIZE_T
1726 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
1727 #  define YYSIZE_T size_t
1728 # else
1729 #  define YYSIZE_T unsigned int
1730 # endif
1731 #endif
1732 
1733 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
1734 
1735 #ifndef YY_
1736 # if defined YYENABLE_NLS && YYENABLE_NLS
1737 #  if ENABLE_NLS
1738 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
1739 #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
1740 #  endif
1741 # endif
1742 # ifndef YY_
1743 #  define YY_(Msgid) Msgid
1744 # endif
1745 #endif
1746 
1747 #ifndef YY_ATTRIBUTE
1748 # if (defined __GNUC__                                               \
1749       && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \
1750      || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
1751 #  define YY_ATTRIBUTE(Spec) __attribute__(Spec)
1752 # else
1753 #  define YY_ATTRIBUTE(Spec) /* empty */
1754 # endif
1755 #endif
1756 
1757 #ifndef YY_ATTRIBUTE_PURE
1758 # define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
1759 #endif
1760 
1761 #ifndef YY_ATTRIBUTE_UNUSED
1762 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
1763 #endif
1764 
1765 #if !defined _Noreturn \
1766      && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
1767 # if defined _MSC_VER && 1200 <= _MSC_VER
1768 #  define _Noreturn __declspec (noreturn)
1769 # else
1770 #  define _Noreturn YY_ATTRIBUTE ((__noreturn__))
1771 # endif
1772 #endif
1773 
1774 /* Suppress unused-variable warnings by "using" E.  */
1775 #if ! defined lint || defined __GNUC__
1776 # define YYUSE(E) ((void) (E))
1777 #else
1778 # define YYUSE(E) /* empty */
1779 #endif
1780 
1781 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
1782 /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
1783 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
1784     _Pragma ("GCC diagnostic push") \
1785     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
1786     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
1787 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
1788     _Pragma ("GCC diagnostic pop")
1789 #else
1790 # define YY_INITIAL_VALUE(Value) Value
1791 #endif
1792 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1793 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1794 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
1795 #endif
1796 #ifndef YY_INITIAL_VALUE
1797 # define YY_INITIAL_VALUE(Value) /* Nothing. */
1798 #endif
1799 
1800 
1801 #if ! defined yyoverflow || YYERROR_VERBOSE
1802 
1803 /* The parser invokes alloca or malloc; define the necessary symbols.  */
1804 
1805 # ifdef YYSTACK_USE_ALLOCA
1806 #  if YYSTACK_USE_ALLOCA
1807 #   ifdef __GNUC__
1808 #    define YYSTACK_ALLOC __builtin_alloca
1809 #   elif defined __BUILTIN_VA_ARG_INCR
1810 #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
1811 #   elif defined _AIX
1812 #    define YYSTACK_ALLOC __alloca
1813 #   elif defined _MSC_VER
1814 #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
1815 #    define alloca _alloca
1816 #   else
1817 #    define YYSTACK_ALLOC alloca
1818 #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
1819 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1820       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
1821 #     ifndef EXIT_SUCCESS
1822 #      define EXIT_SUCCESS 0
1823 #     endif
1824 #    endif
1825 #   endif
1826 #  endif
1827 # endif
1828 
1829 # ifdef YYSTACK_ALLOC
1830    /* Pacify GCC's 'empty if-body' warning.  */
1831 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
1832 #  ifndef YYSTACK_ALLOC_MAXIMUM
1833     /* The OS might guarantee only one guard page at the bottom of the stack,
1834        and a page size can be as small as 4096 bytes.  So we cannot safely
1835        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
1836        to allow for a few compiler-allocated temporary stack slots.  */
1837 #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
1838 #  endif
1839 # else
1840 #  define YYSTACK_ALLOC YYMALLOC
1841 #  define YYSTACK_FREE YYFREE
1842 #  ifndef YYSTACK_ALLOC_MAXIMUM
1843 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
1844 #  endif
1845 #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
1846        && ! ((defined YYMALLOC || defined malloc) \
1847              && (defined YYFREE || defined free)))
1848 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1849 #   ifndef EXIT_SUCCESS
1850 #    define EXIT_SUCCESS 0
1851 #   endif
1852 #  endif
1853 #  ifndef YYMALLOC
1854 #   define YYMALLOC malloc
1855 #   if ! defined malloc && ! defined EXIT_SUCCESS
1856 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
1857 #   endif
1858 #  endif
1859 #  ifndef YYFREE
1860 #   define YYFREE free
1861 #   if ! defined free && ! defined EXIT_SUCCESS
1862 void free (void *); /* INFRINGES ON USER NAME SPACE */
1863 #   endif
1864 #  endif
1865 # endif
1866 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
1867 
1868 
1869 #if (! defined yyoverflow \
1870      && (! defined __cplusplus \
1871          || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
1872 
1873 /* A type that is properly aligned for any stack member.  */
1874 union yyalloc
1875 {
1876   yytype_int16 yyss_alloc;
1877   YYSTYPE yyvs_alloc;
1878 };
1879 
1880 /* The size of the maximum gap between one aligned stack and the next.  */
1881 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
1882 
1883 /* The size of an array large to enough to hold all stacks, each with
1884    N elements.  */
1885 # define YYSTACK_BYTES(N) \
1886      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
1887       + YYSTACK_GAP_MAXIMUM)
1888 
1889 # define YYCOPY_NEEDED 1
1890 
1891 /* Relocate STACK from its old location to the new one.  The
1892    local variables YYSIZE and YYSTACKSIZE give the old and new number of
1893    elements in the stack, and YYPTR gives the new location of the
1894    stack.  Advance YYPTR to a properly aligned location for the next
1895    stack.  */
1896 # define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
1897     do                                                                  \
1898       {                                                                 \
1899         YYSIZE_T yynewbytes;                                            \
1900         YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
1901         Stack = &yyptr->Stack_alloc;                                    \
1902         yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
1903         yyptr += yynewbytes / sizeof (*yyptr);                          \
1904       }                                                                 \
1905     while (0)
1906 
1907 #endif
1908 
1909 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1910 /* Copy COUNT objects from SRC to DST.  The source and destination do
1911    not overlap.  */
1912 # ifndef YYCOPY
1913 #  if defined __GNUC__ && 1 < __GNUC__
1914 #   define YYCOPY(Dst, Src, Count) \
1915       __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
1916 #  else
1917 #   define YYCOPY(Dst, Src, Count)              \
1918       do                                        \
1919         {                                       \
1920           YYSIZE_T yyi;                         \
1921           for (yyi = 0; yyi < (Count); yyi++)   \
1922             (Dst)[yyi] = (Src)[yyi];            \
1923         }                                       \
1924       while (0)
1925 #  endif
1926 # endif
1927 #endif /* !YYCOPY_NEEDED */
1928 
1929 /* YYFINAL -- State number of the termination state.  */
1930 #define YYFINAL  736
1931 /* YYLAST -- Last index in YYTABLE.  */
1932 #define YYLAST   100963
1933 
1934 /* YYNTOKENS -- Number of terminals.  */
1935 #define YYNTOKENS  781
1936 /* YYNNTS -- Number of nonterminals.  */
1937 #define YYNNTS  1210
1938 /* YYNRULES -- Number of rules.  */
1939 #define YYNRULES  3394
1940 /* YYNSTATES -- Number of states.  */
1941 #define YYNSTATES  5889
1942 
1943 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
1944    by yylex, with out-of-bounds checking.  */
1945 #define YYUNDEFTOK  2
1946 #define YYMAXUTOK   1013
1947 
1948 #define YYTRANSLATE(YYX)                                                \
1949   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
1950 
1951 /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
1952    as returned by yylex, without out-of-bounds checking.  */
1953 static const yytype_uint16 yytranslate[] =
1954 {
1955        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1956        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1957        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1958        2,     2,     2,   774,     2,     2,     2,   763,   758,     2,
1959      770,   771,   761,   760,   773,   759,   778,   762,     2,     2,
1960        2,     2,     2,     2,     2,     2,     2,     2,   780,   777,
1961      756,   754,   755,     2,   779,     2,     2,     2,     2,     2,
1962        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1963        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1964        2,     2,     2,     2,   764,     2,     2,     2,     2,     2,
1965        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1966        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1967        2,     2,     2,   775,   757,   776,   765,     2,     2,     2,
1968        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1969        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1970        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1971        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1972        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1973        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1974        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1975        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1976        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1977        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1978        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1979        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1980        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
1981        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1982       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1983       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1984       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
1985       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
1986       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1987       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1988       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1989       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1990       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1991      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1992      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1993      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1994      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1995      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1996      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1997      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1998      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1999      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
2000      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
2001      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
2002      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
2003      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
2004      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
2005      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
2006      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
2007      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
2008      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
2009      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2010      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2011      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
2012      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
2013      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
2014      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
2015      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
2016      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
2017      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2018      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2019      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
2020      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
2021      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
2022      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
2023      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
2024      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
2025      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
2026      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
2027      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
2028      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
2029      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
2030      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
2031      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
2032      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
2033      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
2034      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
2035      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
2036      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
2037      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
2038      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
2039      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
2040      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
2041      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
2042      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
2043      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
2044      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
2045      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
2046      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
2047      665,   666,   667,   668,   669,   670,   671,   672,   673,   674,
2048      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
2049      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
2050      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
2051      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
2052      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
2053      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
2054      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
2055      745,   746,   747,   748,   749,   750,   751,   752,   753,   766,
2056      767,   768,   769,   772
2057 };
2058 
2059 #if YYDEBUG
2060   /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
2061 static const yytype_uint16 yyrline[] =
2062 {
2063        0,  2228,  2228,  2238,  2237,  2262,  2269,  2271,  2275,  2276,
2064     2277,  2282,  2283,  2284,  2285,  2286,  2287,  2288,  2289,  2290,
2065     2291,  2292,  2293,  2294,  2295,  2296,  2297,  2298,  2299,  2300,
2066     2301,  2302,  2303,  2304,  2305,  2306,  2307,  2308,  2309,  2310,
2067     2311,  2312,  2313,  2314,  2315,  2316,  2317,  2318,  2319,  2320,
2068     2321,  2322,  2323,  2324,  2325,  2326,  2327,  2328,  2329,  2330,
2069     2331,  2332,  2333,  2334,  2335,  2336,  2337,  2338,  2339,  2340,
2070     2344,  2351,  2352,  2357,  2356,  2367,  2373,  2375,  2372,  2384,
2071     2386,  2385,  2395,  2400,  2412,  2411,  2428,  2427,  2436,  2437,
2072     2441,  2445,  2449,  2453,  2457,  2461,  2471,  2476,  2480,  2484,
2073     2488,  2492,  2496,  2501,  2505,  2510,  2538,  2542,  2546,  2551,
2074     2554,  2556,  2557,  2561,  2567,  2569,  2570,  2574,  2580,  2582,
2075     2583,  2587,  2594,  2598,  2613,  2617,  2623,  2629,  2635,  2645,
2076     2649,  2653,  2667,  2679,  2666,  2702,  2701,  2757,  2764,  2756,
2077     2776,  2782,  2775,  2794,  2800,  2793,  2812,  2811,  2826,  2824,
2078     2839,  2837,  2850,  2849,  2860,  2859,  2869,  2868,  2880,  2878,
2079     2892,  2890,  2902,  2909,  2916,  2923,  2927,  2931,  2931,  2937,
2080     2938,  2942,  2943,  2947,  2952,  2958,  2964,  2972,  2978,  2984,
2081     2992,  3000,  3008,  3016,  3024,  3032,  3044,  3061,  3060,  3072,
2082     3073,  3077,  3082,  3087,  3092,  3097,  3102,  3107,  3115,  3114,
2083     3147,  3146,  3153,  3160,  3161,  3167,  3173,  3183,  3189,  3195,
2084     3197,  3204,  3205,  3209,  3219,  3220,  3228,  3228,  3270,  3282,
2085     3283,  3287,  3292,  3300,  3301,  3305,  3306,  3311,  3313,  3315,
2086     3317,  3319,  3321,  3323,  3329,  3330,  3334,  3335,  3340,  3339,
2087     3352,  3354,  3357,  3359,  3363,  3367,  3376,  3381,  3381,  3391,
2088     3392,  3396,  3404,  3409,  3416,  3422,  3427,  3432,  3440,  3442,
2089     3446,  3447,  3451,  3455,  3456,  3457,  3458,  3463,  3462,  3474,
2090     3475,  3479,  3480,  3485,  3488,  3500,  3505,  3511,  3517,  3526,
2091     3534,  3538,  3543,  3551,  3555,  3562,  3572,  3580,  3588,  3599,
2092     3600,  3607,  3609,  3608,  3627,  3626,  3640,  3642,  3647,  3657,
2093     3656,  3675,  3676,  3677,  3678,  3683,  3685,  3690,  3705,  3713,
2094     3717,  3737,  3738,  3742,  3746,  3752,  3758,  3764,  3770,  3780,
2095     3785,  3793,  3801,  3816,  3822,  3823,  3829,  3832,  3836,  3844,
2096     3861,  3863,  3881,  3887,  3889,  3891,  3893,  3895,  3897,  3899,
2097     3901,  3903,  3905,  3907,  3909,  3914,  3922,  3938,  3939,  3944,
2098     3950,  3959,  3966,  3975,  3984,  3989,  3998,  4000,  4002,  4011,
2099     4016,  4023,  4032,  4041,  4043,  4045,  4047,  4049,  4051,  4053,
2100     4055,  4057,  4059,  4061,  4063,  4065,  4070,  4071,  4079,  4091,
2101     4106,  4107,  4120,  4121,  4122,  4123,  4124,  4128,  4129,  4130,
2102     4131,  4132,  4133,  4134,  4135,  4136,  4137,  4141,  4142,  4143,
2103     4144,  4149,  4148,  4159,  4159,  4181,  4182,  4187,  4186,  4204,
2104     4215,  4215,  4228,  4233,  4238,  4244,  4253,  4258,  4263,  4269,
2105     4279,  4287,  4295,  4303,  4313,  4312,  4334,  4333,  4354,  4360,
2106     4368,  4369,  4373,  4381,  4386,  4391,  4399,  4400,  4408,  4426,
2107     4442,  4461,  4467,  4484,  4461,  4503,  4505,  4506,  4511,  4510,
2108     4580,  4586,  4580,  4596,  4601,  4602,  4606,  4607,  4612,  4618,
2109     4611,  4639,  4645,  4638,  4664,  4674,  4678,  4682,  4683,  4687,
2110     4698,  4696,  4713,  4712,  4727,  4726,  4743,  4744,  4749,  4748,
2111     4762,  4767,  4774,  4783,  4798,  4797,  4817,  4816,  4841,  4850,
2112     4849,  4857,  4856,  4867,  4872,  4881,  4866,  4891,  4890,  4901,
2113     4900,  4910,  4909,  4922,  4929,  4921,  4946,  4945,  4957,  4959,
2114     4964,  4966,  4968,  4985,  4990,  4996,  5003,  5004,  5012,  5018,
2115     5027,  5033,  5039,  5040,  5044,  5044,  5049,  5050,  5051,  5055,
2116     5056,  5057,  5061,  5065,  5066,  5067,  5071,  5072,  5073,  5074,
2117     5075,  5076,  5077,  5078,  5082,  5086,  5087,  5088,  5092,  5093,
2118     5094,  5095,  5096,  5100,  5104,  5105,  5106,  5110,  5111,  5112,
2119     5113,  5114,  5115,  5116,  5120,  5124,  5125,  5126,  5130,  5131,
2120     5132,  5137,  5145,  5153,  5161,  5174,  5187,  5192,  5197,  5205,
2121     5213,  5221,  5229,  5237,  5245,  5253,  5263,  5273,  5283,  5285,
2122     5289,  5294,  5304,  5305,  5318,  5317,  5320,  5321,  5335,  5336,
2123     5340,  5341,  5350,  5355,  5366,  5403,  5404,  5409,  5408,  5424,
2124     5439,  5438,  5460,  5459,  5465,  5473,  5472,  5475,  5477,  5480,
2125     5479,  5488,  5491,  5490,  5499,  5500,  5506,  5507,  5524,  5525,
2126     5529,  5530,  5534,  5548,  5558,  5569,  5578,  5579,  5592,  5594,
2127     5593,  5598,  5596,  5607,  5608,  5612,  5626,  5638,  5639,  5652,
2128     5661,  5683,  5684,  5689,  5688,  5712,  5724,  5740,  5739,  5754,
2129     5753,  5767,  5772,  5777,  5797,  5815,  5819,  5846,  5858,  5859,
2130     5864,  5873,  5863,  5898,  5899,  5903,  5914,  5933,  5946,  5972,
2131     5973,  5978,  5977,  6014,  6023,  6024,  6028,  6029,  6033,  6035,
2132     6041,  6047,  6049,  6051,  6053,  6055,  6057,  6062,  6063,  6069,
2133     6085,  6088,  6105,  6106,  6110,  6111,  6115,  6116,  6120,  6121,
2134     6126,  6129,  6137,  6140,  6147,  6151,  6157,  6159,  6163,  6164,
2135     6168,  6169,  6170,  6174,  6189,  6194,  6199,  6204,  6209,  6214,
2136     6219,  6234,  6240,  6255,  6260,  6275,  6281,  6299,  6304,  6309,
2137     6314,  6319,  6324,  6330,  6329,  6355,  6356,  6357,  6362,  6367,
2138     6372,  6374,  6376,  6378,  6384,  6389,  6394,  6403,  6412,  6418,
2139     6424,  6429,  6432,  6434,  6438,  6457,  6465,  6480,  6490,  6501,
2140     6502,  6503,  6504,  6505,  6506,  6507,  6511,  6512,  6513,  6517,
2141     6518,  6519,  6520,  6525,  6532,  6539,  6540,  6544,  6545,  6546,
2142     6547,  6548,  6552,  6554,  6560,  6559,  6567,  6566,  6574,  6573,
2143     6581,  6580,  6590,  6587,  6598,  6596,  6605,  6604,  6643,  6651,
2144     6659,  6667,  6668,  6672,  6682,  6683,  6687,  6688,  6692,  6697,
2145     6696,  6734,  6734,  6737,  6736,  6747,  6748,  6752,  6753,  6757,
2146     6758,  6762,  6763,  6767,  6768,  6769,  6770,  6772,  6771,  6777,
2147     6782,  6790,  6791,  6796,  6799,  6803,  6807,  6814,  6815,  6819,
2148     6820,  6824,  6830,  6836,  6837,  6845,  6844,  6866,  6867,  6877,
2149     6885,  6897,  6897,  6900,  6901,  6908,  6916,  6920,  6928,  6929,
2150     6930,  6931,  6932,  6936,  6937,  6938,  6954,  6958,  6962,  6966,
2151     6968,  6975,  6977,  6982,  6984,  6985,  6986,  6990,  6994,  6999,
2152     7004,  7008,  7012,  7017,  7022,  7030,  7048,  7049,  7056,  7063,
2153     7071,  7076,  7081,  7086,  7091,  7102,  7107,  7112,  7117,  7119,
2154     7121,  7123,  7125,  7127,  7129,  7131,  7139,  7141,  7146,  7147,
2155     7148,  7149,  7150,  7151,  7152,  7153,  7157,  7161,  7162,  7166,
2156     7167,  7171,  7172,  7173,  7174,  7175,  7179,  7180,  7181,  7182,
2157     7183,  7187,  7193,  7194,  7199,  7201,  7208,  7209,  7210,  7214,
2158     7218,  7219,  7220,  7221,  7222,  7223,  7227,  7228,  7229,  7230,
2159     7234,  7235,  7239,  7240,  7244,  7245,  7250,  7251,  7255,  7256,
2160     7257,  7264,  7265,  7271,  7278,  7282,  7283,  7287,  7288,  7292,
2161     7300,  7308,  7317,  7321,  7327,  7331,  7332,  7341,  7350,  7356,
2162     7362,  7375,  7381,  7391,  7392,  7396,  7401,  7405,  7406,  7410,
2163     7411,  7415,  7422,  7426,  7427,  7431,  7439,  7440,  7444,  7445,
2164     7449,  7450,  7454,  7455,  7456,  7463,  7470,  7471,  7475,  7476,
2165     7477,  7478,  7479,  7485,  7489,  7490,  7495,  7494,  7507,  7508,
2166     7512,  7515,  7516,  7517,  7518,  7522,  7530,  7537,  7538,  7542,
2167     7552,  7553,  7557,  7558,  7561,  7563,  7567,  7579,  7580,  7584,
2168     7591,  7604,  7605,  7607,  7609,  7615,  7620,  7626,  7632,  7639,
2169     7649,  7650,  7651,  7652,  7653,  7657,  7658,  7662,  7663,  7667,
2170     7668,  7672,  7673,  7674,  7678,  7679,  7683,  7687,  7699,  7700,
2171     7704,  7705,  7709,  7710,  7714,  7715,  7719,  7720,  7724,  7725,
2172     7729,  7730,  7735,  7736,  7737,  7741,  7743,  7748,  7753,  7755,
2173     7763,  7771,  7777,  7786,  7787,  7791,  7795,  7796,  7806,  7807,
2174     7808,  7812,  7816,  7823,  7829,  7841,  7842,  7846,  7848,  7858,
2175     7874,  7857,  7896,  7895,  7912,  7921,  7920,  7941,  7940,  7961,
2176     7960,  7979,  7973,  7992,  7991,  8030,  8035,  8040,  8045,  8051,
2177     8050,  8057,  8064,  8076,  8063,  8098,  8102,  8110,  8113,  8117,
2178     8121,  8129,  8131,  8132,  8133,  8134,  8138,  8139,  8140,  8141,
2179     8145,  8146,  8158,  8159,  8163,  8164,  8167,  8169,  8177,  8185,
2180     8187,  8189,  8190,  8198,  8199,  8205,  8214,  8212,  8225,  8238,
2181     8237,  8250,  8248,  8261,  8268,  8278,  8279,  8288,  8295,  8299,
2182     8305,  8303,  8320,  8322,  8327,  8335,  8334,  8348,  8352,  8351,
2183     8363,  8364,  8368,  8381,  8382,  8386,  8390,  8397,  8402,  8406,
2184     8413,  8420,  8424,  8429,  8437,  8445,  8455,  8466,  8476,  8487,
2185     8497,  8503,  8509,  8516,  8522,  8536,  8550,  8555,  8559,  8564,
2186     8565,  8566,  8571,  8576,  8580,  8590,  8592,  8593,  8594,  8595,
2187     8599,  8604,  8612,  8617,  8625,  8626,  8630,  8631,  8635,  8635,
2188     8638,  8640,  8644,  8645,  8649,  8650,  8658,  8659,  8660,  8664,
2189     8665,  8670,  8679,  8680,  8681,  8682,  8687,  8686,  8696,  8695,
2190     8703,  8710,  8720,  8737,  8740,  8747,  8751,  8758,  8762,  8766,
2191     8773,  8773,  8779,  8780,  8784,  8785,  8786,  8790,  8791,  8800,
2192     8807,  8808,  8813,  8812,  8824,  8825,  8826,  8830,  8832,  8831,
2193     8838,  8837,  8858,  8859,  8863,  8864,  8868,  8869,  8870,  8874,
2194     8875,  8880,  8879,  8900,  8901,  8905,  8910,  8911,  8918,  8920,
2195     8925,  8927,  8926,  8939,  8941,  8940,  8954,  8955,  8960,  8969,
2196     8970,  8971,  8975,  8982,  8992,  9000,  9009,  9011,  9010,  9016,
2197     9015,  9038,  9039,  9043,  9044,  9048,  9049,  9050,  9051,  9052,
2198     9053,  9057,  9058,  9063,  9062,  9083,  9084,  9085,  9090,  9089,
2199     9099,  9106,  9112,  9121,  9122,  9126,  9142,  9141,  9154,  9155,
2200     9159,  9160,  9164,  9175,  9186,  9187,  9192,  9191,  9206,  9207,
2201     9211,  9212,  9216,  9227,  9239,  9238,  9246,  9246,  9255,  9256,
2202     9261,  9262,  9272,  9271,  9286,  9285,  9304,  9303,  9320,  9318,
2203     9339,  9340,  9345,  9344,  9358,  9368,  9357,  9378,  9390,  9454,
2204     9459,  9474,  9475,  9490,  9489,  9505,  9504,  9517,  9519,  9534,
2205     9542,  9540,  9556,  9574,  9576,  9586,  9590,  9631,  9640,  9650,
2206     9651,  9655,  9659,  9665,  9672,  9674,  9683,  9687,  9691,  9698,
2207     9707,  9711,  9718,  9735,  9738,  9746,  9749,  9756,  9760,  9764,
2208     9768,  9775,  9776,  9780,  9781,  9790,  9803,  9809,  9820,  9823,
2209     9832,  9835,  9840,  9848,  9849,  9850,  9864,  9869,  9891,  9897,
2210     9903,  9909,  9910,  9911,  9912,  9913,  9917,  9918,  9919,  9923,
2211     9924,  9925,  9929,  9930,  9935,  9986,  9993, 10036, 10042, 10048,
2212    10054, 10060, 10066, 10072, 10078, 10084, 10090, 10096, 10102, 10108,
2213    10112, 10118, 10127, 10133, 10141, 10147, 10156, 10162, 10170, 10180,
2214    10186, 10193, 10200, 10208, 10214, 10223, 10227, 10233, 10239, 10245,
2215    10251, 10258, 10264, 10270, 10276, 10282, 10289, 10295, 10301, 10307,
2216    10313, 10319, 10325, 10331, 10337, 10341, 10342, 10346, 10347, 10351,
2217    10352, 10356, 10357, 10361, 10362, 10363, 10364, 10365, 10366, 10370,
2218    10371, 10376, 10380, 10384, 10385, 10386, 10390, 10391, 10392, 10393,
2219    10394, 10395, 10399, 10400, 10401, 10406, 10405, 10411, 10419, 10442,
2220    10449, 10458, 10459, 10460, 10461, 10465, 10474, 10475, 10476, 10477,
2221    10478, 10479, 10480, 10481, 10513, 10514, 10515, 10516, 10517, 10518,
2222    10519, 10520, 10521, 10529, 10537, 10538, 10545, 10551, 10556, 10566,
2223    10571, 10576, 10582, 10587, 10593, 10604, 10611, 10616, 10621, 10626,
2224    10631, 10636, 10641, 10649, 10650, 10651, 10652, 10660, 10661, 10669,
2225    10670, 10676, 10680, 10686, 10692, 10701, 10702, 10711, 10718, 10732,
2226    10738, 10744, 10753, 10762, 10768, 10774, 10780, 10786, 10801, 10812,
2227    10818, 10824, 10830, 10836, 10842, 10850, 10857, 10861, 10866, 10874,
2228    10895, 10902, 10908, 10915, 10922, 10928, 10934, 10940, 10946, 10952,
2229    10958, 10964, 10970, 10977, 10983, 10990, 10996, 11001, 11006, 11011,
2230    11016, 11034, 11040, 11046, 11051, 11058, 11065, 11073, 11080, 11087,
2231    11094, 11101, 11118, 11124, 11130, 11136, 11142, 11149, 11155, 11161,
2232    11170, 11181, 11188, 11194, 11200, 11207, 11215, 11221, 11227, 11232,
2233    11238, 11246, 11252, 11258, 11264, 11270, 11278, 11290, 11297, 11312,
2234    11318, 11325, 11332, 11339, 11346, 11353, 11357, 11364, 11382, 11381,
2235    11449, 11457, 11459, 11464, 11465, 11469, 11470, 11474, 11475, 11479,
2236    11486, 11494, 11521, 11527, 11533, 11539, 11545, 11551, 11560, 11567,
2237    11569, 11566, 11576, 11587, 11593, 11599, 11605, 11611, 11617, 11623,
2238    11629, 11635, 11642, 11641, 11666, 11675, 11693, 11695, 11697, 11712,
2239    11719, 11726, 11733, 11740, 11747, 11754, 11761, 11768, 11775, 11786,
2240    11793, 11804, 11815, 11835, 11834, 11840, 11857, 11863, 11872, 11881,
2241    11891, 11890, 11902, 11912, 11920, 11925, 11933, 11934, 11939, 11944,
2242    11947, 11949, 11953, 11958, 11966, 11967, 11971, 11975, 11982, 11989,
2243    11996, 12009, 12008, 12025, 12028, 12027, 12032, 12031, 12036, 12035,
2244    12039, 12044, 12045, 12049, 12050, 12051, 12052, 12053, 12054, 12055,
2245    12056, 12060, 12061, 12062, 12063, 12070, 12071, 12075, 12080, 12088,
2246    12089, 12093, 12100, 12108, 12117, 12127, 12128, 12137, 12146, 12158,
2247    12159, 12171, 12182, 12183, 12189, 12194, 12208, 12216, 12214, 12234,
2248    12232, 12245, 12257, 12255, 12275, 12274, 12286, 12299, 12297, 12318,
2249    12317, 12330, 12344, 12345, 12346, 12350, 12351, 12359, 12360, 12364,
2250    12373, 12374, 12375, 12380, 12384, 12385, 12389, 12390, 12394, 12395,
2251    12403, 12411, 12419, 12420, 12433, 12451, 12460, 12461, 12466, 12469,
2252    12470, 12471, 12475, 12476, 12481, 12480, 12486, 12485, 12493, 12494,
2253    12497, 12499, 12499, 12503, 12503, 12508, 12509, 12513, 12515, 12520,
2254    12521, 12525, 12536, 12550, 12551, 12552, 12553, 12554, 12555, 12556,
2255    12557, 12558, 12559, 12560, 12561, 12565, 12566, 12567, 12568, 12569,
2256    12570, 12571, 12572, 12573, 12577, 12578, 12579, 12580, 12583, 12585,
2257    12586, 12590, 12591, 12595, 12603, 12605, 12609, 12611, 12610, 12624,
2258    12627, 12626, 12644, 12646, 12650, 12655, 12663, 12664, 12681, 12704,
2259    12705, 12711, 12712, 12716, 12729, 12728, 12737, 12738, 12747, 12748,
2260    12752, 12753, 12757, 12758, 12772, 12773, 12777, 12787, 12796, 12803,
2261    12810, 12820, 12821, 12828, 12838, 12839, 12841, 12843, 12845, 12847,
2262    12856, 12860, 12861, 12865, 12879, 12880, 12886, 12885, 12896, 12902,
2263    12911, 12912, 12913, 12918, 12919, 12924, 12931, 12937, 12947, 12956,
2264    12962, 12968, 12977, 12982, 12987, 12991, 12997, 13003, 13012, 13021,
2265    13025, 13032, 13033, 13037, 13042, 13047, 13060, 13064, 13068, 13072,
2266    13077, 13080, 13084, 13097, 13105, 13118, 13120, 13124, 13125, 13129,
2267    13130, 13131, 13132, 13133, 13134, 13138, 13139, 13140, 13141, 13142,
2268    13146, 13147, 13148, 13149, 13153, 13154, 13155, 13156, 13157, 13161,
2269    13162, 13163, 13164, 13165, 13169, 13174, 13175, 13179, 13180, 13184,
2270    13185, 13186, 13191, 13190, 13222, 13223, 13227, 13228, 13232, 13242,
2271    13242, 13254, 13255, 13258, 13278, 13282, 13287, 13295, 13301, 13312,
2272    13300, 13314, 13329, 13341, 13340, 13363, 13362, 13372, 13371, 13394,
2273    13400, 13414, 13429, 13437, 13441, 13446, 13445, 13454, 13459, 13465,
2274    13470, 13475, 13482, 13480, 13494, 13495, 13499, 13511, 13524, 13525,
2275    13529, 13543, 13547, 13556, 13559, 13566, 13567, 13575, 13586, 13574,
2276    13601, 13611, 13600, 13626, 13634, 13635, 13642, 13646, 13647, 13656,
2277    13657, 13661, 13661, 13674, 13675, 13677, 13676, 13689, 13695, 13697,
2278    13701, 13703, 13709, 13713, 13714, 13718, 13719, 13723, 13733, 13734,
2279    13738, 13739, 13743, 13744, 13748, 13749, 13754, 13753, 13769, 13768,
2280    13783, 13784, 13788, 13789, 13793, 13798, 13806, 13814, 13825, 13826,
2281    13835, 13836, 13844, 13846, 13848, 13846, 13858, 13872, 13879, 13889,
2282    13878, 13918, 13919, 13923, 13930, 13938, 13939, 13943, 13953, 13954,
2283    13961, 13960, 13981, 13984, 13991, 13992, 14000, 14015, 14023, 14034,
2284    14033, 14048, 14047, 14063, 14065, 14069, 14070, 14074, 14089, 14107,
2285    14108, 14112, 14113, 14117, 14118, 14119, 14124, 14123, 14144, 14146,
2286    14149, 14151, 14154, 14155, 14158, 14162, 14166, 14170, 14174, 14178,
2287    14182, 14186, 14190, 14198, 14201, 14211, 14210, 14229, 14236, 14244,
2288    14252, 14260, 14268, 14276, 14283, 14290, 14296, 14298, 14300, 14309,
2289    14313, 14318, 14317, 14324, 14323, 14329, 14338, 14345, 14350, 14355,
2290    14360, 14365, 14370, 14372, 14374, 14376, 14383, 14391, 14393, 14401,
2291    14408, 14415, 14423, 14429, 14434, 14442, 14450, 14458, 14462, 14467,
2292    14474, 14479, 14486, 14493, 14499, 14505, 14511, 14519, 14524, 14531,
2293    14538, 14545, 14552, 14557, 14562, 14567, 14572, 14579, 14601, 14603,
2294    14605, 14610, 14611, 14614, 14616, 14620, 14621, 14625, 14626, 14630,
2295    14631, 14635, 14636, 14640, 14641, 14645, 14646, 14654, 14666, 14665,
2296    14684, 14683, 14693, 14694, 14695, 14696, 14697, 14698, 14702, 14703,
2297    14707, 14714, 14715, 14717, 14718, 14722, 14723, 14736, 14737, 14738,
2298    14753, 14752, 14764, 14763, 14775, 14780, 14781, 14796, 14799, 14798,
2299    14811, 14812, 14817, 14819, 14821, 14823, 14825, 14827, 14835, 14837,
2300    14839, 14841, 14846, 14848, 14856, 14858, 14860, 14862, 14864, 14881,
2301    14882, 14886, 14890, 14903, 14902, 14917, 14927, 14928, 14931, 14933,
2302    14934, 14938, 14954, 14955, 14960, 14959, 14969, 14970, 14974, 14974,
2303    14978, 14977, 14983, 14987, 14988, 14992, 14993, 15000, 15005, 15004,
2304    15019, 15018, 15033, 15034, 15035, 15039, 15040, 15041, 15050, 15051,
2305    15055, 15059, 15067, 15067, 15072, 15073, 15082, 15094, 15108, 15119,
2306    15132, 15093, 15145, 15146, 15150, 15151, 15155, 15156, 15164, 15168,
2307    15169, 15170, 15173, 15175, 15179, 15180, 15184, 15189, 15196, 15201,
2308    15208, 15210, 15214, 15215, 15219, 15224, 15232, 15233, 15237, 15239,
2309    15247, 15248, 15252, 15253, 15254, 15258, 15260, 15265, 15266, 15275,
2310    15276, 15280, 15281, 15285, 15298, 15303, 15308, 15313, 15321, 15329,
2311    15334, 15342, 15350, 15365, 15372, 15378, 15388, 15389, 15397, 15398,
2312    15399, 15400, 15414, 15420, 15426, 15432, 15438, 15444, 15463, 15473,
2313    15483, 15489, 15496, 15506, 15513, 15520, 15531, 15530, 15554, 15555,
2314    15560, 15561, 15568, 15566, 15593, 15594, 15600, 15605, 15614, 15632,
2315    15633, 15637, 15642, 15650, 15655, 15663, 15668, 15673, 15678, 15684,
2316    15689, 15697, 15702, 15707, 15712, 15718, 15726, 15727, 15738, 15746,
2317    15750, 15756, 15762, 15772, 15778, 15787, 15797, 15798, 15802, 15803,
2318    15804, 15808, 15816, 15824, 15832, 15840, 15841, 15849, 15850, 15858,
2319    15859, 15864, 15873, 15874, 15882, 15883, 15891, 15892, 15893, 15897,
2320    15908, 15937, 15946, 15946, 15948, 15958, 15959, 15960, 15961, 15962,
2321    15963, 15964, 15965, 15970, 15971, 15972, 15973, 15974, 15975, 15976,
2322    15977, 15978, 15986, 15987, 15988, 15989, 15993, 15994, 15995, 15996,
2323    15997, 15998, 15999, 16000, 16004, 16005, 16006, 16007, 16008, 16009,
2324    16010, 16011, 16012, 16016, 16017, 16018, 16019, 16020, 16021, 16022,
2325    16023, 16036, 16037, 16038, 16039, 16040, 16041, 16042, 16043, 16044,
2326    16045, 16046, 16047, 16048, 16049, 16050, 16051, 16052, 16053, 16054,
2327    16055, 16056, 16057, 16058, 16059, 16060, 16061, 16062, 16063, 16064,
2328    16065, 16066, 16067, 16068, 16069, 16070, 16071, 16072, 16073, 16074,
2329    16075, 16076, 16077, 16078, 16079, 16080, 16081, 16082, 16083, 16084,
2330    16085, 16086, 16087, 16088, 16089, 16090, 16131, 16132, 16133, 16134,
2331    16135, 16136, 16147, 16148, 16149, 16150, 16151, 16152, 16153, 16154,
2332    16155, 16156, 16160, 16161, 16162, 16169, 16170, 16171, 16175, 16176,
2333    16177, 16186, 16187, 16188, 16189, 16190, 16191, 16192, 16193, 16194,
2334    16195, 16196, 16197, 16198, 16199, 16200, 16201, 16202, 16203, 16204,
2335    16205, 16206, 16207, 16208, 16209, 16210, 16211, 16212, 16213, 16214,
2336    16215, 16216, 16217, 16218, 16219, 16227, 16228, 16229, 16230, 16231,
2337    16232, 16233, 16234, 16235, 16236, 16237, 16238, 16239, 16240, 16241,
2338    16242, 16243, 16244, 16245, 16246, 16247, 16248, 16249, 16250, 16251,
2339    16252, 16253, 16254, 16255, 16256, 16257, 16258, 16259, 16260, 16261,
2340    16262, 16263, 16264, 16265, 16266, 16267, 16268, 16269, 16270, 16271,
2341    16272, 16273, 16278, 16279, 16280, 16281, 16282, 16283, 16284, 16285,
2342    16286, 16287, 16288, 16289, 16290, 16291, 16292, 16293, 16294, 16295,
2343    16296, 16297, 16298, 16299, 16300, 16301, 16302, 16303, 16304, 16305,
2344    16306, 16307, 16308, 16309, 16310, 16311, 16312, 16313, 16314, 16315,
2345    16316, 16317, 16318, 16319, 16320, 16321, 16322, 16323, 16324, 16325,
2346    16326, 16327, 16328, 16329, 16330, 16331, 16332, 16333, 16334, 16335,
2347    16336, 16337, 16338, 16339, 16340, 16341, 16342, 16343, 16344, 16345,
2348    16346, 16347, 16348, 16349, 16350, 16351, 16352, 16353, 16354, 16355,
2349    16356, 16357, 16358, 16359, 16360, 16361, 16362, 16363, 16364, 16365,
2350    16366, 16367, 16368, 16369, 16370, 16371, 16372, 16373, 16374, 16375,
2351    16376, 16377, 16378, 16379, 16380, 16381, 16382, 16383, 16384, 16385,
2352    16386, 16387, 16388, 16389, 16390, 16391, 16392, 16393, 16394, 16395,
2353    16396, 16397, 16398, 16399, 16400, 16401, 16402, 16403, 16404, 16405,
2354    16406, 16407, 16408, 16409, 16410, 16411, 16412, 16413, 16414, 16415,
2355    16416, 16417, 16418, 16419, 16420, 16421, 16422, 16423, 16424, 16425,
2356    16426, 16427, 16428, 16429, 16430, 16431, 16432, 16433, 16434, 16435,
2357    16436, 16437, 16438, 16439, 16440, 16441, 16442, 16443, 16444, 16445,
2358    16446, 16447, 16448, 16449, 16450, 16451, 16452, 16453, 16454, 16455,
2359    16456, 16457, 16458, 16459, 16460, 16461, 16462, 16463, 16464, 16465,
2360    16466, 16467, 16468, 16469, 16470, 16471, 16472, 16473, 16474, 16475,
2361    16476, 16477, 16478, 16479, 16480, 16481, 16482, 16483, 16484, 16485,
2362    16486, 16487, 16488, 16489, 16490, 16491, 16492, 16493, 16494, 16495,
2363    16496, 16497, 16498, 16499, 16500, 16501, 16502, 16503, 16504, 16505,
2364    16506, 16507, 16508, 16509, 16510, 16511, 16512, 16513, 16514, 16515,
2365    16516, 16517, 16518, 16519, 16520, 16521, 16522, 16523, 16524, 16525,
2366    16526, 16527, 16528, 16529, 16530, 16531, 16532, 16533, 16534, 16535,
2367    16536, 16537, 16538, 16539, 16540, 16541, 16542, 16543, 16544, 16545,
2368    16546, 16547, 16559, 16558, 16575, 16581, 16574, 16601, 16602, 16608,
2369    16607, 16614, 16613, 16623, 16622, 16633, 16632, 16638, 16646, 16648,
2370    16653, 16653, 16663, 16662, 16677, 16676, 16681, 16685, 16686, 16687,
2371    16691, 16692, 16693, 16694, 16698, 16699, 16700, 16701, 16706, 16711,
2372    16716, 16725, 16730, 16735, 16740, 16745, 16750, 16755, 16760, 16774,
2373    16785, 16804, 16822, 16834, 16842, 16847, 16863, 16864, 16865, 16866,
2374    16870, 16889, 16907, 16908, 16912, 16913, 16914, 16915, 16919, 16933,
2375    16937, 16942, 16947, 16958, 16959, 16960, 16966, 16972, 16984, 16983,
2376    16997, 16998, 17004, 17013, 17014, 17018, 17019, 17023, 17042, 17043,
2377    17044, 17049, 17050, 17055, 17054, 17072, 17071, 17083, 17092, 17102,
2378    17101, 17142, 17143, 17147, 17148, 17152, 17153, 17154, 17155, 17157,
2379    17156, 17169, 17170, 17171, 17172, 17173, 17179, 17184, 17190, 17196,
2380    17202, 17209, 17216, 17220, 17227, 17236, 17238, 17243, 17248, 17255,
2381    17262, 17269, 17276, 17283, 17290, 17302, 17303, 17307, 17308, 17312,
2382    17317, 17325, 17335, 17354, 17357, 17359, 17363, 17364, 17371, 17373,
2383    17377, 17378, 17383, 17382, 17386, 17385, 17389, 17388, 17392, 17391,
2384    17394, 17395, 17396, 17397, 17398, 17399, 17400, 17401, 17402, 17403,
2385    17404, 17405, 17406, 17407, 17408, 17409, 17410, 17411, 17412, 17413,
2386    17414, 17415, 17416, 17417, 17418, 17419, 17420, 17424, 17425, 17429,
2387    17430, 17434, 17441, 17448, 17458, 17468, 17477, 17486, 17499, 17504,
2388    17512, 17517, 17525, 17530, 17537, 17537, 17538, 17538, 17541, 17547,
2389    17553, 17558, 17565, 17571, 17578, 17587, 17591, 17597, 17607, 17611,
2390    17615, 17616, 17620, 17648, 17650, 17654, 17658, 17662, 17669, 17674,
2391    17679, 17684, 17689, 17697, 17698, 17702, 17703, 17708, 17709, 17713,
2392    17714, 17718, 17719, 17723, 17724, 17729, 17728, 17738, 17747, 17748,
2393    17752, 17753, 17758, 17759, 17760, 17765, 17766, 17767, 17771, 17783,
2394    17792, 17798, 17807, 17816, 17829, 17831, 17833, 17841, 17842, 17843,
2395    17847, 17848, 17854, 17855, 17856, 17857, 17858, 17859, 17869, 17870,
2396    17875, 17888, 17902, 17903, 17904, 17908, 17909, 17913, 17914, 17919,
2397    17920, 17924, 17930, 17939, 17939, 17953, 17954, 17955, 17956, 17966,
2398    17968, 17974, 17980, 17990, 17999, 18005, 18010, 18014, 17988, 18064,
2399    18063, 18080, 18079, 18095, 18103, 18094, 18117, 18121, 18125, 18129,
2400    18133, 18137, 18145, 18146, 18162, 18169, 18176, 18186, 18187, 18188,
2401    18192, 18193, 18194, 18198, 18199, 18204, 18206, 18205, 18211, 18212,
2402    18216, 18221, 18228, 18233, 18242
2403 };
2404 #endif
2405 
2406 #if YYDEBUG || YYERROR_VERBOSE || 0
2407 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
2408    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
2409 static const char *const yytname[] =
2410 {
2411   "$end", "error", "$undefined", "ABORT_SYM", "ACCESSIBLE_SYM", "ADD",
2412   "ALL", "ALTER", "ANALYZE_SYM", "AND_AND_SYM", "AND_SYM", "AS", "ASC",
2413   "ASENSITIVE_SYM", "BEFORE_SYM", "BETWEEN_SYM", "BIGINT", "BINARY",
2414   "BIN_NUM", "BIT_AND", "BIT_OR", "BIT_XOR", "BLOB_MARIADB_SYM",
2415   "BLOB_ORACLE_SYM", "BODY_ORACLE_SYM", "BOTH", "BY", "CALL_SYM",
2416   "CASCADE", "CASE_SYM", "CAST_SYM", "CHANGE", "CHAR_SYM", "CHECK_SYM",
2417   "COLLATE_SYM", "CONDITION_SYM", "CONSTRAINT", "CONTINUE_MARIADB_SYM",
2418   "CONTINUE_ORACLE_SYM", "CONVERT_SYM", "COUNT_SYM", "CREATE", "CROSS",
2419   "CUME_DIST_SYM", "CURDATE", "CURRENT_USER", "CURRENT_ROLE", "CURSOR_SYM",
2420   "CURTIME", "DATABASE", "DATABASES", "DATE_ADD_INTERVAL",
2421   "DATE_SUB_INTERVAL", "DAY_HOUR_SYM", "DAY_MICROSECOND_SYM",
2422   "DAY_MINUTE_SYM", "DAY_SECOND_SYM", "DECIMAL_NUM", "DECIMAL_SYM",
2423   "DECLARE_MARIADB_SYM", "DECLARE_ORACLE_SYM", "DEFAULT",
2424   "DELETE_DOMAIN_ID_SYM", "DELETE_SYM", "DENSE_RANK_SYM", "DESC",
2425   "DESCRIBE", "DETERMINISTIC_SYM", "DISTINCT", "DIV_SYM", "DOUBLE_SYM",
2426   "DO_DOMAIN_IDS_SYM", "DOT_DOT_SYM", "DROP", "DUAL_SYM", "EACH_SYM",
2427   "ELSE", "ELSEIF_MARIADB_SYM", "ELSIF_ORACLE_SYM", "ENCLOSED",
2428   "END_OF_INPUT", "EQUAL_SYM", "ESCAPED", "EXCEPT_SYM", "EXISTS",
2429   "EXTRACT_SYM", "FALSE_SYM", "FETCH_SYM", "FIRST_VALUE_SYM", "FLOAT_NUM",
2430   "FLOAT_SYM", "FOREIGN", "FOR_SYM", "FOR_SYSTEM_TIME_SYM", "FROM",
2431   "FULLTEXT_SYM", "GE", "GOTO_ORACLE_SYM", "GRANT", "GROUP_SYM",
2432   "GROUP_CONCAT_SYM", "LAG_SYM", "LEAD_SYM", "HAVING", "HEX_NUM",
2433   "HEX_STRING", "HOUR_MICROSECOND_SYM", "HOUR_MINUTE_SYM",
2434   "HOUR_SECOND_SYM", "IDENT", "IDENT_QUOTED", "IF_SYM",
2435   "IGNORE_DOMAIN_IDS_SYM", "IGNORE_SYM", "INDEX_SYM", "INFILE",
2436   "INNER_SYM", "INOUT_SYM", "INSENSITIVE_SYM", "INSERT", "INTERSECT_SYM",
2437   "INTERVAL_SYM", "INTO", "INT_SYM", "IN_SYM", "IS", "ITERATE_SYM",
2438   "JOIN_SYM", "KEYS", "KEY_SYM", "KILL_SYM", "LE", "LEADING", "LEAVE_SYM",
2439   "LEFT", "LEFT_PAREN_ALT", "LEFT_PAREN_WITH", "LEFT_PAREN_LIKE",
2440   "LEX_HOSTNAME", "LIKE", "LIMIT", "LINEAR_SYM", "LINES", "LOAD",
2441   "LOCATOR_SYM", "LOCK_SYM", "LONGBLOB", "LONGTEXT", "LONG_NUM",
2442   "LONG_SYM", "LOOP_SYM", "LOW_PRIORITY",
2443   "MASTER_SSL_VERIFY_SERVER_CERT_SYM", "MATCH", "MAX_SYM", "MAXVALUE_SYM",
2444   "MEDIAN_SYM", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT",
2445   "MINUTE_MICROSECOND_SYM", "MINUTE_SECOND_SYM", "MIN_SYM", "MODIFIES_SYM",
2446   "MOD_SYM", "MYSQL_CONCAT_SYM", "NATURAL", "NCHAR_STRING", "NE", "NEG",
2447   "NOT2_SYM", "NOT_SYM", "NOW_SYM", "NO_WRITE_TO_BINLOG", "NTILE_SYM",
2448   "NULL_SYM", "NUM", "NUMERIC_SYM", "NTH_VALUE_SYM", "ON", "OPTIMIZE",
2449   "OPTIONALLY", "ORACLE_CONCAT_SYM", "OR2_SYM", "ORDER_SYM", "OR_SYM",
2450   "OTHERS_ORACLE_SYM", "OUTER", "OUTFILE", "OUT_SYM", "OVER_SYM",
2451   "PACKAGE_ORACLE_SYM", "PAGE_CHECKSUM_SYM", "PARAM_MARKER",
2452   "PARSE_VCOL_EXPR_SYM", "PARTITION_SYM", "PERCENT_ORACLE_SYM",
2453   "PERCENT_RANK_SYM", "PERCENTILE_CONT_SYM", "PERCENTILE_DISC_SYM",
2454   "PORTION_SYM", "POSITION_SYM", "PRECISION", "PRIMARY_SYM",
2455   "PROCEDURE_SYM", "PURGE", "RAISE_ORACLE_SYM", "RANGE_SYM", "RANK_SYM",
2456   "READS_SYM", "READ_SYM", "READ_WRITE_SYM", "REAL", "RECURSIVE_SYM",
2457   "REF_SYSTEM_ID_SYM", "REFERENCES", "REGEXP", "RELEASE_SYM", "RENAME",
2458   "REPEAT_SYM", "REPLACE", "REQUIRE_SYM", "RESIGNAL_SYM", "RESTRICT",
2459   "RETURNING_SYM", "RETURN_MARIADB_SYM", "RETURN_ORACLE_SYM", "REVOKE",
2460   "RIGHT", "ROWS_SYM", "ROWTYPE_ORACLE_SYM", "ROW_NUMBER_SYM",
2461   "SECOND_MICROSECOND_SYM", "SELECT_SYM", "SENSITIVE_SYM", "SEPARATOR_SYM",
2462   "SERVER_OPTIONS", "SET", "SET_VAR", "SHIFT_LEFT", "SHIFT_RIGHT", "SHOW",
2463   "SIGNAL_SYM", "SMALLINT", "SPATIAL_SYM", "SPECIFIC_SYM",
2464   "SQLEXCEPTION_SYM", "SQLSTATE_SYM", "SQLWARNING_SYM", "SQL_BIG_RESULT",
2465   "SQL_SMALL_RESULT", "SQL_SYM", "SSL_SYM", "STARTING",
2466   "STATS_AUTO_RECALC_SYM", "STATS_PERSISTENT_SYM",
2467   "STATS_SAMPLE_PAGES_SYM", "STDDEV_SAMP_SYM", "STD_SYM", "STRAIGHT_JOIN",
2468   "SUBSTRING", "SUM_SYM", "SYSDATE", "TABLE_REF_PRIORITY", "TABLE_SYM",
2469   "TERMINATED", "TEXT_STRING", "THEN_SYM", "TINYBLOB", "TINYINT",
2470   "TINYTEXT", "TO_SYM", "TRAILING", "TRIGGER_SYM", "TRIM", "TRUE_SYM",
2471   "ULONGLONG_NUM", "UNDERSCORE_CHARSET", "UNDO_SYM", "UNION_SYM",
2472   "UNIQUE_SYM", "UNLOCK_SYM", "UNSIGNED", "UPDATE_SYM", "USAGE", "USE_SYM",
2473   "USING", "UTC_DATE_SYM", "UTC_TIMESTAMP_SYM", "UTC_TIME_SYM", "VALUES",
2474   "VALUES_IN_SYM", "VALUES_LESS_SYM", "VARBINARY", "VARCHAR",
2475   "VARIANCE_SYM", "VARYING", "VAR_SAMP_SYM", "WHEN_SYM", "WHERE",
2476   "WHILE_SYM", "WITH", "WITH_CUBE_SYM", "WITH_ROLLUP_SYM",
2477   "WITH_SYSTEM_SYM", "XOR", "YEAR_MONTH_SYM", "ZEROFILL",
2478   "IMPOSSIBLE_ACTION", "BODY_MARIADB_SYM", "ELSEIF_ORACLE_SYM",
2479   "ELSIF_MARIADB_SYM", "EXCEPTION_ORACLE_SYM", "GOTO_MARIADB_SYM",
2480   "OTHERS_MARIADB_SYM", "PACKAGE_MARIADB_SYM", "RAISE_MARIADB_SYM",
2481   "ROWTYPE_MARIADB_SYM", "ACCOUNT_SYM", "ACTION", "ADMIN_SYM",
2482   "ADDDATE_SYM", "AFTER_SYM", "AGAINST", "AGGREGATE_SYM", "ALGORITHM_SYM",
2483   "ALWAYS_SYM", "ANY_SYM", "ASCII_SYM", "AT_SYM", "ATOMIC_SYM",
2484   "AUTHORS_SYM", "AUTOEXTEND_SIZE_SYM", "AUTO_INC", "AUTO_SYM",
2485   "AVG_ROW_LENGTH", "AVG_SYM", "BACKUP_SYM", "BEGIN_MARIADB_SYM",
2486   "BEGIN_ORACLE_SYM", "BINLOG_SYM", "BIT_SYM", "BLOCK_SYM", "BOOL_SYM",
2487   "BOOLEAN_SYM", "BTREE_SYM", "BYTE_SYM", "CACHE_SYM", "CASCADED",
2488   "CATALOG_NAME_SYM", "CHAIN_SYM", "CHANGED", "CHARSET", "CHECKPOINT_SYM",
2489   "CHECKSUM_SYM", "CIPHER_SYM", "CLASS_ORIGIN_SYM", "CLIENT_SYM",
2490   "CLOB_MARIADB_SYM", "CLOB_ORACLE_SYM", "CLOSE_SYM", "COALESCE",
2491   "CODE_SYM", "COLLATION_SYM", "COLON_ORACLE_SYM", "COLUMNS",
2492   "COLUMN_ADD_SYM", "COLUMN_CHECK_SYM", "COLUMN_CREATE_SYM",
2493   "COLUMN_DELETE_SYM", "COLUMN_GET_SYM", "COLUMN_SYM", "COLUMN_NAME_SYM",
2494   "COMMENT_SYM", "COMMITTED_SYM", "COMMIT_SYM", "COMPACT_SYM",
2495   "COMPLETION_SYM", "COMPRESSED_SYM", "CONCURRENT", "CONNECTION_SYM",
2496   "CONSISTENT_SYM", "CONSTRAINT_CATALOG_SYM", "CONSTRAINT_NAME_SYM",
2497   "CONSTRAINT_SCHEMA_SYM", "CONTAINS_SYM", "CONTEXT_SYM",
2498   "CONTRIBUTORS_SYM", "CPU_SYM", "CUBE_SYM", "CURRENT_SYM",
2499   "CURRENT_POS_SYM", "CURSOR_NAME_SYM", "CYCLE_SYM", "DATAFILE_SYM",
2500   "DATA_SYM", "DATETIME", "DATE_FORMAT_SYM", "DATE_SYM", "DAY_SYM",
2501   "DEALLOCATE_SYM", "DECODE_MARIADB_SYM", "DECODE_ORACLE_SYM",
2502   "DEFINER_SYM", "DELAYED_SYM", "DELAY_KEY_WRITE_SYM", "DES_KEY_FILE",
2503   "DIAGNOSTICS_SYM", "DIRECTORY_SYM", "DISABLE_SYM", "DISCARD", "DISK_SYM",
2504   "DO_SYM", "DUMPFILE", "DUPLICATE_SYM", "DYNAMIC_SYM", "ENABLE_SYM",
2505   "END", "ENDS_SYM", "ENGINES_SYM", "ENGINE_SYM", "ENUM", "ERROR_SYM",
2506   "ERRORS", "ESCAPE_SYM", "EVENTS_SYM", "EVENT_SYM", "EVERY_SYM",
2507   "EXCHANGE_SYM", "EXAMINED_SYM", "EXCLUDE_SYM", "EXECUTE_SYM",
2508   "EXCEPTION_MARIADB_SYM", "EXIT_MARIADB_SYM", "EXIT_ORACLE_SYM",
2509   "EXPANSION_SYM", "EXPIRE_SYM", "EXPORT_SYM", "EXTENDED_SYM",
2510   "EXTENT_SIZE_SYM", "FAST_SYM", "FAULTS_SYM", "FILE_SYM", "FIRST_SYM",
2511   "FIXED_SYM", "FLUSH_SYM", "FOLLOWS_SYM", "FOLLOWING_SYM", "FORCE_SYM",
2512   "FORMAT_SYM", "FOUND_SYM", "FULL", "FUNCTION_SYM", "GENERAL",
2513   "GENERATED_SYM", "GEOMETRYCOLLECTION", "GEOMETRY_SYM", "GET_FORMAT",
2514   "GET_SYM", "GLOBAL_SYM", "GRANTS", "HANDLER_SYM", "HARD_SYM", "HASH_SYM",
2515   "HELP_SYM", "HIGH_PRIORITY", "HISTORY_SYM", "HOST_SYM", "HOSTS_SYM",
2516   "HOUR_SYM", "ID_SYM", "IDENTIFIED_SYM", "IGNORE_SERVER_IDS_SYM",
2517   "IMMEDIATE_SYM", "IMPORT", "INCREMENT_SYM", "INDEXES",
2518   "INITIAL_SIZE_SYM", "INSERT_METHOD", "INSTALL_SYM", "INVOKER_SYM",
2519   "IO_SYM", "IPC_SYM", "ISOLATION", "ISOPEN_SYM", "ISSUER_SYM",
2520   "INVISIBLE_SYM", "JSON_SYM", "KEY_BLOCK_SIZE", "LANGUAGE_SYM",
2521   "LAST_SYM", "LAST_VALUE", "LASTVAL_SYM", "LEAVES", "LESS_SYM",
2522   "LEVEL_SYM", "LINESTRING", "LIST_SYM", "LOCAL_SYM", "LOCKS_SYM",
2523   "LOGFILE_SYM", "LOGS_SYM", "MASTER_CONNECT_RETRY_SYM",
2524   "MASTER_DELAY_SYM", "MASTER_GTID_POS_SYM", "MASTER_HOST_SYM",
2525   "MASTER_LOG_FILE_SYM", "MASTER_LOG_POS_SYM", "MASTER_PASSWORD_SYM",
2526   "MASTER_PORT_SYM", "MASTER_SERVER_ID_SYM", "MASTER_SSL_CAPATH_SYM",
2527   "MASTER_SSL_CA_SYM", "MASTER_SSL_CERT_SYM", "MASTER_SSL_CIPHER_SYM",
2528   "MASTER_SSL_CRL_SYM", "MASTER_SSL_CRLPATH_SYM", "MASTER_SSL_KEY_SYM",
2529   "MASTER_SSL_SYM", "MASTER_SYM", "MASTER_USER_SYM", "MASTER_USE_GTID_SYM",
2530   "MASTER_HEARTBEAT_PERIOD_SYM", "MAX_CONNECTIONS_PER_HOUR",
2531   "MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SIZE_SYM",
2532   "MAX_UPDATES_PER_HOUR", "MAX_STATEMENT_TIME_SYM",
2533   "MAX_USER_CONNECTIONS_SYM", "MEDIUM_SYM", "MEMORY_SYM", "MERGE_SYM",
2534   "MESSAGE_TEXT_SYM", "MICROSECOND_SYM", "MIGRATE_SYM", "MINUTE_SYM",
2535   "MINVALUE_SYM", "MIN_ROWS", "MODE_SYM", "MODIFY_SYM", "MONTH_SYM",
2536   "MULTILINESTRING", "MULTIPOINT", "MULTIPOLYGON", "MUTEX_SYM",
2537   "MYSQL_SYM", "MYSQL_ERRNO_SYM", "NAMES_SYM", "NAME_SYM", "NATIONAL_SYM",
2538   "NCHAR_SYM", "NEVER_SYM", "NEW_SYM", "NEXT_SYM", "NEXTVAL_SYM",
2539   "NOCACHE_SYM", "NOCYCLE_SYM", "NODEGROUP_SYM", "NONE_SYM",
2540   "NOTFOUND_SYM", "NO_SYM", "NOMAXVALUE_SYM", "NOMINVALUE_SYM",
2541   "NO_WAIT_SYM", "NOWAIT_SYM", "NUMBER_MARIADB_SYM", "NUMBER_ORACLE_SYM",
2542   "NVARCHAR_SYM", "OF_SYM", "OFFSET_SYM", "OLD_PASSWORD_SYM", "ONE_SYM",
2543   "ONLY_SYM", "ONLINE_SYM", "OPEN_SYM", "OPTIONS_SYM", "OPTION",
2544   "OWNER_SYM", "PACK_KEYS_SYM", "PAGE_SYM", "PARSER_SYM", "PARTIAL",
2545   "PARTITIONS_SYM", "PARTITIONING_SYM", "PASSWORD_SYM", "PERIOD_SYM",
2546   "PERSISTENT_SYM", "PHASE_SYM", "PLUGINS_SYM", "PLUGIN_SYM", "POINT_SYM",
2547   "POLYGON", "PORT_SYM", "PRECEDES_SYM", "PRECEDING_SYM", "PREPARE_SYM",
2548   "PRESERVE_SYM", "PREV_SYM", "PREVIOUS_SYM", "PRIVILEGES", "PROCESS",
2549   "PROCESSLIST_SYM", "PROFILE_SYM", "PROFILES_SYM", "PROXY_SYM",
2550   "QUARTER_SYM", "QUERY_SYM", "QUICK", "RAW_MARIADB_SYM", "RAW_ORACLE_SYM",
2551   "READ_ONLY_SYM", "REBUILD_SYM", "RECOVER_SYM", "REDOFILE_SYM",
2552   "REDO_BUFFER_SIZE_SYM", "REDUNDANT_SYM", "RELAY", "RELAYLOG_SYM",
2553   "RELAY_LOG_FILE_SYM", "RELAY_LOG_POS_SYM", "RELAY_THREAD", "RELOAD",
2554   "REMOVE_SYM", "REORGANIZE_SYM", "REPAIR", "REPEATABLE_SYM",
2555   "REPLICATION", "RESET_SYM", "RESTART_SYM", "RESOURCES", "RESTORE_SYM",
2556   "RESUME_SYM", "RETURNED_SQLSTATE_SYM", "RETURNS_SYM", "REUSE_SYM",
2557   "REVERSE_SYM", "ROLE_SYM", "ROLLBACK_SYM", "ROLLUP_SYM", "ROUTINE_SYM",
2558   "ROWCOUNT_SYM", "ROW_SYM", "ROW_COUNT_SYM", "ROW_FORMAT_SYM",
2559   "RTREE_SYM", "SAVEPOINT_SYM", "SCHEDULE_SYM", "SCHEMA_NAME_SYM",
2560   "SECOND_SYM", "SECURITY_SYM", "SEQUENCE_SYM", "SERIALIZABLE_SYM",
2561   "SERIAL_SYM", "SESSION_SYM", "SERVER_SYM", "SETVAL_SYM", "SHARE_SYM",
2562   "SHUTDOWN", "SIGNED_SYM", "SIMPLE_SYM", "SLAVE", "SLAVES",
2563   "SLAVE_POS_SYM", "SLOW", "SNAPSHOT_SYM", "SOCKET_SYM", "SOFT_SYM",
2564   "SONAME_SYM", "SOUNDS_SYM", "SOURCE_SYM", "SQL_BUFFER_RESULT",
2565   "SQL_CACHE_SYM", "SQL_CALC_FOUND_ROWS", "SQL_NO_CACHE_SYM", "SQL_THREAD",
2566   "STAGE_SYM", "STARTS_SYM", "START_SYM", "STATEMENT_SYM", "STATUS_SYM",
2567   "STOP_SYM", "STORAGE_SYM", "STORED_SYM", "STRING_SYM",
2568   "SUBCLASS_ORIGIN_SYM", "SUBDATE_SYM", "SUBJECT_SYM", "SUBPARTITIONS_SYM",
2569   "SUBPARTITION_SYM", "SUPER_SYM", "SUSPEND_SYM", "SWAPS_SYM",
2570   "SWITCHES_SYM", "SYSTEM", "SYSTEM_TIME_SYM", "TABLES", "TABLESPACE",
2571   "TABLE_CHECKSUM_SYM", "TABLE_NAME_SYM", "TEMPORARY", "TEMPTABLE_SYM",
2572   "TEXT_SYM", "THAN_SYM", "TIES_SYM", "TIMESTAMP", "TIMESTAMP_ADD",
2573   "TIMESTAMP_DIFF", "TIME_SYM", "TRANSACTION_SYM", "TRANSACTIONAL_SYM",
2574   "TRIGGERS_SYM", "TRIM_ORACLE", "TRUNCATE_SYM", "TYPES_SYM", "TYPE_SYM",
2575   "UDF_RETURNS_SYM", "UNBOUNDED_SYM", "UNCOMMITTED_SYM", "UNDEFINED_SYM",
2576   "UNDOFILE_SYM", "UNDO_BUFFER_SIZE_SYM", "UNICODE_SYM", "UNINSTALL_SYM",
2577   "UNKNOWN_SYM", "UNTIL_SYM", "UPGRADE_SYM", "USER_SYM", "USE_FRM",
2578   "VALUE_SYM", "VARCHAR2_MARIADB_SYM", "VARCHAR2_ORACLE_SYM", "VARIABLES",
2579   "VERSIONING_SYM", "VIA_SYM", "VIEW_SYM", "VIRTUAL_SYM", "WAIT_SYM",
2580   "WARNINGS", "WEEK_SYM", "WEIGHT_STRING_SYM", "WINDOW_SYM", "WITHIN",
2581   "WITHOUT", "WORK_SYM", "WRAPPER_SYM", "WRITE_SYM", "X509_SYM", "XA_SYM",
2582   "XML_SYM", "YEAR_SYM", "CONDITIONLESS_JOIN", "ON_SYM", "PREC_BELOW_NOT",
2583   "'='", "'>'", "'<'", "'|'", "'&'", "'-'", "'+'", "'*'", "'/'", "'%'",
2584   "'^'", "'~'", "SUBQUERY_AS_EXPR",
2585   "PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE", "USER",
2586   "PREC_BELOW_CONTRACTION_TOKEN2", "'('", "')'", "EMPTY_FROM_CLAUSE",
2587   "','", "'!'", "'{'", "'}'", "';'", "'.'", "'@'", "':'", "$accept",
2588   "query", "$@1", "opt_end_of_input", "verb_clause", "statement",
2589   "deallocate", "deallocate_or_drop", "prepare", "$@2", "execute", "$@3",
2590   "$@4", "execute_using", "$@5", "execute_params", "help", "$@6", "change",
2591   "$@7", "master_defs", "master_def", "ignore_server_id_list",
2592   "ignore_server_id", "do_domain_id_list", "do_domain_id",
2593   "ignore_domain_id_list", "ignore_domain_id", "master_file_def",
2594   "optional_connection_name", "connection_name", "create", "$@8", "$@9",
2595   "$@10", "$@11", "$@12", "$@13", "$@14", "$@15", "$@16", "$@17", "$@18",
2596   "$@19", "$@20", "$@21", "$@22", "$@23", "$@24", "$@25", "opt_sequence",
2597   "sequence_defs", "sequence_def", "server_def", "$@26",
2598   "server_options_list", "server_option", "event_tail", "$@27",
2599   "ev_schedule_time", "$@28", "opt_ev_status", "ev_starts", "ev_ends",
2600   "opt_ev_on_completion", "ev_on_completion", "opt_ev_comment",
2601   "ev_sql_stmt", "$@29", "clear_privileges", "opt_aggregate", "sp_name",
2602   "sp_a_chistics", "sp_c_chistics", "sp_chistic", "sp_c_chistic",
2603   "sp_suid", "call", "$@30", "opt_sp_cparam_list", "opt_sp_cparams",
2604   "sp_cparams", "sp_fdparam_list", "$@31", "sp_fdparams", "sp_param_name",
2605   "sp_param_name_and_type", "sp_pdparam_list", "sp_pdparams", "sp_pdparam",
2606   "sp_opt_inout", "sp_parenthesized_pdparam_list", "$@32", "sp_proc_stmts",
2607   "sp_proc_stmts1", "sp_decls", "sp_decl",
2608   "optionally_qualified_column_ident", "row_field_name",
2609   "row_field_definition", "row_field_definition_list", "row_type_body",
2610   "sp_decl_idents_init_vars", "sp_decl_variable_list", "sp_decl_body",
2611   "$@33", "sp_decl_handler", "$@34",
2612   "opt_parenthesized_cursor_formal_parameters", "sp_cursor_stmt_lex",
2613   "sp_cursor_stmt", "$@35", "sp_handler_type", "sp_hcond_list",
2614   "sp_hcond_element", "sp_cond", "sqlstate", "opt_value", "sp_hcond",
2615   "raise_stmt_oracle", "signal_stmt", "signal_value", "opt_signal_value",
2616   "opt_set_signal_information", "signal_information_item_list",
2617   "signal_allowed_expr", "signal_condition_information_item_name",
2618   "resignal_stmt", "get_diagnostics", "which_area",
2619   "diagnostics_information", "statement_information",
2620   "statement_information_item", "simple_target_specification",
2621   "statement_information_item_name", "condition_number",
2622   "condition_information", "condition_information_item",
2623   "condition_information_item_name", "sp_decl_ident", "sp_decl_idents",
2624   "sp_opt_default", "sp_proc_stmt_in_returns_clause", "sp_proc_stmt",
2625   "sp_proc_stmt_compound_ok", "sp_proc_stmt_if", "$@36",
2626   "sp_proc_stmt_statement", "$@37", "RETURN_ALLMODES_SYM",
2627   "sp_proc_stmt_return", "$@38", "reset_lex_expr", "$@39",
2628   "sp_proc_stmt_exit_oracle", "sp_proc_stmt_continue_oracle",
2629   "sp_proc_stmt_leave", "sp_proc_stmt_iterate", "sp_proc_stmt_goto_oracle",
2630   "assignment_source_lex", "assignment_source_expr", "$@40",
2631   "for_loop_bound_expr", "$@41", "cursor_actual_parameters",
2632   "opt_parenthesized_cursor_actual_parameters", "sp_proc_stmt_open",
2633   "sp_proc_stmt_fetch_head", "sp_proc_stmt_fetch", "sp_proc_stmt_close",
2634   "sp_fetch_list", "sp_if", "$@42", "$@43", "$@44", "sp_elseifs",
2635   "case_stmt_specification", "$@45", "case_stmt_body", "$@46", "$@47",
2636   "simple_when_clause_list", "searched_when_clause_list",
2637   "simple_when_clause", "$@48", "$@49", "searched_when_clause", "$@50",
2638   "$@51", "else_clause_opt", "sp_label", "sp_opt_label", "sp_block_label",
2639   "sp_labeled_block", "$@52", "sp_unlabeled_block", "$@53",
2640   "sp_unlabeled_block_not_atomic", "$@54", "opt_sp_for_loop_direction",
2641   "sp_for_loop_index_and_bounds", "$@55", "sp_for_loop_bounds",
2642   "loop_body", "while_body", "$@56", "repeat_body", "$@57",
2643   "pop_sp_loop_label", "sp_labeled_control", "$@58", "$@59", "$@60",
2644   "$@61", "$@62", "$@63", "sp_unlabeled_control", "$@64", "$@65", "$@66",
2645   "$@67", "$@68", "trg_action_time", "trg_event",
2646   "change_tablespace_access", "change_tablespace_info", "tablespace_info",
2647   "opt_logfile_group_name", "alter_tablespace_info", "logfile_group_info",
2648   "alter_logfile_group_info", "add_log_file", "change_ts_option_list",
2649   "$@69", "change_ts_options", "change_ts_option",
2650   "tablespace_option_list", "tablespace_options", "tablespace_option",
2651   "alter_tablespace_option_list", "alter_tablespace_options",
2652   "alter_tablespace_option", "logfile_group_option_list",
2653   "logfile_group_options", "logfile_group_option",
2654   "alter_logfile_group_option_list", "alter_logfile_group_options",
2655   "alter_logfile_group_option", "ts_datafile", "lg_undofile",
2656   "lg_redofile", "tablespace_name", "logfile_group_name", "ts_access_mode",
2657   "opt_ts_initial_size", "opt_ts_autoextend_size", "opt_ts_max_size",
2658   "opt_ts_extent_size", "opt_ts_undo_buffer_size",
2659   "opt_ts_redo_buffer_size", "opt_ts_nodegroup", "opt_ts_comment",
2660   "opt_ts_engine", "opt_ts_wait", "ts_wait", "size_number", "create_body",
2661   "$@70", "create_like", "opt_create_select",
2662   "create_select_query_expression", "opt_create_partitioning",
2663   "opt_partitioning", "partitioning", "$@71", "have_partitioning",
2664   "partition_entry", "$@72", "partition", "$@73", "part_type_def", "$@74",
2665   "$@75", "$@76", "opt_linear", "opt_key_algo", "part_field_list",
2666   "part_field_item_list", "part_field_item", "part_column_list",
2667   "part_func", "sub_part_func", "opt_num_parts", "opt_sub_part", "$@77",
2668   "$@78", "sub_part_field_list", "sub_part_field_item", "part_func_expr",
2669   "opt_num_subparts", "part_defs", "part_def_list", "part_definition",
2670   "$@79", "part_name", "opt_part_values", "$@80", "$@81", "part_func_max",
2671   "part_values_in", "part_value_list", "part_value_item", "$@82", "$@83",
2672   "part_value_item_list", "part_value_expr_item", "opt_sub_partition",
2673   "sub_part_list", "sub_part_definition", "$@84", "sub_name",
2674   "opt_part_options", "opt_part_option_list", "opt_part_option",
2675   "opt_versioning_rotation", "opt_versioning_interval_start", "opt_as",
2676   "opt_create_database_options", "create_database_options",
2677   "create_database_option", "opt_if_not_exists_table_element",
2678   "opt_if_not_exists", "create_or_replace", "opt_create_table_options",
2679   "create_table_options_space_separated", "create_table_options",
2680   "create_table_option", "$@85", "opt_versioning_option",
2681   "versioning_option", "default_charset", "default_collation",
2682   "storage_engines", "known_storage_engines", "row_types",
2683   "merge_insert_types", "udf_type", "create_field_list",
2684   "create_field_list_parens", "field_list", "field_list_item",
2685   "column_def", "key_def", "$@86", "$@87", "$@88", "$@89", "$@90", "$@91",
2686   "$@92", "constraint_def", "period_for_system_time",
2687   "period_for_application_time", "opt_check_constraint",
2688   "check_constraint", "opt_constraint_no_id", "opt_constraint",
2689   "constraint", "field_spec", "@93", "field_type_or_serial", "$@94",
2690   "$@95", "opt_serial_attribute", "opt_serial_attribute_list",
2691   "opt_asrow_attribute", "opt_asrow_attribute_list", "field_def", "$@96",
2692   "opt_generated_always", "vcol_opt_specifier", "vcol_opt_attribute",
2693   "vcol_opt_attribute_list", "vcol_attribute", "parse_vcol_expr", "$@97",
2694   "parenthesized_expr", "virtual_column_func", "expr_or_literal",
2695   "column_default_expr", "field_type", "qualified_field_type",
2696   "field_type_all", "field_type_numeric", "opt_binary_and_compression",
2697   "field_type_string", "field_type_temporal", "field_type_lob",
2698   "field_type_misc", "spatial_type", "char", "nchar", "varchar",
2699   "nvarchar", "int_type", "real_type", "srid_option", "float_options",
2700   "precision", "field_options", "field_length", "opt_field_length",
2701   "opt_field_length_default_1", "opt_precision", "attribute_list",
2702   "attribute", "opt_compression_method", "opt_compressed", "compressed",
2703   "compressed_deprecated_data_type_attribute",
2704   "compressed_deprecated_column_attribute", "asrow_attribute",
2705   "serial_attribute", "with_or_without_system", "charset", "charset_name",
2706   "charset_name_or_default", "opt_load_data_charset",
2707   "old_or_new_charset_name", "old_or_new_charset_name_or_default",
2708   "collation_name", "opt_collate", "collation_name_or_default",
2709   "opt_default", "charset_or_alias", "collate", "opt_binary", "binary",
2710   "opt_bin_mod", "ws_nweights", "$@98", "ws_level_flag_desc",
2711   "ws_level_flag_reverse", "ws_level_flags", "ws_level_number",
2712   "ws_level_list_item", "ws_level_list", "ws_level_range",
2713   "ws_level_list_or_range", "opt_ws_levels", "opt_primary", "references",
2714   "opt_ref_list", "ref_list", "opt_match_clause", "opt_on_update_delete",
2715   "delete_option", "constraint_key_type", "key_or_index",
2716   "opt_key_or_index", "keys_or_index", "opt_unique", "fulltext", "spatial",
2717   "normal_key_options", "fulltext_key_options", "spatial_key_options",
2718   "normal_key_opts", "spatial_key_opts", "fulltext_key_opts",
2719   "opt_USING_key_algorithm", "opt_key_algorithm_clause", "key_using_alg",
2720   "all_key_opt", "normal_key_opt", "spatial_key_opt", "fulltext_key_opt",
2721   "btree_or_rtree", "key_list", "key_part", "opt_ident", "string_list",
2722   "alter", "$@99", "$@100", "$@101", "$@102", "$@103", "$@104", "$@105",
2723   "$@106", "$@107", "$@108", "$@109", "account_locking_option",
2724   "opt_password_expire_option",
2725   "opt_account_locking_and_opt_password_expiration",
2726   "ev_alter_on_schedule_completion", "opt_ev_rename_to", "opt_ev_sql_stmt",
2727   "ident_or_empty", "alter_commands", "$@110", "$@111", "$@112",
2728   "remove_partitioning", "all_or_alt_part_name_list", "add_partition_rule",
2729   "$@113", "add_part_extra", "reorg_partition_rule", "$@114",
2730   "reorg_parts_rule", "$@115", "alt_part_name_list", "alt_part_name_item",
2731   "alter_list", "add_column", "alter_list_item",
2732   "opt_index_lock_algorithm", "alter_algorithm_option",
2733   "alter_lock_option", "opt_column", "opt_ignore", "alter_options",
2734   "$@116", "alter_options_part2", "alter_option_list", "alter_option",
2735   "opt_restrict", "opt_place", "opt_to", "slave", "$@117", "$@118",
2736   "start", "opt_start_transaction_option_list",
2737   "start_transaction_option_list", "start_transaction_option",
2738   "slave_thread_opts", "$@119", "slave_thread_opt_list",
2739   "slave_thread_opt", "slave_until", "slave_until_opts", "checksum",
2740   "$@120", "opt_checksum_type", "repair_table_or_view", "$@121", "repair",
2741   "$@122", "opt_mi_repair_type", "mi_repair_types", "mi_repair_type",
2742   "opt_view_repair_type", "analyze", "$@123", "analyze_table_list",
2743   "analyze_table_elem_spec", "opt_persistent_stat_clause",
2744   "persistent_stat_spec", "persistent_column_stat_spec", "$@124",
2745   "persistent_index_stat_spec", "$@125", "table_column_list",
2746   "table_index_list", "table_index_name", "binlog_base64_event",
2747   "check_view_or_table", "$@126", "check", "$@127", "opt_mi_check_type",
2748   "mi_check_types", "mi_check_type", "opt_view_check_type", "optimize",
2749   "$@128", "opt_no_write_to_binlog", "rename", "$@129", "rename_list",
2750   "table_to_table_list", "table_to_table", "keycache", "$@130",
2751   "keycache_list_or_parts", "keycache_list", "assign_to_keycache",
2752   "assign_to_keycache_parts", "key_cache_name", "preload", "$@131",
2753   "preload_list_or_parts", "preload_list", "preload_keys",
2754   "preload_keys_parts", "adm_partition", "$@132", "cache_keys_spec",
2755   "$@133", "cache_key_list_or_empty", "opt_ignore_leaves", "select",
2756   "$@134", "$@135", "select_into", "$@136", "$@137", "simple_table",
2757   "table_value_constructor", "$@138", "query_specification_start", "$@139",
2758   "$@140", "query_specification", "select_into_query_specification",
2759   "query_expression", "query_expression_no_with_clause",
2760   "query_expression_body_ext", "$@141", "$@142",
2761   "query_expression_body_ext_parens", "query_expression_body", "$@143",
2762   "query_primary", "query_simple", "subselect", "subquery",
2763   "opt_from_clause", "from_clause", "table_reference_list",
2764   "select_options", "opt_history_unit", "history_point",
2765   "for_portion_of_time_clause", "opt_for_portion_of_time_clause",
2766   "opt_for_system_time_clause", "system_time_expr", "select_option_list",
2767   "select_option", "select_lock_type", "opt_select_lock_type",
2768   "opt_lock_wait_timeout_new", "select_item_list", "select_item",
2769   "remember_tok_start", "remember_name", "remember_end", "select_alias",
2770   "opt_default_time_precision", "opt_time_precision", "optional_braces",
2771   "expr", "predicate", "bit_expr", "or", "and", "not", "not2", "comp_op",
2772   "all_or_any", "opt_dyncol_type", "dyncol_type", "numeric_dyncol_type",
2773   "temporal_dyncol_type", "string_dyncol_type", "$@144",
2774   "dyncall_create_element", "dyncall_create_list", "plsql_cursor_attr",
2775   "explicit_cursor_attr", "trim_operands",
2776   "column_default_non_parenthesized_expr", "primary_expr",
2777   "string_factor_expr", "simple_expr", "mysql_concatenation_expr",
2778   "function_call_keyword_timestamp", "function_call_keyword",
2779   "function_call_nonkeyword", "function_call_conflict",
2780   "geometry_function", "function_call_generic", "@145", "fulltext_options",
2781   "opt_natural_language_mode", "opt_query_expansion", "opt_udf_expr_list",
2782   "udf_expr_list", "udf_expr", "sum_expr", "$@146", "$@147", "$@148",
2783   "window_func_expr", "window_func", "simple_window_func",
2784   "inverse_distribution_function", "percentile_function", "$@149",
2785   "inverse_distribution_function_def", "order_by_single_element_list",
2786   "window_name", "variable", "$@150", "variable_aux", "opt_distinct",
2787   "opt_gconcat_separator", "opt_gorder_clause", "gorder_list",
2788   "opt_glimit_clause", "glimit_clause_init", "glimit_clause",
2789   "glimit_options", "in_sum_expr", "$@151", "cast_type", "$@152", "$@153",
2790   "$@154", "cast_type_numeric", "cast_type_temporal", "opt_expr_list",
2791   "expr_list", "ident_list_arg", "ident_list", "when_list",
2792   "when_list_opt_else", "decode_when_list_oracle", "table_ref",
2793   "join_table_list", "esc_table_ref", "derived_table_list", "join_table",
2794   "$@155", "$@156", "$@157", "$@158", "$@159", "$@160", "inner_join",
2795   "normal_join", "opt_use_partition", "use_partition", "table_factor",
2796   "table_primary_ident_opt_parens", "table_primary_derived_opt_parens",
2797   "table_reference_list_parens", "nested_table_reference_list",
2798   "join_table_parens", "table_primary_ident", "table_primary_derived",
2799   "opt_outer", "index_hint_clause", "index_hint_type",
2800   "index_hint_definition", "$@161", "$@162", "index_hints_list",
2801   "opt_index_hints_list", "$@163", "opt_key_definition", "$@164",
2802   "opt_key_usage_list", "key_usage_element", "key_usage_list",
2803   "using_list", "interval", "interval_time_stamp", "date_time_type",
2804   "table_alias", "opt_table_alias_clause", "table_alias_clause", "opt_all",
2805   "opt_where_clause", "$@165", "opt_having_clause", "$@166",
2806   "opt_group_clause", "group_list", "olap_opt", "opt_window_clause",
2807   "window_def_list", "window_def", "window_spec", "$@167",
2808   "opt_window_ref", "opt_window_partition_clause",
2809   "opt_window_order_clause", "opt_window_frame_clause",
2810   "window_frame_units", "window_frame_extent", "window_frame_start",
2811   "window_frame_bound", "opt_window_frame_exclusion", "alter_order_clause",
2812   "alter_order_list", "alter_order_item", "opt_order_clause",
2813   "order_clause", "$@168", "order_list", "order_dir", "opt_limit_clause",
2814   "limit_clause", "opt_global_limit_clause", "limit_options",
2815   "limit_option", "limit_rows_option", "delete_limit_clause",
2816   "order_limit_lock", "opt_order_limit_lock", "query_expression_tail",
2817   "opt_query_expression_tail", "opt_procedure_or_into", "order_or_limit",
2818   "opt_plus", "int_num", "ulong_num", "real_ulong_num", "longlong_num",
2819   "ulonglong_num", "real_ulonglong_num", "dec_num_error", "dec_num",
2820   "choice", "bool", "procedure_clause", "$@169", "procedure_list",
2821   "procedure_list2", "procedure_item", "select_var_list_init", "$@170",
2822   "select_var_list", "select_var_ident", "select_outvar", "into",
2823   "into_destination", "$@171", "$@172", "do", "$@173", "drop", "$@174",
2824   "$@175", "$@176", "$@177", "table_list", "table_name",
2825   "table_name_with_opt_use_partition", "table_alias_ref_list",
2826   "table_alias_ref", "opt_if_exists_table_element", "opt_if_exists",
2827   "opt_temporary", "insert", "$@178", "$@179", "replace", "$@180", "$@181",
2828   "insert_lock_option", "replace_lock_option", "insert2", "insert_table",
2829   "$@182", "insert_field_spec", "$@183", "insert_field_list", "opt_fields",
2830   "fields", "insert_values", "values_list", "ident_eq_list",
2831   "ident_eq_value", "equal", "opt_equal", "opt_with", "opt_by",
2832   "no_braces", "$@184", "no_braces_with_names", "$@185", "opt_values",
2833   "opt_values_with_names", "values", "values_with_names", "expr_or_ignore",
2834   "expr_or_ignore_or_default", "opt_insert_update", "$@186", "$@187",
2835   "update_table_list", "update", "$@188", "$@189", "update_list",
2836   "update_elem", "insert_update_list", "insert_update_elem",
2837   "opt_low_priority", "delete", "$@190", "opt_delete_system_time",
2838   "delete_part2", "delete_single_table", "delete_single_table_for_period",
2839   "single_multi", "$@191", "$@192", "opt_select_expressions",
2840   "table_wild_list", "table_wild_one", "opt_wild", "opt_delete_options",
2841   "opt_delete_option", "truncate", "$@193", "opt_table_sym",
2842   "opt_profile_defs", "profile_defs", "profile_def", "opt_profile_args",
2843   "show", "$@194", "show_param", "$@195", "$@196", "show_engine_param",
2844   "master_or_binary", "opt_storage", "opt_db", "opt_full", "from_or_in",
2845   "binlog_in", "binlog_from", "wild_and_where", "describe", "$@197",
2846   "$@198", "explainable_command", "describe_command",
2847   "analyze_stmt_command", "opt_extended_describe", "opt_format_json",
2848   "opt_describe_column", "flush", "$@199", "flush_options", "$@200",
2849   "opt_flush_lock", "flush_lock", "$@201", "flush_options_list",
2850   "flush_option", "opt_table_list", "backup", "backup_statements", "$@202",
2851   "opt_delete_gtid_domain", "delete_domain_id_list", "delete_domain_id",
2852   "optional_flush_tables_arguments", "reset", "$@203", "reset_options",
2853   "reset_option", "$@204", "$@205", "slave_reset_options",
2854   "master_reset_options", "purge", "$@206", "kill", "$@207", "kill_type",
2855   "kill_option", "opt_connection", "kill_expr", "shutdown", "$@208",
2856   "shutdown_option", "use", "load", "$@209", "$@210", "$@211", "$@212",
2857   "data_or_xml", "opt_local", "load_data_lock", "opt_duplicate",
2858   "opt_field_term", "field_term_list", "field_term", "opt_line_term",
2859   "line_term_list", "line_term", "opt_xml_rows_identified_by",
2860   "opt_ignore_lines", "lines_or_rows", "opt_field_or_var_spec",
2861   "fields_or_vars", "field_or_var", "opt_load_data_set_spec",
2862   "load_data_set_list", "load_data_set_elem", "text_literal",
2863   "text_string", "hex_or_bin_String", "param_marker", "signed_literal",
2864   "literal", "NUM_literal", "temporal_literal", "with_clause", "$@213",
2865   "opt_recursive", "with_list", "with_list_element", "$@214",
2866   "opt_with_column_list", "with_column_list", "with_element_head",
2867   "insert_ident", "table_wild", "select_sublist_qualified_asterisk",
2868   "order_ident", "simple_ident", "simple_ident_nospvar", "field_ident",
2869   "table_ident", "table_ident_opt_wild", "table_ident_nodb", "IDENT_cli",
2870   "ident_cli", "IDENT_sys", "TEXT_STRING_sys", "TEXT_STRING_literal",
2871   "TEXT_STRING_filesystem", "ident_table_alias", "ident_set_usual_case",
2872   "ident_sysvar_name", "ident", "label_ident", "ident_or_text",
2873   "user_maybe_role", "user_or_role", "user", "keyword_table_alias",
2874   "keyword_ident", "keyword_label", "keyword_sysvar_name",
2875   "keyword_sp_decl", "keyword_set_usual_case", "keyword_sp_var_not_label",
2876   "keyword_sp_head", "keyword_verb_clause", "keyword_set_special_case",
2877   "keyword_sp_block_section", "keyword_sysvar_type", "keyword_data_type",
2878   "keyword_sp_var_and_label", "set", "$@215", "$@216", "$@217",
2879   "set_stmt_option_value_following_option_type_list",
2880   "start_option_value_list", "$@218", "$@219", "$@220",
2881   "start_option_value_list_following_option_type", "$@221",
2882   "option_value_list_continued", "option_value_list", "$@222", "$@223",
2883   "option_value", "$@224", "option_type", "opt_var_type",
2884   "opt_var_ident_type", "option_value_following_option_type",
2885   "option_value_no_option_type", "transaction_characteristics",
2886   "transaction_access_mode", "isolation_level",
2887   "transaction_access_mode_types", "isolation_types", "opt_for_user",
2888   "text_or_password", "set_expr_or_default", "lock", "$@225",
2889   "opt_lock_wait_timeout", "table_or_tables", "table_lock_list",
2890   "table_lock", "lock_option", "unlock", "$@226", "handler", "$@227",
2891   "handler_tail", "$@228", "handler_read_or_scan", "handler_scan_function",
2892   "handler_rkey_function", "$@229", "handler_rkey_mode", "revoke",
2893   "revoke_command", "admin_option_for_role", "grant", "grant_command",
2894   "opt_with_admin", "opt_with_admin_option", "role_list", "current_role",
2895   "grant_role", "opt_table", "grant_privileges", "opt_privileges",
2896   "object_privilege_list", "object_privilege", "$@230", "$@231", "$@232",
2897   "$@233", "opt_and", "require_list", "require_list_element",
2898   "grant_ident", "user_list", "grant_list", "user_and_role_list",
2899   "via_or_with", "using_or_as", "grant_user", "auth_expression",
2900   "auth_token", "opt_auth_str", "opt_column_list", "column_list",
2901   "column_list_id", "opt_require_clause", "resource_option",
2902   "resource_option_list", "opt_resource_options", "opt_grant_options",
2903   "opt_grant_option", "grant_option_list", "grant_option",
2904   "begin_stmt_mariadb", "$@234", "compound_statement", "opt_not",
2905   "opt_work", "opt_chain", "opt_release", "commit", "rollback",
2906   "savepoint", "release", "unit_type_decl", "union_option",
2907   "query_expression_option", "definer_opt", "no_definer", "definer",
2908   "view_algorithm", "opt_view_suid", "view_suid", "view_list_opt",
2909   "view_list", "view_select", "$@235", "view_check_option",
2910   "trigger_action_order", "trigger_follows_precedes_clause",
2911   "trigger_tail", "$@236", "$@237", "$@238", "$@239", "$@240",
2912   "sf_return_type", "$@241", "sf_c_chistics_and_body", "$@242", "sp_tail",
2913   "$@243", "$@244", "xa", "opt_format_xid", "xid", "begin_or_start",
2914   "opt_join_or_resume", "opt_one_phase", "opt_suspend", "$@245",
2915   "opt_migrate", "install", "uninstall", "keep_gcc_happy", YY_NULLPTR
2916 };
2917 #endif
2918 
2919 # ifdef YYPRINT
2920 /* YYTOKNUM[NUM] -- (External) token number corresponding to the
2921    (internal) symbol number NUM (which must be that of a token).  */
2922 static const yytype_uint16 yytoknum[] =
2923 {
2924        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
2925      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
2926      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
2927      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2928      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2929      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
2930      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
2931      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
2932      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
2933      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
2934      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
2935      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2936      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2937      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
2938      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
2939      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
2940      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
2941      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
2942      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
2943      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
2944      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
2945      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
2946      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
2947      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
2948      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
2949      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
2950      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
2951      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
2952      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
2953      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
2954      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
2955      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
2956      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
2957      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
2958      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
2959      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
2960      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
2961      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
2962      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
2963      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
2964      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
2965      665,   666,   667,   668,   669,   670,   671,   672,   673,   674,
2966      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
2967      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
2968      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
2969      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
2970      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
2971      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
2972      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
2973      745,   746,   747,   748,   749,   750,   751,   752,   753,   754,
2974      755,   756,   757,   758,   759,   760,   761,   762,   763,   764,
2975      765,   766,   767,   768,   769,   770,   771,   772,   773,   774,
2976      775,   776,   777,   778,   779,   780,   781,   782,   783,   784,
2977      785,   786,   787,   788,   789,   790,   791,   792,   793,   794,
2978      795,   796,   797,   798,   799,   800,   801,   802,   803,   804,
2979      805,   806,   807,   808,   809,   810,   811,   812,   813,   814,
2980      815,   816,   817,   818,   819,   820,   821,   822,   823,   824,
2981      825,   826,   827,   828,   829,   830,   831,   832,   833,   834,
2982      835,   836,   837,   838,   839,   840,   841,   842,   843,   844,
2983      845,   846,   847,   848,   849,   850,   851,   852,   853,   854,
2984      855,   856,   857,   858,   859,   860,   861,   862,   863,   864,
2985      865,   866,   867,   868,   869,   870,   871,   872,   873,   874,
2986      875,   876,   877,   878,   879,   880,   881,   882,   883,   884,
2987      885,   886,   887,   888,   889,   890,   891,   892,   893,   894,
2988      895,   896,   897,   898,   899,   900,   901,   902,   903,   904,
2989      905,   906,   907,   908,   909,   910,   911,   912,   913,   914,
2990      915,   916,   917,   918,   919,   920,   921,   922,   923,   924,
2991      925,   926,   927,   928,   929,   930,   931,   932,   933,   934,
2992      935,   936,   937,   938,   939,   940,   941,   942,   943,   944,
2993      945,   946,   947,   948,   949,   950,   951,   952,   953,   954,
2994      955,   956,   957,   958,   959,   960,   961,   962,   963,   964,
2995      965,   966,   967,   968,   969,   970,   971,   972,   973,   974,
2996      975,   976,   977,   978,   979,   980,   981,   982,   983,   984,
2997      985,   986,   987,   988,   989,   990,   991,   992,   993,   994,
2998      995,   996,   997,   998,   999,  1000,  1001,  1002,  1003,  1004,
2999     1005,  1006,  1007,  1008,    61,    62,    60,   124,    38,    45,
3000       43,    42,    47,    37,    94,   126,  1009,  1010,  1011,  1012,
3001       40,    41,  1013,    44,    33,   123,   125,    59,    46,    64,
3002       58
3003 };
3004 # endif
3005 
3006 #define YYPACT_NINF -5174
3007 
3008 #define yypact_value_is_default(Yystate) \
3009   (!!((Yystate) == (-5174)))
3010 
3011 #define YYTABLE_NINF -3336
3012 
3013 #define yytable_value_is_error(Yytable_value) \
3014   0
3015 
3016   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
3017      STATE-NUM.  */
3018 static const int yypact[] =
3019 {
3020     7418,  1685,  1421, 93503, -5174,   -39, -5174,   104, -5174, -5174,
3021    -5174,  1810, -5174, -5174, -5174, -5174, -5174, -5174,   174,    95,
3022    -5174,   207, -5174, -5174,   252, 89009,   -78,   466, -5174, -5174,
3023    90293, -5174, -5174,  -104, -5174, 90293, -5174, -5174, 93503, -5174,
3024    -5174,   475, -5174,   514,  2162,    20,   954,    95,   518, -5174,
3025    -5174, 94145,   207,   974, -5174, -5174,   827, 93503,   207, -5174,
3026      518, 93503, -5174,   202,   213, -5174,  1186,  2049,   390,  1556,
3027     1738, -5174, -5174,  1025, -5174, -5174, -5174, -5174, -5174, -5174,
3028    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3029     1575, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3030    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  1615, -5174,
3031    -5174, -5174, -5174,  3081,  1732, -5174, -5174, -5174, -5174, -5174,
3032    -5174, -5174, -5174, -5174, -5174, 78075, -5174, -5174, -5174, -5174,
3033    -5174, -5174, -5174, -5174, -5174,   390, -5174, -5174, -5174, -5174,
3034    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3035    -5174, -5174, 93503, 93503,  1088,  1138, 93503,  1471,  1772, 89651,
3036    93503,  1772, -5174,   276, -5174, -5174,  1558, -5174,  1249, -5174,
3037       95,   319, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3038    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3039    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3040    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3041    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3042    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3043    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3044    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3045    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3046    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3047    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3048    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3049    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3050    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3051    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3052    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3053    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3054    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3055    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3056    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3057    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3058    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3059    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3060    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3061    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3062    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3063    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3064    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3065    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3066    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3067    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3068    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3069    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3070    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3071    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3072    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3073    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3074    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3075    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3076    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3077    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3078    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3079    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3080    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  1244,
3081    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  1731,
3082     1779,   294,  1935,  2146, 93503,   821,  1772, -5174,  1772,  1772,
3083     1772,  1772,  2184,  1772,  1772, 93503, -5174,  1772,  1772,   692,
3084    93503, 37571, -5174,  1097,  1024,  2177, -5174, -5174, -5174, -5174,
3085    -5174, -5174, 56138,    95, 23791,  2286, -5174, -5174,  1851,  2935,
3086     1636, -5174,  2135, -5174, -5174, 93503, -5174, -5174, 56138,  1132,
3087    -5174,  2135, 38316,  2407, -5174, 36112, 12599,  2135,    95,  2282,
3088    -5174,  1638, 23791, -5174, -5174, -5174, -5174, 93503, -5174, -5174,
3089    -5174,  2081,   518, -5174, 89651, -5174, -5174, -5174, -5174,  2452,
3090    23791,   131,  2143, -5174, -5174,  2066, 78717, 89651,  2392,  1779,
3091     2397, -5174,  1549,   362, -5174,  1749,  1846,  1779,  1253,  1862,
3092     1779,  2275,  1772,  1772, -5174, -5174,  1509,  1509,  1509,  2097,
3093     1509, -5174,  1509,  2465,  1818,   105, -5174, -5174,  1837, 93503,
3094     2392, -5174, -5174, -5174,  2392,  2392,  1963,  2507,  2511,  2527,
3095       97,  1660,  1516,  1516,  1558, 60226,  1215,  2345, -5174,  2465,
3096     2258,  1838, -5174, -5174,  2092,  2258,   390,  2258, -5174,   245,
3097     1249,   328, 93503, -5174, -5174, -5174,  1877, -5174, -5174, -5174,
3098     1938, -5174,  1329, 58853, -5174, 93503,  2598, -5174, -5174, -5174,
3099    -5174, -5174, -5174, -5174, -5174,  1137, -5174, -5174,  2453,   447,
3100     2039,  2267,  1962, -5174,  2474, 89651, -5174, -5174, -5174, -5174,
3101    -5174, -5174, -5174, -5174,  1970, 93503, -5174,  2701, 23791,  1731,
3102    -5174,  2524, -5174, -5174, -5174, -5174, 78717, -5174, 93503, -5174,
3103     2796, -5174, -5174,  2730, -5174, -5174, 81947,   452, 93503,  2717,
3104    93503, 93503, 93503, 93503, 93503, -5174, 89651,  2155, -5174, -5174,
3105     1772,  1772, -5174, -5174,  2240,  2205,  2038,  2082,  2383, -5174,
3106     2283, -5174, -5174,  2159, -5174, -5174,   147, -5174, -5174, -5174,
3107       87,   159,   232,   251,  2692,   281,   820,   285,   292, -5174,
3108    -5174, -5174,  2599,  2698,  2117, -5174,  2493, 23791, -5174, -5174,
3109    -5174,  2778, -5174, -5174,   883,  2552,   288, 78717, 99281, 81295,
3110   100213,100213,100213, -5174,   123,  2162, 93503, 99747, 93503, 50063,
3111    -5174,  2142, -5174, -5174,  8414, -5174, -5174, -5174, -5174, -5174,
3112    -5174, -5174, -5174, 93503, -5174, -5174,  1719,  2582, -5174, -5174,
3113    -5174, -5174, -5174,  2158, -5174, -5174, -5174, -5174, -5174, -5174,
3114    28950, -5174,  2165,  2169,  2183, 19369,  2189,  2192,  2197,  2204,
3115     2214,  2082,  2082,  2082,  2215,  2220,  2221,  2224, -5174,  2225,
3116     2234,  2241,  2245, -5174,  2262, -5174,  2269,  2274,  2298, -5174,
3117    -5174,    60,   127,  2314,  2321, 24528,  2324, -5174, 72939,  2328,
3118     2329,  2334,  2363, -5174, -5174, 23791,  2215,  2364, -5174, -5174,
3119     2370, -5174,  2373,  2377,  2381,  2384,  2396,  2411,  2417,  2427,
3120     2458,  2731,  2476,  2488,  2504,  2510,  2215, -5174,  2520, -5174,
3121    -5174,  1541,  2082,  2215,  2215,  2523,  2530,  2535,  2538,  2551,
3122     2554,  2556,  2559, 90935,  2561,  2563,  2566,  2576,  2584,  2587,
3123     2592,     2,  2593,  2595,  2596,  2597,  2602,  2603,  2604,  2609,
3124     2610,  2612,  2613,  2614,  2615,  2618,  2619,  2620,  2424,  2622,
3125     2623,  2625,  2629,  2630,  2430,  2631,  2632,  2633,  2634,  2642,
3126     2643,  2644,    33,  2646,  2647,    41,  2648,  2650,  2651,  2655,
3127     2657,  2664,  2672,  2673, 29687, 30424, 28950, 17895, -5174, 93503,
3128    94787, -5174, -5174, -5174, 10008,  1494,  2451, 28950, -5174, -5174,
3129    -5174,  2929, -5174,  2845, -5174, -5174, -5174, -5174, -5174,  2868,
3130     2972, -5174,  2985, -5174, -5174,  3013,  2477, -5174,  2941, -5174,
3131    -5174, -5174, -5174, -5174,  2445,  2678,  3045,  3049, -5174, -5174,
3132     1208, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3133    -5174, -5174, -5174,  2479,  2494, -5174,  2941, -5174, -5174, 59554,
3134    78717, 56813, -5174, -5174, -5174,  3141, -5174, -5174,  2240,  2689,
3135     3091, -5174,  3183, -5174,  3102, -5174, -5174, -5174, -5174, -5174,
3136    -5174, -5174, -5174, -5174, -5174, -5174,  2407, -5174, -5174, 64378,
3137     3057,   598,   313,   334,   376, 43116,   132, 86441,   379,  1008,
3138     2591, 69087, 44580,  2641,    52,  2660, -5174,  2671,  2676,  2681,
3139     2685,  2687,  2688,  2693, -5174, -5174, -5174,  2777,  2697,  1155,
3140      888, -5174, -5174,   620,  2789,    74, -5174,  2886, -5174,   888,
3141    -5174, 38983,  3330,  2180, -5174,   700, -5174,  3381, -5174, -5174,
3142     2799,  2787,  2816, -5174,   713, -5174,  1779, -5174,    99, -5174,
3143     3330,   888,  2180, -5174,  2984,  3067,   915,  3395, -5174,  1589,
3144    -5174, -5174,  2778, -5174,  2718, -5174, -5174,  2844, 93503, 78717,
3145    -5174, -5174, -5174,  2719, 78717, 78717,  1005,   438, 10008,  2722,
3146    23791, -5174, -5174, 11313, 39694,  2915,   369,  1048, -5174, -5174,
3147     2162, 93503, -5174, -5174,   388, -5174,  3147, -5174,  2725, -5174,
3148    95429,   438,  3408, -5174, -5174, -5174,  1059,  3120, -5174,  2729,
3149    -5174, -5174, -5174, -5174, 78717, 93503,  1779, -5174, -5174, -5174,
3150    -5174,  2732, -5174, -5174,  2932,  2815, -5174,  2755, -5174, -5174,
3151      188, -5174, -5174,  3431, -5174, 93503, -5174, -5174,  2392, -5174,
3152     2392, -5174, -5174,  2392,  2392,  2392, -5174, -5174,  2784, -5174,
3153     3069,  3073,  2474, -5174, 72297, 93503,  3433, -5174,  3064, -5174,
3154    -5174,  2758, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3155     3333,  3266,  3266, -5174, 69729, -5174, -5174,  3434,  2345,  3251,
3156    87083,  3417,  3516, -5174,  3330, -5174, -5174, -5174,  1989, 93503,
3157    -5174,  1989,  1989, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3158    -5174, -5174, -5174,   390, -5174, -5174,   319, 46620, 93503,  2258,
3159     1838,  3483,  3150, -5174, -5174, -5174, -5174,  2082,  2767, -5174,
3160    -5174, -5174, -5174, -5174,  3542, -5174, -5174, 78717,  2974,  3154,
3161     3154,  3154,  3547, -5174, -5174, -5174, 58853, 78717, -5174, -5174,
3162    -5174,   447, -5174,  1679, 93503, 78717,  2818, -5174, 78717, 23791,
3163    -5174, -5174, 23791, 56138,  3137, 10008, -5174, -5174, 78717,   925,
3164    -5174, -5174, -5174,  3542,  3154, 78717,  3541, 78717,  3466,  2345,
3165    -5174,  2786, -5174,  2782, -5174, -5174,  3477, 93503, -5174, -5174,
3166    -5174,  2785,  2155, 60926, -5174,  1129,  3142, 59554, 78717, -5174,
3167    -5174,  3153,  3442, -5174, -5174, -5174, -5174, -5174,  2871, -5174,
3168    -5174,  2800, -5174, -5174, -5174,  2802, -5174,  2802,  2802, -5174,
3169    -5174,  2802, 59554, -5174, -5174, 58853,  1452, 11060,  3462,  5266,
3170    -5174,  3141, -5174, 25265, -5174, 26002, -5174, -5174, -5174,  3077,
3171      217,   901, -5174, -5174,  3278, 93503,  3023,  3484,  3457, -5174,
3172    -5174, -5174, -5174, -5174, -5174,  3282,  2812,  3435,  2807, -5174,
3173    -5174, 23791,  2813, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3174    78717,  2820, 28950, 28950, -5174,  3587,  3587,  3587, 23791,  9007,
3175     1314,  3175, 23791, 23791, 23791,  2217,  2823, -5174, -5174, -5174,
3176      273, -5174,  2826, 23791, 23791, 74223,  2830,   912,  6971, 23791,
3177     3534, 23791, 23791, 23791, 23791, 17895,  9432, 23791, -5174, -5174,
3178    94787, 74223,  3280,  2832, -5174,  2829, -5174,  2218, 23791,  2232,
3179    23791,   685, -5174, 23791, 23791,  2837, 23791, 23791, 31161,  2839,
3180    23791, 23791, 23791,  2841,  2973,  3587,  3587, 23791,  2246, -5174,
3181    18632, -5174, -5174, -5174, -5174, -5174,  3587,  3587, 23791, 23791,
3182     2260, 23791, 23791, 23791, -5174,  2838, 23791, 23791, 23791, 23791,
3183    23791, 23791, 23791, -5174, 23791, 23791, 23791, 23791, 23791, 23791,
3184     1190, 23791, 23791, 78717, 23791, 23791, 23791, 23791, 23791, 23791,
3185    23791,  3526, 78717, 23791, 23791, 23791, 23791,  3529, 23791, 23791,
3186    23791,  2851, 23791, 78717, 23791, -5174, 23791,  2413,  2413, -5174,
3187    23791, 18632, 23791,  2853, 74865, 23791, 23791, 23791, 23791, 24528,
3188    -5174, 24528, -5174, -5174,  2854,   467,  2112,   390, 23791,  2852,
3189    70371, -5174, -5174, 31161, -5174,   456, -5174, -5174, -5174, -5174,
3190    23791, -5174, -5174, -5174, 23791, 23791, 17158, 31161,  2865, 31161,
3191    31161,  3497,  2101, 31161, 31161, 31161, 31161, 31161, 31161, 31161,
3192    31898, 32635, 31161, 31161, 31161, 31161, -5174, 89651, 28950, 80001,
3193     2867,  3548, -5174, 94787, -5174,  1328,   472, -5174,  1779,  2935,
3194    34100, -5174,  2873, -5174,  3377,  2877, -5174,  1030,  2872, -5174,
3195    -5174, -5174, 78717,  2881,  3563, 59554, 58853,  1623,  2897, -5174,
3196     2884,   381,  2890, -5174, -5174, 60926, 93503, -5174, -5174, -5174,
3197    -5174, -5174,  3625, 23791, -5174, 59554, -5174,   937, 16395, -5174,
3198     1011,  1311,    52, -5174, -5174, -5174, -5174, -5174, 16395, 93503,
3199    65063,  2891,  2986,  2904,  2392, 93503, 78717, 93503, 96071, 93503,
3200    93503, 78717, 59554, 78717, -5174, -5174, -5174, 93503,   888,  2180,
3201      803,   888,  3545, -5174,  1461,  1461, -5174, -5174, -5174, -5174,
3202    -5174, -5174,   888, 93503, 93503,   888, 58853, -5174,  2180,  1690,
3203    -5174,  3189,  2978, -5174, -5174, -5174,  3231, -5174, -5174,  3581,
3204     2901, -5174,  3252, -5174, -5174,  2996, -5174, -5174, 78717, -5174,
3205    -5174,  2180, -5174,  2180,  2180, 23791,   888,   888,   888, 73581,
3206     2910,  2913, -5174,  2911, -5174,  2918, -5174, -5174, -5174,  2906,
3207     3570,  2922, -5174, -5174,  3502,   816, -5174,  3348, -5174,  3482,
3208    -5174, 23791, 10008, 20106,  3199, -5174, -5174,  3200,  3202,  3203,
3209    -5174, -5174, -5174, -5174,  3358,  3207, -5174,  1779,  3208, -5174,
3210    -5174,  2939, -5174, -5174, -5174, 34100, 89651, -5174,  2942, -5174,
3211     2962, -5174,   164, -5174, -5174,  3634,  3051, 23791, -5174, -5174,
3212    78717,  3449, -5174,  1779,  1549, 93503, -5174, -5174,  3727, -5174,
3213     1545, -5174, -5174, -5174,  3072,  1253, -5174, -5174,  1030, -5174,
3214    -5174,  1509,  3146, -5174, -5174, -5174, 89651, -5174, -5174, -5174,
3215    -5174, -5174, -5174, 60926, 58853, 89651, -5174,  2392,  2392, -5174,
3216    78717, -5174, -5174, -5174,  2392,  2392,  2392,  3009,   279,  2975,
3217     2976,  2980,  2981,  1763,  2987, 75507,  2512,   194,  3618,  3628,
3218    -5174,  3572,  2193,  3572, -5174, -5174, 75507, 73581,  2990,  3433,
3219    -5174, -5174, -5174, -5174, 89651,  2988, -5174, -5174,  2979, -5174,
3220    23791,  3736,  3660,  3434,  1160, -5174, -5174,  3335, -5174, 90935,
3221     3544,  1142, -5174,  2992,  3119, -5174, -5174, -5174, -5174, -5174,
3222    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3223    -5174,   140, -5174, -5174, -5174,  1205,  3369,  1822, -5174, 89651,
3224     1822,  -156,  1463, -5174,  3010,  1779,  1433, -5174,  1433, -5174,
3225     3308, -5174,  3312,    40, -5174,  1030, -5174, -5174, -5174, -5174,
3226    -5174, 78717,  3008, -5174,  3205,  3015,  3014, 10008, 10008, 50738,
3227     3760,  3492, 10433,   154,  3070, -5174, -5174, -5174, -5174, -5174,
3228    78717, -5174, -5174,  1384,  2423,  3510,  3333,  3103, -5174,  3024,
3229    -5174, -5174,   297,  3601, -5174, -5174,  3619, 93503,  3708, 82589,
3230    -5174, -5174,  3626, 93503,  1129,  3031, -5174, -5174, -5174, -5174,
3231    -5174,    52, -5174,  3035,   133, 78717, 78717, 56138,  3173, -5174,
3232    -5174, -5174, 93503, -5174, -5174, -5174, -5174,  3539,   370, 34749,
3233    76149, -5174, 76149, 76149, -5174, -5174, -5174, -5174, -5174,   820,
3234    -5174, -5174, -5174, -5174, -5174, -5174, 23791, 47321, 10008, -5174,
3235    -5174, 78717, -5174,  3696, -5174, -5174, 97997,   363, -5174, -5174,
3236      117, 78717, -5174, -5174, 23791, -5174,  3690,  3172, 93503, -5174,
3237     3757, -5174, -5174, -5174, -5174, -5174, -5174, 10008, 93503, 93503,
3238    56138, 56138, 23791, -5174,  1136, 23791, -5174,  3046, -5174,  3050,
3239     3052,  8937,  3403, 23791, 23791, -5174,  9196,   300,   229, -5174,
3240     3053,  3066, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3241     3062, -5174, -5174, -5174,  3443,  3732,  3063, -5174, -5174, -5174,
3242     3065,   390, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3243    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3244    -5174, -5174,  3743, -5174,  4625, -5174, -5174,   348,   748,  3875,
3245     3989,  4249,  3079,  4308,  2838,  1815,  3074, 74223, 94787,  3587,
3246     3075,  5721,  3587,  3083,  4570,  6435,  4632, -5174,  6661,  6764,
3247     2580, -5174,  4658,  4738,  4766, -5174, -5174,  3084,  3085,  1459,
3248     3587,  3087, 20843, 21580, 22317,  9329,  3088,  3089,  3094,  4804,
3249     6795,  3587,  3096,  6815,  1950,  6833, 94787,  4889,  6846,  4916,
3250    -5174,  1955,  5051,  5087,  5313,  5345,  6860,  6871,  5445,  5454,
3251     5507,  1981, -5174, -5174, -5174, -5174,  3095,  6951,  6978,  3097,
3252     3098,  1982,  7048,  7052,  7270,  1986,  2011,  2031, 78717,  3106,
3253     7278,  7397,  5602,  2036, 78717,  7648,  7657,  5701, -5174,  7760,
3254     3105,  6046,  1588,  3108,  3109,  7811,  3112,  6055, -5174, 94787,
3255    93503,  3115,  3101,  2691,   341,  6163,  7845,  9432,  9432, -5174,
3256    23791,  3117,   224, 94787,  1311, -5174,  3605,  1478, -5174, -5174,
3257    -5174, -5174,   295,   293,   985,   685, -5174,  3080,  1478,  3092,
3258     1881, 17895, -5174,  1100,  3675, 31161, 31161,  3123, 31161, 31161,
3259     3126,  3126,   377,   968,   968,  1343,  1428, 24528,   377, 24528,
3260      377,  3126,  3126,  3126, -5174, -5174, -5174, -5174, -5174, -5174,
3261    -5174, -5174,  3699,  3125,  1739,  3127, -5174, -5174, -5174, -5174,
3262    -5174, -5174,   271,  3531, -5174,  3314,   544, 23791, -5174,  3145,
3263     3635,  3636,  3637, -5174, -5174, -5174, -5174, 59554, 59554, 78717,
3264     3638, 23791, -5174,  1251, -5174,  3333,  3807, 60926,  3812, -5174,
3265     3135, 35398, 76149, 76149, 76149, -5174,  3138, -5174, 23791, 93503,
3266    93503, 16395, 64378,  3818,  3821,    52, 63693, -5174, 10008,    52,
3267    -5174,  3149,  3151, -5174, -5174, 28950,  2225, -5174, 10008, -5174,
3268     1188,  3421, -5174,  3152,  3155, -5174,  3144,  3148,  3158, 67803,
3269    23791, -5174,    52,  1011, -5174, -5174, -5174, -5174, -5174,  3156,
3270    93503, -5174, -5174, -5174, 93503, -5174, -5174, -5174, -5174, -5174,
3271    -5174,  1779, 23791, -5174, -5174,   888, 93503,   888, -5174,  1779,
3272     3829, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3273    -5174,   888, -5174, -5174, -5174, -5174, -5174,  3322,  3330,   713,
3274     3545, -5174,  2180, 78717,   888,   888, 10008, -5174, -5174, -5174,
3275    -5174,  3687,  3333, 20106,  3159,  3160, -5174, -5174, 56138, 93503,
3276    93503, -5174,  3757, 89651, 65748, 78717, -5174, -5174, -5174,  2340,
3277    -5174, -5174, -5174, -5174, -5174, 10008,  2143,  2225, -5174,  3165,
3278    10008, -5174, -5174,  3869, -5174, -5174, -5174, -5174,  1779, -5174,
3279    -5174, 10581, -5174, 78717, -5174, 71655, -5174, 71655,  1490, -5174,
3280    96713, -5174,  1779, 10008, 78717,   935,   117, -5174,  3933, -5174,
3281    -5174,  3287, -5174, -5174, -5174,  3167, -5174,  3217, -5174, -5174,
3282    -5174,  3171, -5174,  3858, -5174,   180,   374,    40, -5174, 93503,
3283    93503, 93503, 78717, -5174, 93503,  2392, -5174, -5174,  2392, 78717,
3284    93503, 93503,  2392, 75507, -5174, -5174, -5174, -5174, -5174, 75507,
3285    -5174,   200, -5174,  3382,  1669,  1669, -5174, -5174, -5174, -5174,
3286    -5174,  3826,  3572,  3572, 75507,  3827,  3878, -5174, 93503,  6133,
3287      344, -5174, 69729, 93503, 10008, 23791, -5174,  3216,  3660, -5174,
3288      117, -5174, 88367, -5174,  3532, 88367, 88367, 94787,  3425, 23791,
3289     3190, -5174,    52,    52,  3419,  3715,  3718,  3320,  1779,  3721,
3290     3722,  3724, -5174, -5174, -5174,  1779,  1779, -5174, -5174,    52,
3291    -5174,  2199, -5174, -5174, -5174, -5174,  2480,   522, -5174,    52,
3292       52, -5174,  2021, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3293     1518, -5174,   168,  1094, 58853,  3676, -5174,  3797,  3209, -5174,
3294    78717,  3886, -5174, -5174, 23791,  3713, -5174, -5174,  3492, -5174,
3295     3227,  3229,  3230,  3233,  3234,  3236,  3237,  3238,  3241,  3249,
3296     3250,  3254,  3257,  3260,  3261,  3263,  3267,  3271,  3272,  3273,
3297     3274,  3275,  3276,  3279,  3247, -5174, -5174,  3309, -5174, -5174,
3298    -5174, -5174,    52,    52,    52,    52, -5174,  2506, -5174, -5174,
3299    -5174, -5174, -5174, -5174, -5174, -5174,  3546,  2418, -5174,  1669,
3300    93503,  3748, 82589, -5174,  3472,  3905, -5174, -5174, 73581, -5174,
3301     3269, 78717, -5174, -5174, 60926, -5174, 89651, 59554, -5174, -5174,
3302    -5174,  3277,  1136, 51413, -5174,  3281, -5174,  2044, -5174, 58853,
3303     3728, -5174, 76149,  3283, -5174,  3288,  3781,  3784,  3785,  3788,
3304    56138,  1251, 10008, -5174, -5174,  3292, -5174, -5174,  3502,  3266,
3305    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3306    -5174,  3321,  3571,  3692, -5174, -5174, -5174,  1759, -5174, -5174,
3307    10008, -5174, -5174, -5174,  3950, 58147, 52088,  3296, -5174, -5174,
3308    -5174,  2050, -5174, -5174,100213,100213,100213,  3757, -5174,  6238,
3309    -5174, 23791, -5174, -5174, 23791, -5174, 10008,  9332,  3255, 45965,
3310    -5174, 45965,  3255, 23791, -5174,  3311, -5174,  3962,  3963, -5174,
3311    -5174, -5174, 23791, -5174, 23791, -5174, 23791, -5174, 23791, 23791,
3312    23791, 23791, 23791, 23791, -5174, 31161, -5174,  3315,  3319, -5174,
3313    -5174,  3323, -5174, 23791, -5174, 23791, -5174, -5174, 23791, 23791,
3314    23791, 23791, -5174, -5174, 23791, 23791,  3326, -5174, 23791,  9741,
3315    23791,  9802, 23791,  9908, 23791, -5174, -5174, -5174, 26739, -5174,
3316     3327, -5174, -5174, -5174, -5174, -5174, 23791, -5174, 23791, -5174,
3317    23791, 23791, 23791, 23791, 23791, -5174, -5174, 23791, 23791, 23791,
3318    -5174, 23791, -5174,  3909, 23791, -5174, -5174, -5174, -5174, -5174,
3319    -5174, -5174, -5174, -5174, -5174, -5174, -5174, 23791, -5174, -5174,
3320    -5174, -5174, 23791, -5174,   254, 27476, -5174, 23791, 23791, 23791,
3321    -5174, -5174, 23791,  3325,  3329, -5174, 93503, -5174, 23791,  2487,
3322     2475,   117,  3334, 23791, -5174,  3340,  3341,  2722, -5174, -5174,
3323    -5174, 98639, 23791, -5174, -5174, -5174, -5174,   912, 31161,  2833,
3324    31161,  3675,  2206, 17895, -5174,  1198,  3675,  9432,  9432, 93503,
3325     4078,  3337, -5174, 23791, 94787, 23791,  3339,  3338, -5174,  3342,
3326    31161, -5174, -5174,  3343, -5174,   453,  2475,  3427,  3793, -5174,
3327    10008, 34100,  3848, -5174, -5174, 78717,  9983, 74865,  3820, -5174,
3328    -5174, -5174, -5174,   364, -5174, -5174,  3549, -5174, 59554, 58853,
3329    76149,  4028,  4029,  4030,  4031, -5174, 10008, -5174,  3350,    52,
3330       52, -5174, -5174,  7892, 59554, 16395, -5174, -5174, -5174, -5174,
3331     3863,  3864, -5174, -5174,   503,  3648,  3922, -5174, -5174, -5174,
3332     3356, -5174, -5174, -5174,   511, -5174, -5174, -5174, -5174, -5174,
3333    -5174, -5174, -5174, 10008, 16395, -5174,  2891,  3362, 36826,     3,
3334    -5174, -5174, -5174, 10008, -5174, -5174, -5174, -5174,  3376, -5174,
3335    -5174, -5174,  3967, -5174, -5174,  3829,  2345,  2180, -5174, -5174,
3336    74865,  2437, -5174, -5174, -5174, 20106, 52763, -5174,  2062, -5174,
3337     4127, 53438, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3338    -5174, -5174,  3374, -5174, -5174, 20106,  3385, -5174, -5174, -5174,
3339     3277,  1179,  3392,  3378, -5174, -5174, -5174, -5174, -5174, -5174,
3340      231,   233,  1816,  2345, -5174, -5174,   169, -5174, -5174, -5174,
3341    -5174, -5174,  1029, -5174, -5174, -5174, -5174,  1545,  2380, -5174,
3342      117,  3612, -5174, -5174,   184,  3830, -5174,  3676,  4061,    62,
3343     3974,  3976, -5174,  2480, -5174, -5174, -5174, 93503, -5174,  3386,
3344     -193,  3388, 78717,  3064,  3064, -5174,  1669,    75, -5174, 31161,
3345     4149, -5174,  3889, 75507,  4035,  4036, -5174, 75507, -5174, -5174,
3346     2063, -5174, -5174, 45309, -5174, -5174, -5174, 10008,   345,  2170,
3347    23791, 93503, -5174,  3216, -5174, -5174, -5174, 88367, -5174, -5174,
3348    -5174,  1160,  3393,  2170,  3394, 63693, 45309, -5174,  3772,  3774,
3349     1791, -5174, -5174, -5174, -5174, -5174, -5174,  3246,  1463, -5174,
3350       52,    52, -5174,   167,    52, -5174, -5174,   230, -5174, -5174,
3351     1330,   307,  2480, -5174,  1779,  1779,  1779,  1779,   117,  1779,
3352     1779,  2085, -5174,  3246,  3246,  1433, -5174,   949, -5174, -5174,
3353    -5174, -5174,   461, -5174, -5174, 89651, -5174,  3907,  3910, -5174,
3354     3911, -5174, -5174,   290, -5174,  2389,   943,  6074,   851, -5174,
3355     3957, 93503,  4170,  3209, -5174,  1120, 10008, 56138, 23791, -5174,
3356     3414,  3415,   117,  3416,   117,   117,  1779,  1779,  3376,  1779,
3357      117,  1779,  1779,  1779,  1779,  1779,  1779,  1779,   117,  1779,
3358     1105,  2079,  1779,   117, 10433, -5174,  1779,  2475,  3246,  3246,
3359     2423, -5174,  4089,    52, -5174,  3354, -5174, -5174, -5174, -5174,
3360    -5174, -5174, -5174, -5174, -5174, -5174, -5174,  3411, 73581,   477,
3361    -5174, 87725,  3968,  2345,  3430, -5174,  1030, -5174, -5174, -5174,
3362    -5174,  1520,  4101, -5174, -5174,  4122, -5174, 93503,   385,  3623,
3363     3924,  3440, 83231, 58853, 58853, 58853, 58853, 48038,  4017, 78717,
3364    -5174,  4091, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3365    -5174, -5174, -5174, -5174, -5174, -5174, -5174, 10512, -5174, -5174,
3366    -5174,  3741,  2425,  3432, -5174, -5174, -5174, -5174, -5174, -5174,
3367    -5174, -5174, -5174, -5174, -5174,  3429, -5174, 23791, -5174, -5174,
3368     3795, -5174, -5174, -5174, -5174, -5174, 54113, 23791, 10008, 10008,
3369    23791,  3441,  3441,  3447,  3448, -5174,  4154, -5174,  4090,  3441,
3370     3441, -5174,  3441,  4096,  3441,  3441,  3450, -5174, -5174,  3451,
3371     3452,  3461,  2722, -5174, 23791, 23791,  8011,    48,  8073,  8128,
3372     6362,  6370,  3011, -5174,  8147,  3317, -5174, -5174,  8181,  8202,
3373     8213,  8259,  6401,  8493,   323,  3093, -5174, 10008, 23791, 10008,
3374    23791, 10008, 23791, 10008, 24528,  8496, -5174,  2107, 10289, -5174,
3375     2121, 10305,  8552,  3586,  8628,  6415,  2138,  3647,  8649,  8675,
3376     8722,  2157, -5174,  1891,  4057,  2160, 24528,  8781,  8814,  6498,
3377     6562,  8906, 94787, 93503,  3460,  8965,  3465,  3465,   178, -5174,
3378     3439, -5174, -5174, -5174,  3468, -5174,  8968, 23791, 23791,  3464,
3379    10008,  3473,  1478, -5174, 23791,  3675, 31161,  3704, 31161, -5174,
3380    -5174,  3699, -5174, 23791, -5174,  4055,  3474,  2722, -5174, 10008,
3381    -5174, -5174, 93503,  3476,  2451, -5174, 23791,  3376, -5174, -5174,
3382     4217,  3478,  3496,  3487,  3343, -5174, 59554, -5174,  4042,  3491,
3383     3493, -5174, -5174, -5174,  3486,   390, 74865, -5174,  4173,  3035,
3384    -5174,  4176, 58853, 58853, 58853, 58853, -5174, 42387, -5174, 83873,
3385    16395, 16395, -5174, -5174, -5174,  3500,  3501,    89,  4063, -5174,
3386    -5174, -5174, -5174, 93503, 93503, 16395, -5174, -5174, -5174, -5174,
3387    -5174, -5174, -5174, -5174,  2139, -5174,  3330, -5174, -5174, -5174,
3388      888,  3503, -5174,    52,   196, -5174, 20106,  3506,  3505, -5174,
3389     3979, -5174, 93503,  3504, -5174,  3512, 91577, -5174,  3513, -5174,
3390     4070, -5174, -5174,  3469, 71655, -5174, -5174, -5174, -5174, -5174,
3391    -5174, -5174, -5174, -5174, -5174, -5174,  3330,  3738, -5174, -5174,
3392    -5174,  3535, -5174,  3515, -5174, -5174, 58853,   943,  3890,  1009,
3393     1009,  4107, 78717, 78717, 12577, 10814,  2480,  3521, 93503, -5174,
3394     3209, -5174,   541, -5174, -5174, -5174, -5174,  2451,  1669,  1669,
3395     3003,  4006, 75507, 75507,  3310,  4009, 23791,  3527, -5174, 93503,
3396    -5174,   330, -5174,  3934, -5174, -5174, 23791, -5174, -5174, -5174,
3397    -5174, 10008,  4289,  3528, -5174, -5174, -5174, -5174, 23791, -5174,
3398    23791,  3533,  3530, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3399    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,   254,
3400      254, -5174, -5174,   254,   254, -5174, -5174, -5174, -5174,   254,
3401      254, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3402      522, -5174, -5174, -5174,  1518, -5174, -5174,  4040,   399, -5174,
3403     4124, -5174, -5174, -5174, -5174,   836,   117,   117,   117,  2079,
3404     1848, -5174,  2389,  1175,  3871, -5174,  3596,  3939,  4116,  3939,
3405     4117,  4043,  1091,  3912,    52,  4118,  4293,    52, -5174,   204,
3406       52,    52,    52,    52,  3582,    52,    52,    52,    52,  4129,
3407       52,    52,  3914,    52,  4198,  3630,  4203,    52,  4138, -5174,
3408     3639,    52,    52,    52,    52,  3939,    52,    52,  4143,  3755,
3409     4148,  4152,    52,    52,   -32, 93503,    52,    52,  4153, -5174,
3410    -5174, 12103, -5174, -5174, -5174, -5174, -5174, -5174, -5174,   358,
3411    76791, -5174, -5174, -5174, -5174,    52,  2162,  1515,  4079,   897,
3412    -5174,  2161, -5174,  4340, -5174,   177, -5174, 48713, 10008,   249,
3413      312, -5174,   351, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3414    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3415    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3416    -5174, 93503,  3246,  2418, -5174, 82589,  2345, -5174, 93503,  3923,
3417     4125,  2897, -5174, -5174, -5174, -5174, -5174, -5174,  3585, 23791,
3418    -5174, -5174,  4255, -5174, -5174, 58853, -5174, -5174,    40,    40,
3419       40,    40,  2669,  3944, -5174, -5174, -5174,  4091,  3867, -5174,
3420      371, -5174,  3441,  3441,    47, -5174,  3447,  4159,  3447, -5174,
3421     3984,   311,  1497,  3984, -5174,   311,  3447, -5174,  3593, -5174,
3422     3984, -5174,   311,  3441, -5174,  3441, -5174, -5174,   311,  3441,
3423    -5174,  3595,  3447, -5174, -5174,  3984, -5174, -5174, -5174, -5174,
3424      408,  2649,  3447, -5174, -5174, -5174,  3441,  1586,  3441,  3441,
3425     3441,  3798,  3441,  3441,  4307, -5174, -5174, -5174, -5174, -5174,
3426    -5174,  3447,    16,  3441,  3441,  3441,  3441,  3448,  4278,  4279,
3427    -5174, 93503, -5174, 10008, -5174, 56138,100213,  3011, 10008,  1363,
3428    -5174, -5174, -5174,  2005, -5174, -5174, -5174,  4196, -5174, -5174,
3429     3441, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3430    -5174, -5174,  3602,  9432,  9432, -5174,  4349,  4141, -5174, -5174,
3431    23791, 23791, -5174, 23791, -5174,   286,  3606,  4077, -5174, -5174,
3432    -5174, -5174, 23791, -5174, 23791, -5174, -5174, 23791, 10008, 10008,
3433    10008,  9432, -5174, -5174,  2281, -5174, -5174,  3255, -5174, -5174,
3434    23791, -5174, 23791, -5174, 23791, -5174, 23791, -5174, -5174, -5174,
3435    -5174, -5174, -5174, -5174, -5174,   391,  9432, -5174, -5174, 23791,
3436    23791, -5174, -5174, -5174, 93503, -5174,  2475,  3610,  3887, -5174,
3437    -5174, -5174,  2475,  3749, -5174, -5174,  2475,   117, -5174, -5174,
3438    -5174, 93503, -5174,  2175,  1478, -5174, 23791,  3675,  4200,  3614,
3439     4362,  3620, -5174, 42387, -5174,  3621,  3617, -5174, -5174, -5174,
3440     9432, -5174,  4253,  4201, -5174,  2475, 93503, -5174, -5174, -5174,
3441    -5174, 74865, 84515,  3624,  3627, -5174,    52, 58853, 58853,  3135,
3442     3135,  3135,  3135, 92219, -5174, -5174, -5174, -5174,  1795, -5174,
3443    -5174, -5174, -5174, -5174, -5174, -5174,    52,    52, -5174, 36826,
3444    64378, -5174, -5174, -5174, -5174, -5174, -5174,  3330, -5174, 74865,
3445     2345, 23054, -5174, -5174, -5174, 20106, -5174, -5174,   912, 40361,
3446    -5174,  3641, -5174,  3633, -5174,  1771,  3961,  4262, -5174, -5174,
3447    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3448    -5174, -5174, -5174,  3643, -5174, -5174,  1779,  2147, -5174, -5174,
3449     3663, -5174, -5174, -5174, -5174, -5174, 78717, -5174, -5174, 41725,
3450     4275, 78717, -5174, -5174,  4221, -5174, 10341, -5174, -5174, -5174,
3451    -5174,   418,  4240,  4410,  3651, -5174, -5174, -5174, -5174,  3758,
3452     3651,  3209, -5174, -5174, -5174,  4139, -5174, -5174, -5174,  4150,
3453    10008, 93503, -5174, -5174, -5174,  1116,  1944,  4287,  2170,  3665,
3454    93503,  2170, 10008, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3455    -5174, -5174, -5174, -5174, -5174, -5174,   740, -5174, 89651, -5174,
3456    -5174, -5174, -5174, -5174,  4261,  4264, -5174, -5174, -5174, -5174,
3457     3853,   441, 77433,  2392, -5174,  2253,  3712, -5174, -5174, -5174,
3458     1829, -5174,  2392,  2340,  2340,  4330,  2717,   207,  2717, 40361,
3459      344,  1860,  4317,  1772,  2307,  3714,  4245,  2717,  2717,    52,
3460    66433,   207, 74865,   149, -5174, -5174, -5174, -5174, 78717,   175,
3461      236,   243, -5174, -5174, 67118,  3376,   117,   117,   207,  1779,
3462     1779,    52,   117, -5174, -5174, -5174, 89651, 93503, -5174,  1534,
3463      117,  3376,  3376,  2717,   265,  1779,   207, -5174,   207,   207,
3464     1530,   149, -5174, -5174, -5174,   117,   149, 40361, -5174, 13073,
3465    -5174, -5174, -5174, 41725, 93503,  1274,  4234, -5174,  3674, 61620,
3466    -5174,  3856, 23791, 23791,  4276, 93503,  4284, -5174,  4081, -5174,
3467    93503, -5174,   912, -5174, -5174, -5174,  3981,  4199,  2195, -5174,
3468    -5174,  2251, -5174, -5174,  2252, -5174, -5174, -5174, -5174, -5174,
3469     3269, -5174,  4374, -5174,  4041,  3138,   912, -5174, 10008, -5174,
3470     3892,    40,  4171,  4171,  4171,  4171, 56138, -5174, -5174, -5174,
3471    -5174, -5174, -5174, -5174,  4357, -5174, -5174,  3984,    52,  3984,
3472    -5174, -5174,   917, -5174,   917, -5174,   185, 63693, -5174, -5174,
3473    -5174, -5174,   728, 45965,  2250, -5174,  4093,  3057,  3984, -5174,
3474     4184,   311, -5174, -5174,   917,  1509, -5174, -5174,  3984, -5174,
3475    -5174, -5174,  1509,   917, -5174,  4185, -5174, -5174, -5174,   917,
3476     3984,  3920, 93503,  4307,   311, -5174, -5174, 97355,   311,   917,
3477    23791, -5174,  4269, -5174,   728,  4473,   311,  3984,   917,   917,
3478    -5174,   274,  3725, -5174, 54788, -5174,  3723,  3729,  3737,  3739,
3479      728,  2257,  3719, -5174,   728,   728, -5174,  3740,  3744, 23791,
3480     1509,  4359,  8986,  6638,  2278,  4018,  3970, -5174,  3916, -5174,
3481     8998,  9045,  9049,  1532,  3447, -5174, -5174, -5174, -5174,  4389,
3482     3441, -5174,  4482, -5174,  3441, -5174, -5174, -5174, -5174, -5174,
3483    -5174,  3747,  9071, 10008, 10008,  9091, -5174, -5174, -5174,  2279,
3484     1598,  9104,  9150, -5174, -5174, -5174,  3754, -5174, -5174,   215,
3485    -5174,  3756, -5174, -5174,  2284,  4502,  2134, 23791, -5174, -5174,
3486    -5174, 93503,  3854,  1042, -5174,  2288, -5174, -5174,  3762, -5174,
3487    -5174,  3759, -5174, 74865, 20106,  3135,  3135, -5174, -5174, 85157,
3488    16395, 16395, -5174, -5174, -5174, -5174,  3619,  2225, -5174, -5174,
3489    -5174, -5174,  3763, -5174,  3765,  3766, -5174, -5174, -5174, 91577,
3490    -5174,  2292, -5174, -5174,  4528, 20106, -5174, -5174, 89651, -5174,
3491     3771,  3773, 79359,  2668,  2296, -5174, -5174, -5174, -5174, -5174,
3492    78717, -5174,   124, -5174, 13040, -5174, 12103,   460,  2231, -5174,
3493    -5174,  1450,  3895, -5174,  3775, 93503,  1779,  3776,  4534, 23791,
3494     3778, 23791,  3779,  2302, -5174,  2340, -5174,  2340, -5174,  1116,
3495     4525,  4527,  4477,  4531,  1944, -5174,  2230, -5174, -5174, -5174,
3496    -5174, -5174, -5174, -5174,  3792, -5174, -5174, -5174, -5174,  4128,
3497    -5174,  4382, -5174,  4247,  2162, -5174, -5174,   207,  3796,  2162,
3498     4471, -5174,  3799,  4438,  4439,  2340, -5174,  2392, 79359, -5174,
3499     2392,  2392, -5174, 79359, 40361, 79359, -5174, 45309, 79359,  2717,
3500    93503, -5174,  4478, -5174,  4442, 79359, 79359,  1779, -5174, -5174,
3501    40361,  3800, -5174,  2170, -5174, -5174, -5174,  2286, -5174, -5174,
3502    -5174, -5174, -5174, -5174, -5174,  3804, -5174, -5174, -5174, -5174,
3503    -5174,  2475, -5174, -5174,  1779, -5174, -5174,  4274, -5174, -5174,
3504    -5174, -5174, -5174, -5174, -5174, 79359, -5174, -5174, -5174, 40361,
3505    -5174, 40361, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3506    -5174, -5174, -5174, -5174,  1722,  1072, -5174,  3806,  3805, -5174,
3507    93503, -5174, -5174, 78717, -5174, 43851, 93503, -5174, -5174, -5174,
3508    -5174, -5174, 10008,  9432,  4204, -5174, -5174,  3921,  1779,  4172,
3509    -5174,  4282, -5174, 93503,   183, 56138, -5174,   117, -5174,   117,
3510    -5174,   117, 31161, -5174, -5174,   390, -5174,  4171,  2071, -5174,
3511    -5174, -5174, -5174, 55463, -5174,  4456,  4322, -5174, -5174, 93503,
3512    -5174,  4280,  4306, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3513    -5174, -5174, -5174, -5174,    52, -5174, -5174, -5174, -5174,  2317,
3514    -5174, -5174,  2339, -5174, -5174, -5174, -5174, 97355, 11694, -5174,
3515     2343, -5174, -5174, -5174,  4307,  3811, -5174, -5174, 10008,  3837,
3516    -5174, -5174, -5174, -5174,  4473, -5174, -5174, 80643, -5174, -5174,
3517    -5174, 93503,  4500,  4501, -5174, -5174, -5174, -5174, -5174,  4418,
3518    -5174, -5174, -5174, -5174,  3822,  2170, -5174, -5174,  3825, 88367,
3519    -5174, -5174, 23791, -5174,  4058, -5174,  4163, -5174, -5174, -5174,
3520    -5174, -5174, -5174, -5174, -5174, -5174,   728, -5174, -5174, -5174,
3521    -5174,  3376, -5174, -5174, -5174,  3828, -5174,   117, -5174, 23791,
3522    -5174, -5174,  3831,  6622,  2170, -5174,   117, -5174,  3793,  3833,
3523    93503, -5174,  4201, -5174, 85799, -5174, -5174, -5174, -5174, -5174,
3524     3905, -5174, -5174, 93503, -5174, -5174,  3376,  4192, -5174,  2344,
3525     4033,  3836, 93503, 93503, 93503, -5174, -5174, 41725,  3839, -5174,
3526     4600, -5174,  4221, -5174, -5174, -5174,  3841,  3843, -5174, 93503,
3527    -5174, -5174,  4547, 56138, -5174, -5174, -5174,  4440,  1515, -5174,
3528     3983,  3845, 11324, -5174, -5174, -5174,  3983, -5174, 10008, 93503,
3529    10008, 93503, -5174,  4529,  4529, -5174,  1509,  1509,  4594,  1509,
3530    -5174,  4596,  4597,  2230, -5174,  4358,   441,  4226,  1175,  4542,
3531    -5174, 93503,  4543, -5174, 23791,  2392, -5174, -5174, 79359,  4342,
3532     1313, 79359, 79359,   505, -5174, 79359,  1384,  3625, -5174, 79359,
3533     3766, 93503, -5174, -5174,  1520, -5174, -5174, 74865, -5174, -5174,
3534    78717, -5174, -5174,  4368,  1274, -5174, 93503, -5174, -5174, -5174,
3535     3866,  1806,  3859,  3860,   264,  1832,  3861,  3595,  1839,  3862,
3536     3865,   314,  3868,  3874,  3876,  3877,   408,   261,  1880,  3879,
3537     3881,  3882,  3441,  3883,  1889,  1903,  1910,  3441,  1916,  3884,
3538     4611, -5174, -5174,  3885, -5174, -5174, -5174, -5174, -5174,  1152,
3539    -5174,  2349, -5174, -5174, -5174, -5174, 49388, -5174, -5174, -5174,
3540     3467, -5174,  4068, -5174,  2071, -5174,  4364, 78717, -5174, -5174,
3541    -5174, -5174,   728,  1509,   728,  4307, -5174, -5174, 93503, -5174,
3542    93503,  4480, -5174, -5174, -5174, -5174, 41078, -5174, -5174, -5174,
3543     4215, -5174,  2353, -5174, -5174,  3898, 23791, -5174, -5174, -5174,
3544     1166,  9184, -5174, -5174, -5174,  3900, -5174,  3901,  3393, -5174,
3545    10568,  4007,  3635,  3636,  3637,  4080,  4223, -5174,  4083, -5174,
3546    -5174,  3903, 31161, -5174,  1488, -5174, -5174, -5174, -5174, -5174,
3547    -5174,  4327, -5174,  3913, 93503,  2354,  2170,  3917,  2368,  3918,
3548    -5174, -5174, -5174,   364,   124, -5174,  1870, -5174, -5174, -5174,
3549    -5174,  4276, -5174, -5174, 93503,  1603,  4112, -5174, -5174, -5174,
3550     2375,  2405,  1934, -5174, -5174, -5174, -5174,  1509, -5174,  1509,
3551     1509, -5174,  3915, -5174, -5174, -5174, 79359,  1135,  3919, -5174,
3552     9205, 79359,  4342,  1350,  1009, -5174,  1009, -5174, -5174,  4621,
3553     4623,  1274, -5174, -5174, -5174, -5174, -5174,   207, -5174,  3927,
3554    78717, -5174, -5174,  3766,  1029, 93503,  4537,  2925, 11694, -5174,
3555    -5174,  9355, 93503,  4016, -5174, 56138,  4123,  4666,  4669, -5174,
3556    93503, 92861, 31161, -5174, -5174, -5174,  3333, -5174, -5174, -5174,
3557    -5174, -5174,  3925, -5174, 80643, -5174, -5174, -5174, -5174,100213,
3558    -5174,  2170, 88367, 88367, -5174, -5174, -5174,   856, -5174,  4694,
3559     1454, -5174, -5174,   636, -5174, -5174, 93503,  3936,  4020, -5174,
3560    -5174,  4008, -5174, -5174,  2468, -5174,   522,  2419,  1030, 93503,
3561    -5174,  4538,  1030, 93503,  4406, -5174, -5174, -5174,   897, -5174,
3562    11694,  2231, -5174, -5174,  4146, -5174, 93503, -5174, -5174, -5174,
3563     4690, -5174,  4692,  3949,  3952, -5174, -5174, -5174, -5174,  4611,
3564     2475,  4201, -5174, 93503, -5174, -5174, -5174,  1009, -5174,  3953,
3565    -5174,  3955,  3956, -5174, 33372, -5174, -5174, -5174, -5174,  4598,
3566    -5174,  2422, -5174,  1026,  4548, -5174,  4601, -5174,  1779, -5174,
3567     4039, -5174,  2925, -5174, -5174, -5174,  3996,  4606,  4562,    52,
3568    -5174, 89651, 33372, -5174,  4457, -5174,  4415,  4681, -5174,  4740,
3569     9324, -5174, -5174, -5174, 23791,  4331, -5174, -5174,  4175,  4181,
3570    -5174, -5174,  2429, -5174, -5174,  2451, 74865, -5174, 93503, -5174,
3571    -5174, -5174, -5174, -5174, -5174, 10568, -5174, -5174,  4119,  1857,
3572    -5174,  2433, -5174, -5174, -5174,  2475, -5174,  3990, -5174,  4351,
3573       52,    52,  4356,    52,    52,    52,    52,  3995,  2468, -5174,
3574     4346,  2449,  1030,  1866,  2170,  3997,  1187,  3994, -5174, -5174,
3575    78717,  4081, -5174, 57462, 93503,  3992, -5174, -5174, 91577, 91577,
3576    -5174, -5174,  2462,  4000,  4002,  4003, -5174, 93503,  4004, 93503,
3577    93503,  2079,  2079, 17895, -5174, -5174, -5174, -5174, -5174, -5174,
3578     2678, -5174,  4010, -5174, 93503, -5174, -5174, -5174,   373, -5174,
3579    -5174, -5174, -5174, -5174, -5174, -5174, -5174, 62314, -5174, -5174,
3580     4605, -5174,  4050,  1229,    52, -5174, 10323, 10008, 23791, -5174,
3581    -5174, -5174, -5174, 92861,  4011, -5174,    52,   344, -5174, -5174,
3582    -5174, -5174, -5174, -5174, 93503, -5174,  4012, -5174, -5174,   119,
3583       52,  1779,  1779,    52,  2721,  2721,  2475, 89651,  4092, -5174,
3584    -5174,    52, -5174,  1465,  4205,  1779,    52,  1133,  1866, -5174,
3585    -5174,    52, -5174, -5174,  1133,  1187, -5174, -5174, 93503,  4695,
3586     4376, -5174,  4023, 93503,  4025,  2467, -5174, -5174, 93503, 93503,
3587     4034,  2471, 93503,  2478,  2482, -5174, -5174,  4027,  4201, -5174,
3588      470,   470, -5174, -5174, -5174, -5174,  4046, -5174,   756, -5174,
3589    -5174, 10323, 10008, -5174, 74865, 20106, -5174,  4020, -5174, -5174,
3590     2486, -5174, 28213, -5174, -5174, -5174,  1779, -5174, -5174,  1779,
3591    -5174, -5174, -5174, -5174, -5174,  2496, -5174, 89651,  1009,  1009,
3592     1133,  1465, -5174, -5174, -5174,  2661, -5174,   117, -5174,  4660,
3593     4484, -5174, 63008, -5174, -5174,  4047, -5174, -5174, 93503,  4044,
3594    -5174, -5174,  2500,  2515, 93503,  1465,  2528,  1866,  1187, -5174,
3595     2533, -5174, -5174,   425,  4492,  4633,  4641,   346, -5174,  2119,
3596     2119,  1038, -5174, -5174,  4592, -5174, -5174,  4012, -5174,  4051,
3597    -5174,  2451, -5174, -5174, 89651, -5174,  4092, -5174, -5174, -5174,
3598    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
3599    -5174, -5174, -5174, -5174, 93503,  4234,  1465,  2541, -5174,  1465,
3600    -5174, -5174, -5174, -5174, -5174, -5174,  4540,  4762, -5174,  4056,
3601    -5174,  2119, -5174, -5174, -5174, -5174, -5174,  1416,  4360,  3934,
3602    -5174, 28213,  4059,  2468, -5174, -5174,  4753, -5174, -5174, -5174,
3603     1465, -5174,   470,   470, -5174, -5174, -5174,  1416, -5174,  4806,
3604     4287, -5174, -5174, -5174,  4191, -5174, -5174, -5174, -5174,  1509,
3605     4722, -5174, -5174,  4661,  4066,  1453,  1531, 68445,  4602, -5174,
3606    -5174, 89651, -5174, -5174, -5174, -5174, -5174, 89651,  2549, -5174,
3607    -5174, 74865, -5174, -5174, 56138, -5174, -5174, 71013,  4065, -5174,
3608       52, -5174, -5174, 74865, -5174, -5174, 20106, -5174, -5174
3609 };
3610 
3611   /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
3612      Performed when YYTABLE does not specify something else to do.  Zero
3613      means the default is an error.  */
3614 static const yytype_uint16 yydefact[] =
3615 {
3616        0,  1119,  2345,     0,   448,     0,  1339,   714,  2200,  2338,
3617     2339,  2125,     2,   503,   218,   401,  2127,  2410,     0,     0,
3618      499,  1355,   855,   610,     0,   326,     0,     0,   506,  2130,
3619      324,   218,  1404,  3052,  2245,     0,  3143,  2188,     0,  1402,
3620      501,  2508,  3394,     0,  3295,     0,     0,     0,  3300,    71,
3621     2093,     0,  1355,   347,  3145,    84,     0,     0,  1355,  2394,
3622     3300,     0,  2422,     0,     0,  2226,     0,     0,     0,     0,
3623        3,     8,    22,     0,    44,    27,    32,    17,    21,    16,
3624       46,    59,    52,    29,  3297,   397,   398,   399,   400,    42,
3625     3330,    41,    11,    62,    63,    19,    49,    12,    15,    18,
3626       40,    48,    36,    43,    56,    57,  1425,  1401,  1429,  1400,
3627     1396,  1392,  1411,  1412,  1413,  1419,    25,    26,    33,    50,
3628       67,    23,    64,    60,    24,  2345,    13,    28,    14,    51,
3629       45,    37,    61,    68,    38,     0,    58,    39,    66,    31,
3630       53,    30,     9,    10,    20,    54,    55,    47,    69,    34,
3631       65,    35,  1164,     0,     0,     0,     0,     0,  2123,     0,
3632        0,  2123,  1248,  1469,  3328,  3329,  3330,  1356,     0,  1357,
3633        0,     0,  2546,  2547,  2754,  2802,  2803,  2696,  2831,  2648,
3634     2926,  2948,  2974,  2736,  2735,  2738,  2737,  2739,  2740,  2741,
3635     2742,  2743,  2744,  2621,  2745,  2746,  2747,  2749,  2748,  2750,
3636     2751,  2752,  2622,  2695,  2623,  2701,  2753,  2703,  2702,  2755,
3637     2624,  2625,  2756,  2757,  2758,  2759,  2679,  2627,  2626,  2760,
3638     2762,  2761,  2704,  2705,  2682,  2763,  2764,  2765,  2767,  2628,
3639     2629,  2630,  2631,  2632,  2766,  2633,  2768,  2683,  2769,  2770,
3640     2634,  2771,  2772,  2773,  2774,  2776,  2775,  2676,  2777,  2778,
3641     2780,  2781,  2782,  2779,  2783,  2784,  2786,  2785,  2707,  2787,
3642     2706,  2788,  2635,  2789,  2790,  2791,  2792,  2793,  2794,  2795,
3643     2796,  2797,  2798,  2684,  2799,  2800,  2801,  2823,  2697,  2804,
3644     2806,  2805,  2708,  2807,  2808,  2809,  2811,  2810,  2812,  2814,
3645     2636,  2637,  2638,  2813,  2815,  2816,  2817,  2818,  2819,  2821,
3646     2820,  2825,  2826,  2709,  2639,  2680,  2640,  2641,  2822,  2824,
3647     3029,  2827,  2828,  2710,  2711,  2829,  2642,  2698,  2830,  2685,
3648     2833,  2832,  2643,  2834,  2644,  2835,  2836,  2837,  2838,  2839,
3649     2841,  2843,  2840,  2844,  2845,  2851,  2645,  2842,  2846,  2847,
3650     2848,  2849,  2850,  2852,  2712,  2853,  2677,  2855,  2854,  2856,
3651     2857,  2858,  2859,  2713,  2860,  2699,  2861,  2862,  2863,  2876,
3652     2877,  2867,  2868,  2870,  2871,  2874,  2869,  2875,  2880,  2879,
3653     2881,  2882,  2883,  2884,  2885,  2878,  2865,  2872,  2873,  2866,
3654     2886,  2887,  2864,  2888,  2890,  2889,  2891,  2714,  2892,  2893,
3655     2894,  2895,  2896,  2897,  2898,  2899,  2901,  2900,  2902,  2715,
3656     2716,  2717,  2903,  2904,  2905,  2692,  2906,  2718,  2719,  2907,
3657     2910,  2908,  2909,  2911,  2912,  2917,  2918,  2919,  2678,  2914,
3658     2913,  2915,  2916,  2720,  2721,  2722,  2920,  2921,  2922,  2923,
3659     2925,  2924,  2686,  2647,  2646,  2649,  2927,  2928,  2650,  2929,
3660     2931,  2930,  2694,  2651,  2932,  2933,  2935,  2934,  2723,  2724,
3661     2652,  2681,  2653,  2654,  2936,  2937,  2938,  2939,  2940,  2941,
3662     2942,  2943,  2944,  2945,  2946,  2947,  2725,  2726,  2949,  2950,
3663     2951,  2953,  2952,  2954,  2955,  2956,  2957,  2958,  2959,  2960,
3664     2655,  2961,  2687,  2962,  2963,  2656,  2965,  2964,  2657,  2966,
3665     2967,  2968,  2969,  2970,  2693,  2688,  2971,  2972,  2973,  2727,
3666     2975,  2976,  2977,  2689,  2978,  2979,  2980,  2658,  2981,  2982,
3667     2728,  2700,  2659,  2983,  2985,  2690,  2660,  2984,  2662,  2663,
3668     2986,  2987,  2988,  2661,  2989,  2664,  2990,  2991,  2993,  2992,
3669     2994,  2995,  2996,  2997,  2665,  2998,  2999,  2666,  3000,  2667,
3670     3001,  3002,  3003,  3004,  3006,  3005,  3007,  3008,  3009,  3010,
3671     3011,  3012,  3014,  3016,  3015,  3013,  3017,  3018,  2729,  3019,
3672     2668,  2730,  3024,  3025,  2731,  3020,  3021,  3022,  3023,  2691,
3673     3026,  3027,  3028,  2671,  3030,  3031,  3033,  3032,  2669,  2670,
3674     3034,  3035,  2675,  3036,  3037,  3042,  2732,  2733,  3038,  3039,
3675     3051,  3040,  3041,  3044,  3043,  3045,  3046,  2591,  2672,  3047,
3676     3048,  2673,  3049,  2674,  3050,  2734,   238,  2551,  2562,   222,
3677     2563,  2588,  2586,  2590,  2584,  2585,  2589,  2583,  2587,   450,
3678      129,     0,     0,     0,     0,  2221,  2123,  2097,  2123,  2123,
3679     2123,  2123,     0,  2123,  2123,     0,  2126,  2123,  2123,     0,
3680        0,     0,   441,  2133,  2412,     0,  2432,  2433,  2427,  3133,
3681     3134,  3128,   403,     0,     0,     0,  2312,  2311,     0,     0,
3682      311,   323,   326,   319,   322,     0,   218,  1358,   403,  2198,
3683      325,   326,     0,  1434,  3054,     0,  2317,   326,     0,  2198,
3684     2426,     0,     0,  2509,  2506,  2383,  2385,     0,  2381,  1540,
3685     1539,     0,  3300,  2552,     0,  1334,  1366,  1292,  3301,  3302,
3686        0,    76,    79,  2350,   348,     0,     0,     0,   712,     0,
3687        0,  1300,     0,  3302,  3312,  2424,     0,   129,  1273,     0,
3688      129,  2228,  2123,  2123,  3377,  3378,     0,     0,     0,  3372,
3689        0,  3379,     0,  1429,     0,  1415,     1,     5,     0,     0,
3690      712,  1076,  1077,  1075,   712,   712,     0,     0,     0,     0,
3691        0,  3335,  3328,  3329,  3330,     0,  2079,  1946,  1430,  1429,
3692     2026,  2030,  3316,  3315,  3317,     0,     0,  2026,  1420,  2818,
3693     2641,  2931,     0,  2330,  2344,  2328,  2540,  1398,  1394,  1122,
3694     1165,  1125,     0,     0,  1127,     0,     0,  1142,  2568,  2567,
3695     2566,  1139,  1138,  1137,  1135,     0,   574,   218,     0,  1250,
3696        0,     0,     0,  3336,  3335,     0,  1311,  2332,  2333,  2334,
3697     2335,  2336,  2337,  2340,   240,     0,   461,   464,     0,   453,
3698      456,     0,   130,   131,  1337,  1340,     0,   715,     0,   166,
3699        0,  2225,  2224,     0,  2223,  2201,     0,  2221,     0,  2121,
3700        0,     0,     0,     0,     0,   218,     0,  2313,   218,  2105,
3701     2123,  2123,   504,   478,  3198,  3213,  3214,  1482,  3210,  3215,
3702        0,  3212,  3204,     0,  3208,  3202,     0,  3234,  3206,  3211,
3703     2810,  2638,  2825,  2940,  2944,  2960,  2963,  2690,  3007,  3192,
3704     3177,  3193,     0,     0,  3196,  3200,     0,     0,  2134,  2135,
3705     2136,  1246,  2413,  2414,  2418,     0,  2436,     0,   416,     0,
3706        0,     0,     0,   405,   406,   472,     0,   412,     0,   403,
3707      387,     0,   386,   388,     0,   407,   382,   390,   389,   391,
3708      392,   393,   394,     0,   395,   396,   469,     0,   383,   384,
3709      500,   385,  2564,     0,  2565,  2593,  2595,  2592,  2594,  1353,
3710        0,  2496,     0,     0,     0,     0,     0,     0,     0,     0,
3711        0,  1482,  1482,  1482,  1479,     0,     0,     0,  2501,     0,
3712        0,     0,     0,  2492,     0,  2502,     0,     0,     0,  2494,
3713     2495,  2548,  2549,     0,     0,     0,     0,  2499,     0,     0,
3714        0,     0,     0,  2475,  1542,     0,  1479,     0,  2491,  2498,
3715        0,  2483,     0,     0,     0,     0,     0,     0,     0,     0,
3716        0,     0,     0,     0,     0,     0,  1479,  2474,     0,  2493,
3717     2500,     0,  1482,  1479,  1479,     0,     0,  2737,  2621,  2752,
3718     2679,  2763,  2765,     0,  2628,  2629,  2630,  2631,  2632,  2676,
3719     2787,  2706,  2788,  2789,  2790,  2641,  2710,  2829,  2836,  2854,
3720     2856,  2713,  2895,  2897,  2902,  2715,  2716,  2717,  2908,  2909,
3721     2922,  2694,  2723,  2724,  2938,  2945,  2970,  2727,  2975,  2980,
3722     2983,  3003,  2730,  3024,  3025,  2731,  3023,  2691,  3036,  3042,
3723     3045,  3046,  2672,  2734,     0,     0,     0,     0,  1541,     0,
3724        0,  1780,  1427,  1616,   856,  1499,  1515,     0,  1614,  1613,
3725     1617,  1619,  1625,  1534,  1646,  1585,  1586,  1588,  1708,  1587,
3726     1592,  1593,     0,  1756,  1594,     0,     0,  1591,  2488,  1590,
3727     1589,  2489,  2490,  1584,  2526,  2562,     0,  2550,   612,   611,
3728        0,   338,   333,   341,   335,   337,   336,   342,   343,   344,
3729      339,   334,   340,   327,     0,   312,     0,   320,  3313,     0,
3730        0,   403,   507,  2199,  2138,  2141,  2137,   345,  3198,  2738,
3731     2944,  3166,     0,  3176,     0,  3327,  3322,  3324,  3323,  3320,
3732     3321,  3325,  1455,  3326,  1454,  1405,  1435,  1452,  1453,     0,
3733        0,     0,   994,  3077,  3078,  2692,  2694,  2693,  3079,  3020,
3734     2620,     0,     0,  2557,     0,     0,  2558,  2617,  2615,  2619,
3735     2614,  2618,  2613,  2616,  3053,  3063,  3059,     0,     0,     0,
3736     2325,  1072,  1071,     0,     0,     0,  2267,     0,   994,  2325,
3737     2268,     0,  2003,  2315,  2318,     0,  3081,  2281,  1073,  3082,
3738     2311,     0,  2253,  2269,  2230,  2274,   129,  3083,     0,  2314,
3739     2003,  2325,     0,  2246,     0,     0,     0,     0,  1468,     0,
3740      321,  3144,  1246,  2168,  1403,  2154,   502,     0,     0,     0,
3741     2382,   474,  3296,     0,     0,     0,     0,  3305,  1827,  2094,
3742        0,    80,    75,     0,     0,     0,     0,  2545,  3146,    85,
3743        0,     0,  3391,    73,     0,  2400,     0,  2398,  2395,  2397,
3744        0,  3305,     0,  2423,  1280,  1280,     0,     0,  1272,  1274,
3745     1275,  1280,  1280,  2229,     0,     0,     0,  2482,  2480,  2481,
3746     2553,  3374,  2479,  2478,  3383,  3385,  3368,     0,  3371,  3370,
3747     3380,  1418,  1417,     6,    70,     0,   218,   218,   712,   168,
3748      712,   140,   143,   712,   712,   712,   152,   156,     0,   220,
3749        0,     0,  3335,  1433,     0,     0,  1445,  1431,  1842,  1432,
3750     1844,  1841,  1840,  1839,  1870,  1871,  1873,  1872,  1874,  1876,
3751     1867,     0,     0,  2092,     0,  2087,  1947,  1952,  1946,     0,
3752        0,     0,     0,  2025,  2003,  2034,  2027,  1397,  2023,     0,
3753     1393,  1458,  1458,  3319,  3318,  3314,  2028,  1416,  1424,  1422,
3754     1423,  2029,  1414,     0,  2342,  2542,     0,  2347,     0,  2026,
3755     2030,  1010,     0,   223,  3333,  3334,  3332,  1482,  2569,  2572,
3756     3331,  2573,   223,  1136,     0,   575,  2124,     0,     0,     0,
3757        0,     0,     0,   577,   576,   513,     0,     0,  1254,  1255,
3758     1249,  1251,  1253,     0,     0,     0,     0,  2346,     0,   242,
3759      239,   221,     0,   403,     0,   451,   457,    86,     0,  1341,
3760     2114,  2116,   165,     0,     0,     0,  2202,     0,  1443,  1946,
3761     2204,  2209,  2215,  2219,  2222,  2099,     0,     0,  2102,  2108,
3762     2107,  2101,  2313,     0,  2111,   588,     0,     0,     0,  2112,
3763     2095,     0,     0,  3199,  3197,  3231,  3230,  3235,     0,  3232,
3764     3228,     0,  3191,  3236,  3221,  3268,  3225,  3268,  3268,  3222,
3765     3229,  3268,     0,  3227,  3226,     0,  3194,     0,     0,     0,
3766     1247,  2141,  2419,     0,  2411,     0,  1376,  2438,  2437,  2434,
3767     1938,  3130,  3135,   410,   417,     0,     0,  2908,     0,   422,
3768      421,   420,   273,   438,   410,   413,   430,     0,     0,   271,
3769      404,     0,   436,   439,   493,   489,   497,   491,   470,   466,
3770        0,     0,     0,     0,  1620,  1944,  1944,  1944,     0,     0,
3771     1835,     0,     0,     0,     0,  1944,     0,  1652,  1631,  1632,
3772        0,  1653,     0,     0,     0,     0,     0,     0,     0,     0,
3773     1786,     0,     0,     0,     0,     0,     0,     0,  2548,  2549,
3774        0,     0,     0,  1829,  1831,  2526,  2550,  1944,     0,  1944,
3775        0,  1487,  1662,     0,     0,     0,     0,     0,     0,     0,
3776        0,     0,     0,     0,     0,  1944,  1944,     0,  1944,  1670,
3777        0,  2476,  2497,  1674,  1676,  1675,  1944,  1944,     0,     0,
3778     1944,     0,     0,     0,  2485,  2484,     0,     0,     0,     0,
3779        0,     0,     0,  2503,     0,     0,     0,     0,     0,     0,
3780        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3781        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3782        0,     0,     0,     0,     0,  2505,     0,     0,     0,  2504,
3783        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3784     1622,     0,  1621,  1623,     0,  1427,   857,     0,     0,     0,
3785        0,  1538,  1537,     0,  1544,     0,  1546,  1548,  1536,  1535,
3786        0,  1543,  1545,  1547,     0,     0,     0,     0,     0,     0,
3787        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3788        0,     0,     0,     0,     0,     0,  1624,     0,     0,     0,
3789        0,     0,  2477,     0,  1718,     0,   624,  2408,     0,     0,
3790        0,   310,  1360,  2574,     0,  1359,  1363,  3130,   486,  2141,
3791     2131,  2140,     0,  3197,     0,     0,     0,  3194,  1469,  1451,
3792        0,     0,  3055,  3057,   993,     0,     0,   996,   998,  2159,
3793     2158,   997,  1006,     0,   995,     0,  3118,     0,     0,  3103,
3794        0,  3084,     0,  1002,  1004,  1003,  3098,  1001,     0,     0,
3795        0,  3068,     0,     0,   712,     0,     0,     0,     0,     0,
3796        0,     0,  2296,     0,  1468,  1468,  2247,     0,  2325,  2315,
3797        0,  2325,  2321,  2280,     0,     0,   768,  2008,  2004,  2273,
3798     2319,  2320,  2325,     0,     0,  2325,     0,  2287,  2315,  2325,
3799     2242,     0,     0,  2234,  2239,  2235,     0,  2241,  2240,  2243,
3800     2231,  2232,     0,  2260,  2289,     0,  2272,  2279,     0,  2259,
3801     2266,     0,  2277,  2315,  2315,     0,  2325,  2325,  2325,     0,
3802     1469,     0,   484,  2507,  2510,  2514,  2518,  2384,   273,     0,
3803        0,  1368,  1370,  1369,  1386,  1294,  3304,     0,  3306,     0,
3804     3308,     0,    77,     0,     0,  2377,  2375,     0,     0,     0,
3805     2369,  2371,  2374,  2370,     0,     0,  2376,   129,     0,  2372,
3806     2351,  2354,  2361,  1468,  2352,     0,     0,   346,   349,   351,
3807        0,   354,  1938,  3149,  3148,     0,     0,     0,  1298,  1301,
3808        0,  2405,  2402,   129,     0,  2689,  3311,  3309,     0,  1268,
3809     1284,  1266,  1278,  1279,     0,     0,  1271,  1270,  3130,  3392,
3810     3393,     0,     0,  3369,  3386,  3367,     0,  3381,  3382,  3366,
3811        7,     4,   146,     0,     0,     0,   137,   712,   712,   132,
3812        0,   154,  1469,  1469,   712,   712,   712,     0,     0,  1840,
3813     1870,  1871,  1873,     0,  1872,     0,     0,  1938,     0,     0,
3814     1862,  1886,     0,  1886,  1864,  1865,     0,     0,     0,  1445,
3815     1868,  2554,  2088,  2091,     0,  2080,  2082,  2083,  2566,  2085,
3816        0,     0,  1949,  1952,  1460,  2016,  2017,     0,  2015,     0,
3817     2005,  2009,  2014,  2012,     0,  1996,  2033,  2024,  2072,  1459,
3818     2031,  2032,  1421,  2331,  2329,  2348,  2349,  2541,  1399,  1395,
3819     1011,  1010,   706,   709,   708,     0,     0,  1126,  2571,     0,
3820     1128,     0,  2313,  1143,     0,     0,  2313,   524,  2313,   578,
3821     2572,  3261,     0,  3273,  3250,  3130,  1252,  3337,  3338,  1133,
3822     1131,     0,  1312,  1313,  1316,     0,   243,   245,   462,   403,
3823        0,     0,     0,  1351,     0,  1349,  1348,  1346,  1347,  1345,
3824        0,  1336,  1342,  1343,  2313,   516,  1867,     0,  2205,  2211,
3825     2118,  2120,  2540,     0,  1444,  2207,  1994,     0,     0,     0,
3826     2217,  2122,     0,     0,   588,  2104,  3189,   591,   590,  2109,
3827      589,  2160,  3248,  2103,  1256,     0,     0,   403,   476,   479,
3828     3224,  1483,     0,  3205,  3209,  3203,  3207,     0,  3187,     0,
3829        0,  3195,     0,     0,  3233,  3216,  3220,  3219,  3217,     0,
3830     3218,  3223,  3201,   402,   442,  2128,  2837,  3036,  2420,  2416,
3831     2415,     0,  2435,     0,  1939,  1940,     0,     0,  1942,  3132,
3832     2035,     0,  3129,   418,     0,   410,     0,     0,     0,   433,
3833      269,   414,   410,   423,   432,   483,   272,   408,     0,     0,
3834      403,   403,     0,   273,  3130,     0,  1945,     0,  1801,     0,
3835        0,     0,     0,     0,     0,  1600,     0,     0,     0,  1739,
3836        0,  1801,  1763,  2065,  2066,  2046,  2047,  2045,  2048,  1480,
3837        0,  2049,  2064,  1686,     0,     0,     0,  1761,  1426,  1409,
3838        0,     0,  1914,  1915,  1916,  1917,  1918,  1919,  1920,  1921,
3839     1922,  1923,  1924,  1925,  1927,  1932,  1928,  1929,  1930,  1931,
3840     1926,  1933,     0,  1913,     0,  1787,  1752,     0,     0,     0,
3841        0,   857,     0,     0,     0,     0,     0,     0,     0,  1944,
3842        0,     0,  1944,     0,     0,     0,     0,  1762,     0,     0,
3843        0,  1760,     0,     0,     0,  1759,  1644,     0,     0,     0,
3844     1944,     0,     0,     0,     0,  1576,     0,     0,     0,     0,
3845        0,  1944,     0,     0,     0,     0,     0,     0,     0,     0,
3846     1569,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3847        0,     0,  1936,  1934,  1937,  1935,     0,     0,  1827,     0,
3848        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3849        0,     0,     0,     0,     0,     0,     0,     0,  1700,     0,
3850        0,     0,     0,     0,     0,     0,     0,     0,  1648,     0,
3851        0,     0,  2531,     0,  1042,     0,     0,     0,     0,  1615,
3852        0,     0,     0,     0,  3084,  1781,  1783,  1496,  1490,  1494,
3853     1488,  1492,     0,  1485,  1484,  1486,  1549,  2744,  1497,     0,
3854        0,     0,  1500,  1509,  1513,     0,     0,     0,     0,     0,
3855     1531,  1532,  1520,  1518,  1519,  1516,  1517,     0,  1522,     0,
3856     1521,  1528,  1529,  1530,  1533,  1618,  1005,  1626,  1964,  1754,
3857     1755,  1779,  1968,     0,  2527,  1469,  1572,  1571,  1573,  1574,
3858     1575,   625,     0,   619,   622,   636,     0,     0,  2407,     0,
3859     2706,  2730,  2731,   328,   331,   330,   332,     0,     0,     0,
3860        0,     0,  2139,     0,  2142,  1867,     0,     0,     0,  3252,
3861     3174,     0,     0,     0,     0,  1465,  1406,  1464,     0,     0,
3862        0,     0,     0,     0,  3101,     0,     0,  3100,  3099,     0,
3863     3120,     0,     0,  3105,  3126,  3127,  3124,  3125,  3123,  3104,
3864        0,     0,  3062,  3106,  3107,  3110,     0,     0,     0,     0,
3865        0,  3091,     0,  3020,  3064,  3065,  3070,  3060,  2288,     0,
3866        0,  2291,  2284,  2295,  2754,  2293,  2305,  2292,  2286,  2297,
3867     2285,     0,     0,  2302,  2298,  2325,     0,  2325,  2300,     0,
3868     2323,  2310,  2309,  2308,  2257,  2256,  2250,  2316,  2303,  2299,
3869      218,  2325,  2255,  2254,  2236,  2237,  2238,     0,  2003,     0,
3870     2321,  2290,  2315,     0,  2325,  2325,  2306,  2307,  2276,  2278,
3871     2187,     0,  1867,     0,     0,  2173,  2166,  2153,   403,     0,
3872        0,  2512,   269,     0,     0,     0,   609,  1386,  1372,  1388,
3873     1296,  1295,  1293,  3303,  3307,  1828,    79,  2181,  2179,    81,
3874     2178,  2180,    82,  2386,  2363,  2362,  2364,  2368,   129,  2373,
3875     2365,     0,  2378,  2379,   359,     0,   355,     0,     0,  3147,
3876        0,   713,     0,    74,     0,  1302,  2035,  2401,  2403,  2396,
3877     3310,     0,  1269,  1286,  1285,  1281,  1282,  1287,  1277,  1276,
3878     2227,  3375,  3384,  3388,  3373,  1010,  3185,  3273,   187,     0,
3879        0,     0,     0,   135,     0,   712,   153,   157,   712,     0,
3880        0,     0,   712,     0,  1883,  1875,  1877,  1878,  1879,     0,
3881     1882,     0,  1448,     0,  1436,  1436,  1446,  1885,  1866,  1863,
3882     1887,     0,  1886,  1886,     0,     0,  1846,  1845,     0,  1938,
3883      999,  2084,     0,     0,  1948,     0,  1950,  1959,  1949,  1462,
3884     2035,  1456,     0,  2484,     0,     0,     0,     0,     0,     0,
3885        0,   707,  2160,  2160,     0,     0,     0,     0,     0,     0,
3886        0,     0,   224,   233,  2570,     0,     0,   522,   523,  2160,
3887      521,   564,   565,   568,   569,   570,     0,     0,   571,  2160,
3888     2160,   518,   544,   545,   548,   549,   550,   551,   552,   514,
3889        0,   519,     0,     0,     0,  3285,  1120,  1156,  3339,  1129,
3890        0,     0,  1315,   241,     0,     0,   449,   458,   452,   454,
3891        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3893        0,     0,     0,     0,    87,    88,   109,     0,  1338,  1350,
3894     2115,  1344,  2160,  2160,  2160,  2160,   520,   553,   554,   557,
3895      558,   559,   560,   563,   561,   562,     0,  2313,  2206,  1436,
3896        0,     0,     0,  2543,     0,  2019,  1995,  2216,     0,  2220,
3897     2219,     0,  2100,  2110,     0,  2161,     0,     0,  1258,  1257,
3898     2106,  2113,  3130,   403,   477,   423,  3272,     0,  3271,     0,
3899        0,  3184,     0,  3244,  3247,  2540,     0,     0,     0,     0,
3900      403,     0,  2417,  2421,  1377,  1379,  1380,  1378,  1386,     0,
3901     2555,  1943,  2556,  2580,  2578,  2582,  2576,  2577,  2581,  2575,
3902     2579,     0,  3138,  3139,  3137,  2040,  2036,     0,  3131,  3136,
3903      411,   419,   434,   437,     0,     0,   403,     0,   415,   424,
3904      428,     0,   440,   494,   467,   467,   467,   269,  1354,     0,
3905     1734,     0,  1735,  1736,     0,  1601,  1836,     0,     0,     0,
3906     1629,     0,     0,     0,  1738,     0,  1481,     0,     0,  1604,
3907     1596,  1410,     0,  1765,     0,  1770,     0,  1768,     0,     0,
3908        0,     0,     0,     0,  1830,     0,  1832,  2527,     0,  1744,
3909     1775,     0,  1742,     0,  1764,     0,  1776,  1777,     0,     0,
3910        0,     0,  1748,  1746,     0,     0,     0,  1750,     0,     0,
3911        0,     0,     0,     0,     0,  1647,  1747,  1749,     0,  1682,
3912        0,  1732,  1683,  1684,  1685,  2530,     0,  1679,     0,  1680,
3913        0,     0,     0,     0,     0,  1633,  1634,     0,     0,     0,
3914     1710,     0,  1635,  1690,     0,  1609,  1711,  1692,  1640,  1641,
3915     1712,  1713,  1714,  1606,  1607,  1694,  1695,     0,  1716,  1608,
3916     1696,  1699,     0,  1643,  2035,     0,  1627,     0,     0,     0,
3917     1645,  1673,     0,     0,     0,  1605,     0,  1702,     0,     0,
3918        0,  2035,     0,     0,  1649,     0,     0,   858,  1428,  1597,
3919     2528,     0,     0,  1491,  1495,  1489,  1493,     0,     0,     0,
3920        0,  1508,     0,     0,  1501,  1511,  1514,     0,     0,  1966,
3921        0,     0,  1773,  1825,     0,     0,     0,  1728,  1729,     0,
3922        0,   618,   617,     0,   621,   697,     0,   638,   626,   615,
3923     2409,     0,     0,  1361,  1364,     0,     0,  2148,     0,  2145,
3924     2152,   602,  2132,     0,  2143,  2117,     0,  3175,     0,     0,
3925        0,     0,     0,     0,     0,  1469,  1470,  1470,  2526,     0,
3926        0,  3088,  3058,     0,     0,     0,  1009,  1008,  1007,  3119,
3927        0,     0,  3112,  3113,     0,     0,     0,  3085,  3086,  3087,
3928        0,  2603,  2559,  2561,     0,  2560,  2601,  2599,  2602,  2597,
3929     2598,  2596,  2600,  3094,     0,  3067,  3068,  3069,     0,     0,
3930     2283,  2294,  2326,  2327,  2251,  2304,  2301,  2322,  2035,  2261,
3931     2282,  2252,     0,  2275,  2233,  2323,  1946,  2315,  2248,  2249,
3932        0,  1445,  1470,  2169,  1469,  2170,   403,  2511,     0,  2516,
3933        0,   403,  1335,  1375,  1367,  1374,  1371,  1386,  1384,  1373,
3934     1068,  1067,     0,  1387,    78,     0,     0,  2366,  2367,  2360,
3935     2380,  2355,     0,   350,   360,   352,   356,   357,   358,   353,
3936     2826,  2908,     0,  1946,  3151,  3390,  1309,  1307,  1306,  1308,
3937     1297,  1303,  1304,  2406,  2404,  2399,  2425,  1284,     0,  1267,
3938     2035,     0,  3387,   147,  1010,     0,   164,  3285,     0,  1092,
3939        0,     0,   133,   169,  3363,   155,  3353,     0,   148,     0,
3940      222,     0,     0,  1880,  1881,  1843,  1436,  1438,  1437,     0,
3941        0,  1440,     0,     0,     0,     0,  1851,     0,  1847,  1849,
3942        0,  1911,  1903,     0,  2089,  2081,  2086,  2525,  1956,  2000,
3943        0,     0,  1407,  1959,  1461,  2018,  2007,     0,  2011,  2010,
3944     2013,  1460,  1997,  2000,  1469,     0,     0,  1124,     0,     0,
3945        0,   227,   230,   228,   229,   573,   572,     0,  2313,   566,
3946     2160,  2160,   183,  2160,  2160,   182,   184,     0,   178,   175,
3947      185,  2160,  1144,   171,     0,     0,     0,     0,  2035,     0,
3948        0,     0,   189,     0,     0,  2313,   546,   525,   526,   529,
3949      530,   531,     0,  3255,  3254,     0,  3275,     0,     0,  3277,
3950        0,  3276,  3274,  3240,  3251,     0,  1151,  1010,     0,  1158,
3951     1160,     0,     0,  3339,  1314,     0,   244,   403,     0,   455,
3952        0,     0,  2035,     0,  2035,  2035,     0,     0,  2035,     0,
3953     2035,     0,     0,     0,     0,     0,     0,     0,  2035,     0,
3954        0,     0,     0,  2035,     0,  1352,     0,     0,     0,     0,
3955     2313,   555,     0,  2160,   515,   532,   533,   536,   537,   538,
3956      539,   540,   543,   541,   542,  2203,  2119,  2219,     0,  2541,
3957     1468,     0,  2213,  1946,     0,  2218,  3130,  3190,   587,   767,
3958     3249,  1256,     0,   298,   426,   481,  3269,     0,  3289,     0,
3959        0,     0,     0,     0,     0,     0,     0,   403,  2182,     0,
3960     1386,  1390,  2428,  3141,  3142,  3140,  2043,  2044,  2041,  2039,
3961     2042,   435,   302,   304,   301,   303,  2612,     0,   289,   275,
3962      291,     0,   378,   284,   376,   377,  2609,  2607,  2611,  2605,
3963     2606,  2610,  2604,  2608,   473,     0,   274,     0,   431,   423,
3964        0,   488,   490,   468,   498,   492,   403,     0,  1802,  1833,
3965        0,   960,   960,   946,   964,  1819,     0,  1813,  1816,     0,
3966      960,  1821,   960,  1814,   960,     0,     0,  1811,  1812,     0,
3967        0,     0,  1740,  1737,     0,     0,     0,  1790,     0,     0,
3968        0,     0,     0,  1525,     0,  1723,  1745,  1743,     0,     0,
3969        0,     0,     0,     0,     0,     0,  1751,  1582,     0,  1580,
3970        0,  1581,     0,  1583,     0,     0,  1733,     0,  1551,  1570,
3971        0,     0,     0,     0,     0,     0,     0,     0,     0,  1828,
3972        0,     0,  2051,     0,     0,     0,     0,     0,     0,     0,
3973        0,     0,     0,     0,  2532,     0,     0,     0,  1031,  1037,
3974     1040,  1041,  1043,  1035,     0,  1704,     0,     0,     0,  1784,
3975     1782,     0,  1506,  1502,     0,  1510,     0,     0,     0,  1524,
3976     1523,  1968,  1967,     0,  1772,     0,     0,  1826,  2529,  1470,
3977     1719,  1469,   628,     0,   646,   620,     0,  2035,   623,   637,
3978        0,   649,     0,     0,     0,   329,     0,  1365,     0,     0,
3979     2149,  2151,  2520,  2519,  2531,     0,     0,  2144,     0,  3173,
3980     3253,     0,     0,     0,     0,     0,  1463,  1471,  1466,     0,
3981        0,     0,  3056,  3102,  3093,     0,     0,     0,     0,  3117,
3982     3111,  3108,  3109,     0,     0,     0,  3092,  3066,  3072,  3071,
3983     3074,  3076,  2271,  2270,     0,  2324,  2003,  2244,  2263,  2265,
3984     2325,  2189,  2192,     0,  1938,  2177,     0,     0,  2171,  2175,
3985        0,  2515,     0,     0,   475,     0,  1905,    83,     0,  2358,
3986        0,  2353,  2356,     0,     0,  3162,  3163,  3155,  3158,  3156,
3987     3157,  3161,  3164,  3165,  3152,  3159,  2003,     0,  1299,  1305,
3988     1283,     0,  1290,  1288,  3376,  3389,     0,  1151,     0,     0,
3989        0,     0,     0,     0,   716,  1010,   170,     0,     0,   198,
3990     3339,   160,     0,   158,   150,  1447,  1439,  1441,  1436,  1436,
3991        0,  1839,     0,     0,     0,  1839,     0,     0,   609,     0,
3992     1884,  1900,  1000,  2442,  1957,  1958,     0,  1953,  2001,  2002,
3993     1955,  1951,     0,  1960,  1962,  1408,  2006,  1457,     0,  1999,
3994        0,     0,  2075,  2077,   766,   765,   232,   231,   236,   237,
3995     2061,  2062,  2059,  2060,   579,   592,  2063,   593,   567,  2035,
3996     2035,  2165,  2164,  2035,  2035,   177,   174,  2163,  2162,  2035,
3997     2035,   172,   193,   192,   194,   195,   197,   196,   191,  1140,
3998        0,   580,   581,   547,     0,   527,  3258,     0,  3265,  3260,
3999     3263,  3243,  3242,  3241,  3238,     0,  2035,  2035,  2035,     0,
4000     2035,  3284,  3286,     0,     0,  1141,  1244,  1244,     0,  1244,
4001        0,     0,  1244,     0,  2160,     0,     0,  2160,   609,  1262,
4002     2160,  2160,  2160,  2160,     0,  2160,  2160,  2160,  2160,     0,
4003     2160,  2160,     0,  2160,     0,     0,     0,  2160,     0,  1227,
4004        0,  2160,  2160,  2160,  2160,  1244,  2160,  2160,     0,     0,
4005        0,     0,  2160,  2160,     0,     0,  2160,  2160,     0,  1172,
4006     1226,   718,   761,   745,   746,  1121,  1171,  1173,  1185,   605,
4007        0,  1203,  1229,  1230,  1228,     0,  3298,     0,     0,   203,
4008     3341,     0,  3343,     0,  1318,     0,  1317,   403,   459,  2035,
4009     2035,   102,  2035,    94,    95,    90,   122,   123,    92,    93,
4010       98,    97,    99,   100,   103,   104,   101,    96,    91,   126,
4011      128,   127,   105,   124,   125,    89,   586,   585,   584,   583,
4012      556,     0,     0,  2313,   534,     0,  1946,  2544,     0,     0,
4013     2020,  1469,  2208,  2210,  2098,  2096,   505,   299,     0,     0,
4014      423,  3270,     0,  3183,  3188,     0,  3246,  3245,  3273,  3273,
4015     3273,  3273,   445,     0,  2129,  1381,  1386,  1390,     0,  1382,
4016     2439,   940,   962,   960,   977,   926,   946,   942,   946,   936,
4017      977,   883,   883,   977,   939,   883,   946,   941,     0,   938,
4018      977,   937,   883,     0,   930,   962,   877,   878,   883,   960,
4019      896,     0,   946,   919,   918,   977,   922,   923,   921,   925,
4020        0,   927,   946,   932,   920,   924,     0,     0,   960,   960,
4021      960,     0,     0,   960,   380,   865,   868,   870,   869,   871,
4022      872,   946,   962,   962,     0,     0,   960,   964,     0,     0,
4023      292,     0,   270,   425,   429,   403,   467,     0,  1834,     0,
4024      961,  1803,  1804,     0,  1818,   948,   947,     0,   965,  1820,
4025        0,  1817,  1806,  1823,  1810,  1815,  1822,  1808,  1599,  1630,
4026     1603,  1602,     0,     0,     0,  1660,     0,  1788,  1771,  1769,
4027        0,     0,  1637,     0,  1639,     0,     0,  1725,  1693,  1767,
4028     1663,  1697,     0,  1642,     0,  1669,  1667,     0,  1579,  1577,
4029     1578,     0,  1650,  1677,     0,  1568,  1678,     0,  1709,  1656,
4030        0,  1658,     0,  1659,     0,  1688,     0,  1661,  1691,  1715,
4031     1595,  2053,  2052,  2050,  1610,  2035,     0,  1664,  1628,     0,
4032        0,  1701,  2533,  2534,     0,  1703,     0,     0,  1042,  1028,
4033     1029,  1030,     0,  1032,  1034,  1036,     0,  2035,  1717,  1527,
4034     1526,     0,  1498,     0,  1507,  1504,     0,  1512,  1970,  1969,
4035        0,     0,  1720,  1471,  1730,     0,   629,   630,   632,   634,
4036        0,   699,   624,     0,   613,     0,   628,   616,  1362,   487,
4037     2147,     0,     0,     0,  2146,  2156,     0,     0,     0,  3170,
4038     3169,  3168,  3167,     0,  1467,  1475,  1474,  2523,  2527,  3090,
4039     3089,  3122,  3121,  3115,  3114,  3116,     0,     0,  3095,     0,
4040        0,  2057,  2058,  2056,  2054,  2055,  2262,  2003,  2258,     0,
4041     1946,     0,  1903,  1470,  2167,     0,   485,  2517,     0,     0,
4042     1908,     0,  1909,  1906,  1907,  2035,     0,     0,   368,   363,
4043      371,   365,   367,   366,   372,   373,   374,   375,   369,   364,
4044      370,   362,   361,     0,  3150,  1310,     0,     0,  3186,   163,
4045        0,  1108,  1110,  1109,  1093,  1094,     0,   141,   144,   816,
4046        0,     0,   134,   597,   605,   717,   720,   594,   136,   267,
4047      225,     0,     0,     0,   247,   781,   782,   780,   779,     0,
4048      247,  3339,  1450,  1449,  1852,     0,  1856,  1861,  1857,     0,
4049     1848,     0,  1869,  1912,  1904,     0,     0,  2450,  2000,     0,
4050        0,  2000,  1470,  2073,  1469,   176,   181,   180,   173,   186,
4051      179,   190,   528,  3259,  3257,  3256,     0,  3264,     0,  3239,
4052     3280,  3278,  3279,  3282,     0,     0,  3281,  3283,  1145,  1146,
4053     1152,  1147,  1115,   712,  1245,   710,     0,  1207,  1211,  1208,
4054        0,   817,   712,  1069,  1069,   710,  2121,  1355,  2121,     0,
4055        0,  2121,     0,  2123,  2121,     0,     0,  2121,  2121,  2160,
4056        0,  1355,     0,  2035,   607,  1265,  1263,  1264,     0,  2035,
4057     2035,  2035,   743,   764,     0,  2035,  2035,  2035,  1355,     0,
4058        0,  2160,  2035,  1220,  1167,  1221,     0,     0,  1168,     0,
4059     2035,  2035,  2035,  2121,  2035,     0,  1355,  1187,  1355,  1355,
4060        0,  2035,   751,   752,   750,  2035,  2035,     0,   719,  1010,
4061     1169,   606,  1170,   816,     0,  1259,   792,   819,  2536,     0,
4062     3299,     0,     0,     0,  1157,     0,   206,   204,   214,  3340,
4063        0,  1132,     0,  3343,  1320,  1321,     0,     0,     0,   115,
4064      117,     0,   119,   121,     0,   111,   113,   517,   582,   535,
4065     2219,  2212,     0,  2021,     0,  2214,     0,   482,   427,   480,
4066        0,  3273,  3287,  3287,  3287,  3287,   403,   441,   444,  2183,
4067     1383,  1391,  2441,  2440,     0,   963,   889,   977,   975,   977,
4068      903,   978,   950,   943,   950,   906,  1020,     0,  1013,  1018,
4069     1014,   912,  1016,     0,  1024,  1023,   884,   926,   977,   914,
4070        0,   883,   905,   911,   950,     0,   900,   909,   977,   876,
4071      913,   899,     0,   950,   915,   928,   931,   933,   935,   950,
4072      977,     0,     0,   380,   883,   898,   897,     0,   883,   950,
4073        0,   285,   944,   929,  1016,  1024,   883,   977,   950,   950,
4074      294,  2035,   296,   379,   403,   471,     0,     0,     0,     0,
4075     1016,     0,     0,  1824,  1016,  1016,  1741,     0,     0,     0,
4076        0,  1794,     0,     0,     0,     0,     0,  1598,     0,  1721,
4077        0,     0,     0,     0,   946,  1558,  1560,  1556,  1559,     0,
4078      960,  1562,     0,   927,   960,  1565,  1567,  1552,  1553,  1554,
4079     1555,     0,     0,  1837,  1838,     0,  2071,  2070,  2069,     0,
4080        0,     0,     0,  2535,  1026,  1706,     0,  1039,  1033,  1031,
4081     1038,     0,  1785,  1503,     0,     0,  1972,     0,  1774,  1731,
4082      633,     0,   700,     0,   653,     0,   651,   627,     0,  2150,
4083     2521,  2532,   603,     0,     0,  3172,  3171,  1473,  1472,     0,
4084        0,     0,  3073,  3075,  2264,  2191,  1994,  2193,  2194,  2186,
4085     2176,  2174,     0,  1188,     0,  1189,  1200,  1202,  1389,     0,
4086     2391,     0,  2389,  2359,  2392,     0,  1289,  1291,     0,   138,
4087        0,     0,  1115,  2651,     0,   785,   787,   788,   789,   790,
4088        0,   598,  2439,   604,  1010,   721,   716,   263,  3364,   508,
4089      509,     0,     0,  3343,     0,     0,     0,     0,     0,     0,
4090        0,     0,     0,     0,  1893,     0,  1892,     0,  1898,  1902,
4091        0,     0,     0,     0,  2443,  2445,     0,  2090,  1954,  1963,
4092     1961,  1998,  2078,  2076,     0,  3266,  3262,  2038,  2037,     0,
4093     1149,     0,  1148,  1153,     0,   818,  1116,  1355,     0,     0,
4094        0,  1231,     0,     0,     0,  1069,   808,   712,  1115,  1070,
4095      712,   712,  1205,     0,     0,     0,  1179,     0,     0,  2121,
4096        0,  1233,     0,  1232,     0,     0,     0,     0,  1242,  1243,
4097        0,  1990,  1992,  2000,  2068,  2067,   740,     0,  1224,   733,
4098      732,   735,   734,   737,   736,     0,  1240,  1241,   729,   726,
4099      738,     0,   728,   753,     0,   741,   723,     0,   777,   778,
4100      776,   747,   754,   724,   725,     0,   731,   730,   727,     0,
4101     1195,     0,   769,   774,   772,   771,   770,   775,   773,   742,
4102      760,   739,   755,  1184,  1244,  1244,  1204,     0,   783,  2539,
4103        0,  1261,  1206,     0,   793,     0,     0,   759,   758,   756,
4104      757,   213,   202,     0,     0,  1159,  1161,     0,     0,  1162,
4105     3342,  3345,  1130,  1326,     0,   403,   107,  2035,   108,  2035,
4106      106,  2035,     0,  2022,   300,     0,  3290,  3287,     0,  3181,
4107     3180,  3179,  3178,   403,   446,     0,     0,   901,   979,     0,
4108      902,   952,   953,   951,   879,   875,  1021,  1015,   886,  1017,
4109     1012,  1025,  1022,  1019,   975,   885,   907,   908,   881,     0,
4110     1117,   893,     0,   882,   934,   880,   894,     0,     0,   281,
4111        0,   279,   288,   910,   380,   276,   891,   895,   381,     0,
4112      904,   887,   888,   890,  1024,   873,   874,  2035,   290,   309,
4113      308,     0,     0,     0,   958,   956,   959,   957,  1805,     0,
4114     1807,  1809,  1654,  1655,  1791,  2000,  1789,  1796,     0,     0,
4115     1795,  1687,     0,  1638,     0,  1722,     0,  1698,  1668,  1666,
4116     1651,  1561,  1557,  1564,   928,  1563,  1016,  1681,  1657,  1689,
4117     1611,  2035,  1665,  1671,  1672,     0,  1705,  2035,  1505,     0,
4118     1975,  1974,     0,     0,  2000,   631,  2035,   698,   626,     0,
4119        0,   650,     0,   614,     0,  2155,  2157,  2524,  3097,  3096,
4120     2019,  2513,  1385,     0,  1910,  2387,  2035,     0,  2357,     0,
4121        0,     0,     0,     0,     0,   791,   784,   816,     0,   596,
4122      702,   722,   605,   266,   264,   265,     0,   259,   261,     0,
4123      234,   226,     0,   403,   512,   510,   511,     0,     0,   149,
4124        0,   248,     0,   250,   251,   162,     0,  3343,  1853,     0,
4125     1858,     0,  1850,  1888,  1888,  1899,     0,     0,     0,     0,
4126     2444,     0,     0,  2451,  2453,     0,  1147,     0,     0,     0,
4127     1190,     0,     0,  1209,     0,   712,  1065,  1066,  1115,  1090,
4128     2536,  1115,  1115,     0,  1178,     0,  1341,  1006,  1216,     0,
4129     1174,     0,  1218,  1219,  1256,   749,  1176,     0,  1993,   608,
4130     2379,  1183,   748,     0,  1259,  1175,  1197,  1181,  1210,  1260,
4131     1047,   962,   877,   878,   883,   960,   896,  2708,   946,   919,
4132      918,   977,   922,   923,   921,   925,  2718,   927,   946,   932,
4133      920,   924,  2726,   823,   960,   960,   960,  2733,   960,     0,
4134      811,   821,   866,  2538,   200,   205,   215,   216,  1134,     0,
4135     3344,     0,  1327,  1323,  1324,  1319,   403,   116,   120,   112,
4136        0,  3182,     0,  3294,  3288,  3292,     0,     0,   976,   954,
4137      955,   980,  1016,     0,  1016,   380,   280,   283,     0,   286,
4138        0,     0,   892,   318,   317,   315,   403,   305,   313,   307,
4139        0,   314,     0,   298,   495,     0,     0,  1793,  1753,  1797,
4140     1798,     0,  1724,  1726,  1566,     0,  1027,     0,  1971,  1965,
4141        0,     0,     0,     0,     0,     0,  1984,  1976,     0,  1778,
4142      701,     0,     0,   639,   656,   655,   652,  2522,  2190,  1201,
4143     2390,     0,  3160,     0,     0,     0,  2000,  1113,     0,     0,
4144      786,   599,   703,     0,  2439,   268,   263,   262,   235,  3365,
4145     1469,   211,  3359,   225,     0,     0,     0,   252,   225,   151,
4146        0,     0,     0,  1896,  1894,  2448,  2449,     0,  2446,     0,
4147        0,  2452,     0,  1154,  1150,  1155,     0,  1192,     0,   711,
4148        0,  1115,  1090,  2536,     0,   794,     0,   798,   800,     0,
4149        0,  1259,  1180,  1225,  1217,  1234,  1215,  1355,  1991,     0,
4150        0,  1214,  1196,  1198,  1302,     0,  1051,   825,     0,   820,
4151      812,   833,     0,   207,  1163,   403,     0,     0,     0,  1322,
4152        0,  1329,     0,  3293,  3291,  2184,  1867,   917,  1118,   916,
4153      287,   282,   277,   945,  2035,   295,   316,   297,   293,   467,
4154      949,  2000,     0,     0,  1636,  1612,  1707,     0,  1981,     0,
4155        0,  1979,  1978,     0,  1973,  1980,     0,     0,   647,   663,
4156      659,     0,   661,   662,   684,  2393,     0,     0,  3130,     0,
4157     1112,     0,  3130,     0,   762,   595,   260,  3354,   203,   212,
4158        0,  3361,   161,   249,     0,   257,     0,   159,  1855,  1860,
4159        0,  1889,     0,     0,     0,  2447,  2455,  2454,  3267,     0,
4160        0,     0,  1191,     0,   813,   806,   802,     0,  1091,     0,
4161      796,     0,     0,  1223,     0,  1213,  1177,   744,   609,     0,
4162     1182,     0,  1050,     0,  1055,  1045,   851,   991,     0,   854,
4163        0,   824,   826,   984,   985,   828,     0,     0,     0,     0,
4164      867,     0,     0,   968,     0,   971,     0,     0,   822,     0,
4165      834,   967,   974,  2537,     0,   209,   217,  3346,     0,     0,
4166     1328,  1333,     0,  1330,  1332,  1442,     0,  2429,     0,   306,
4167      496,  1792,  1800,  1799,  1982,     0,  1983,  1986,     0,     0,
4168     1987,     0,   643,   645,   635,     0,   640,     0,   657,     0,
4169     2160,  2160,     0,  2160,  2160,  2160,  2160,   677,   685,   687,
4170        0,     0,  3130,  1080,  2000,     0,  1082,     0,   601,   763,
4171        0,   214,  3360,     0,     0,     0,  1891,  1890,  1905,     0,
4172     1212,  1194,     0,     0,     0,     0,   804,     0,     0,     0,
4173        0,     0,     0,     0,   863,   864,  1222,   860,   861,   862,
4174        0,  1186,     0,  1048,     0,  1052,  1053,  1054,     0,  1046,
4175      852,   853,   992,   827,   990,   983,   982,     0,   973,   969,
4176        0,   842,     0,     0,   975,   966,   835,   208,     0,   201,
4177     3347,  3348,  1325,     0,  2185,  2196,     0,   999,   278,  1977,
4178     1985,  1989,  1988,   641,     0,   648,   670,   660,   666,     0,
4179     2160,     0,     0,  2160,     0,     0,     0,     0,     0,   654,
4180      686,  2160,   188,  1078,     0,     0,  2160,  1235,  1081,  1106,
4181     1088,     0,  1111,  1114,  1235,  1083,  1105,  1086,     0,     0,
4182        0,  3362,   255,     0,     0,     0,  1193,   809,     0,     0,
4183        0,     0,     0,     0,     0,  2487,  2486,     0,     0,  1049,
4184        0,     0,   989,   988,   986,   987,  1476,   972,     0,   837,
4185      981,   836,   210,  1331,     0,     0,  2430,   647,   644,   670,
4186        0,   668,     0,   664,   658,   665,     0,   696,   690,     0,
4187      692,   693,   691,   688,   681,     0,   679,     0,     0,     0,
4188     1235,  1079,  1104,  1103,  1084,     0,  1098,  2035,   142,  1237,
4189     1236,  1089,     0,   145,  1087,     0,  1469,   216,     0,   253,
4190     1897,  1895,     0,     0,     0,  1078,     0,  1080,  1082,   859,
4191        0,  1061,  1060,     0,     0,  1057,  1056,     0,   970,   829,
4192      829,   843,  2195,  2197,  2456,   642,   667,     0,   675,   671,
4193      673,   676,   695,   694,     0,   678,     0,   689,  1095,  1096,
4194      139,  1085,  1107,  1097,  1239,  1238,  1102,  1101,  1099,  1100,
4195      810,  3355,   199,   256,     0,     0,  1078,     0,   795,  1078,
4196      799,   801,  1199,  1064,  1062,  1063,     0,     0,  1477,     0,
4197      840,   830,   832,   839,   845,   846,   844,   847,     0,  2442,
4198      669,     0,     0,   684,   683,   680,     0,   254,   807,   803,
4199     1078,   797,     0,     0,  1478,   831,   838,   848,   850,     0,
4200     2450,   674,   672,   682,     0,   805,  1059,  1058,   849,     0,
4201     2458,  3356,  2457,     0,  2462,  3351,     0,     0,  2469,  3349,
4202     3350,     0,  3357,  2460,  2461,  2459,  2464,     0,     0,  2466,
4203     2467,     0,  2431,  3352,   403,  2468,  2463,     0,  2470,  2472,
4204        0,  3358,  2465,     0,  1469,  2471,     0,  1470,  2473
4205 };
4206 
4207   /* YYPGOTO[NTERM-NUM].  */
4208 static const yytype_int16 yypgoto[] =
4209 {
4210    -5174, -5174, -5174, -5174,  1737,  3930, -5174, -5174, -5174, -5174,
4211    -5174, -5174, -5174,  2273, -5174, -5174, -5174, -5174, -5174, -5174,
4212    -5174,  1466, -5174,   -49, -5174,   -52, -5174,   -48, -3093,  -625,
4213     3629, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4214    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4215    -5174,  1620, -2949, -5174, -5174,  -552,  1035, -5174, -5174,  -222,
4216    -5174,  -560, -5174, -5174, -5174, -4290,  -692,  -876, -5174,    45,
4217     4111,  -119,  3458,   555, -4526, -5174, -5174, -5174, -5174, -5174,
4218    -5174, -5174,   546, -5174,  -100, -5174, -3653, -5174, -5174,  -412,
4219    -5174, -5174, -5174, -2154,  -635,  -850, -5174,   -71, -5174,  -340,
4220    -5174,  -416, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4221     -353, -5174, -5174, -5174,  -493,   301, -4404, -5174, -5174, -5174,
4222    -5174,   427, -5174,  1784, -5174, -1797,  3157, -5174, -5174, -5174,
4223    -5174, -5174,  2287, -2478, -5174, -5174, -5174,  1182, -5174, -2820,
4224    -5174, -4286,  -666,  -894,    26, -5174, -5174, -5174, -5174, -5174,
4225    -5174, -5174, -1318, -5174, -5174, -5174, -5174, -5174, -5174, -2701,
4226     1404, -5174,   908, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4227    -5174,   382, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4228    -5174, -5174, -5174,  2144, -5174, -5174,  4074, -5174, -5174, -5174,
4229    -5174,   818, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4230     2716, -5174, -5174,  2723,  2720, -5174,  2724, -5174, -2826, -5174,
4231    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4232    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4233    -5174,  3471, -5174, -5174, -5174, -2996, -5174, -5174, -3094,  2856,
4234    -5174, -2499, -5174, -5174, -2525, -5174, -5174, -2471,   979, -5174,
4235    -5174,  1876,   910, -5174, -1938, -2610, -2571, -5174, -5174, -5174,
4236    -2681, -2656,  -747,  2797, -1252, -2728, -5174, -5174, -5174,  -377,
4237     -375,  -153,  1001,  1564, -5174, -3689, -5174, -5174,   100, -5174,
4238    -5174, -5174, -5174, -5174,   710,  -110,   714, -5174,   258,  2499,
4239    -2805, -5174, -5174, -5174, -5174, -5174, -5174,  -696,  -331,  -765,
4240    -5174, -4044,   -99, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4241    -5174, -5173, -5174, -5174, -5174,  -885, -5174, -5174,  -838, -5174,
4242    -5174,  -884, -5174,  -598, -5174, -5174, -5174, -5174,  2318, -1920,
4243      557,  -642, -5174, -3577,  1043, -3969, -3185, -5174, -5174,  -469,
4244    -1311, -1306,  -771, -5174, -5174, -5174, -5174, -5174, -5174,   494,
4245     -107,  1044, -3695, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4246    -3694, -3683,   172, -5174, -4749, -5174, -5174, -5174, -4455, -5174,
4247    -5174, -5174, -5174, -5174, -5174,  -805, -5174, -5174, -5174, -5174,
4248    -5174, -5174, -5174, -3541, -5174, -5174,  -617,  -646, -5174,  -522,
4249    -4274, -5174, -4533, -5174, -2308, -5174, -5174, -5174, -5174, -5174,
4250    -2419,   828,   953, -5174, -5174, -5174, -5174, -3418, -3201, -1966,
4251     -655, -3104, -1784,   899,  -639, -5056, -4720, -1546, -3693, -5174,
4252    -5174, -3379, -3873, -5174,  -658, -2810, -3192,  -648, -5174, -5174,
4253    -1713,  -154, -3175, -5174,   445,   440, -2646, -3806, -4092,  1400,
4254    -5174, -5174,   808, -5174, -1745,   807, -5174, -5174, -5174,   822,
4255    -5174,  -811, -5174, -5174, -5174, -5174, -3975, -5174, -2503, -3991,
4256    -5174, -5174,  4896,  4898, -3676,  -756,  -755, -5174, -5174, -5174,
4257     -326, -5174, -5174, -2740,  -727,  -657,  -647, -3665, -3276,  -407,
4258    -3743,   458, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4259    -5174, -5174, -5174, -5174,   -93,   -98,  1289, -5174, -5174, -5174,
4260    -5174, -5174, -5174, -5174, -5174,  1108, -3159, -5174, -5174, -5174,
4261    -5174, -5174, -5174, -5174, -4414, -4173, -5174, -5174,   569, -3470,
4262    -3305, -3301, -3667,  3777, -5174, -5174, -5174, -5174,  3600, -3331,
4263    -3400, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  3099,  1457,
4264    -5174, -5174,  1809, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4265    -5174, -5174,  -321,  1820, -5174, -5174, -5174, -5174, -5174,  2290,
4266    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  -578, -5174,
4267    -5174, -5174, -5174, -5174,   -90,  2954, -5174, -5174, -5174, -5174,
4268       -8, -5174, -5174, -5174, -5174,  2600, -5174, -5174, -5174, -5174,
4269     2473, -5174, -5174, -5174, -5174, -5174, -5174,  1605, -5174,  2194,
4270    -5174, -2481, -5174, -5174,  1049,  -167, -5174, -5174,   -59, -5174,
4271    -5174, -5174, -5174, -5174,    29, -5174, -5174, -5174,  4910, -1511,
4272        8,   -65, -5174, -5174,    10, -5174, -5174,  3669,  -537,  2016,
4273     -676,  4296, -5174, -5174, -5174, -5174, -2508,  1887, -5174,  3720,
4274    -5174, -5174,  3893,  1362,  3686,  1786,  1098,  1973, -1708,  -161,
4275    -3069,   872, -5174,  1424,  1199, 10942, -1434, -1587, -5174, -5174,
4276      -43, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4277     2100,  2109, -5174, -5174,  3402, -3280, -5174, -5174,  -792, -5174,
4278    -2482, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4279    -5174, -5174,  1467, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4280    -5174, -5174, -5174, -5174, -5174,  3347, -1635, -5174, -5174, -5174,
4281    -5174, -5174, -5174, -5174, -5174, -5174, -5174,   718, -5174, -2795,
4282    -5174, -5174, -5174, -5174, -5174, -5174,  -433, -5174,  3498, -5174,
4283     3536, -5174, -1216, -1778,  3100, -5174,  3746, -5174, -5174, -5174,
4284    -5174, -5174, -5174,  3107, -5174, -2070, -5174, -2510,  3761,  3764,
4285     3768, -5174,  3769, -5174, -5174, -1771,   -12, -5174,   342, -5174,
4286    -5174, -5174, -5174, -5174,   831, -5174,  -468,   393,  -466, -4161,
4287    -1432,  1121, -5174, -5174, -1851,  3129,  3552, -1271, -5174,  2416,
4288    -5174,  3110,  1501, -5174,  1827, -5174,   770,   772, -5174, -5174,
4289     1511, -5174, -5174, -5174, -5174,    91,  -399, -5174, -5174, -5174,
4290      -20,   434, -2044, -5174,   102, -3177,  3767,  -366, -1191, -5174,
4291    -1351,  1847,    83,  4365,  -558, -5174, -5174,  3735, -5174, -2812,
4292    -5174,   110, -1503, -1024, -3074, -4350, -3158, -5174, -2243, -5174,
4293    -5174, -5174, -5174, -5174,   789, -5174, -5174, -5174,  2463, -5174,
4294     5030, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4295    -5174,  -744, -1193, -5174, -5174,  2341, -1892,  -141,  5054,   -58,
4296    -5174, -5174,   -57, -5174, -5174, -5174, -5174,  3644,  3397, -5174,
4297     2308, -5174, -5174, -5174, -5174,  2065, -5174, -5174,   478,  -927,
4298     1304,  1841, -5174, -5174, -5174, -5174, -5174, -5174, -5174,   450,
4299    -5174,   906, -1876, -5174, -5174, -5174, -5174,   -56, -5174, -5174,
4300    -5174,   911, -5174,  -544,  4483,   -50, -5174, -5174, -5174,  4323,
4301    -5174, -5174, -5174, -5174, -5174, -5174,  3076, -1408,  4326, -5174,
4302    -5174, -5174, -5174, -5174, -5174,  2640, -5174, -5174, -5174, -5174,
4303    -5174, -5174,  3365,  4508,  -670, -1686, -5174,  -947,  2652,  2034,
4304     -944, -5174, -5174, -5174,  3809,  4517, -5174, -5174,  5073, -5174,
4305    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  2608,    63,
4306    -5174, -5174, -5174, -5174, -5174,   156, -5174, -5174, -5174, -5174,
4307     3284, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4308    -5174, -5174,  3700, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4309    -5174, -5174, -5174, -5174, -5174,  1206,  -610, -5174,   459,  -633,
4310    -5174,   107, -5174, -5174, -5174, -5174, -5174,  -663, -5174, -5174,
4311     -667, -5174, -1375,  4209, -1287, -5174, -1721, -3314, -5174,     5,
4312    -5174, -5174, -5174,  2670, -5174, -5174, -5174, -5174,  1012, -5174,
4313    -5174, -2653,  -931, -1602, -3755,   732, -5174, -5174, -5174,  -940,
4314     4324,   141,  1070, -1282, -5174, -5174,  2196,    -3,  -877,  -118,
4315     -721,  -740,  -887, -5174,  8631, -5174, -5174, -5174, -5174,  -626,
4316     -624,  -622,    66,  -612,  1178,  -397,  -201, -5174, -5174, -5174,
4317    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,  2094, -5174,
4318    -5174, -5174,   989, -5174,  4557, -5174,  2874, -1750,  4560,  2744,
4319     2123,  2125, -5174, -5174, -5174, -5174, -1724, -5174, -5174, -1716,
4320      144, -5174,  3082, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4321    -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4322    -5174, -5174,  3289,  -553,  -573,  3488,  4569,  4098, -5174,  3750,
4323    -5174, -5174, -5174, -5174, -5174,  1409, -5174, -1934,  2163, -1418,
4324    -2386, -5174, -5174,  2514,   891, -5174, -5174,  1061, -5174,  1823,
4325    -2543, -2903, -5174,  2025, -3073, -5174, -5174,    53, -5174, -5174,
4326    -5174,  1340,   246,  4545,  3978, -5174, -5174, -5174, -5174,  5146,
4327    -5174, -5174,   126,  5171,  5173,  5175,  -328, -5174, -3193, -5174,
4328    -4127, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174,
4329    -5174,   181, -5174,   -30, -5174, -5174, -5174, -5174, -5174, -5174,
4330     1978, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174, -5174
4331 };
4332 
4333   /* YYDEFGOTO[NTERM-NUM].  */
4334 static const yytype_int16 yydefgoto[] =
4335 {
4336       -1,    69,   738,  1951,    70,    71,    72,    73,    74,  1917,
4337       75,  1260,  2576,  1262,  1883,  2579,    76,   707,    77,  2072,
4338     2774,  2775,  4484,  4485,  4478,  4479,  4481,  4482,  2776,   821,
4339      822,    78,  2632,  3734,  3233,  2629,  5051,  1957,  4710,  1958,
4340     4711,  2625,  3740,  4321,  1962,  2634,  1963,  4320,  4314,   746,
4341     3735,  3312,  3313,  1319,  3228,  3321,  3322,  2637,  4312,  4464,
4342     5353,  4468,  5495,  5609,  5418,  3349,  4889,  5354,  5355,   641,
4343     1330,   606,  2037,  5421,  2702,  5071,  2703,    79,   814,  1430,
4344     2065,  2066,  4734,  4735,  5081,  5082,  5083,  5066,  5067,  5068,
4345     5069,  4310,  4727,  2876,   909,  2170,  2877,  4954,  4948,  4949,
4346     4950,  4563,  3457,  3458,  3459,  4582,  3460,  4967,  4972,  3977,
4347     3978,  4496,  3461,  5226,  5227,  5228,   661,  1136,  5229,    80,
4348       81,   662,   671,   663,  1133,  2433,  1134,    82,    83,   705,
4349     1907,  1908,  1909,  1910,  3199,  2595,  3193,  3194,  4281,  4955,
4350     3463,  4571,   910,   911,   912,    85,   642,   913,   914,   915,
4351      916,  1531,  2163,  2164,   917,   918,   919,   920,   921,  2879,
4352     2880,  3477,  3425,  3979,  2881,  2174,   922,   923,   924,   925,
4353     1532,   886,   887,  2840,  3992,  4508,    86,   619,   817,   818,
4354     2071,  2748,   819,  2749,  3358,  4477,   820,  1432,  2745,  1434,
4355      926,  3481,   927,   928,  2183,   929,  1522,    87,  1868,  2825,
4356      852,  1472,  2119,   930,  1246,  2558,  1142,  2441,  3482,   931,
4357     2180,  2182,  2179,  3480,  5379,  2181,    88,   652,   682,   640,
4358     1471,   668,  4731,  5077,   792,   793,   829,  2797,   794,  1442,
4359     1403,  2042,  2729,  2730,  3327,  3328,  3394,  3395,  3396,  2721,
4360     2722,  2723,  2786,  2787,  2788,  2710,  2711,  2712,  2046,  2707,
4361     2708,   795,  1404,  1415,  2724,  2725,  2726,  3400,  2790,  2791,
4362     2792,  2793,  2727,  2109,  2728,  3794,  4302,  4726,  4303,  5059,
4363     3080,  4722,  4723,  4451,  4817,  3178,    89,   655,  1119,  1736,
4364     2425,  3624,  3063,  3065,  2426,  3623,  4195,  4196,  4197,  3061,
4365     3062,  5263,  3067,  3621,  5398,  5697,  5521,  5522,  3613,  5526,
4366     4204,  4665,  4666,  5030,  5264,  5404,  5629,  5527,  5704,  5627,
4367     5700,  5628,  5702,  5822,  5769,  5770,  5639,  5715,  5716,  5774,
4368     5823,  5537,  5538,  5539,  3618,  5027,  5283,  3223,  2031,  2032,
4369     4780,  1271,    90,  4304,  3900,  4305,  4306,  4825,  5548,  3902,
4370     3903,  3904,  3418,  1815,  4859,  4841,  4319,  4867,  4307,  4714,
4371     4715,  4716,  4717,  5449,  5568,  5451,  5452,  5565,  5670,  5564,
4372     4718,  4719,  5055,  5349,  4786,  4396,  4380,  4381,  4456,  4875,
4373     5180,  5351,  5347,  5471,  5472,  5810,  5811,  5488,  5761,  5489,
4374     5817,  5836,  5837,  5473,    91,   654,  1684,  5574,  5575,  5576,
4375     4054,  5181,  4055,  4056,  4550,  4057,  4058,  4059,  4060,  4061,
4376     4062,  4063,  4064,  4065,  4066,  4067,  4960,  4553,  4085,  4924,
4377     4080,  4551,  4549,  4089,  5490,  5491,  4918,  4554,  4521,  4935,
4378     5606,  5474,  5492,  5476,  4533,  1771,  1772,  3264,  1785,  1786,
4379     3107,  2467,  3108,  2035,  4534,  4535,  4928,  4536,  4933,  4167,
4380     5015,  4173,  4174,  4175,  3578,  3579,  3580,  3581,  3582,  3022,
4381     5477,  4874,  5346,  5461,  5464,  5589,  5755,  4787,  4382,  4790,
4382     1232,   747,  4383,  4384,  5720,  5647,  5654,  5721,  5655,  5648,
4383     5325,  3731,  5722,  5723,  5724,  5657,  5650,  4294,  5275,  5276,
4384     4775,  4939,    92,   162,  3347,  1391,  1393,  1402,  3353,  2738,
4385     2737,  1408,  1407,  2716,  4370,  4773,  3845,  3350,  3919,  5188,
4386      779,  3905,  5337,  5126,  5344,  3906,  4694,  3907,  5317,  5442,
4387     3908,  5146,  5342,  5459,  4695,  4696,  3909,  3910,  3911,  5728,
4388     5729,  5730,  4385,  1501,   798,   799,  1420,  1421,  1422,  2820,
4389     4872,  4408,    93,  2617,  2612,    94,  1288,  1289,  1290,  1929,
4390     1930,  2615,  2616,  3219,  3723,    95,  1255,  2572,  1919,  2604,
4391       96,  1274,  3210,  3211,  3212,  3718,    97,  1428,  2062,  2063,
4392     2742,  3926,  4476,  4893,  5195,  5361,  5191,  5502,  5503,    98,
4393      825,  1438,    99,   621,  2081,  2082,  2083,  2778,   100,  1540,
4394      170,   101,  1140,  1742,  1745,  1746,   102,  1254,  1870,  1871,
4395     1872,  1873,  3174,   103,  2151,  2844,  2845,  2846,  2847,  2567,
4396     3695,  2568,  2569,  3183,  3999,   104,   761,  1390,   105,   760,
4397     1389,   106,   107,   681,   733,   673,  1758,   109,   110,  3081,
4398     2219,   112,   767,   765,  1082,   114,  1383,  1379,   115,  2220,
4399     1083,   757,   758,  1337,  1165,  3249,  3250,  2094,  2095,  2669,
4400     2656,  1166,  1167,  1363,  2020,  2681,  2456,  2457,  1856,  2458,
4401     3647,  4224,  5758,  1561,  1482,  1258,  1085,  1086,  1704,  1705,
4402     1712,  1087,  1706,  2379,  4135,  4627,  4628,  4629,  4630,  5006,
4403     2300,  2301,  2420,  1088,  2286,  1089,  1090,  1091,  1092,  1093,
4404     1094,  1095,  1096,  1097,  1098,  1099,  2415,  4116,  4117,  4609,
4405     3056,  3057,  3058,  1100,  2903,  4102,  2914,  1101,  1102,  1103,
4406     1104,  1105,  3605,  1106,  4191,  3772,  1107,  1690,  2365,  2246,
4407     4601,  4107,  4984,  4988,  4989,  4990,  5239,  2187,  2891,  3506,
4408     4590,  4594,  4595,  3507,  3508,  3606,  3027,  1582,  1583,  1550,
4409     1551,  3556,  1338,  1339,  1340,  1341,  1342,  3756,  3757,  4739,
4410     4325,  4741,  4329,  1985,  1986,  1989,  1990,  1343,  1344,  1345,
4411     1346,  1973,  1347,  1348,  1349,  2661,  5303,  4747,  4748,  5434,
4412     5433,  4749,  4334,  4335,  3760,  3761,  4261,  4262,  4263,  3260,
4413     2242,  2243,  2316,  2156,  2157,  2158,  2188,  1357,  2000,  2677,
4414     3270,  2002,  3268,  3767,  3272,  3773,  3774,  2410,  3049,  3601,
4415     3051,  4656,  5022,  5023,  5256,  5388,  5389,  5394,  3914,  4811,
4416     4812,  2805,  1364,  2689,  3282,  3770,  1817,  1818,  1819,  2010,
4417     3275,  3276,  3412,  1366,  1367,  1377,  1382,  1370,  1368,  2867,
4418     4366,  4815,  3583,  3565,  4700,  3795,  2211,  2212,  4816,  4639,
4419     1371,  2690,  3781,  3782,  3783,  1353,  1354,  1995,  1996,  1997,
4420     1372,  1355,  2670,  3763,   116,   700,   117,  2116,   839,  1468,
4421     2115,  3190,  1440,  2444,  2089,  2090,  1457,   787,   639,   118,
4422      643,  2841,   119,   669,  2443,   891,  1145,  1750,  1751,  1752,
4423     3082,  3636,  3083,  3629,  3630,  3084,  1244,  4214,  4215,  2815,
4424     3808,  3809,  3803,  2557,  3165,  1245,  1860,  3687,  2554,  3688,
4425     2555,  2581,  3689,  3994,  4915,  5506,  2551,   120,   679,  4250,
4426     3681,  3682,  5614,  5615,  1146,   121,   625,  2088,   835,  1446,
4427     1449,  1450,  2098,  2801,  3972,  1451,  1452,  2803,   836,   837,
4428      122,   721,  1294,  1839,  1840,  1841,  2538,   123,   676,  1233,
4429     3676,  4247,  2524,   658,  1466,  1822,  1236,  1823,  2520,  3149,
4430     1806,   124,  1387,  1386,   813,   125,   126,   773,   171,  2024,
4431      127,  1263,  1900,  2593,  3701,  3702,  4266,  1901,  1902,  3191,
4432      128,   688,  1249,  3187,  4701,  4702,  5048,   129,   712,  1278,
4433     1279,  1923,  1921,  3215,  2607,   130,  2427,   131,   644,   894,
4434     1504,  1505,  2149,   132,   715,  1283,   133,   134,   896,  4000,
4435     5617,  5764,   648,  2153,  1509,  5060,  4337,  4754,  4755,  4757,
4436     5103,  5104,  5819,  5854,  5865,  5858,  5868,  5869,  5872,  5878,
4437     5879,  1108,  1301,  1302,  1109,  5579,  1110,  1111,  1112,  2221,
4438     1248,   684,  1863,  1864,  3170,  2561,  3168,  1865,  3631,  3632,
4439     3097,  3269,  1113,  3633,  4776,  1441,  2091,  1266,   607,  1114,
4440      608,   789,  1303,  1992,  2851,  1184,  3124,  1116,   933,  1398,
4441     1743,  2051,  2052,  2852,   610,   934,  3125,  3465,  1186,   611,
4442      612,   613,   614,   615,   616,   617,   618,   136,   675,  1169,
4443     2463,  1762,  1194,  1791,  1780,  1790,  2494,  3136,  2497,  3137,
4444     3138,  4239,  3669,  4240,  3670,  1239,  2489,  1763,  3671,  2482,
4445     2483,  2484,  2485,  3660,  1777,  2473,  2479,   137,   897,  2162,
4446      651,  1511,  1512,  2864,   138,   678,   139,   706,  1268,  2600,
4447     3203,  3204,  3714,  4283,  3715,   140,  1151,  1152,   141,   880,
4448     3226,  2831,  2105,  1401,  2106,  2133,   883,  1474,   884,   885,
4449     1488,  1485,  1491,  1487,  3835,  3342,  3343,  2836,  2113,  2053,
4450     2450,  3335,  4356,  2054,  3829,  3830,  4357,  2123,  2827,  2828,
4451     2735,  5203,  3842,  3346,  4909,  3983,  5204,  5205,   142,   692,
4452      143,  5072,   699,  1257,  1880,   144,   145,   146,   147,   766,
4453     1375,  1168,   163,   164,   165,   166,   802,   803,  3352,  3921,
4454     4471,  4472,  5190,  5861,  5862,  2636,  3738,  5550,  5826,  5855,
4455     5874,  5293,  5420,  5422,  5553,  3235,  3737,  5073,   148,  1308,
4456     1304,   732,  1949,  1943,  1945,  2623,  3222,   149,   150,   151
4457 };
4458 
4459   /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
4460      positive, shift that token.  If negative, reduce the rule whose
4461      number is the opposite.  If YYTABLE_NINF, syntax error.  */
4462 static const yytype_int16 yytable[] =
4463 {
4464      609,   691,   801,   734,   807,   135,  1235,  2582,   111,  2011,
4465      113,  2270,  2025,   653,  2405,  1528,  2798,  1182,  1231,  2435,
4466      797,  1514,   664,  1519,  1520,  1521,    84,   664,  3648,   108,
4467     1525,  2440,   664,  1141,   781,   680,  3283,   784,  1585,  1846,
4468     2495,   791,  3912,  1400,   703,  2100,  3913,  1584,   702,  1187,
4469      711,  1188,  2806,  1189,   710,  3462,  2218,  2210,   714,  3484,
4470     3485,  2599,  1399,  1190,  2491,  4295,  3182,  3952,   882,  4332,
4471     1993,  3762,  2351,  2012,  3675,  4084,   672,  2128,   735,  1336,
4472     2033,  2550,  1439,  1625,  3227,  2034,  3179,  2003,   881,  3509,
4473     3975,  3510,  1285,  3685,  3785,  1292,  2511,  2512,  1315,  1153,
4474     1465,  1938,  1316,  1317,  2713,  2434,  3779,  3511,  2594,  4878,
4475     3784,  2691,   808,   809,   810,   811,  3401,  3192,  1968,   881,
4476     3330,   812,   776,  2515,  3424,  3722,  2390,  2391,  2392,  2393,
4477     2394,  2395,  2396,  2398,  2400,  2401,  2402,  2403,  2404,  3796,
4478     1689,  3402,  2531,   778,  2252,   113,  2789,  3252,  1544,   780,
4479      609,  4377,  4378,   609,  3256,  4457,   790,   796,  4308,  3331,
4480     3923,  2818,  3901,  4379,   108,  3796,  3796,  2544,  2545,  4404,
4481     4743,   667,  3251,  3251,  4885,  2154,   135,  4969,  2096,   111,
4482     4386,   113,  4388,  4474,  2435,  4398,   695,  3398,   762,  5193,
4483     4169,   697,  3564,  3801,  3332,  2592,  2837,  1489,  2838,  2839,
4484      108,  2030,  5070,  -409,  -600,  2154,  2171,  2154,   716,  1381,
4485     4814, -2841,  2665,  2110,  5211,  4405,   751,  1170,  4433,   719,
4486    -1123,  2865,  2620,  3326,  1775,   763,  3399,  4169,  2154,  1380,
4487     3796,  3796,  4106,  1691,  1692,  2064,  4819,  4512,  1691,  1692,
4488     3299,  2030,  1978,  4170, -1941,  2030,  2777,  1528,  1773,  1776,
4489     1778,  1384,  1744,  2865,  4837,   937, -2546,  1788,  3615,  2367,
4490     -704,  2733,  3391,  3717,  -705,  1813, -3233,  1259,  1633,   656,
4491     2434,   937,  2378,  2380,  5703,  2383,  2384,  4952,  1192,  2865,
4492     4170,  4526,  1680,  1682,  1683,  1848,   693,  1847,   645,   622,
4493     1769,  3405,   804,  4088,  3937,  1726,  1170,  4821,  4527,  1665,
4494     3834,  3964,  1691,  1692,  4823,  1693,   713,  1669, -2341, -1941,
4495     1693, -3153,  4573, -3154,   806,  1947,  1979,  3251,  4532,  4532,
4496     1694,  1978,  4532, -2547,  1911,  1694,  4846,  1980,  4526,  4532,
4497     2203,  3825,  1691,  1692,  1981,  4532,  3674,  4725, -3216,  2736,
4498     2865,  3746,  5182,  1170,  4513,  4527,  4892,  2865,  3729,  1695,
4499     1691,  1692,  3019,  2865,  1695,  1696,  2819,  1691,  1692,   649,
4500     1696,  1323,  2204,  3811, -2341,   693,  1982,  3441, -1941,  2865,
4501     1769, -3153,  1256, -3154,  1693,  3085,  1170,  2205,  2865,  4442,
4502      167,  3033,     8,  1810,   764,  3805,  5130,  4081,  4082,  1694,
4503     5144, -2343,  1697,  4791,  1365,  1979,  4093,  1697,  4094,  1365,
4504     4096,  1365,  3562,  2203,  1693,  1769,  1980,  1698,  3171,  1699,
4505     4354, -3220,  1698,  1981,  1699,  4124,  2865, -2841,  1695,  1694,
4506     2013,  2206,  1693,  1328,  1696,  4518,  3672, -1941,  1983,  1693,
4507    -3219,  5350,  4729, -1941,  5605,  2204,  5680,  1694,    16,  1507,
4508     4555,  3742,  3841, -1901,  1694,  1982,  1713, -2343,  1695,  2207,
4509     2205,   938,  4605,  5701,  1696,  2865,  5705,   670,  2705,  1984,
4510    -3217,  1697,   677,  4233, -3218, -2341,  1695,   938,  2888,  3333,
4511     3034, -3223,  1696,  1695,  1193,  4406,  1426,  4636, -2341,  1696,
4512      620, -1941,  3161,  4962,  4512,   838,  5803,   840,   841,   842,
4513      843,  1697,   845,   846,  2206,  2865,   848,   849,  5751,  4443,
4514     3078,   937,  4770,   937,   937,   937,  1698,  1983,  1699,  1697,
4515      937,  1875,   937,  4528,  2861,  2901,  1697,  3091,  3092,  3093,
4516     3094,   660,  2207,   879,  1698,  4363,  1699,   800, -2341,  1700,
4517    -3153,  1698, -3154,  1699,  1700, -2341,  2627,  1208,  1984,    29,
4518     4193,  1714,  2368,  4201,  4457,  1769, -2341,  4313, -2343,  2208,
4519      762, -2679,    32,  3858,   879,  4557,  3674,  4558,   649, -1415,
4520     1418, -2343,  4771,  4969,  2706,   831,  2621,  1843,   665,   646,
4521     3035,  3314, -2698,  2862,  3616,   674,  1253,  5063,  5329,  1913,
4522     2112,  1295,  1296, -2219,  5064,   815,  2899,   763,  4522,  1269,
4523     4524,  4513,  4528,  3617,  5820,  3821,  3822,    32,  4544,  4315,
4524     5804,  1842,    37,   832,   623,  2127,  5079, -1415,  3807,    39,
4525     4529, -2343, -1415,  2421, -2699, -1901,  1208, -2700, -2343,  1769,
4526       41,   796,  2208,    32,  4559,  1585,   689,   690,  1700, -2343,
4527     4606,  2369,   796,  1280,  2216,  5605,  3059,   853,   790,  4528,
4528     2254,  1585,  4518,  4572, -1941, -3237,  1700,  3764,  3765,  5065,
4529     1584, -1415,   649,  1700,    39,  1878,  5681,  4529,  1336,   685,
4530     3958,  3959,  1138,  1208,  4316,    41,  4637,  1508,  5219,   790,
4531     5331,  2830,  1185,  3068,  5216,  3225,  1955,  3162,  1956,  2422,
4532       39,  1959,  1960,  1961,  1250,  4355,  3982,  1427,   683,  4518,
4533     5560,   790,  4518,  5752,  2073,  2050,  1208,   938,  4457,   938,
4534      938,   938,  4556,  1267,   790,   169,   938,  5753,   938,  1469,
4535     1470,  1139,  3102,  3657,  3401,  2104,  3901,  3330,   935,  1830,
4536     2033,  1458,  1459,  1460,  2114,  2034,  4929,  3826,  1464,  1914,
4537      649,  2370,  5343,  3486,   935,  5517,  1314,  3101,  3745,  3402,
4538     4730,  3673,  5330,  3751,   937,  4526,   764,  3755,  1324,  1769,
4539     1680,  1682,   776,  4317,  1811,  5061,  3331,  1691,  1692,  2651,
4540     1170,   823,  4527, -2219,  3251,   826,  1693,  3806,  4929,  1385,
4541     2666,   657,  1634,  2713,  2050, -3237,  1378,  3730, -1901,  1844,
4542      790,  1694,  1405,   851,  4929,  3398,  4079,  3811,  4929,  4929,
4543     2715,   650,  3329,  2414,  5117,   686,  2184,   939,  2069,   694,
4544     1585,   624,   790,  1666,  3796,  3674,  1770,  4234,  5297,  2436,
4545     1695,  1670,  1431,  2734,  4171,  5480,  1696,  4079,  3262,  4207,
4546     1948,  1881,  1241,   776,  3399,  1405,  3823,  3798,  4352,  1693,
4547    -2546,  2028,  2795,  1453,  2461,  1455,  3020,   609,   609,   609,
4548     1461,  1405,  1416,   790,  1694,  1666,  1380,  2871,  4532,  2789,
4549     1272,  4171,  2110,  1697,  2878,  2490,  3156,   775,   823,  3397,
4550    -3233,   823,   691,   717,  2514,  3960,  4088,  2518,  2448,  4489,
4551     5269,  4532,  5222,  1695,   720,  4532,  1312,  2866,  2526,  1696,
4552     1332,  2529,  1490,  4532,  5690,  2532,  1770,  2780,  2469,  5699,
4553     1463,  3254,  3255,  1467,   776,  5070,  1518, -2547,  3430,  4517,
4554     -409,  -600,  3334,  1523,  2543,  1526,  2080,  4530, -2841,  2866,
4555      881,   718,  2547,  2548,  2549,  2509,  1697, -1123,  2155,   135,
4556     1533,  1770,   111,   647,   113,  3025,  3026,  2080,  5300,  5370,
4557     5301,  1698, -3216,  1699,   831,  2866,  2407,  4172,  1252,  4367,
4558      938, -1941,  2080,   108,  4564,  4565,  4566,  4475,  2155,  4569,
4559     2155,  3041,  3042,  5194,  3045,  3046,   649,  -704,  4407,  3997,
4560     5299,  -705,  4578, -1941,   935,  1585,   935,   935,   935,  2423,
4561     4969,  2155,   832,   935,  2436,   935,  3245, -3237,  1701,  1702,
4562     1703,  3889,  1807,  1701,  1702,  1703,  4530,  3564,  3564,  3315,
4563      650,  3564,  3564,  4772,  1691,  1692,  2866,  3564,  3564,  1879,
4564     3029,  5419,  2902,  2866,  1967, -3220,   693,  3069, -3153,  2866,
4565    -3154, -3335,   734,  3563,  2866, -2341,  2449,  2074,  2562,  3036,
4566     -114,  1419,  -114,  1365, -3219,  2866,  5518,  1804,  4365,   824,
4567     3413,  5754,  2382,  4530,  2866,  1399,   937,  1713,  5123, -2719,
4568     5125,  3060, -2705,  5128,  2209,  5119,  3827,  1701,  1702,  1703,
4569     5133,  5134,  2643,  1700, -3217,  1831,  4528,  1774, -3218,  1779,
4570      834,  1770,  1824,  1782,  1787, -3223,  1693, -2679,   696,  2683,
4571    -2219,  2900,  2866,  1881,  4529,  2802,  1688,  1701,  1702,  1703,
4572     1208,  1694,  1687,  -118,   650,  -118,  2530,  1685, -2698,    68,
4573     4457, -2679, -2712,  1816,  4125,  1701,  1702,  1703, -2343,  1832,
4574     3316,  1833,  1701,  1702,  1703,  1399,  3421,  3317,  4391,  2863,
4575     1695,  2866, -2698,  4338,  3021,  3318,  1696,  5808,  3766,  2915,
4576     2197,  2916,  -110,  1918,  -110,  4341,  3924,  4391,  4738,  3658,
4577    -2699,  4449,  1714, -2700,    68,  1770,   790,   776,  1722,  1723,
4578     1724,  1725,  1409,  2734,  3912,    32,  5552,  2814,  3913,  5062,
4579     1715,  2866,  2500,  1697, -2699,  3659,  3641, -2700,  2734,  2460,
4580       68,  4758,   650,  4392,  4761,  2516,  1761,  2424,  1410,  4377,
4581     4378,  5028,   790,  5759,   790,  1528,  2605,  1493,   790,   790,
4582     2371,  4379,  4392,  1336,  4690,  5356,  3180,  1805,  3319,  2294,
4583      687,  3337,  2464,   666,  4707,  1834,  5001,  5519,  4398,  4921,
4584     4929,  3181,    39,  2470,  1794,  3180,  2311,   935,   790,  2319,
4585     1411,  2321,   881,    41,  3330,  2325,  2326,  2327, -3061,   807,
4586     3181,  2480,  1737,  2333,  4922,  4318,  3192,  1915,  3916,  4744,
4587     4796,  -258,   938,  2050,  4488,  1765,  1999,  1170,  1312,  2692,
4588     4322,  4323,  4326,  4327,  1835,  1866,   776,  5683,   888,  3320,
4589    -2219,   776,   776,  3331,  2570,  3414,  4219,  4220,  4221,  4222,
4590     2843,  3843,   698,  1502,  3901,  1770,  3251,  3251,  1916,   734,
4591      689,  3699,  2589,  4762,  3625,  -814,  2075,  1926,  3854,  3424,
4592     1851,  2719,  3401,  1143,  5710,  5711,  4393,   833,  4863,  3664,
4593     1700,   776,  1939,  1836,  -814,  2714,   172,   173,  2608,  1336,
4594     1808,  3796,  4457,  5514,  2691,  2059,  4466,  3402,  1412,  3697,
4595     1336,  1336,  1952,  4467,  2033,  2630,  2631,  1585,  2927,  2034,
4596     4368,  3338,  2639,  2640,  2641,  4764,  2926,   808,   809,   810,
4597      811,   776,  1975,  2887,  3278,  3279,   812,  2794,  3525,  1687,
4598     5520,  4828,  4631,   850,  1685,   879,  3336,  3153,  1413,  4397,
4599     2435,  1998,  4927,  3398,  4291,  1876,  2965,  4843,  4844,  1795,
4600     2713,  1953,  1954,  2076,   704,  2077,  2018,   823,   689,   823,
4601     4457,  2821,  2822,  3207,  5334,  5322,  1766,  2693,  5327,  5328,
4602     1825,  3654,  5787,  1837,  2026,  2027,  3077,  3078,   650,  3329,
4603     2193,   135,  3399,  1378,   111,  2012,   113,  5562,  2012,  2012,
4604      881,  4745,  3415,  1351,   776,  1838,  4929,  1904,  4929,  3013,
4605     3666,  3428,  1713,   790,   776,   108,  5287,   708,  1920,  1796,
4606     4586,   609,   776,  3030,  2571,   776,  2709,  3243,  1797,   834,
4607     4910,  4911,  4912,  3244,  5760,   776,  2434,  1940,  1265,  1701,
4608     1702,  1703,   776,  4374,  2092,  4502,  4503,  4504,  4505,  3337,
4609     4530,  5392,  2789,  3674,  2102,  2078,  4369,  3397,  3865,  2715,
4610      790,  4532,  4374,  1286,   790,   776,  2159,  3207,  1691,  1692,
4611     1798,  3680,  4292,  3614,  5475,  2720,  2074,  5585, -2160,  1738,
4612     3700,  1494,  2823,  2517,    32,  3925,   892,  1350,  3079,   790,
4613     1503, -3061,   790,  1707,  2481,   709,  3949,  1713,  3917,   935,
4614     5357,   889,  1701,  1702,  1703,  5029, -2160,  1714,  2471,  1707,
4615      734,  4587,  2166,  5074,  4526,  3441,  5003,  1852,  3098,  2917,
4616     5005,  2918,  2472,  3340,  3040,  1715,  2218,  1297,  3844,  4537,
4617     2853,  4527,  2854,  2079,  2855,  2795,  1144,   776,  3105,  4588,
4618     1693,    39,  3109,  3208,  2857,  3404,  1141,  2064,  2818,  5399,
4619     3072,  3073,    41,  2944,  1287,  1694,   736,  1208,  3683,  1297,
4620     5645,  5439,   890,  3619,  4746,  3134,  1877,  3442,  1769,  5075,
4621      785,  3144,  2366,  3146,   172,   173,  4923,   113,  5445,  3338,
4622     1687,  1799,  1716,  1717,  1695,  1685,  2312,  3151,  2313,  2080,
4623     1696,  4852,  1714,  4540,   167,  2159,  4870,  1691,  1692,  5593,
4624     3158,  3159,  1708,  3674,  3592,  5127,  3595,  1800,  5586,  2406,
4625     1715,  1853,  2194,  1298,  1299,  3599,  3600,  1709,  1708,  3674,
4626     3674,   739,  3598, -2540,   740,  5814,  1854,  1697,  1352,  1510,
4627     3966,  3807,  1932,  1709,  5750,  5124,  5138,  3208,  2160,  4589,
4628      776,  5423,  1698,  2129,  1699,  1298,  1299,   879,   689,   776,
4629     5358,  5136,  2372,  3339,  4293,  1911,  2130,  1911,  4394,  5448,
4630      776,  5450,  3747,  3209,   689,   690,  3950,  1716,  1717,  1693,
4631      741,  2352,   937,  5863,  2161,  5646,  2501,  4394,  2503,  2505,
4632     2506,  2507,    68,  1544,  1694, -1355,  5587,   790,  2513, -1074,
4633     5145,   893,  5147,  2107,  1710,  2361,  5466,   113,  2080,  2553,
4634     3974,  2159,  3968,  4531,  4539,  2528,  5756,  4543,  2080,   755,
4635     1710,  3044,  2685,  1695,  4547,  4625,  2131,  4871,  5440,  1696,
4636      937,  5815,  3824,  4930,   790,  2679,  2411,  1720,  1721,  1722,
4637     1723,  1724,  1725,  5076,   152,  2075,  5382,   756,  1443,  1701,
4638     1702,  1703,  2013,  2819,  5341,  2013,  2013,  3280,  1414,   776,
4639     4559,  5718,   790,   790,  1462,  -816,  1697,  3209,  4372,  2859,
4640     5864,  3112,   790,  2465,  1700,  2719,  4395,  2160,  3951,  5581,
4641     2486,  1698,   790,  1699,  5816,  1300,   722,  5278,  2416,  5400,
4642     5401,  3340,  5566,   937,   937,  4395,  2492,  1761,  2596,  5468,
4643     4538,  4024,   609,   776,   609,   609,   609,   609,   776,   790,
4644      776,  2635,  2638,  5336,   609,  1933,  1801,  1611,  5237,  2487,
4645     4253,  1534,  2417,  -816,  2451,   762,  3446,   741,   737,   742,
4646     2527,   609,  2076,   790,  2077,  4528,  1388,  2452,  2624,  1804,
4647      936,  4675,  4676,  4252,  5201,   879,  3180,  2628,  5645, -2125,
4648     1329,  3341,   782,  4529,  4462,   776,   936,  5259,  3447,  1208,
4649     2719,  3181,   763,  1191,   723,   743,   776,  5846,  5847,   626,
4650     3206,  1394,  4782,  3126,  1325,  3127,  2108,  3128,   938,  1535,
4651      168,  5688,  1747,  2160,  3087,  4518,  2671,  3130,  5402,  2428,
4652     4789,  4789,  1802,   786,  3957,  3679,  3329,  2131,  2418,   153,
4653     1803,  3038,   783,  1700,   881,  2314,  1707,  2680,  2315,  5859,
4654      154,  5516,  5469,   790,  2132,  5441,  4853,  3448,  4854,  2080,
4655     2709,   800,  3705,  2033,  2078,  2686,   938,   776,  2034,   169,
4656     4783,  2704,  2610,  3166,   627,  -816,  4229,  4230,  4961,  1528,
4657     3420,  5455,  3716,  1326,  3113,  3449, -3330,  5245,  1536,  5383,
4658     2709,  4238,  4463,   790,  4978,  4855,  4985,  3706,  4980,  4981,
4659      790,   790,   790,  5646,  5403,  2860,   693,   776,  4907,  2720,
4660      756,   155,  2521,  3188,  2714,  2488,   742,  1336,  -219,  2419,
4661     2533,  1456,   776,  1336,  4856,   172,   173,  4838,   155,   938,
4662      938,  1867,  3475,   776,   776,  2695,  1874,  5063,  1336,  1805,
4663     2012,   790,  2079,  3236,  5064,  2709,  3237,  2107,  5407,  5573,
4664     3242,  3967,  -816,   805,  5024,  1708,  2522,  3483,  3483,  3483,
4665      154,   764,  3263,  2050,   628,  3988,  3989,  3990,  3991,  1537,
4666     1709,    68,   815,  4750,  4839,  3397,  4751,  2107,  5326,   816,
4667     1395,  2696,  4784,  5430,  4216,  3450,   790,  3750,   823,  4151,
4668     2794,  3754,  1369,  5621,  2720,   693,  2715,  5860,  1396,  5395,
4669     3403,   689,   690,  5778,  5779,  5179,  3196,  3197,   776,  5065,
4670     3970,  5431,  4586,  -815,   823,  5447,  1350,  4152,  1275,  5798,
4671     4564,  4565,  4566,  2697,  4569,  2453,   936,   776,   936,   936,
4672      936,  1359,  2057,   629,  1770,   936,  1327,   936,   155, -2160,
4673    -2160,  4876,  3131,  4374,  1453,  4840,  2810,  1710,  1373,  5410,
4674     2812,  1719,  1720,  1721,  1722,  1723,  1724,  1725,  2050,  4785,
4675     4857, -3330,   776,   776,  3608,  1229,  2386, -1355,  5432,  2826,
4676     5829,  1691,  1692,  5831,  2012,  4752,  2835,  2835,  4876,  2835,
4677     2835,  1585,  1336,  3198,  1361,   935,   958,   156,  2795,  2043,
4678     2436,  2523,  3973,  3404,   790,  1229,  4858,  1711,   776,  2055,
4679     1557,  1558,  1559,  4587,  5845,   827,  1276,  2060,   776,  2058,
4680     1374,   937,  4184,  1711,  4187,  2874,  2613,  5644,   965,  5202,
4681     2108,  5622,  3650,  3651,  5578,  2882,   853,  2086,  1732,  2086,
4682     5719,  4591,  3768,   935,  5733,   157,  2718,  1720,  1721,  1722,
4683     1723,  1724,  1725,  1693,  3788,  2698,  4241,  3665,  4860,  3674,
4684     2108,  2112,  5578,  4862,  5511,  3437,  1741,  2699,  1694,  4753,
4685     1277,  1613,   744,  1701,  1702,  1703,  3596,  3653,  4516,  4530,
4686     2614,  1707,  2856,  2186,  2186,  2387, -2125,   977,  4242,  2911,
4687     -167,   113,  2945,  4937,  3674,  3769,   630,  1695,  2186,  5645,
4688     2388,  3417,  5093,  1696,  5094,   828,   935,   935, -1044,  3466,
4689     5780,  3467,  2186,  3468,  3055,   989,  4953,  5675,  5676,  3707,
4690     4956,   881,   631,  3470,  2189,  2190,  2186,  4931,  4963,  1857,
4691     2868,  3789,  1528,  2200,  1820,   636,  5838,  3475,  4574,  4575,
4692     1697,  4589,  4789,   844,  4527,  2199,  2259,  4243,  3132,   689,
4693      690,  5671,  2922,  5673,  5674,  1698,  5848,  1699, -3298,   895,
4694     2262,  4561,   745,  5000,  1821,  2260,  3708,  2263,  4375,  1979,
4695      632,  2700,  1118,  4005,  2280,  4244,   734,  2389,  5424,   936,
4696     1980,  1858,  5465,  2277,  2278,   776,  2281,  2662,  2291,   879,
4697     1708,   776,   689,   690,  2287,  2288,   158,  2013,  2292,  4614,
4698      159,  5020,  1701,  1702,  1703,  1709,  4778,  3014,  2406,  3640,
4699     1359,  4615,  1120,  2719,  5646,  1010,  4562,   938,  2922,  3006,
4700     5244,  3007,  4397,  5021,  4779,  1135,  3283,  5652,  1399,  5012,
4701     3709,  4616,   659,  4562,  3247,  2320,   689,   690,  3248,  4691,
4702     5812,  5812,   160,  2701,  2329,  3141,  1687,   724,   725,  2047,
4703     2048,  1685,  5742,  5743,  2695,  2340,  5746,  3145,  1360,  5466,
4704     4801,   689,   690,  1361,  4617,  3126,   -72,  3127,  1243,  3128,
4705     1592,  1251,   161,  1155,  3710,  4245,  4376,  1700,  1456,  3130,
4706    -3330,  2663,  1710,  2085,   726,  5785,   937,  4647,  5784,  1261,
4707     1609,  4649,  5835,  1143,   790,   790,   776,  1614,  1615,  3796,
4708     2696, -2313,  1362,   937,   790,  3172,  1137,   633,  2835,  2835,
4709     2835,  2835,  1984,   113,  3180,  1147,  3099,  3100,  4520,  1761,
4710     4069,  1240,  1256,   790,  4525,   634,   727,  4542,  5797,  3181,
4711     3512,  2013,  4070,  1264,  4546,  1156,  3796,  3796,  3472,   937,
4712     1182,  3517,  2697,  5101,  2445,  4246,  1282,   937,   937,   937,
4713     4683,  1273,  5468,  4618,  4793,  5102,  4795,  3140,  2709,  4798,
4714      830,   609,  4802,  1270,  3576,  4805,  4806,   635,  1284,  3053,
4715      636,   847,  1187,   609,  1188,  3234,  1189,  3054,  2652,  3577,
4716     1713,  3239,  3241,  2653,  1291,  4284,  1190,  2654,  2502,  2093,
4717     1976,  2866,  2203,  2508,  2648,  2510,  2649,   637,  3550,  1293,
4718      776,  4845, -2388,  1528, -2388,   638,  1307,  2720,  2124,  2125,
4719     1711,  2714,  2126,  5510,  1999,  3129,  1866,  3169,  4925,   755,
4720      790,  3175,   776,  4619,  2204,  3053,  5367,  4501,  5369,  3561,
4721     3711,  3712,  3713,  4679,  3796,  3150,  4079,  1336,  4938,  2205,
4722     2542,  1336,  5529,  5381, -2701,  2107,  2924,  4943,  2257,  1311,
4723      776,  2552,  3475,  4945,  3836,  3837,  2038,  3202,  3838,  3839,
4724     3840,   776,  4079,  4957,  2698,  5469,  2655,  4364,  2866,  4083,
4725    -2707,   936,  4965,  4966,  1313,  1714,  2699, -2709,  1318, -2313,
4726     3607,  1320,   938,  2206,   935,  1321,  3229,  3230,  3231,   776,
4727     3123,   609,  4162,  1715,  3131,  3300,   776,  3240,   609,   938,
4728      776,  1322,  2806,  2794,  1356,   728,   776,  3683,  3403,  1713,
4729     4083,  2207,  3142,  2757,  2758,  1388,  1157,  1158, -2721,  4079,
4730     3147,   776,   729,  4644,  1392,  3261,  1159, -2729,  2770,  1998,
4731     3266,  4597,  4598,  4079,  3473,   938,  2709,  4620,  1476,  4621,
4732     4079, -2730,  1406,   938,   938,   938,  4079,   730, -2731,  1423,
4733     1716,  1717,  2633,  1424, -2734,  4491,   879,  1425,  3419,  4613,
4734     1691,  1692,  4667,  1229,  2938,  1305,  1306,  1350,  1309,  4228,
4735     1310,  3404,  2050,  2050,  2050,  2050,  3213,  1417,  1350,  1350,
4736     2700,  2963,  3927,  1881,  4640,   800,  2969,   731,  2970,   823,
4737     2017,   790,  1336,  2019,  2019,  1477,  4248,   776,  1478,  4208,
4738     1429,  1192,  1931,  3205,  1714,  4506,  4507,  4692,  1936,  1937,
4739     2719,  2208,  2980,  2986,  1881,  1881,  4251,  2990,  2108,  1881,
4740     5054,  4778,  1715,  2107,  1911,  1479,  2772,  2773,  4662,   937,
4741      172,   173,  1693,  1480,   937,  4345,  4346,  1433,  2203,  4347,
4742     4348,  1774,  2991,  1774,  1881,  4349,  4350,  1694,  2343,  2344,
4743     3274,  2782,  2701,  2739,  3325,  1437,  2782,  3407,  5036,  3409,
4744     4813,  1444,  2992,  5649,  1881,   776,  5656,  2998,   776,  1881,
4745     2204,   790,  2233,   790,   790,  3426,  1695,  3427,  5888,  1716,
4746     1717,  3478,  1696,  3479,  1445,  3790,   790,  3301,  1456,  2835,
4747     3132,  4622,  4623,  3691,  3758,  3692,  3759,  1229,  4086,  3291,
4748     1473,  5530,  1691,  1692,  4092,  1475,  3295,  3296,  5531,  1483,
4749     4097,   113,  1481,  1691,  1692,  1486,  3819,  3393,  3820,  1697,
4750     1484,  2834,  2834,  5532,  2834,  2834,  1701,  1702,  1703,  3791,
4751     1495,  1492,  1160,  3302,  1698,  1711,  1699,  1496,  4133,  2782,
4752     2970,  1229,  2234,  2848,  3721,  2360,  2757,  2758, -2313,   935,
4753     1497,  1500,  4136,  1510,  1881,  2709,   790,  3792,   790,  1506,
4754     2709,  2770,  2449,  2449,  2449,  2449,   935,  5129,  5649,  4143,
4755     1498,  4144,  3836,  3837,  1693,  5656,  3838,  3839,  3840,  1529,
4756     1538,  1399,  1399,  1399,  1399,  1693, -2313,  1604,  4150,  1694,
4757     1881,  4154,  4469,  4155,  4470,  1545,  2108,  1193,  1539,  1546,
4758     1694,  3469,   935,  4557,  2720,  4558,  4653,  2235,  1881,  2236,
4759      935,   935,   935,  1547,  2237,  3303,  5038,  5039,  1695,  1552,
4760      937,  4891,  1553,  1727,  1696,   938,  4896,  1554,  4897,  1695,
4761      938,  4917,  3298,  4920,  1555,  1696,  2783,  2928,   734,  4686,
4762     2931,  2783,  2107,  2709,  1556,  1560,  4288,  2107,  4459,  4624,
4763     1562,  1563,  4936,  5533,  1564,  1565,  1700,  3793,  2946,  2772,
4764     2773,  1697,  4941,  3686,  1566,  1399,  5534,  5649,  5656,  2960,
4765     1728,  1567,  1697,  3574,  4946,  1568,  1698,  3304,  1699,  2238,
4766     1691,  1692,  4898,  4900,  4899,  4901,  5535,  1698,  4976,  1699,
4767     4979,  4964,  1569,  1528,   172,   173,  3305,  3306,  2784,  1570,
4768      937,  3307,  3308,  3309,  1571,  1978,  3602,   113,  1687,  4993,
4769     5010,  1881,  5011,  1685, -1044,  5018,  4684,  1881, -1758,  5031,
4770     2993,  5032,  2239,  5045,  2783,  5046,  2999,  5056,  1572,  5057,
4771     2107,  4216,   776,  5092,  3634,  3759,  1336,  1336,  1161,  1162,
4772     1163,  1164,  3967,  3635,  1573,   790,   790,  2835,  5212,   937,
4773     5213,  1574,  1693,   113,  1577,   689,   690,  3129,  1587,  1588,
4774     1229,   790,  1691,  1692,  1589,  1229,  1978,  1694,   135,  3310,
4775     5214,   111,  5213,   113,  5217,  5272,  5218,  4255,  3739,  1979,
4776     5359,  2784,  5360,  3780,  5377,  5408,  5294,  5409,  5465,    84,
4777     1980,  3584,   108,  1590,  1593,  1185,  1695,  1981,  1700,  5412,
4778     1594,  5409,  1696,  1595,  2785,  1774,  5428,  1596,  3759,  1700,
4779     1229,  1597,  2240,  1651,  1598,  2108,   938,  2352,  3311,  1657,
4780     2108,  4183, -1757,  2241,   762,  5536,  1599,  2406,  1774,  1982,
4781     4940,  1747,  3123, -1415,  1693,  1729,  5429,  4940,  3759,  1697,
4782     1979,  1600,  4324,  2834,  2834,  2834,  2834,  1601,  1229,  1694,
4783     5542,  1980,  5409,  5583,  1698,  5584,  1699,  1602,  1981,  3483,
4784     5612,   763,  5613,  1730,  5623,  5466,  5624,  1300,  1718,  1719,
4785     1720,  1721,  1722,  1723,  1724,  1725,  3403,  3828,  1695,  1731,
4786     5642, -1415,  3820,  1733,  1696,  4986, -1415,  2785,  1603,  5467,
4787     1982,  1983,   935,  5666,   609,  5032,   938,   935,  5741,   776,
4788     4699,  1735,  5745,  2108,  5409, -2563,  1605,   936,  1740,  5747,
4789      776,  5409,  1739,  5748,   776,  5409,  1862,  5766,  1606,  5767,
4790      790,  1697,  1984,  1749,  2050, -1415,  1754,  5775,  2411,  5776,
4791     1755,  5795,  3491,  5409,  1607,  3157,  1698,  1756,  1699,  3390,
4792     1608,  1757,   790,   790,  1121,   938,  5796,  3492,  5409,  4674,
4793     1610,  1122,  1983,  1616,  1764,   936,  5507,  3177,  5468,  5799,
4794     1617,  5409,  5258,  2203,  5802,  1618,  5032,  1123,  1619,  4680,
4795     4681,  1812,  5830,  3493,  5409,  5200,  1700,  1124,  1125,  1126,
4796     5876,  1620,  5877,  1984,  1621,  3494,  1622,  1127,  5141,  1623,
4797     3724,  1626,   790,  1627,  2858,  2204,  1628,  1718,  1719,  1720,
4798     1721,  1722,  1723,  1724,  1725,  3495,  1629,  4515,  3920,  4519,
4799     3790,  4086,  1978,  4086,  1630,   172,   173,  1631,   936,   936,
4800      764,  4086,  1632,  1635,  3232,  1636,  1637,  1638,  4548, -2591,
4801     4515,  3238,  1639,  1640,  1641,  1350,  3496,  4086,  3497,  1642,
4802     1643,  1350,  1644,  1645,  1646,  1647,  1713,  4086,  1648,  1649,
4803     1650,  4560,  1652,  1653,  3791,  1654,  1350,  4568,  1700,  1655,
4804     1656,  1658,  1659,  1660,  1661,   776,  4086,  4515,  4515,  4576,
4805     4577,  5469,  1662,  1663,  1664,  2816,  1667,  1668,  1671, -2562,
4806     1672,  1673,  3792,   935,  2826,  1674,  1979,  1675,  3816,  2027,
4807      790,   790,   790,   790,  1676,  4593,   776,  1980,  1789,  1792,
4808     4584,  4115,  1677,  1678,  1981,  1701,  1702,  1703,  1734, -2588,
4809     3055,  5184,  1691,  1692, -2586,  3812,  3813,  3814,  3815, -2590,
4810     3817,  3818,  3017, -2585,  3018, -2589, -2583,  1793,  1128,  1809,
4811     1360, -2587,  3931,  1826,  3933,  3934,  1982,  2449,  2449,  1827,
4812     3939,  1714,  1129,  1828,  1829,  1849,  1850,  1855,  3947,  4328,
4813     1912,  1861,  1869,  3954,  1922,  1881,  1399,  1399,  1924,  1715,
4814     1928,  1934,  1935,   935,  1942,  1941,  1944,  3935,  3936,  1946,
4815     3938,  1950,  3940,  3941,  3942,  3943,  3944,  3945,  3946,  1964,
4816     3948,  1965,  3793,  3953,  1693,  1966,  1976,  3956,  1988,  5390,
4817      937,  1987,  1991,  2001,  2004,  4813,  1713,  3498,  1983,  1694,
4818     1350,  2014,  2015,  3416,  2030,  2036,  2039,  2041,  2045,  3499,
4819     2044,  2049,   935,  2061,  2070,  2087,  1716,  1717,  2093,  2097,
4820     2099,  2101,  2111,  2103,  2834,  2117,  2118,  2120,  1695,  1984,
4821     4163,  2121,  2122,  2143,  1696,  2152,  2165,  2167,  2168,  2169,
4822     2172,  1182,  2173,  1130,  2176,  2175,  2178,  1701,  1702,  1703,
4823     2185,  4919,  2195,  2186,  2202,  1691,  1692,  2213,  1701,  1702,
4824     1703,  2217,  2245,  2256,  3593,  2257,  3594,  2258,  2267,  4198,
4825     2271,  1697,  2275,  1187,  2276,  1188,  2296,  1189,  2328,  4311,
4826     1131,  2334,  2338,   790,  2348,  2359,  1698,  1190,  1699,  -816,
4827     2363,  1714,  4372,  2352,  1132,  2381,  2385,  2412,  5240,   790,
4828      790,   790,   790,  4213,  4226,   113,  2437,  2413,  2438,  1715,
4829     2439,  3500, -3035,  3501,  2446,  2447,  1691,  1692,  2455,  2466,
4830     4236,  4237,  2459,  2462,  2496,  2499,  2498,  1693,  5470,  2519,
4831     2534,  2535,  2536,  2537,  2539,  3614,  2541,  2540,   937,   937,
4832     4604, -2172,  1694,  2556,  2559,  2563,  2719,  -816,  2560,  4257,
4833     1528,   741,  5543,  4264,  2564,  2565,  5546,  2566,  2573,  2574,
4834     2583,  2584,  2012,  2585,  2586,  2587,  1716,  1717,  2588,  2590,
4835     3180,  1695,  2591,  1691,  1692,  2597,  2598,  1696,  2601,  2602,
4836     2606,  5305,  5306,   790,  5308,  3181,   938,  2782,  1693,   776,
4837      776,  4777,  4797,  2611,  2622,   609,   936,  2618,  5362,  3608,
4838     4788,  1691,  1692,  1694,  2642,  2658,  2644,  2645,  1700,   776,
4839      776,  2646,  2647,  4654,  1697,  2659,  4333,  2673,  2650,  2660,
4840     2668,  2672,  2675,  2676,  2682,  1701,  1702,  1703,  5598,  1698,
4841     2687,  1699,  1695,  2684, -2313,  5505,  2688,  2694,  1696, -2574,
4842     2717,  2740,  4112,  2732,  4113,  1693,  2743,  2744,  4225,  2746,
4843     2747,  4373,  2741,  3393,  5390,  2796,  2779,  2800,  2799,  -816,
4844     1694,  2804,  2808,  1362,  2814,  2811,  3502,  3627,  2817,  2824,
4845     2829,  2849,  2872,  1693,  2873,  1697,  2875,  2890,  4268,  5763,
4846     2895,  2892,  2834,  2893,  2904,  4269,  5643,  2905,  1694,  1695,
4847     1698,  2709,  1699,  2906,  2909,  1696,  2910,  2912,  5368,  2922,
4848      742,  4270,  1192,  3032,  2925,   689,  2929,  1701,  1702,  1703,
4849    -1550,  4271,  4272,  4273,  2932,  2942,  2943,  1695,  2947,  2955,
4850     2956,  4274,  3037,  1696,  4126,  2957,  4127,  2961,  2981,  2985,
4851     2984,  4913,  1697,  4460,   938,   938,  -816,  2994,  3004,  3016,
4852     2720,  3008,  3009,  3011,  1691,  1692,  3015,  1698,  3028,  1699,
4853     1725,  1700,  4444,  3043,  3050,  3052,  3059,  3066, -1727,  3071,
4854     1697,  1633,  1665,  1669,  5616,  3086,  3088,  4458,  3089,  3075,
4855     3103,  3095,  2783,  3104,  3503,  1698,  3114,  1699,  2107,  3110,
4856     1978,  3111,  3117,  3148,  3160,  3115,  3118,  3139,  3116,  3152,
4857     3163,  3186,  5435,  3164,  5436,  5437,  3119,  5561,  3185,  3214,
4858     3217,  3466,  3218,  3467,  3220,  3468,  4360,  4361,  4362,  3216,
4859     3221,  3246,  1700,  3253,  3257,  3470,  1693,  3271,  4487,  4086,
4860     3284,  3277,  4490,  3504,  3281,  4492,  3288,  4374,  3287,  3289,
4861     3290,  1694,  3292,  3293,  3744,  3294,  3348,  3345,  3355,  3351,
4862     3357,  3360,   790,  3361,  3362,  1350,  3505,  3363,  3364,  1350,
4863     3365,  3366,  3367,   935,  1979,  3368,  3285,  3286,  1691,  1692,
4864     1695,   936,  4275,  3369,  3370,  1980,  1696,  4919,  3371,  1700,
4865     5887,  3372,  1981,  3297,  3373,  3374,  4276,  3375,   936,  1528,
4866     3384,  3376,  5625,  3323,  3324,  3377,  3378,  3379,  3380,  3381,
4867     3382,  5512,  5513,  3383,  3408,  3385,  1229,  1700,  1193,  4480,
4868     4483,  3410,  4486,  1697,  1982,  3411,  3392,  3414,  3429,  2013,
4869     2080,  3423,  3433,  3471,   936,  3434,  3435,  3258,  1698,  3436,
4870     1699,  3431,   936,   936,   936,  3439,  3432,  3443,  4583,  3444,
4871     1693,  3445,  3451,  3476,  1718,  1719,  1720,  1721,  1722,  1723,
4872     1724,  1725,  3513,  3514,  3515,  1694,  3386,  3387,  3388,  3389,
4873     3526,  2108,  5616,  3054,  3527,  2012,  2012,  3536,  3546, -1766,
4874     3587,  3588,  4277,  3572,  3603,  3585,  1983,  3573,  3604,   937,
4875     3610,  3611,  3612,  3060,  1695,  5771,  3620,  4278,  3622,  3626,
4876     1696,    41,  3642,  3643,  3644,  3645,  3638,  3963,  3649,  3655,
4877     3656,  2481,  2480,  5712,  3663,  3668,  2866,  1984,  3693,  3698,
4878     1350,   935,   935,  3677,  3696,  5118,  3703,  3725,  5121,  5122,
4879     3726,  3704,  3728,  3732,  4279,  3733,  3741,  1697,  3743,  3748,
4880     3749,  4643,  3752,  3753,  3259, -2074,  3778,  3786,  4280,  3787,
4881     3472,  3996,  1698,  3831,  1699,  3918,  3832,  3833,  4652,  5289,
4882     1700,  3922,  4375,  3780,  3929,  3930,  3932,   937,  3961,  3965,
4883     4226,  2809,  3971,  3976,  3980,  3985,  3993,  1701,  1702,  1703,
4884     3984,  3986,  4068,  4198,  3998,  4071,  4072,  4075,  3634,  4671,
4885     4090,  4079,  4176,  4091,   790,   790,  2907,  4083,  4087,  4095,
4886     4678,  4098,  4099,  4100,  1718,  1719,  1720,  1721,  1722,  1723,
4887     1724,  1725,  4101,  4153,  5771,  4166,  1185,  1761,  4164,  4190,
4888     3828,  4177,  4181,  4202,  4182,  4192,  2352,  4199,  4203,  3466,
4889     4205,  3467,  4800,  3468,  5809,  5870,  4697,  4206,  1691,  1692,
4890     5196,  4209,  4210,  3470,  4212,  4638,  4211,  4217,   113,  5880,
4891     4218,  4231,  4232,  4235,  4258,  5870,  4249,  4254,  4255,  4256,
4892     4267,  5880,  4259,  4265,  4285,  4290,  4296,  4651,  4287,  4286,
4893     4376,  4309, -1854,   776,  1700, -1859,  4458,  4331,   776,  4336,
4894     4339,  4340,  1528,  4344,  4343,   938,  4353,  4371,  4836,  4358,
4895     4374,  4387,  4389,  4401,  4390,  4413,  1191,  1691,  1692,  4402,
4896     4399,  3466,  4421,  3467,  4418,  3468,  4423,  4424,  3261,  4904,
4897     1693,  4425,  5375,  4427,  4225,  3470,  4428,  2411,  4436,  4437,
4898     1701,  1702,  1703,  4438,   936,  1694,  4886,  4439,  4447,   936,
4899     4465,  4473,  4493,  4500,  4494,   790,  4497,  4139,  4509,  4140,
4900     4511,  4523,  4518,  4545,  4677,  4552,  3473,  4567,  4570,  4458,
4901     4580,  4581,  4592,  4596,  1695,  4599,  4600,  4607,  4608,  4794,
4902     1696,  4645,  3020,   938,  4655,  4171,  4697,  3766,  4657,  1693,
4903     4661,  4658,  4660,  4810,  2421,  4672,  4664,  4809,  4703,  2352,
4904     4673,  1701,  1702,  1703,  1694,   776,  4699,  4704,  4708,  2406,
4905     4831,  4827,  4698,  4705,  4720,  1774,  3858,  1697,  4145,  4732,
4906     4146,  4733,  -246,   790,  4697,  4740,  4736,  4706,  4849,  4756,
4907     4850,  4851,  1698,  1695,  1699,  2408,  4742,  4767,  4769,  1696,
4908     4768,  4779,  2013,  2013,  4697,  4781,  4799,  4803,  4804,  4873,
4909     4458,  4869,  4876,  4881,  4888,  4884,  4880,  4894,  1701,  1702,
4910     1703,  5496,   609,  4887,  4297,  4298,  4895,  4890,  4902,  4906,
4911     4903,  4934,  4908,  5321,  5852,  4185,  1697,  4186,  3472,  4916,
4912     4573,  4944,   113,  4959,  1350,  1350,  1701,  1702,  1703,  4947,
4913     4931,  1698,  4979,  1699,  4974,  4971,  4515,  4765,   937,  4987,
4914     4975,  4905,  3483,  4086,   111,  2908,   113,  4994,  4976,  4995,
4915     4977,  4982,  5002,  4086,  5004,  4983,   937,  4560,  5007,  4820,
4916     4822,  4824,  4568,  4996,   790,  5016,  4829,  4830,  5019,  5017,
4917      790,  5026,  4835,  5033,  5041,   936,  5042,  5034,  5047,  5043,
4918     4842,  5052,  5078,  5053,  4847,  5087,  5080,  5086,  5089,  5091,
4919     3472,  5096,  5597,  5097,  1700,  4861,  5098,  5099,  5107,  4951,
4920     4832,  4833,  5105,  5054,  5106,  5108,  5111,  5115,  5116,  5114,
4921     5131,  5132,   935,  5137,  5140,  5143,  4848,  5148,  5057,  1691,
4922     1692,  3916,  5185,  5189,  5187,  5206,  5207,  5209,  5210,  5220,
4923     5050,  5221,  5233,  5234,  5235,  5236,  5238,  5242,  5243,  5246,
4924     4879,  5271,  5249,  5262,  3799,  3800,  5274,  3802,  3804,  5273,
4925     5281,  5282,  5285,  1700,  5288,   936,  5286,  5292,  5294,  5290,
4926     5307,  5302,  5309,  5310,  5312,  5314,  5316,  5319,  5324,  1701,
4927     1702,  1703,  5340,  3469,  1691,  1692,  5345, -2703, -2702, -2706,
4928    -2710,  1691,  1692, -2711,  4782,  5363, -2713,  5365,  2919,  5391,
4929      935,  1693, -2715,  5393, -2716, -2717,  5373, -2722,  4198, -2723,
4930    -2724, -2728,  5348,  5352,   936,  5376,  1694,  1691,  1692,  5380,
4931     2352,  5385,  5386,  5396,  3473,  5392,   937,  4919,  5395,  1774,
4932     5405,  5426,  5453,  5406,  5454,  4460,  5438,  5411,  5413,  5695,
4933     5463,  4970,  5443,  5494,   938,  1695,  4264,  3962,  5457,  5498,
4934     5497,  1696,  5499,  5508,  5515,   790,  1693,  5524,  5525,  4458,
4935     3864,  5528,   938,  1693,  5545,  5554,  5556,   776,  5557,  5558,
4936     5582,  1694,  5559,  5567,  5732,  5569,  5570,  5588,  1694,  5594,
4937     5590,  5109,  5084,  5592,  5540,  5595,  5112,  5596,  1697,  1693,
4938     5600,  5601,  5602,  1701,  1702,  1703,  3473,  1691,  1692,  5608,
4939     1695,  5603,  5610,  1698,  1694,  1699,  1696,  1695,  5611,  5630,
4940     5626,  5620,  2920,  1696,  5633,  5638,  5641,  5658,  5653,  5110,
4941     5663,  5667,  5668,  5669,  5672,  1691,  1692,  5686,  5577,  5687,
4942     5678,  5714,  5699,  1695,  5694,  5120,  5725,  5736,  5737,  1696,
4943     4458,  4697,  4458,  1697,   790,  4458,  5740,  4697,  5749,   937,
4944     1697,  5738,  4458,  4458,  5744,  3854,  5577,  4697,  1698,  3865,
4945     1699,  5805,  5806,  1691,  1692,  1698,  5757,  1699,  5790,  1693,
4946     5807,  5818,  5794,  5832,  5821,  5833,  1697,  5834,  5844,   937,
4947     5842,  5839,  5849,  5851,  1694,  5853,  5857,  5856,  5883,  5871,
4948     3652,  1698,  4458,  1699,  1530,  5197,  4697,  1693,  4697,  3184,
4949     3955,  5198,  5199,  3736,  5541,  4351,  5291,  1845,  5551,  5660,
4950     2040,  5792,  1694,  1695,  1331,  4728,  4737,  5149,  5540,  1696,
4951      776,  5232,   938,  5183,  5416,  1700,  5215,  5085,  5371,  5425,
4952     5378,  5509,  4968,  4074,  3195,  1693,  4282,  5661,  4499,  4914,
4953     5192,  1695,  3359,  1436,  4585,  2883,  2429,  1696,  1691,  1692,
4954     1694,  2813,  2886,  2884,  2731,  2885,  1697,  5415,  5414,  5284,
4955     4450,  3899,  4663,   778,  2084,   113,  5208,  5139,  5261,  5025,
4956     4668,  1698,  3064,  1699,  5230,  1691,  1692,  5577,  5698,  1695,
4957     1700,  5397,  5765,  5266,  1697,  1696,  5841,  1700,  5825,  5843,
4958     5640,  3469,  4792,  3224,  4448,  5549,  5777,  4868,  5135,  1698,
4959     5280,  1699,  5113,  5884,  4455,  5813,  5677,  5689,   937,  3263,
4960     5599,   935,  4626,  1700,  5231,  4541,  4579,  5691,  5084,  5696,
4961     1693,  4926,  1697,  5333,  4932,  5142,   932,  4168,  1115,   935,
4962     5881,  4648,   937,  4650,  5828,  1694,   748,  1698,   749,  1699,
4963     4646,  5800,   932,  5801,  5781,   938,  5446,  1693,  5734,  1183,
4964     1238,  5731,  5544,  1701,  1702,  1703,  1115,  4480,  5313,  4483,
4965     4942,  4486,  1694,  3469,  1695,  5315,  4289,  4452,  4866,  1859,
4966     1696,  2056,  2921,  5460,  1115,   938,  3720,  5265,  4709,  5186,
4967     3354,  4643,  3719,  4721,  2619,  5693,  5332,  2781,  3176,  3074,
4968     4697,  1695,  3440,  1700,  3995,   777,  4510,  1696,  3684,  5277,
4969     5277,  5279,  2022,  3591,  4458,  1358,  1977,  1697,  2021,  1759,
4970     1691,  1692,  1701,  1702,  1703,  4659,  5084,  3777,  3646,  4495,
4971     3549,  1700,  1698,  2346,  1699,  3547,  2409,  4970,  4194,  2255,
4972     1969,  2923,  5304,  4689,  1697,  2192,  3261,  2667,  3261,  2664,
4973     5664,  5095,  5044,  5665,  3273,  1970,  1691,  1692,  1971,  1698,
4974     3775,  1699,  1972,  1974,  4189,   936,  2657,  2201,  5318,  1700,
4975     4760,  4759,  4188,  2678,  5257,  5323,  5619,  5338,  4458,  4458,
4976     5040,  5248,  4458,  5268,  3776,  2029,  4458,  5247,  5335,  5417,
4977     1376,  2016,  1693,  4763,  2352,  3265,  5260,   776,   759,   935,
4978     4818,  3406,  1115,  4697,   750,  2145,  2442,  1694,  3637,  3438,
4979     5762,  5035,  3810,  5540,   938,  5049,   937,  4688,  4400,  1448,
4980     4685,  4403,  1242,  1454,  4409,  4410,  4411,  4412,  1693,  4414,
4981     4415,  4416,  4417,  2807,  4419,  4420,  1695,  4422,   938,  3154,
4982     2525,  4426,  1696,  1694,  1234,  4429,  4430,  4431,  4432,  3678,
4983     4434,  4435,  3155,  1237,  1700,  2023,  4440,  4441,   774,  3189,
4984     4445,  4446,  5270,  5339,   776,  2150,  4514,  5850,  2609,  5840,
4985     5311,  1115,  1695,  5100,  5882,  4951,  5885,  5372,  1696,  1697,
4986     1612,  1700,   932,  4669,   932,   932,   932,  3589,  4682,  3167,
4987     3667,   932,  1195,   932,  1698,  1196,  1699,  3135,  3031,  3662,
4988     3661,  1154,  2626,  2869,  4359,  2454,  1753,  2142,  3344,  4766,
4989     3981,  3639,  3727,   936,   936,  1697,  4461,  5364,  1281,  1927,
4990      768,   752,   935,   753,  1115,   754,     0,  5298,  5427,  1115,
4991     1698,  5277,  1699,     0,     0,  1691,  1692,     0,     0,     0,
4992        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4993        0,  5084,   935,   113,     0,     0,     0,     0,     0,  1115,
4994        0,     0,     0,     0,  5478,     0,     0,     0,  5478,  1115,
4995        0,     0,     0,  4458,     0,     0,     0,     0,  4458,     0,
4996        0,     0,  1691,  1692,  1701,  1702,  1703,     0,     0,  5456,
4997        0,  5230,     0,     0,     0,     0,     0,   776,     0,     0,
4998        0,     0,  5462,  2933,     0,     0,     0,  1693,     0,  5493,
4999        0,     0,   938,     0,  1691,  1692,  1700,  5500,  5504,     0,
5000        0,     0,  1694,  2406,     0,     0,     0,     0,     0,     0,
5001        0,  5231,     0,     0,     0,     0,     0,     0,  4460,  1701,
5002     1702,  1703,     0,     0,     0,     0,  1701,  1702,  1703,     0,
5003        0,  1695,  1700,  5523,  1693,     0,  2913,  1696,  1115,  1115,
5004     1115,  1115,     0,     0,     0,  2935,  5277,     0,     0,  1694,
5005     5547,  1115,  1701,  1702,  1703,     0,     0,  1191,     0,     0,
5006        0,   935,     0,  5555,     0,     0,  1693,     0,     0,  5478,
5007        0,  2939,     0,     0,  1697,     0,     0,     0,  1695,     0,
5008     5563,  1694,     0,     0,  1696,   935,     0,  5478,     0,  1698,
5009        0,  1699,  5058,     0,  1691,  1692,     0,     0,     0,     0,
5010        0,     0,     0,  1691,  1692,   932,     0,     0,     0,     0,
5011     1695,     0,     0,     0,     0,     0,  1696,   937,   790,     0,
5012        0,  1697,     0,     0,  4970,     0,     0,     0,     0,     0,
5013        0,     0,  1701,  1702,  1703,     0,  1698,     0,  1699,     0,
5014        0,     0,     0,  2352,     0,  5618,     0,     0,   734,     0,
5015        0,  2940,     0,  1697,     0,     0,  1691,  1692,     0,  5713,
5016     1701,  1702,  1703,     0,     0,     0,  1693,     0,  1698,     0,
5017     1699,     0,     0,  2144,     0,  1693,     0,     0,     0,  2941,
5018        0,  1694,     0,     0,     0,     0,     0,   776,     0,     0,
5019     1694,  5662,     0,     0,     0,  4264,  4264,     0,  1701,  1702,
5020     1703,     0,     0,  5478,  5277,     0,  5277,  5277,     0,     0,
5021     1695,  1700,     0,     0,     0,  5791,  1696,  2958,  1687,  1695,
5022        0,  5679,     0,  1685,  1115,  1696,     0,  1903,  1693,     0,
5023        0,     0,     0,     0,  5685,     0,     0,     0,     0,  3419,
5024        0,     0,     0,  1694,     0,  5150,     0,     0,     0,  5591,
5025     5504,  1691,  1692,  1697,     0,     0,     0,     0,  1700,   935,
5026        0,  5523,  1697,     0,     0,     0,     0,     0,  1698,     0,
5027     1699,     0,  1695,     0,   790,     0,     0,  1698,  1696,  1699,
5028        0,     0,     0,  1701,  1702,  1703,     0,     0,  5478,     0,
5029     1700,     0,     0,     0,     0,  5735,  5824,     0,     0,     0,
5030     5739,     0,  2966,     0,     0,  5277,  5277,     0,     0,  5277,
5031     1701,  1702,  1703,   938,     0,  1697,     0,     0,     0,     0,
5032        0,     0,     0,  1693,   936,     0,     0,     0,     0,  2968,
5033     1698,  2352,  1699,     0,     0,     0,     0,     0,  1694,     0,
5034        0,     0,     0,  4807,     0,     0,     0,     0,     0,     0,
5035     1691,  1692,     0,     0,   790,     0,  5478,  5478,     0,     0,
5036        0,     0,     0,  5886,     0,  4834,     0,  1695,     0,  5789,
5037     1691,  1692,     0,  1696,     0,  5793,     0,     0,  5684,     0,
5038        0,  5277,     0,  5873,     0,  3471,     0,     0,     0,  5875,
5039     1700,     0,     0,  1115,     0,     0,  1115,   932,     0,  1700,
5040        0,     0,   936,     0,     0,     0,     0,     0,  5478,     0,
5041     1697,   790,  5707,  5708,     0,     0,     0,     0,     0,     0,
5042        0,     0,  1693,     0,     0,  1698,  5726,  1699,     0,     0,
5043        0,  5827,     0,     0,     0,     0,     0,  1694,     0,     0,
5044        0,     0,  1693,     0,     0,  1701,  1702,  1703,     0,     0,
5045        0,     0,  1700,     0,     0,     0,     0,  1694,     0,     0,
5046        0,     0,     0,     0,  2971,     0,  1695,  1115,     0,  1115,
5047        0,     0,  1696,     0,     0,     0,     0,  5783,     0,     0,
5048        0,  1701,  1702,  1703,     0,     0,  1695,  5772,     0,     0,
5049     5773,     0,  1696,     0,  2352,  1115,     0,     0,   790,     0,
5050     2972,     0,     0,     0,   790,     0,  1115,  1115,  2352,  1697,
5051        0,     0,  1115,  5788,  2352,     0,  1115,  1115,  1115,     0,
5052     2352,     0,     0,     0,  1698,     0,  1699,  1115,  1115,  1697,
5053        0,     0,     0,  1115,     0,  1115,  1115,  1115,  1115,  1115,
5054        0,  1115,     0,     0,  1698,     0,  1699,  1700,     0,     0,
5055        0,     0,  1115,     0,  1115,     0,     0,  1115,  1115,     0,
5056     1115,  1115,  1115,     0,  1115,  1115,  1115,     0,     0,     0,
5057        0,  1115,     0,     0,  1115,     0,     0,     0,     0,  5366,
5058      935,     0,  1115,  1115,     0,  1115,  1115,  1115,     0,     0,
5059     1115,  1115,  1115,  1115,  1115,  1115,  1115,     0,  1115,  1115,
5060     1115,  1115,  1115,  1115,     0,  1115,  1115,     0,  1115,  1115,
5061     1115,  1115,  1115,  1115,  1115,     0,     0,  1115,  1115,  1115,
5062     1115,     0,  1115,  1115,  1115,     0,  1115,     0,  1115,     0,
5063     1115,     0,     0,     0,  1115,  1115,  1115,     0,     0,  1115,
5064     1115,  1115,  1115,  1115,     0,  1115,  1700,     0,     0,     0,
5065        0,     0,  1115,     0,     0,     0,     0,  1115,     0,     0,
5066     1701,  1702,  1703,     0,  1115,     0,  1700,     0,  1115,  1115,
5067     1115,  1115,     0,  1115,  1115,     0,     0,  1115,  1115,  1115,
5068     1115,  1115,  1115,  1115,  1115,  1115,  1115,  1115,  1115,  1115,
5069        0,     0,  1115,  3471,     0,  1691,  1692,     0,     0,     0,
5070        0,     0,     0,     0,  1691,  1692,     0,  1701,  1702,  1703,
5071        0,     0,  5458,   936,     0,     0,     0,     0,     0,  3846,
5072        0,  3847,  3848,     0,     0,     0,  2973,     0,     0,     0,
5073        0,   936,     0,     0,     0,     0,     0,  1115,     0,  1701,
5074     1702,  1703,  1115,     0,     0,  3849,     0,  3850,     0,     0,
5075        0,     0,  1115,  3851,     0,     0,     0,     0,  2974,     0,
5076        0,     0,     0,     0,     0,  3471,     0,  1693,     0,     0,
5077        0,     0,     0,     0,     0,  2030,  1693,     0,     0,     0,
5078        0,     0,  1694,     0,  2154,     0,     0,  3852,     0,     0,
5079        0,  1694,     0,     0, -1166,     0,     0,     0,     0,     0,
5080        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5081        0,  1695,  1691,  1692,     0, -1941,     0,  1696,     0,  1115,
5082     1695,     0,     0,   172,   173,     0,  1696,     0,  3853,     0,
5083        0,     0,     0,     0,     0,     0,     0,     0,     0,  1701,
5084     1702,  1703,     0,     0,     0,  1115,     0,  1115,  1701,  1702,
5085     1703,     0,     0, -1941,  1697,     0, -1941,     0,  2977,  3854,
5086        0,     0,     0,  1697,     0, -1941,     0,  2978,     0,  1698,
5087        0,  1699, -1941,     0,     0,     0, -1941,     0,  1698,     0,
5088     1699,  1115,     0,     0,  1693,     0, -1941,  1691,  1692, -1941,
5089        0,   936,     0, -1941,  3855, -1941,     0,     0,  3856,  1694,
5090    -1941,  1701,  1702,  1703,     0,     0,  3857, -1941,     0,  3858,
5091        0,     0,     0, -1941,     0,     0,     0,     0, -1941,     0,
5092     2979,     0,  5659,     0,     0,     0,     0,     0,  1695,     0,
5093        0,     0,  3859,     0,  1696,     0,     0,     0,     0, -1941,
5094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5095        0,     0, -1941,     0,     0,     0,     0, -1941,     0,  1693,
5096        0,     0,     0,     0,  1115,     0,     0,     0,  3860,  3861,
5097     3862,  1697,     0,     0,  1694,     0,     0, -1941,     0,     0,
5098        0,     0,     0,     0,     0,     0,  1698,     0,  1699,     0,
5099        0,  1700,     0,  3863,     0,     0,  1701,  1702,  1703,     0,
5100     1700, -1941,     0,  1695,     0,     0,     0,     0,     0,  1696,
5101    -1941,  1691,  1692,     0,   936,  2997,     0,     0,  3864,  1691,
5102     1692,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5103        0,     0, -1941,   932,     0,     0,     0,     0,     0,  3865,
5104        0,     0,     0,     0,   936,     0,  1697,  3866,     0,  3867,
5105     1691,  1692, -1941,     0,     0,     0,     0,     0, -1941, -1941,
5106        0,  1698,     0,  1699,  1691,  1692,     0,     0,  3868,     0,
5107        0,     0, -1941,     0, -1941,  3869,     0, -1941,     0,     0,
5108        0,   932,     0,  1693,  1691,  1692,     0,  3870,     0,     0,
5109        0,  1693,     0,     0,  3871,  1701,  1702,  1703,  1694,     0,
5110        0,     0,     0,     0,     0,     0,  1694,     0,  1700,  3872,
5111     1115,     0,     0,     0,  3002,  1701,  1702,  1703,     0,  3873,
5112     2850,     0,  1693,  3874,  3875,     0,     0,  1695,  1115,     0,
5113     3876,     0,  2930,  1696,  3877,  1695,  1693,  1694,     0,     0,
5114        0,  1696,  3878,     0,   932,   932,  1115,  1691,  1692,  1115,
5115        0,  1694,     0,     0,     0,     0,  1693,  1115,  1115,     0,
5116        0,     0,  3879,     0,     0,     0,  1695,     0,     0,     0,
5117     1697,  1694,  1696,   936,     0,     0,     0,     0,  1697,     0,
5118     1695,     0,     0,  1700,     0,  1698,  1696,  1699,  3880,     0,
5119        0,     0,  3881,  1698,     0,  1699,     0,   936,     0,     0,
5120     1695,     0,  3882,     0,     0,     0,  1696,     0,     0,  1697,
5121        0,  1691,  1692,     0,     0,     0,     0,     0,     0,  1693,
5122        0, -1941,     0,  1697,  1698,     0,  1699,     0,     0,     0,
5123        0,     0,     0,     0,  1694,     0,     0,     0,  1698,  3883,
5124     1699,     0,     0,  1697,     0,     0,  1115,  1115,  1115,     0,
5125        0,     0,  3884,     0,  3885,     0,     0,     0,  1698,     0,
5126     1699,     0,     0,  1695,     0,     0,     0,     0,     0,  1696,
5127        0,     0,     0,     0,     0,     0,     0,  5250,     0,     0,
5128      941,     0,     0,  1693,     0,     0,     0,  1691,  1692,     0,
5129        0,     0,     0,  3886,     0,     0,     0,     0,  1694,  3887,
5130        0,     0,     0,     0,     0,     0,  1697,  1700,     0,     0,
5131     1691,  1692,     0,     0,     0,  1700,     0,     0,     0,   958,
5132        0,  1698,     0,  1699,  1115,     0,  3888,  1695,     0,     0,
5133        0,     0,     0,  1696,     0,     0,     0,  3889,  3890,  3891,
5134        0,     0,     0,     0,     0,  1115,  1700,     0,   963,  1115,
5135     1115,   965,  1115,  1115,     0,     0,     0,     0,  3892,  1693,
5136     1700,  1115,     0,  1115,     0,  3893,   969,   970,     0,     0,
5137     1697,   936,     0,     0,  1694,     0,     0,     0,     0,     0,
5138     1700,     0,  1693,     0,     0,  1698,     0,  1699,     0,     0,
5139        0,  1115,     0,     0,     0,     0,  3894,  1694,     0,     0,
5140        0,     0,     0,  1695,     0,  1115,     0,     0,     0,  1696,
5141      977,  3895,  3896,  1691,  1692,     0,     0,     0,     0,     0,
5142        0,     0,  1115,     0,  3897,  1115,  1695,  3898,     0,   983,
5143        0,     0,  1696,     0,     0,     0,     0,   988,   989,  1115,
5144     1701,  1702,  1703,  1700,  1691,  1692,  1697,     0,     0,  1701,
5145     1702,  1703,     0,  3122,  1115,     0,     0,     0,     0,  3005,
5146        0,  1698,     0,  1699,  1691,  1692,     0,     0,  3012,  1697,
5147        0,     0,     0,     0,  5631,  5632,  1115,  5634,  5635,  5636,
5148     5637,     0,  1691,  1692,  1698,  1693,  1699,     0,     0,     0,
5149        0, -1166,     0,     0,     0,  1691,  1692,     0,     0,     0,
5150     1694,     0,     0,     0,     0,     0,     0,  1700,     0,  1691,
5151     1692,     0,     0,     0, -1941,     0,  1693,  1115,     0,     0,
5152     1691,  1692,   932,     0,     0,     0,     0,  2155,  1007,  1695,
5153        0,  1694,     0,     0,     0,  1696,  1693,  1009,  1010,  1011,
5154        0,     0,     0,     0, -1941,     0, -1941,     0,     0, -1941,
5155    -1941,  1694,     0,     0,  1693,  1903,     0,  1701,  1702,  1703,
5156     1695,     0,     0,     0,     0,     0,  1696,  1693,     0,  1694,
5157        0,     0,  1697,     0,  5706,     0,  3023,  5709,     0,     0,
5158     1695,  1693,  1694,  1700,     0,  5717,  1696,  1698,     0,  1699,
5159     5727,     0,  1693,     0,     0,     0,  1694,     0,  1695,     0,
5160     1691,  1692,     0,  1697,  1696,     0,  1700,  1694,     0,     0,
5161        0,  1695,     0,     0,     0,     0,     0,  1696,  1698,     0,
5162     1699,     0,     0,  1697,     0,  1695,     0,  1691,  1692,     0,
5163        0,  1696,  1701,  1702,  1703,     0,  1695,     0,  1698,  1115,
5164     1699,  1697,  1696,     0,     0,     0,     0,     0,     0,     0,
5165        0,  3487,  5251,  1115,  1697,     0,  1698,     0,  1699,     0,
5166     5252,     0,     0,     0,  2222,  2223,  2224,  2225,  1697,  1698,
5167        0,  1699,  1693,     0,     0,     0,     0,     0,     0,  1697,
5168        0,     0,     0,  1698,     0,  1699,     0,  1694,     0,     0,
5169        0,     0,   936,     0,  1698,     0,  1699,  1691,  1692,  1693,
5170        0,  1691,  1692,     0,     0,     0,     0,     0,  1115,  1700,
5171        0,     0,     0,     0,  1694,     0,  1695,  2226,  2227,  2228,
5172        0,     0,  1696,     0,     0,     0,     0,     0,     0,     0,
5173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5174     1700,     0,     0,  1695,     0,     0,     0,     0,     0,  1696,
5175        0,     0,     0,     0,     0,     0,  1701,  1702,  1703,  1697,
5176     1700,     0,     0,     0,  1701,  1702,  1703,     0,     0,  1693,
5177        0,  2229,  2230,  1693,  1698,  4110,  1699,     0,  1700,     0,
5178        0,     0,     0,  4111,  1694,     0,  1697,   932,  1694,     0,
5179        0,  1700,     0,     0,     0,  1701,  1702,  1703,     0,     0,
5180        0,  1698,     0,  1699,   932,  1700,     0,     0,     0,  1701,
5181     1702,  1703,     0,  1695,  4122,     0,  1700,  1695,     0,  1696,
5182        0,     0,     0,  1696,     0,     0,     0,     0,  4142,  1701,
5183     1702,  1703,     0,     0,     0,     0,     0,     0,     0,  3464,
5184      932,     0,     0,  2231,     0,     0,  2934,     0,   932,   932,
5185      932,     0,     0,     0,     0,  1115,  1697,     0,  1115,     0,
5186     1697,     0,     0,     0,     0,     0,     0,  1115,     0,     0,
5187        0,  1698,     0,  1699,     0,  1698,  1115,  1699,  1115,     0,
5188     1115,     0,  1115,  1115,  1115,  1115,  1115,  1115,     0,  1115,
5189        0,     0,  1701,  1702,  1703,     0,  1700,  1115,     0,  1115,
5190        0,     0,  1115,  1115,  1115,  1115,     0,     0,  1115,  1115,
5191        0,  4159,  1115,     0,  1115,     0,  1115,  2232,  1115,  1691,
5192     1692,     0,  1115,  1700,     0,     0,     0,  1691,  1692,     0,
5193     1115,     0,  1115,     0,  1115,  1115,  1115,  1115,  1115,     0,
5194        0,  1115,  1115,  1115,     0,  1115,     0,     0,  1115,     0,
5195        0,     0,     0,     0,     0,     0,  1701,  1702,  1703,     0,
5196        0,  1115,     0,     0,     0,     0,  1115,  5253,     0,  1115,
5197     5254,  1115,  1115,  1115,     0,  4160,  1115,     0,     0,  5255,
5198        0,     0,  1115,     0,     0,     0,     0,  1115,     0,     0,
5199        0,  1693,     0,  1700,     0,  3122,  1115,  1700,     0,  1693,
5200        0,     0,  1115,     0,  1115,     0,  1694,  1115,     0,     0,
5201     2233,     0,     0,     0,  1694,     0,     0,  1115,     0,  1115,
5202        0,     0,     0,     0,  1115,     0,     0,     0,     0,     0,
5203        0,     0,  1701,  1702,  1703,  1695,     0,     0,     0,     0,
5204        0,  1696,     0,  1695,     0,     0,  1691,  1692,     0,  1696,
5205        0,  4992,     0,     0,     0,  1701,  1702,  1703,     0,     0,
5206        0,     0,     0,     0,     0,     1,     2,     0,     0,  1115,
5207        0,     0,  2936,     0,     0,     0,     0,     0,  1697,     0,
5208     2234,     0,     0,     0,     0,     3,  1697,     4,     0,     5,
5209        0,     6,     0,  1698,     0,  1699,     0,     0,  1115,     7,
5210        0,  1698,  1183,  1699,     0,     0,     0,     0,     0,     0,
5211        0,     0,     0,     0,     0,     0,     0,     0,  1693,     0,
5212        0,     8,     0,     9,    10,     0,     0,     0,     0,  1115,
5213      932,    11,     0,  1694,     0,   932,     0,     0,    12,     0,
5214        0,     0,     0,     0,     0,  2235,     0,  2236,     0,  1115,
5215       13,     0,  2237,     0,     0,     0,    14,     0,  1701,  1702,
5216     1703,     0,  1695,     0,     0,     0,     0,     0,  1696,    15,
5217        0,     0,     0,     0,     0,  2937,     0,    16,     0,     0,
5218        0,     0,     0,     0,     0,     0,     0,     0,    17,  1701,
5219     1702,  1703,     0,     0,     0,     0,     0,     0,     0,     0,
5220        0,    18,     0,    19,     0,  1697,  2959,     0,    20,  1701,
5221     1702,  1703,     0,  1115,     0,  1700,     0,  2238,     0,     0,
5222     1698,     0,  1699,  1700,     0,     0,  2962,  1701,  1702,  1703,
5223        0,     0,     0,     0,  1115,     0,     0,     0,    21,     0,
5224     1701,  1702,  1703,     0,  2964,     0,     0,     0,     0,     0,
5225        0,     0,    22,    23,  1701,  1702,  1703,  2967,     0,     0,
5226     2239,  3797,     0,    24,    25,  1701,  1702,  1703,     0,     0,
5227        0,  2975,     0,     0,     0,    26,    27,    28,    29,     0,
5228       30,     0,  2976,     0,     0,    31,     0,  3797,  3797,     0,
5229        0,    32,     0,     0,     0,    33,     0,  1691,  1692,    34,
5230       35,     0,     0,     0,     0,     0,  1691,  1692,     0,     0,
5231        0,  3915,     0,     0,     0,     0,     0,     0,     0,     0,
5232        0,   932,  1115,     0,     0,     0,     0,     0,     0,     0,
5233        0,     0,     0,     0,     0,     0,     0,     0,     0,    36,
5234        0,    37,  1700,    38,     0,  1701,  1702,  1703,    39,     0,
5235     2240,     0,  3797,  3797,     0,     0,     0,     0,    40,    41,
5236        0,  2241,  2982,     0,     0,     0,    42,     0,     0,  1693,
5237        0,     0,  1701,  1702,  1703,     0,     0,     0,  1693,     0,
5238        0,     0,     0,     0,  1694,     0,     0,     0,     0,  2983,
5239        0,     0,     0,  1694,     0,    43,    44,     0,    45,     0,
5240        0,   932,     0,     0,     0,    46,     0,     0,     0,  1691,
5241     1692,     0,    47,  1695,     0,     0,     0,     0,     0,  1696,
5242        0,     0,  1695,     0,     0,     0,     0,     0,  1696,     0,
5243        0,     0,     0,    48,     0,     0,     0,     0,     0,     0,
5244        0,  1115,  1701,  1702,  1703,     0,  1701,  1702,  1703,     0,
5245      932,  1115,     0,     0,  1115,     0,  1697,     0,    49,  2987,
5246     1691,  1692,     0,  2988,     0,  1697,     0,     0,     0,     0,
5247       50,  1698,     0,  1699,     0,     0,     0,     0,  1115,  1115,
5248     1698,  1693,  1699,     0,     0,     0,     0,     0,     0,    51,
5249        0,     0,     0,     0,  1691,  1692,  1694,     0,     0,     0,
5250        0,     0,  1115,    52,  1115,     0,  1115,     0,  1115,     0,
5251        0,     0,     0,     0,     0,     0,    53,     0,     0,    54,
5252        0,     0,    55,     0,     0,  1695,     0,     0,     0,     0,
5253     1115,  1696,  1693,     0,     0,     0,     0,    56,     0,     1,
5254        2,     0,     0,     0,     0,     0,     0,  1694,     0,     0,
5255        0,  1115,  1115,     0,     0,     0,     0,     0,  1115,     3,
5256     1115,     4,  1115,     5,     0,     6,  1693,  1115,  1697,     0,
5257        0,     0,     0,     7,     0,     0,  1695,     0,     0,     0,
5258     1115,  1694,  1696,  1698,     0,  1699,     0,     0,     0,     0,
5259        0,     0,     0,  1700,     0,     8,     0,     9,    10,     0,
5260        0,     0,  1700,     0,     0,    11,     0,     0,     0,     0,
5261     1695,     0,     0,     0,  1115,  1115,  1696,     0,     0,  1697,
5262        0,     0,     0,     0,    13,     0,     0,     0,     0,  1115,
5263       14,     0,     0,     0,  1698,     0,  1699,     0,     0,     0,
5264        0,     0,     0,    15,     0,     0,     0,     0,     0,     0,
5265     1115,    16,     0,  1697,    57,     0,     0,     0,     0,     0,
5266     1691,  1692,    17,     0,  1701,  1702,  1703,     0,  1698,     0,
5267     1699,     0,  1701,  1702,  1703,    18,     0,    19,     0,     0,
5268        0,  2989,    20,    58,     0,     0,    59,     0,     0,  2995,
5269        0,     0,     0,     0,     0,     0,    60,     0,  3915,  3915,
5270        0,     0,     0,     0,    61,  1700,     0,     0,     0,     0,
5271        0,     0,    21,     0,     0,     0,    62,     0,     0,     0,
5272     1115,     0,  1691,  1692,     0,     0,    22,    23,     0,     0,
5273     1115,     0,  1693,     0,     0,     0,    63,    24,    25,    64,
5274        0,     0,  1115,     0,  1115,     0,     0,  1694,     0,    26,
5275       27,    28,    29,     0,    30,     0,  1700,     0,     0,    31,
5276        0,     0,     0,     0,     0,    32,     0,     0,     0,    33,
5277        0,    65,     0,    34,    35,     0,  1695,  1691,  1692,     0,
5278        0,    66,  1696,     0,     0,     0,     0,     0,     0,     0,
5279     1700,  1701,  1702,  1703,  1693,     0,  1691,  1692,     0,     0,
5280        0,     0,     0,     0,     0,     0,    67,     0,  2996,  1694,
5281        0,     0,     0,    36,     0,    37,     0,    38,     0,  1697,
5282        0,     0,    39,     0,     0,     0,     0,     0,    68,     0,
5283     1691,  1692,    40,    41,  1698,     0,  1699,     0,  1695,     0,
5284       42,     0,     0,     0,  1696,     0,     0,     0,     0,  1693,
5285        0,  1691,  1692,     0,     0,     0,     0,     0,     0,     0,
5286        0,     0,  1691,  1692,  1694,  3915,     0,     0,  1693,    43,
5287       44,     0,    45,     0,     0,     0,     0,     0,     0,    46,
5288        0,  1697,     0,  1694,     0,     0,    47,     0,     0,     0,
5289        0,   932,     0,  1695,     0,     0,  1698,     0,  1699,  1696,
5290        0,     0,  1693,     0,     0,     0,     0,    48,  1691,  1692,
5291        0,     0,  1695,     0,     0,     0,     0,  1694,  1696,     0,
5292        0,     0,     0,  1693,     0,     0,  3797,     0,     0,     0,
5293        0,     0,    49,     0,  1693,     0,  1697,     0,  1694,     0,
5294        0,     0,     0,  1115,    50,     0,  1695,     0,     0,  1694,
5295        0,  1698,  1696,  1699,     0,  1697,  1700,     0,     0,     0,
5296        0,     0,     0,    51,     0,     0,     0,  1695,     0,     0,
5297     1698,     0,  1699,  1696,     0,     0,     0,    52,  1695,     0,
5298     1693,     0,     0,     0,  1696,     0,     0,     0,     0,  1697,
5299       53,     0,     0,    54,     0,  1694,    55,     0,     0,     0,
5300        0,     0,     0,     0,  1698,     0,  1699,     0,     0,     0,
5301     1697,    56,     0,     0,     0,     0,     0,     0,  1700,     0,
5302        0,  1697,     0,     0,  1695,  1698,     0,  1699,     0,     0,
5303     1696,     0,     0,     0,     0,     0,  1698,     0,  1699,   932,
5304      932,     0,  1701,  1702,  1703,     0,     0,     0,     0,     0,
5305        0,  1701,  1702,  1703,     0,     0,     0,     0,     0,  3000,
5306        0,     1,     2,     0,     0,     0,     0,  1697,  3001,     0,
5307        0,     0,     0,  1700,  1115,  1115,     0,  1115,     0,     0,
5308        0,     3,  1698,     0,  1699,     5,  1115,     6,  1115,     0,
5309        0,  1115,  1700,     0,     0,     7,     0,     0,     0,     0,
5310        0,     0,     0,     0,  1115,     0,  1115,     0,  1115,     0,
5311     1115,     0,     0,     0,     0,     0,     0,     8,     0,     9,
5312       10,     0,     0,  1115,  1115,     0,  1700,    11,    57,     0,
5313        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5314        0,     0,  1691,  1692,     0,  1691,  1692,  1700,     0,     0,
5315     1115,     0,    14,     0,  1701,  1702,  1703,    58,  1700,     0,
5316       59,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5317       60,  3003,     0,    16,     0,     0,     0,     0,    61,     0,
5318        0,     0,     0,     0,    17,     0,     0,     0,     0,     0,
5319       62,     0,     0,     0,     0,     0,     0,    18,     0,    19,
5320        0,  1691,  1692,  1183,  1700,  1701,  1702,  1703,     0,     0,
5321       63,     0,     0,    64,  1693,  1115,     0,  1693,     0,  1115,
5322        0,     0,  3010,     0,     0,     0,     0,     0,     0,  1694,
5323        0,     0,  1694,     0,    21,     0,     0,     0,     0,  1701,
5324     1702,  1703,     0,     0,     0,    65,     0,     0,    22,    23,
5325        0,     0,     0,     0,     0,    66,  3024,     0,  1695,    24,
5326       25,  1695,     0,     0,  1696,     0,     0,  1696,     0,     0,
5327     3915,    26,    27,  1693,    29,     0,    30,  1691,  1692,     0,
5328       67,    31,     0,     0,     0,     0,     0,    32,  1694,     0,
5329        0,    33,     0,     0,     0,    34,    35,     0,  1691,  1692,
5330        0,  1697,    68,     0,  1697,     0,     0,     0,     0,     0,
5331        0,     0,     0,     0,     0,     0,  1698,  1695,  1699,  1698,
5332        0,  1699,     0,  1696,  1691,  1692,     0,     0,     0,     0,
5333        0,     0,     0,     0,     0,    36,     0,    37,     0,    38,
5334        0,     0,     0,     0,    39,     0,     0,     0,     0,  1693,
5335        0,     0,     0,     0,     0,    41,     0,     0,     0,     0,
5336     1697,     0,    42,     0,  1694,     0,     0,     0,     0,     0,
5337     1693,  1691,  1692,     0,     0,  1698,     0,  1699,     0,     0,
5338        0,     0,     0,     0,     0,  1694,     0,     0,     0,     0,
5339        0,    43,     0,  1695,    45,     0,  1693,     0,     0,  1696,
5340        0,    46,     0,     0,     0,  1701,  1702,  1703,    47,     0,
5341        0,  1694,     0,  3915,  1695,     0,     0,     0,     0,     0,
5342     1696,     0,  4105,     0,     0,     0,  1115,  1115,     0,    48,
5343     1691,  1692,     0,     0,     0,     0,  1697,     0,  1700,     0,
5344     1695,  1700,     0,  1693,     0,     0,  1696,     0,     0,     0,
5345        0,  1698,     0,  1699,    49,     0,     0,  1697,  1694,     0,
5346        0,     0,     0,  1691,  1692,     0,    50,  1701,  1702,  1703,
5347      932,     0,  1698,     0,  1699,     0,     0,     0,     0,     0,
5348        0,     0,     0,  1697,  4108,    51,     0,  1695,     0,     0,
5349        0,     0,     0,  1696,     0,     0,     0,  1700,  1698,    52,
5350     1699,     0,  1693,     0,     0,     0,     0,     0,     0,     0,
5351        0,     0,    53,     0,     0,    54,     0,  1694,    55,     0,
5352        0,     0,  1701,  1702,  1703,     0,     0,     0,     0,     0,
5353     1697,  3464,     0,    56,  1115,  1693,     0,     0,     0,  4109,
5354        0,  1701,  1702,  1703,     0,  1698,  1695,  1699,   932,     0,
5355     1694,     0,  1696,     0,     0,  1691,  1692,     0,  4114,     0,
5356        0,     0,     0,  1115,     0,     0,     0,     0,     0,     0,
5357        0,     0,     0,  1700,     0,  1701,  1702,  1703,     0,  1695,
5358        0,     0,     0,     0,     0,  1696,  1691,  1692,     0,  1697,
5359        0,     0,  4118,     0,  1700,     0,  1701,  1702,  1703,     0,
5360        0,     0,     0,     0,  1698,     0,  1699,  1701,  1702,  1703,
5361        0,     0,     0,  4119,  1691,  1692,     0,  1691,  1692,     0,
5362     1700,  1115,  1697,     0,  4120,     0,     0,  1693,     0,     0,
5363        0,     0,     0,     0,     0,  1691,  1692,  1698,  1115,  1699,
5364        0,     0,  1694,     0,  1115,  1115,     0,  1691,  1692,     0,
5365       57,     0,     0,  1701,  1702,  1703,  1691,  1692,  1693,     0,
5366        0,     0,     0,     0,     0,     0,     0,  1700,     0,  1115,
5367     4121,  1695,     0,  1694,     0,     0,     0,  1696,     0,    58,
5368        0,     0,    59,     0,     0,     0,  1693,     0,  3915,  1693,
5369     3915,     0,    60,     0,  1691,  1692,     0,     0,  1691,  1692,
5370       61,  1694,  1695,  1115,  1694,  1115,     0,  1693,  1696,     0,
5371        0,     0,    62,     0,  1697,     0,     0,     0,     0,  1693,
5372     1691,  1692,  1694,     0,     0,     0,  1700,     0,  1693,  1698,
5373     1695,  1699,    63,  1695,  1694,    64,  1696,     0,     0,  1696,
5374     1691,  1692,     0,  1694,     0,  1697,     0,     0,     0,     0,
5375        0,  1695,     0,  1691,  1692,     0,     0,  1696,     0,  1700,
5376     1698,     0,  1699,  1695,     0,     0,  1693,    65,     0,  1696,
5377     1693,     0,  1695,  1697,     0,     0,  1697,    66,  1696,     0,
5378        0,  1694,     0,     0,     0,  1694,     0,     0,  1698,     0,
5379     1699,  1698,  1693,  1699,  1697,     0,     0,     0,     0,  1691,
5380     1692,     0,    67,     0,     0,     0,  1697,  1694,     0,  1698,
5381     1695,  1699,  1693,     0,  1695,  1697,  1696,     0,     0,     0,
5382     1696,  1698,     0,  1699,    68,  1693,     0,  1694,     0,     0,
5383     1698,     0,  1699,  1691,  1692,     0,  1695,     0,     0,  3464,
5384     1694,     0,  1696,     0,  2894,  1691,  1692,  2898,     0,     0,
5385        0,  1700,     0,  1697,  1691,  1692,  1695,  1697,     0,   932,
5386        0,     0,  1696,     0,     0,     0,  1115,     0,  1698,  1695,
5387     1699,  1693,  1698,     0,  1699,  1696,     0,   932,     0,  1697,
5388        0,     0,  1700,     0,     0,     0,  1694,  1701,  1702,  1703,
5389     1701,  1702,  1703,     0,  1698,     0,  1699,     0,     0,  1697,
5390        0,     0,     0,     0,  4123,  1693,     0,  4132,     0,     0,
5391     1700,  3464,  1697,  1700,  1698,  1695,  1699,  1693,     0,     0,
5392     1694,  1696,     0,     0,     0,  1117,  1693,  1698,     0,  1699,
5393        0,  1700,  1694,     0,     0,     0,     0,     0,     0,     0,
5394        0,  1694,     0,  1700,     0,  1548,  1701,  1702,  1703,  1695,
5395        0,     0,  1700,  1117,     0,  1696,  1115,     0,  1697,     0,
5396        0,  1695,     0,  4138,     0,     0,     0,  1696,     0,     0,
5397     1695,  1117,     0,  1698,     0,  1699,  1696,     0,  1691,  1692,
5398        0,  1691,  1692,  1115,     0,     0,     0,     0,     0,     0,
5399     1700,     0,  1697,     0,  1700,     0,     0,     0,  5481,     0,
5400        0,     0,     0,     0,  1697,     0,  -841,  1698,     0,  1699,
5401        0,     0,     0,  1697,     0,     0,  1700,     0,     0,  1698,
5402        0,  1699,  1701,  1702,  1703,  5482,     0,     0,  1698,  5481,
5403     1699,     0,     0,     0,     0,     0,  1700,   932,     0,  4141,
5404        0,     0,     0,  1701,  1702,  1703,     0,     0,     0,  1700,
5405     1693,     0,     0,  1693,     0,     0,  5482,     0,     0,     0,
5406     4147,     0,     0,  2954,     0,  1694,     0,     0,  1694,  1701,
5407     1702,  1703,     0,   172,   173,     0,     0,     0,  1115,     0,
5408        0,  1691,  1692,     0,     0,     0,  4148,     0,     0,  1117,
5409        0,     0,     0, -1044,  1695,  1700,     0,  1695,     0,     0,
5410     1696,     0,     0,  1696,   172,   173,     0,     0,     0,     0,
5411        0,     0,     0,     0,     0,     0,  1701,  1702,  1703,     0,
5412        0,     0,     0,     0, -1044,  2222,  2223,  2224,  2225,  1700,
5413        0,     0,     0,  4149,   689,   690,     0,  1697,     0,  5483,
5414     1697,  1700,     0,  5484,     0,     0,     0,     0,     0,     0,
5415     1700,     0,  1698,  1693,  1699,  1698,     0,  1699,  1117,     0,
5416      932,     0,     0,     0,     0,   689,   690,  5465,  1694,     0,
5417     5483,     0,     0,     0,  5484,  1701,  1702,  1703,  2226,  2227,
5418     2228,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5419      932,     0,  4157,     0,     0,     0,     0,  1695,  5465,     0,
5420     1115,     0,     0,  1696,     0,     0,     0,     0,  1701,  1702,
5421     1703,  1117,     0,     0,     0,     0,  1117,     0,     0,     0,
5422        0,     0,     0,     0,     0,  4158,  1115,     0,     0,     0,
5423        0,     0,  2229,  2230,     0,     0,     0,     0,     0,  3490,
5424     1697,     0,     0,     0,  5466,     0,  1117,     0,     0,  1586,
5425        0,     0,     0,     0,     0,  1698,  1117,  1699,     0,     0,
5426        0,     0,     0,     0,     0,     0,     0,     0,  5467,     0,
5427        0,     0,     0,     0,  1700,  5466,     0,  1700,     0,     0,
5428        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5429        0,     0,     0,     0,  1586,     0,     0,  5485,     0,  5467,
5430     1701,  1702,  1703,     0,  2231,     0,     0,     0,     0,     0,
5431        0,  5479,     0,     0,     0,  5479,     0,  4161,     0,   932,
5432        0,     0,     0,     0,     0,     0,  1115,     0,  5485,     0,
5433        0,  1701,  1702,  1703,     0,     0,     0,  5468,     0,     0,
5434        0,     0,  5604,   932,     0,  1117,  1117,  1117,  1117,     0,
5435        0,  1586,     0,     0,     0,     0,     0,     0,  1117,  1701,
5436     1702,  1703,  1701,  1702,  1703,     0,     0,     0,  5468,     0,
5437        0,     0,     0,     0,     0,     0,  4165,  1700,  2232,  4178,
5438     1701,  1702,  1703,     0,     0,     0,     0,     0,     0,     0,
5439     1691,  1692,  1701,  1702,  1703,     0,     0,  4991,     0,     0,
5440        0,  1701,  1702,  1703,     0,     0,     0,     0,     0,  4997,
5441        0,     0,     0,     0,     0,     0,     0,     0,  5580,     0,
5442        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5443        0,     0,     0,     0,     0,     0,  5479,     0,     0,  1701,
5444     1702,  1703,     0,  1701,  1702,  1703,  5580,     0,     0,  5486,
5445     5469,  1691,  1692,     0,  5479,     0,  4998,     0,  1115,     0,
5446     4999,     0,  1693,     0,     0,  1701,  1702,  1703,     0,     0,
5447        0,  2233,     0,     0,     0,  3538,     0,  1694,     0,     0,
5448        0,  5469,  5008,     0,     0,  1701,  1702,  1703,     0,     0,
5449        0,     0,     0,     0,     0,     0,     0,     0,  1701,  1702,
5450     1703,     0,  5009,     0,     0,     0,  1695,  5651,     0,     0,
5451     5651,     0,  1696,     0,     0,  5013,     0,   932,     0,     0,
5452        0,     0,     0,  1693,     0,     0,     0,     0,     0,     0,
5453        0,  1117,     0,     0,     0,  1586,  3540,  1115,  1694,     0,
5454        0,  2234,     0,     0,  1701,  1702,  1703,     0,     0,  1697,
5455        0,     0,     0,     0,     0,     0,     0,  1691,  1692,     0,
5456        0,  5014,     0,     0,  1698,     0,  1699,  1695,     0,     0,
5457     5479,     0,  1115,  1696,     0,     0,     0,     0,  1701,  1702,
5458     1703,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5459     1701,  1702,  1703,     0,     0,  5384,     0,     0,     0,  1701,
5460     1702,  1703,     0,     0,     0,     0,  2235,  5651,  2236,     0,
5461     1697,     0,  5651,  2237,     0,     0,  5444,  5487,     0,  5651,
5462        0,     0,     0,     0,     0,  1698,     0,  1699,     0,  1693,
5463        0,  1586,  1691,  1692,     0,     0,     0,     0,     0,     0,
5464        0,     0,  3542,     0,  1694,     0,     0,     0,  5487,     0,
5465        0,     0,     0,     0,     0,  5479,     0,  1691,  1692,  1115,
5466        0,     0,     0,     0,     0,     0,  1115,     0,     0,     0,
5467        0,     0,     0,  1695,     0,     0,     0,     0,  2238,  1696,
5468        0,     0,     0,     0,     0,  5651,  1700,     0,     0,  5782,
5469        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5470     1117,     0,     0,  1117,  1693,     0,     0,  5470,     0,  5651,
5471        0,  5651,  5651,     0,     0,     0,  1697,     0,     0,  1694,
5472        0,  2239,     0,  1701,  1702,  1703,  1701,  1702,  1703,  1693,
5473        0,  1698,     0,  1699,     0,     0,     0,     0,  5470,     0,
5474        0,     0,     0,     0,  1694,     0,     0,  1700,  1695,     0,
5475        0,     0,     0,     0,  1696,     0,     0,     0,     0,     0,
5476     5651,     0,     0,  5651,     0,     0,     0,     0,     0,     0,
5477        0,     0,     0,  1695,  1117,     0,  1117,     0,     0,  1696,
5478        0,     0,     0,     0,     0,  1115,     0,     0,     0,     0,
5479        0,  1697,     0,     0,  5651,     0,     0,     0,     0,     0,
5480        0,     0,  1117,     0,     0,     0,  1698,     0,  1699,     0,
5481        0,  2240,     0,  1117,  1117,     0,  1697,     0,     0,  1117,
5482        0,     0,  2241,  1117,  1117,  1117,  1701,  1702,  1703,     0,
5483        0,  1698,     0,  1699,  1117,  1117,  1586,     0,   932,     0,
5484     1117,     0,  1117,  1117,  1117,  1117,  1117,     0,  1117,     0,
5485     1115,  1586,  1586,  1700,     0,     0,     0,     0,     0,  1117,
5486        0,  1117,     0,     0,  1117,  1117,     0,  1117,  1117,  1117,
5487        0,  1117,  1117,  1117,     0,     0,     0,     0,  1117,     0,
5488        0,  1117,     0,     0,     0,     0,     0,     0,     0,  1117,
5489     1117,     0,  1117,  1117,  1117,     0,     0,  1117,  1117,  1117,
5490     1117,  1117,  1117,  1117,     0,  1117,  1117,  1117,  1117,  1117,
5491     1117,     0,  1117,  1117,     0,  1117,  1117,  1117,  1117,  1117,
5492     1117,  1117,     0,     0,  1117,  1117,  1117,  1117,  1700,  1117,
5493     1117,  1117,     0,  1117,     0,  1117,     0,  1117,  1691,  1692,
5494     4134,  1117,  1117,  1117,     0,     0,  1117,  1117,  1117,  1117,
5495     1117,     0,  1117,  1700,  1691,  1692,  4137,     0,     0,  1117,
5496        0,     0,     0,     0,  1117,     0,     0,     0,     0,     0,
5497        0,  1117,     0,     0,     0,  1117,  1117,  1117,  1117,     0,
5498     1117,  1117,     0,     0,  1117,  1117,  1117,  1117,  1117,  1117,
5499     1117,  1117,  1117,  1117,  1117,  1117,  1117,  5481,     0,  1117,
5500        0,     0,     0,     0,  1586,     0,     0,     0,     0,     0,
5501     1693,  1586,     0, -1010,     0, -1010,     0,     0,     0,     0,
5502        0,     0,     0,     0,  5482,  1694,  1693,     0,     0,     0,
5503        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5504     3628,  1694,  2030,     0,  1117,     0,     0,     0,     0,  1117,
5505        0,     0,     0,     0,  1695,     0,     0,     0,     0,  1117,
5506     1696,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5507     1695,     0,   172,   173,     0,     0,  1696,     0,     0,     0,
5508        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5509      172,   173, -1044,     0,     0,  3853,     0,  1697,     0,     0,
5510        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5511        0,     0,  1698,  1697,  1699,     0,     0,     0,     0,     0,
5512        0,     0,     0,     0,     0,     0,  1117,     0,  1698,     0,
5513     1699,     0,     0,   689,   690,  1701,  1702,  1703,  5483,     0,
5514        0,     0,  5484,     0,  2750,     0,     0,     0,     0,     0,
5515        0,     0,  1117,     0,  1117,     0,     0,     0,     0,     0,
5516        0,     0,     0,     0,     0,     0,  5465,     0,  4001,  4002,
5517        0,     0,     0,  3857,  4003,  4004,  1586,     0,     0,     0,
5518        0,     0,     0,     0,  4005,  2751,     0,     0,  1117,     0,
5519        0,     0,     0,     0,     0,     0,  1701,  1702,  1703,     0,
5520        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5521     4006,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5522        0,     0,  4007,     0,     0,  2752,   941,     0,     0,     0,
5523        0,     0,     0,     0,  1700,  3860,  3861,  3862,  1884,     0,
5524        0,     0,  4008,  5466,     0,     0,     0,     0,     0,     0,
5525     1700,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5526     3863,     0,     0,     0,     0,   958,     0,  5467,     0,     0,
5527        0,  1117,     0,     0,     0,  4009,     0,     0,     0,     0,
5528     1586,     0,     0,     0,     0,  3864,     0,     0,     0,     0,
5529        0,     0,     0,     0,   963,     0,  5485,   965,  4010,  4011,
5530        0,  4012,  1701,  1702,  1703,     0,     0,     0,     0,  4013,
5531     4014,  4015,   969,   970,  3866,     0,  3867,     0,     0,     0,
5532        0,     0,     0,     0,     0,     0,     0,     0,     0,  4016,
5533      172,   173,     0, -1010,     0,  3868,  5468,     0,     0,     0,
5534        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5535        0,     0,     0,     0,  3870,     0,   977,     0,     0,     0,
5536        0,  3871,     0,     0,  4017,     0,     0,     0,     0,     0,
5537        0,     0,     0,     0,     0,   983,  3872,  1701,  1702,  1703,
5538        0,     0,     0,   988,   989,     0,  3873,     0,     0,  4018,
5539        0,     0,     0,     0,     0,  4019,     0,     0,     0,     0,
5540        0,  3877,  1701,  1702,  1703,     0,     0,     0,     0,     0,
5541        0,     0,     0,     0,     0,     0,     0,  1117,     0,     0,
5542     4020,  4021,  4022,     0,     0,     0,     0,     0,     0,     0,
5543        0,     0,     0,     0,     0,  1117,     0,     0,     0,     0,
5544        0,     0,     0,     0,     0,  4023,  4024,     0,     0,  5469,
5545        0,     0,     0,  1117,     0,     0,  1117,     0,     0,  3881,
5546        0,     0,     0,     0,  1117,  1117,     0,     0,     0,  3882,
5547        0,     0,     0,  1885,  1007,     0,     0,     0,     0,     0,
5548        0,     0,     0,  1009,  1010,  1011,     0,     0,     0,     0,
5549        0,     0,     0,  4025,     0,  4026,  4027,     0,     0,     0,
5550        0,     0,     0,     0,     0,     0,  3883,     0,     0,     0,
5551        0,  4028,     0,     0,     0,  2030,     0,     0,     0,  3884,
5552        0,     0,     0,     0,     0,     0,     0,     0,  1586,  1586,
5553        0,     0,     0,     0,  -716,     0,     0,     0,     0,     0,
5554        0,     0,     0,     0,     0,  2753,     0,     0,  4029,     0,
5555     4030,     0,     0,  1117,  1117,  1117,     0,     0,     0,     0,
5556     3886,     0,     0,   172,   173,     0,  3887,  1586,  3853,     0,
5557        0,     0,     0,  4031,     0,  2754,  2755,     0,  2756,  2757,
5558     2758,  2759,  2760,     0,  2761,  2762,  2763,  2764,  2765,  2766,
5559     2767,  2768,     0,  2769,  2770,  2771,  4032,     0,  5251,     0,
5560        0,     0,     0,     0,     0,     0,  5252,  4033,  4034,     0,
5561        0,     0,     0,     0,     0,     0,  5487,     0,     0,     0,
5562     1586,     0,     0,     0,     0,  3892,     0,  1886,     0,     0,
5563        0,  1117,  3893,     0,  1586,     0,     0,     0,     0,  4035,
5564        0,  1887,     0,  1888,     0,     0,  3857,     0,  4036,     0,
5565        0,     0,  1117,     0,     0,     0,  1117,  1117,     0,  1117,
5566     1117,     0,     0,  3894,     0,     0,     0,     0,  1117,     0,
5567     1117,     0,     0,     0,  1889,     0,     0,     0,  3895,  3896,
5568        0,     0,     0,  1701,  1702,  1703,     0,     0,     0,  1890,
5569        0,  3897,  2772,  2773,  4037,  4038,  4039,     0,  1117,  1701,
5570     1702,  1703,  4040,  4041,     0,     0,  5470,   855,  3860,  3861,
5571     3862,     0,  1117,     0,     0,     0,     0,     0,     0,  4042,
5572     4043,     0,  1891,     0,     0,     0,     0,     0,     0,  1117,
5573        0,     0,  1117,  3863,     0,     0,     0,     0,     0,     0,
5574     1892,   856,     0,  4044,  4045,     0,  1117,     0,     0,     0,
5575        0,     0,     0,     0,  4724,     0,     0,     0,  3864,     0,
5576        0,  1117,  4046,   858,     0,     0,     0,     0,     0,     0,
5577        0,     0,     0,   859,     0,     0,     0,     0,     0,     0,
5578        0,     0,     0,  1117,     0,     0,     0,  3866,     0,  3867,
5579        0,     0,     0,     0,  4047,     0,     0,     0,   860,     0,
5580        0,     0,     0,     0,     0,     0,     0,     0,  3868,     0,
5581        0,     0,     0,     0,   861,     0,     0,     0,     0,   862,
5582        0,  1893,     0,     0,  1117,     0,     0,  3870,  1894,     0,
5583        0,     0,     0,     0,  3871,     0,     0,     0,  1895,     0,
5584        0,     0,     0,     0,     0,   863,     0,     0,     0,  3872,
5585        0,  1896,     0,     0,  4048,     0,     0,  4049,     0,  3873,
5586     4050,     0,     0,     0,     0,     0,  1586,  4051,  1586,     0,
5587        0,     0,     0,     0,  3877,     0,     0,     0,     0,     0,
5588        0,     0,  1897,  4052,     0,  1898,     0,     0,     0,     0,
5589        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5590        0,  1899,  4053,     0,     0,     0,     0,     0,     0,     0,
5591        0,     0,     0,  5253,     0,   864,  5254,     0,     0,     0,
5592        0,     0,     0,     0,     0,  5387,     0,     0,     0,     0,
5593        0,     0,  3881,   865,     0,     0,     0,     0,     0,     0,
5594        0,   866,  3882,     0,     0,     0,  1117,     0,     0,     0,
5595        0,     0,     0,  1586,     0,     0,  1586,  1586,  1586,     0,
5596     1117,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5597     1884,     0,     0,   867,     0,     0,     0,     0,     0,  3883,
5598     4001,  4002,     0,   868,   869,     0,  4003,  4004,     0,     0,
5599        0,     0,  3884,     0,     0,     0,  4005,     0,     0,     0,
5600        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5601        0,     0,     0,     0,     0,  1117,     0,     0,     0,     0,
5602        0,     0,  4006,     0,     0,     0,     0,     0,     0,     0,
5603        0,     0,     0,  3886,  4007,     0,     0,     0,     0,  3887,
5604        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5605        0,     0,     0,     0,  4008,     0,     0,     0,     0,     0,
5606        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
5607        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5608        0,     0,     0,     0,     0,     0,     0,  4009,     0,     0,
5609        0,     0,     0,     0,     0,     0,     0,     0,  3892,     0,
5610        0,     0,     0,     0,     0,  3893,     0,     0,     0,     0,
5611     4010,  4011,     0,  4012,     0,     0,     0,     0,     0,     0,
5612        0,  4013,  4014,  4015,     0,     0,  2134,     0,     0,     0,
5613        0,  2135,     0,     0,     0,     0,  3894,     0,     0,     0,
5614        0,  4016,  2136,     0,     0,     0,     0,     0,     0,     0,
5615        0,  3895,  3896,     0,     0,     0,     0,     0,     0,     0,
5616        0,     0,  1117,     0,  3897,  1117,     0,     0,     0,     0,
5617        0,     0,     0,     0,  1117,     0,  4017,     0,     0,     0,
5618        0,     0,     0,  1117,     0,  1117,     0,  1117,     0,  1117,
5619     1117,  1117,  1117,  1117,  1117,     0,  1117,     0,     0,     0,
5620        0,  4018,     0,     0,  1117,  1885,  1117,  4019,     0,  1117,
5621     1117,  1117,  1117,     0,     0,  1117,  1117,   649,     0,  1117,
5622        0,  1117,     0,  1117,     0,  1117,     0,     0,     0,  1117,
5623        0,  -716,  4020,  4021,  4022,     0,  1084,  1117,     0,  1117,
5624        0,  1117,  1117,  1117,  1117,  1117,     0,     0,  1117,  1117,
5625     1117,     0,  1117,     0,     0,  1117,     0,  4023,  4024,     0,
5626        0,     0,     0,     0,  1247,     0,     0,     0,  1117,     0,
5627        0,     0,     0,  1117,     0,     0,  1117,     0,  1117,  1117,
5628     1117,     0,     0,  1117,     0,     0,     0,     0,     0,  1117,
5629        0,     0,     0,     0,  1117,     0,     0,     0,     0,     0,
5630        0,  2137,     0,  1117,     0,  4025,     0,  4026,  4027,  1117,
5631        0,  1117,     0,     0,  1117,     0,     0,     0,     0,     0,
5632        0,     0,  2138,  4028,  1117,  1586,  1117,  2139,     0,     0,
5633        0,  1117,     0,     0,     0,     0,     0,     0,     0,     0,
5634        0,     0,  1586,     0,     0,     0,     0,     0,     0,     0,
5635     4001,  4002,     0,     0,     0,     0,  4003,  4004,  2140,  1886,
5636     4029,     0,  4030,     0,     0,     0,  4005,     0,     0,     0,
5637        0,     0,     0,  1887,     0,  1888,  1117,     0,     0,     0,
5638        0,     0,     0,     0,     0,  4031,     0,     0,     0,     0,
5639     2141,     0,  4006,     0,     0,     0,     0,     0,     0,     0,
5640     1435,     0,     0,     0,  4007,  1117,  1889,     0,  4032,     0,
5641        0,     0,     0,     0,     0,     0,     0,     0,     0,  4033,
5642     4034,  1890,     0,     0,  4008,     0,     0,     0,     0,     0,
5643        0,     0,     0,     0,     0,     0,  1117,     0,     0,     0,
5644        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5645        0,  4035,     0,     0,  1891,     0,  1117,  4009,     0,     0,
5646     4036,     0,     0,     0,     0,     0,     0,     0,     0,  1499,
5647        0,     0,  1892,     0,     0,     0,     0,     0,     0,     0,
5648     4010,  4011,     0,  4012,     0,     0,     0,     0,     0,     0,
5649        0,  4013,  4014,  4015,     0,     0,     0,     0,     0,     0,
5650        0,     0,     0,     0,     0,     0,  4037,  4038,  4039,     0,
5651        0,  4016,     0,     0,  4040,  4041,     0,     0,     0,     0,
5652     1117,     0,     0,     0,     0,     0,     0,  1549,     0,     0,
5653        0,  4042,  4043,     0,     0,     0,     0,     0,     0,     0,
5654        0,  1117,     0,     0,     0,     0,  4017,     0,  1586,     0,
5655        0,     0,     0,  1893,     0,  4044,  4045,  1576,     0,     0,
5656     1894,     0,     0,     0,     0,     0,     0,  1591,     0,     0,
5657     1895,  4018,     0,     0,  4046,     0,     0,  4019,     0,     0,
5658        0,     0,     0,  1896,     0,     0,     0,     0,     0,     0,
5659        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5660        0,     0,  4020,  4021,  4022,     0,  5295,     0,     0,     0,
5661        0,     0,     0,     0,  1897,     0,     0,  1898,     0,     0,
5662        0,     0,     0,     0,     0,     0,     0,  4023,  4024,  1117,
5663        0,     0,     0,  1899,     0,     0,     0,     0,     0,     0,
5664        0,     0,     0,     0,     0,     0,     0,     0,     0,   650,
5665        0,     0,     0,     0,     0,     0,     0,     0,     0,  1686,
5666        0,     0,     0,     0,     0,     0,  4048,     0,     0,  4049,
5667        0,     0,  4050,     0,     0,  4025,     0,  4026,  4027,  5296,
5668        0,     0,  1586,     0,     0,     0,     0,     0,     0,     0,
5669        0,     0,     0,  4028,     0,  4052,     0,     0,     0,     0,
5670        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5671        0,     0,     0,     0,  4053,     0,     0,     0,     0,     0,
5672        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5673     4029,     0,  4030,     0,     0,     0,     0,     0,     0,     0,
5674        0,     0,     0,     0,     0,     0,     0,     0,  1117,     0,
5675        0,     0,     0,     0,     0,  4031,     0,     0,  1117,     0,
5676        0,  1117,     0,     0,     0,     0,     0,     0,     0,     0,
5677        0,     0,     0,     0,     0, -1010,     0, -1010,  4032,     0,
5678        0,     0,     0,     0,     0,  1117,  1117,     0,     0,  4033,
5679     4034,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5680        0,     0,     0,     0,  2030,     0,     0,     0,     0,  1117,
5681        0,  1117,     0,  1117,     0,  1117,     0,     0,     0,     0,
5682        0,  4035,     0,     0,     0,     0,     0,     0,     0,     0,
5683     4036,     0,     0,     0,     0,     0,     0,  1117,     0,     0,
5684        0,     0,  1882,  1586,     0,     0,     0,     0,     0,     0,
5685        0,     0,   172,   173,     0,     0,     0,  3853,  1117,  1117,
5686        0,     0,     0,     0,     0,  1117,     0,  1117,     0,  1117,
5687        0,     0,     0,     0,  1117,     0,  4037,  4038,  4039,     0,
5688        0,     0,     0,     0,  4040,  4041,     0,  1117,     0,     0,
5689        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5690        0,  4042,  4043,     0,     0,     0,     0,     0,     0,     0,
5691        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5692     1586,  1117,  1117,     0,     0,  4044,  4045,     0,     0,     0,
5693        0,     0,     0,     0,     0,  3857,  1117,     0,     0,     0,
5694        0,     0,     0,     0,  4046,     0,     0,     0,     0,     0,
5695        0,     0,     0,     0,     0,     0,     0,  1117,     0,     0,
5696        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5697        0,     0,     0,     0,     0,  1586,     0,     0,     0,     0,
5698        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5699        0,     0,     0,     0,     0,     0,     0,  3860,  3861,  3862,
5700        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5701        0,  2067,     0,     0,  2068,     0,     0,     0,     0,     0,
5702        0,     0,  3863,     0,     0,     0,     0,  1117,     0,     0,
5703        0,     0,     0,     0,     0,     0,  4048,  1117,     0,  4049,
5704        0,     0,  4050,     0,     0,     0,     0,  3864,     0,  1117,
5705        0,  1117,     0,     0,     0,     0,     0,     0,     0,     0,
5706        0,     0,     0,     0,     0,  4052,     0,     0,     0,     0,
5707        0,     0,     0,     0,     0,     0,  3866,     0,  3867,     0,
5708        0,     0,     0,     0,  4053,  2148,     0,  2148,     0,     0,
5709        0,     0,     0,     0,     0, -1010,     0,  3868,     0,     0,
5710        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5711        0,     0,     0,  2177,     0,     0,  3870,     0,     0,     0,
5712        0,     0,     0,  3871,     0,     0,     0,     0,     0,     0,
5713     2191,     0,     0,     0,  2196,     0,  2198,     0,  3872,     0,
5714        0,     0,     0,     0,     0,  2214,  2215,     0,  3873,     0,
5715        0,  2244,     0,  2247,  2248,  2249,  2250,  2251,     0,  2253,
5716        0,     0,     0,  3877,     0,     0,     0,     0,     0,     0,
5717     2261,     0,  2264,     0,     0,  2265,  2266,     0,  2268,  2269,
5718        0,     0,  2272,  2273,  2274,     0,     0,     0,     0,  2279,
5719        0,     0,  2285,     0,     0,     0,     0,     0,     0,     0,
5720     2289,  2290,     0,  2293,     0,  2295,     0,     0,  2297,  2298,
5721     2299,  2302,  2303,  2304,  2305,     0,  2306,  2307,  2308,  2309,
5722     2310,  3881,     0,  2317,  2318,     0,     0,  2322,  2323,  2324,
5723        0,  3882,     0,     0,     0,  2330,  2331,  2332,     0,     0,
5724     2335,  2336,  2337,     0,  2339,  1197,  2341,     0,  2342, -1010,
5725     1117, -1010,  2345,  2285,  2347,     0,   656,  2353,  2354,  2355,
5726     2356,  2357,     0,  2358,     0,     0,     0,     0,  3883,     0,
5727     2362,  1170,     0,     0,     0,     0,     0,     0,  2030,  1198,
5728     1199,  3884,  2373,     0,     0,     0,  2374,  2375,     0,  1200,
5729        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5730        0,     0,     0,     0,     9,    10,     0,     0,     0,     0,
5731        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5732        0,     0,  3886,     0,     0,     0,   172,   173,  3887,     0,
5733        0,  3853,     0,     0,     0,     0,     0,     0,     0,     0,
5734        0,     0,     0,     0,     0,     0,     0,     0,   172,   173,
5735        0,     0,  4299,  1201,  4300,  2468,  4301,     0,     0,     0,
5736     2478,     0,     0,     0,     0,     0,     0,  1202,     0,     0,
5737     2478,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5738        0,  1117,  1117,     0,  1117,     0,     0,  3892,     0,     0,
5739        0,     0,     0,  1117,  3893,  1117,     0,     0,  1117,     0,
5740        0,     0,     0,     0,     0,     0,     0,     0,     0,  3857,
5741        0,  1117,     0,  1117,     0,  1117,     0,  1117,     0,     0,
5742        0,     0,     0,     0,     0,  3894,     0,     0,     0,     0,
5743     1117,  1117,     0,     0,     0,     0,     0,  2546,     0,     0,
5744     3895,  3896,     0,  1203,     0,     0,     0,     0,     0,     0,
5745        0,     0,     0,  3897,     0,     0,     0,  1117,     0,     0,
5746        0,     0,     0,  2575,     0,  2580,     0,     0,     0,     0,
5747        0,  3860,  3861,  3862,     0,     0,     0,     0,     0,     0,
5748        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5749        0,     0,     0,     0,     0,     0,  3863,     0,     0,  2603,
5750        0,     0,     0,  1204,     0,     0,     0,     0,     0,     0,
5751        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5752        0,  3864,  1117,     0,     0,     0,  1117,     0,     0,     0,
5753        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5754        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5755     3866,     0,  3867,     0,  1205,     0,     0,     0,     0,     0,
5756        0,     0,     0,     0,     0,     0,     0,     0,     0, -1010,
5757     1206,  3868,     0,     0,     0,     0,     0,     0,     0,  1207,
5758        0,     0,  2674,     0,     0,     0,     0,     0,     0,     0,
5759     3870,  1208,     0,     0,     0,     0,     0,  3871,     0,     0,
5760        0,     0,  1209,     0,     0,     0,     0,     0,     0,     0,
5761        0,     0,  3872,     0,     0,     0,     0,     0,     0,     0,
5762        0,     0,  3873,     0,     0,     0,  1210,     0,     0,     0,
5763        0,     0,     0,     0,     0,     0,     0,  3877,     0,     0,
5764        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5765        0,     0,     0,     0,     0,     0,     0,     0, -2313,  1211,
5766        0,     0,  1212,     0,  1213,     0,     0,     0,     0,     0,
5767        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5768        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5769     1214,  1215,     0,     0,     0,  3881,     0,     0,  1216,  1217,
5770        0,     0,     0,     0,     0,  3882,     0,     0,     0,     0,
5771        0,     0,     0,     0,     0,  1218,     0,     0,  4864,     0,
5772     3847,     0,     0,     0,     0,     0,     0,     0,  2842,     0,
5773        0,     0,     0,  1117,  1117,     0,     0,  1219,     0,     0,
5774        0,  2030,  3883,     0,  3849,     0,  2870,     0,     0,     0,
5775        0,     0,  3851,     0,     0,  3884,     0,     0,  1220,     0,
5776        0,     0,     0,     0,  1247,     0,     0,  2889,     0,     0,
5777        0,     0,     0,     0,  2030,  2896,  2897,     0,     0,     0,
5778        0,     0,     0,     0,     0,     0,  4865,     0,     0,   172,
5779      173,     0,     0,     0,  3853,     0,  3886,     0,     0,     0,
5780        0,     0,  3887,     0,     0,     0,     0,     0,     0,     0,
5781        0,     0,     0,     0,  1221,     0,     0,     0,     0,     0,
5782        0,     0,   172,   173,     0,     0,     0,  3853,  1222,     0,
5783        0,     0,     0,     0,     0,     0,     0,     0,     0,  1223,
5784        0,  1117,  1224,  1225,     0,     0,     0,     0,     0,     0,
5785        0,     0,     0,     0,     0,     0,     0,  1226,  3854,     0,
5786        0,  3892,     0,     0,  2949,  2951,  2953,     0,  3893,     0,
5787     1117,     0,  3857,     0,     0,     0,     0,     0,     0,     0,
5788        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5789        0,     0,     0,  1227,     0,     0,     0,  3856,     0,  3894,
5790     1228,     0,     0,     0,     0,  3857,     0,     0,     0,     0,
5791        0,     0,     0,     0,  3895,  3896,     0,     0,     0, -3080,
5792        0,  1229,     0,     0,     0,     0,     0,  3897,  1117,     0,
5793        0,  3859,     0,     0,  3860,  3861,  3862,     0,     0,     0,
5794        0,     0,     0,     0,     0,  1117,     0,     0,     0,     0,
5795     1586,  1117,  1117,     0,     0,     0,     0,     0,     0,  3863,
5796        0,     0,     0,  3039,     0,     0,     0,  3860,  3861,  3862,
5797        0, -3080,     0,     0,     0,     0,  1117,  1230,     0,  3047,
5798        0,  3048,     0,     0,  3864,     0,     0,     0,     0,     0,
5799        0,     0,  3863,     0,     0,     0,     0,     0,     0,     0,
5800        0,     0,     0,     0,     0,     0,     0,     0,     0,  3070,
5801     1117,     0,  1117,  3866,     0,  3867,     0,  3864,     0,     0,
5802        0,     0,     0,  3076,     0,     0,     0,     0,     0,     0,
5803        0,     0,     0,     0,  3868,     0,     0,     0,  3865,     0,
5804     3096,     0,     0,  2478,     0,     0,  3866,     0,  3867,     0,
5805        0,     0,     0,  3870,     0,     0,     0,     0,     0,     0,
5806     3871,     0,     0,     0,     0,     0,     0,  3868,     0,     0,
5807        0,     0,  3133,     0,     0,  3872,     0,     0,     0,     0,
5808        0,     0,     0,     0,     0,  3873,  3870,     0,     0,     0,
5809        0,     0,     0,  3871,  3143,     0,     0,     0,     0,     0,
5810     3877,     0,     0,     0,     0,     0,     0,     0,  3872,     0,
5811        0,     0,     0,     0,     0,     0,     0,     0,  3873,     0,
5812        0,     0,  3874,     0,     0,     0,     0,     0,     0,  3876,
5813        0,     0,     0,  3877,     0,  2580,     0,     0,     0,     0,
5814        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5815        0,     0,     0,     0,     0,     0,     0,     0,  3881,     0,
5816        0,  3879,     0,     0,     0,     0,     0,     0,  3882,     0,
5817        0,     0,     0,  1117,     0,     0,     0,     0,     0,     0,
5818        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5819        0,  3881,     0,     0,     0,     0,     0,     0,     0,     0,
5820        0,  3882,     0,     0,     0,  3883,     0,     0,     0,     0,
5821        0,     0,     0,     0,     0,     0,     0,     0,  3884,     0,
5822        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5823        0,     0,     0,     0,     0,     0,     0,     0,  3883,     0,
5824        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5825        0,  3884,     0,  3885,     0,     0,     0,  3267,     0,  3886,
5826     1586,     0,     0,  1117,     0,  3887,     0,     0,     0,     0,
5827        0,  3267,     0,     0,     0,     0,     0,     0,     0,     0,
5828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5829     1117,     0,  3886,     0,     0,     0,     0,     0,  3887,     0,
5830        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5831        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5832        0,     0,     0,     0,  3892,     0,  3356,     0,     0,     0,
5833        0,  3893,     0,     0,     0,     0,     0,     0,     0,     0,
5834        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5835        0,     0,     0,     0,     0,     0,     0,  3892,     0,     0,
5836        0,     0,  3894,     0,  3893,     0,     0,     0,     0,     0,
5837        0,     0,     0,     0,     0,     0,     0,  3895,  3896,     0,
5838        0,     0,     0,     0,     0,  1117,     0,     0,     0,     0,
5839     3897,     0,     0,     0,     0,  3894,     0,     0,     0,     0,
5840        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5841     3895,  3896,     0,     0,     0,     0,     0,     0,     0,     0,
5842        0,     0,     0,  3897,     0,     0,     0,     0,     0,     0,
5843        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5844        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5845        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5846        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5847        0,     0,     0,  3488,     0,     0,  3489,     0,     0,     0,
5848        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5849        0,     0,     0,     0,  3516,     0,     0,     0,  3518,     0,
5850     3519,  3520,  3521,  3522,  3523,  3524,     0,  1117,     0,     0,
5851        0,     0,     0,     0,     0,  3528,     0,  3529,     0,     0,
5852     3530,  3531,  3532,  3533,     0,     0,  3534,  3535,     0,     0,
5853     3537,     0,  3539,  1117,  3541,     0,  3543,     0,     0,     0,
5854     3545,     0,     0,     0,     0,     0,     0,     0,  2299,     0,
5855     3548,     0,  2299,     0,  3551,  3552,  3553,     0,     0,  3554,
5856     3555,  3557,     0,  3558,     0,     0,  3559,     0,     0,     0,
5857        0,     0,     0,     0,     0,     0,     0,     0,     0,  3560,
5858        0,     0,     0,     0,     0,     0,     0,  3567,     0,  3568,
5859     3569,  3570,     0,     0,  3571,     0,     0,     0,     0,     0,
5860     3575,     0,     0,     0,     0,  3586,     0,     0,     0,     0,
5861        0,     0,     0,     0,  3590,     0,     0,     0,     0,     0,
5862        0,     0,     0,     0,     0,  3597,     0,     0,     0,     0,
5863        0,     0,     0,  1117,     0,     0,     0,  3609,     0,     0,
5864        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5865        0,     0,     0,  1586,  1586,     0,     0,     0,     0,     0,
5866        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5868        0,     0,     0,     0,     0,     0,     0,  2478,     0,     0,
5869        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5870        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5871        0,     0,     0,     0,     0,     0,  2478,     0,     0,     0,
5872        0,     0,     0,     0,     0,  1586,     0,     0,     0,     0,
5873        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5874        0,     0,     0,     0,     0,     0,     0,  2580,     0,     0,
5875        0,     0,     0,  1586,     0,     0,     0,     0,     0,     0,
5876        0,     0,     0,     0,     0,  1117,     0,  2580,     0,     0,
5877        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5878        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5879        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5880        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5881        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5882        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5883        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5884        0,     0,     0,     0,  1117,     0,     0,     0,     0,     0,
5885        0,     0,  3771,     0,     0,     0,     0,     0,     0,     0,
5886        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5887        0,     0,     0,     0,     0,     0,     0,     0,     0,  1117,
5888        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5889        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5890        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5891        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5893        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5894     3928,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5895        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5896        0,     0,     0,     0,     0,     0,  1117,     0,     0,     0,
5897        0,     0,     0,  1117,     0,     0,     0,     0,     0,     0,
5898        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5899        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5900        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5901        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5903        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5904        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5905        0,     0,     0,     0,     0,     0,     0,     0,     0,  4073,
5906        0,     0,     0,     0,     0,     0,     0,     0,     0,  4077,
5907        0,     0,  4078,     0,     0,     0,     0,     0,     0,     0,
5908        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5909        0,     0,  1117,     0,     0,     0,  4103,  4104,     0,     0,
5910        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5911        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5912     4128,     0,  4129,     0,  4130,     0,  4131,     0,     0,     0,
5913        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5914        0,     0,     0,     0,     0,     0,     0,     0,  4156,     0,
5915        0,     0,     0,     0,     0,     0,     0,  1117,     0,     0,
5916        0,     0,     0,     0,     0,     0,     0,     0,     0,  4179,
5917     4180,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5918        0,     0,     0,     0,     0,  3267,     0,     0,     0,     0,
5919        0,     0,     0,     0,     0,     0,     0,     0,  4200,     0,
5920        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5921        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5922        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5923        0,     0,  2478,  2478,     0,     0,     0,     0,     0,     0,
5924        0,     0,     0,     0,     0,     0,     0,  2478,     0,     0,
5925        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5926        0,     0,     0,     0,     0,     0,     0,     0,  2580,     0,
5927        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5928        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5929        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5930        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5931        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5932        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5933        0,     0,     0,     0,     0,     0,     0,     0,  4330,     0,
5934        0,     0,     0,     0,     0,     0,     0,     0,  3267,     0,
5935        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5936     3267,     0,  4342,     0,     0,     0,     0,     0,     0,     0,
5937        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5938        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5939        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5940        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5941        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5942        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5943        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5944        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5945        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5946        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5947        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5948        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5949        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5950        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5951        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5952        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5953        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5954        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5955        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5956        0,  4498,     0,     0,     0,     0,     0,     0,     0,     0,
5957        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5958        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5959        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5960        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5961        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5962        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5963        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5964        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5965        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5966        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5967        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5968        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5969        0,     0,  4602,  4603,     0,     0,     0,     0,     0,     0,
5970        0,     0,     0,     0,  4610,     0,  4611,     0,     0,  4612,
5971        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5972        0,     0,  4632,     0,  4633,     0,  4634,     0,  4635,     0,
5973        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5974        0,  4641,  4642,     0,     0,     0,     0,     0,     0,     0,
5975        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5976        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5977        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5978        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5979        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5980        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5981        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5982        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5983        0,     0,     0,  2580,     0,     0,     0,  2580,     0,     0,
5984        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5985        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5986        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5987        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5988        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5989        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5990        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5991        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5992        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5993        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5994        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5995        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5996        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5997        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5998        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5999        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6000        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6001        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6002        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6003        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6004        0,     0,     0,     0,  4882,  4883,     0,     0,     0,     0,
6005        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6006        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6007        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6008        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6009        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6010        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6011        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6012        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6013        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6014        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6015        0,     0,  4958,     0,     0,     0,     0,     0,     0,     0,
6016        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6017        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6018        0,  3267,     0,     0,     0,     0,     0,     0,     0,     0,
6019        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6020        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6021        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6022        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6023        0,     0,     0,     0,     0,     0,     0,     0,     0,  3267,
6024        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6025        0,     0,     0,     0,     0,     0,  2580,     0,     0,     0,
6026        0,     0,  2478,  2478,     0,     0,     0,     0,     0,     0,
6027        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6028        0,     0,     0,     0,     0,     0,     0,  2580,     0,     0,
6029        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6030        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6031        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6032        0,  5088,     0,  5090,     0,     0,     0,     0,     0,     0,
6033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6034        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6035        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6036        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6037        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6038        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6039        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6040        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6041        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6042        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6043        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6044        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6045        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6046        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6047        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6048        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6049        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6050        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6051        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6052        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6053        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6054        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6055        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6056        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6057        0,     0,     0,     0,  5241,     0,     0,     0,     0,     0,
6058        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6059        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6060        0,  3267,     0,     0,     0,     0,     0,     0,     0,     0,
6061        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6062        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6063        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6064        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6065        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6066        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6067        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6068        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6069        0,     0,     0,     0,     0,     0,  5320,     0,     0,     0,
6070        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6071        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6072        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6073        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6074        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6075        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6076        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6077        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6078        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6079        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6080        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6081        0,     0,     0,     0,     0,     0,     0,     0,  3267,     0,
6082        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6083        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6084        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6085        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6086        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6087        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6088        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6089        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6090        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6091        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6092        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6093        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6096        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6097        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6098        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6099        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6100        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6101        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6102        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6103        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6104        0,  2474,     0,     0,     0,     0,     0,     0,     0,     0,
6105        0,     0,  2475,   941,   942,   943,   944,     0,     0,     0,
6106        0,     0,     0,     0,   945,   946,     0,   947,     0,     0,
6107        0,     0,     0,     0,   948,   949,  5607,     0,   950,   951,
6108      952,   953,     0,   954,   955,     0,   956,   957,     0,     0,
6109        0,     0,   958,     0,     0,     0,  2476,     0,     0,   960,
6110        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6111        0,     0,     0,     0,     0,     0,     0,     0,     0,   961,
6112      962,   963,     0,   964,   965,     0,     0,     0,     0,     0,
6113        0,     0,     0,     0,     0,   966,   967,   968,     0,   969,
6114      970,     0,     0,     0,   971,   972,   973,     0,     0,     0,
6115        0,     0,     0,     0,   974,  1686,   975,     0,     0,     0,
6116        0,     0,     0,     0,     0,     0,     0,     0,     0,   976,
6117        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6118        0,     0,     0,   977,     0,     0,     0,     0,   978,   979,
6119     5692,   980,     0,     0,     0,     0,     0,   981,     0,   982,
6120        0,     0,   983,     0,     0,   984,   985,   986,     0,   987,
6121      988,   989,     0,   990,  2477,     0,     0,     0,     0,     0,
6122        0,     0,     0,     0,     0,     0,     0,     0,   991,     0,
6123        0,     0,   992,   993,   994,     0,   995,     0,     0,     0,
6124        0,     0,     0,   996,     0,     0,     0,     0,     0,     0,
6125        0,     0,     0,     0,   997,   998,     0,     0,     0,     0,
6126        0,     0,     0,   999,     0,     0,  1000,     0,     0,     0,
6127        0,     0,     0,     0,     0,     0,     0,  2580,     0,     0,
6128        0,     0,     0,     0,     0,     0,  1001,     0,     0,     0,
6129        0,     0,  1002,  1003,     0,  1004,  1005,  1006,     0,     0,
6130        0,  1007,     0,     0,     0,     0,     0,     0,     0,  1008,
6131     1009,  1010,  1011,     0,     0,     0,     0,     0,     0,     0,
6132        0,     0,  1012,  1013,  1014,     0,     0,     0,     0,     0,
6133     1015,     0,  1016,     0,     0,     0,     0,     0,     0,     0,
6134        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
6135      180,   181,   182,   183,   184,   185,  1017,   187,   188,   189,
6136      190,   191,   192,  1018,   194,   195,   196,   197,   198,   199,
6137      200,  1019,   202,   203,     0,   204,   205,   206,   207,   208,
6138      209,   210,   211,   212,   213,   214,   215,  1020,   217,   218,
6139      219,   220,   221,   222,   223,   224,  1021,   226,  1022,  1023,
6140      228,  1024,  1025,  1026,  1027,  1028,     0,   234,   235,   236,
6141      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
6142     1029,   248,   249,   250,   251,   252,   253,   254,   255,   256,
6143      257,   258,  1030,  1031,  1032,   262,  1033,  1034,   265,     0,
6144      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
6145      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
6146      286,   287,   288,   289,   290,   291,   292,   293,  2580,     0,
6147      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
6148      304,   305,   306,     0,  1035,   308,   309,   310,   311,   312,
6149     1036,   314,  1037,   316,   317,   318,   319,   320,   321,   322,
6150        0,   323,   324,   325,  1038,   327,   328,   329,   330,   331,
6151      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
6152      342,   343,   344,   345,   346,   347,  1039,  1040,   350,   351,
6153      352,  1041,   354,   355,   356,   357,   358,   359,   360,   361,
6154      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
6155      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
6156      382,   383,   384,   385,   386,   387,   388,   389,   390,  1042,
6157      392,  1043,   394,   395,   396,   397,  1044,  1045,  1046,  1047,
6158      402,   403,   404,   405,   406,   407,   408,   409,   410,  1048,
6159     1049,   413,   414,   415,   416,   417,   418,   419,   420,   421,
6160      422,   423,   424,   425,   426,   427,  1050,   429,   430,   431,
6161      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
6162     1051,   443,   444,   445,   446,   447,  1052,  1053,   450,   451,
6163      452,   453,   454,   455,  1054,   457,   458,   459,   460,   461,
6164      462,  1055,   464,   465,   466,   467,   468,   469,   470,   471,
6165      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
6166      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
6167      492,  1056,   494,   495,   496,   497,   498,  1057,  1058,   501,
6168      502,   503,   504,   505,  1059,   507,   508,   509,   510,   511,
6169      512,  1060,   514,   515,   516,   517,   518,   519,   520,   521,
6170      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
6171      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
6172      541,  1061,   543,   544,   545,   546,   547,   548,   549,   550,
6173      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
6174     1062,  1063,  1064,  1065,   565,   566,   567,  1066,  1067,   570,
6175      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
6176      581,   582,  1068,   584,  1069,   586,   587,   588,   589,   590,
6177      591,   592,   593,   594,  1070,  1071,   597,  1072,   599,   600,
6178      601,     0,   602,   603,   604,  1073,     0,     0,     0,     0,
6179        0,     0,     0,     0,  1074,  1075,     0,     0,     0,     0,
6180     1076,     0,     0,     0,  2376,  1077,     0,     0,     0,  1078,
6181     1079,     0,     0,  1080,  1081,   940,   941,   942,   943,   944,
6182        0,     0,     0,     0,     0,     0,     0,   945,   946,     0,
6183      947,     0,     0,     0,     0,     0,     0,   948,   949,     0,
6184        0,   950,   951,   952,   953,     0,   954,   955,     0,   956,
6185      957,     0,     0,     0,     0,   958,     0,     0,     0,   959,
6186        0,     0,   960,     0,     0,     0,     0,     0,     0,     0,
6187        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6188        0,     0,   961,   962,   963,     0,   964,   965,     0,     0,
6189        0,     0,     0,     0,     0,     0,     0,     0,   966,   967,
6190      968,     0,   969,   970,     0,     0,     0,   971,   972,   973,
6191        0,     0,     0,     0,     0,     0,     0,   974,     0,   975,
6192        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6193        0,     0,   976,     0,     0,     0,     0,     0,     0,     0,
6194        0,     0,     0,     0,     0,     0,   977,     0,     0,     0,
6195        0,   978,   979,     0,   980,     0,     0,     0,     0,     0,
6196      981,     0,   982,     0,     0,   983,     0,     0,   984,     0,
6197      986,     0,   987,   988,   989,     0,   990,     0,     0,     0,
6198        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6199        0,   991,     0,     0,     0,   992,   993,   994,     0,   995,
6200        0,     0,     0,     0,     0,     0,   996,     0,     0,     0,
6201        0,     0,     0,     0,     0,     0,     0,   997,   998,     0,
6202        0,     0,     0,     0,     0,     0,   999,     0,     0,  1000,
6203        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6204        0,     0,     0,     0,     0,     0,     0,     0,     0,  1001,
6205        0,     0,     0,     0,     0,  1002,  1003,     0,  1004,  1005,
6206     1006,     0,     0,     0,  1007,     0,     0,     0,     0,     0,
6207        0,     0,  1008,  1009,  1010,  1011,     0,     0,     0,     0,
6208        0,     0,     0,     0,     0,  1012,  1013,  1014,     0,     0,
6209        0,     0,     0,  1015,     0,  1016,     0,     0,     0,     0,
6210        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
6211      177,   178,   179,   180,   181,   182,   183,   184,   185,  1017,
6212      187,   188,   189,   190,   191,  2377,  1018,   194,   195,   196,
6213      197,   198,   199,   200,  1019,   202,   203,     0,   204,   205,
6214      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
6215     1020,   217,   218,   219,   220,   221,   222,   223,   224,  1021,
6216      226,  1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,     0,
6217      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
6218      244,   245,   246,  1029,   248,   249,   250,   251,   252,   253,
6219      254,   255,   256,   257,   258,  1030,  1031,  1032,   262,  1033,
6220     1034,   265,     0,   266,   267,   268,   269,   270,   271,   272,
6221      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
6222      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
6223      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
6224      301,   302,   303,   304,   305,   306,     0,  1035,   308,   309,
6225      310,   311,   312,  1036,   314,  1037,   316,   317,   318,   319,
6226      320,   321,   322,     0,   323,   324,   325,  1038,   327,   328,
6227      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
6228      339,   340,   341,   342,   343,   344,   345,   346,   347,  1039,
6229     1040,   350,   351,   352,  1041,   354,   355,   356,   357,   358,
6230      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
6231      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
6232      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
6233      389,   390,  1042,   392,  1043,   394,   395,   396,   397,  1044,
6234     1045,  1046,  1047,   402,   403,   404,   405,   406,   407,   408,
6235      409,   410,  1048,  1049,   413,   414,   415,   416,   417,   418,
6236      419,   420,   421,   422,   423,   424,   425,   426,   427,  1050,
6237      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
6238      439,   440,   441,  1051,   443,   444,   445,   446,   447,  1052,
6239     1053,   450,   451,   452,   453,   454,   455,  1054,   457,   458,
6240      459,   460,   461,   462,  1055,   464,   465,   466,   467,   468,
6241      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
6242      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
6243      489,   490,   491,   492,  1056,   494,   495,   496,   497,   498,
6244     1057,  1058,   501,   502,   503,   504,   505,  1059,   507,   508,
6245      509,   510,   511,   512,  1060,   514,   515,   516,   517,   518,
6246      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
6247      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
6248      538,   539,   540,   541,  1061,   543,   544,   545,   546,   547,
6249      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
6250      558,   559,   560,  1062,  1063,  1064,  1065,   565,   566,   567,
6251     1066,  1067,   570,   571,   572,   573,   574,   575,   576,   577,
6252      578,   579,   580,   581,   582,  1068,   584,  1069,   586,   587,
6253      588,   589,   590,   591,   592,   593,   594,  1070,  1071,   597,
6254     1072,   599,   600,   601,     0,   602,   603,   604,  1073,     0,
6255        0,     0,   940,   941,   942,   943,   944,  1074,  1075,     0,
6256        0,     0,     0,  1076,   945,   946,     0,   947,  1077,     0,
6257        0,     0,  1078,  1079,   948,   949,  1080,  1081,   950,   951,
6258      952,   953,     0,   954,   955,     0,   956,   957,     0,     0,
6259        0,     0,   958,     0,     0,     0,   959,     0,     0,   960,
6260        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6261        0,     0,     0,     0,     0,     0,     0,     0,     0,   961,
6262      962,   963,     0,   964,   965,     0,     0,     0,     0,     0,
6263        0,     0,     0,     0,     0,   966,   967,   968,     0,   969,
6264      970,     0,     0,     0,   971,   972,   973,     0,     0,     0,
6265        0,     0,     0,     0,   974,     0,   975,     0,     0,     0,
6266        0,     0,     0,     0,     0,     0,     0,     0,     0,   976,
6267        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6268        0,     0,     0,   977,     0,     0,     0,     0,   978,   979,
6269        0,   980,     0,     0,     0,     0,     0,   981,     0,   982,
6270        0,     0,   983,     0,     0,   984,   985,   986,     0,   987,
6271      988,   989,     0,   990,     0,     0,     0,     0,     0,     0,
6272        0,     0,     0,     0,     0,     0,     0,     0,   991,     0,
6273        0,     0,   992,   993,   994,     0,   995,     0,     0,     0,
6274        0,     0,     0,   996,     0,     0,     0,     0,     0,     0,
6275        0,     0,     0,     0,   997,   998,     0,     0,     0,     0,
6276        0,     0,     0,   999,     0,     0,  1000,     0,    32,     0,
6277        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6278        0,     0,     0,     0,     0,     0,  1001,     0,     0,     0,
6279        0,     0,  1002,  1003,     0,  1004,  1005,  1006,     0,     0,
6280        0,  1007,     0,     0,     0,     0,     0,     0,     0,  1008,
6281     1009,  1010,  1011,     0,     0,     0,     0,     0,     0,     0,
6282        0,     0,  1012,  1013,  1014,    39,     0,     0,     0,     0,
6283     1015,     0,  1016,     0,     0,     0,    41,     0,     0,     0,
6284        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
6285      180,   181,   182,   183,   184,   185,  1017,   187,   188,   189,
6286      190,   191,   192,  1018,   194,   195,   196,   197,   198,   199,
6287      200,  1019,   202,   203,     0,   204,   205,   206,   207,   208,
6288      209,   210,   211,   212,   213,   214,   215,  1020,   217,   218,
6289      219,   220,   221,   222,   223,   224,  1021,   226,  1022,  1023,
6290      228,  1024,  1025,  1026,  1027,  1028,     0,   234,   235,   236,
6291      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
6292     1029,   248,   249,   250,   251,   252,   253,   254,   255,   256,
6293      257,   258,  1030,  1031,  1032,   262,  1033,  1034,   265,     0,
6294      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
6295      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
6296      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
6297      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
6298      304,   305,   306,     0,  1035,   308,   309,   310,   311,   312,
6299     1036,   314,  1037,   316,   317,   318,   319,   320,   321,   322,
6300        0,   323,   324,   325,  1038,   327,   328,   329,   330,   331,
6301      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
6302      342,   343,   344,   345,   346,   347,  1039,  1040,   350,   351,
6303      352,  1041,   354,   355,   356,   357,   358,   359,   360,   361,
6304      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
6305      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
6306      382,   383,   384,   385,   386,   387,   388,   389,   390,  1042,
6307      392,  1043,   394,   395,   396,   397,  1044,  1045,  1046,  1047,
6308      402,   403,   404,   405,   406,   407,   408,   409,   410,  1048,
6309     1049,   413,   414,   415,   416,   417,   418,   419,   420,   421,
6310      422,   423,   424,   425,   426,   427,  1050,   429,   430,   431,
6311      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
6312     1051,   443,   444,   445,   446,   447,  1052,  1053,   450,   451,
6313      452,   453,   454,   455,  1054,   457,   458,   459,   460,   461,
6314      462,  1055,   464,   465,   466,   467,   468,   469,   470,   471,
6315      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
6316      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
6317      492,  1056,   494,   495,   496,   497,   498,  1057,  1058,   501,
6318      502,   503,   504,   505,  1059,   507,   508,   509,   510,   511,
6319      512,  1060,   514,   515,   516,   517,   518,   519,   520,   521,
6320      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
6321      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
6322      541,  1061,   543,   544,   545,   546,   547,   548,   549,   550,
6323      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
6324     1062,  1063,  1064,  1065,   565,   566,   567,  1066,  1067,   570,
6325      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
6326      581,   582,  1068,   584,  1069,   586,   587,   588,   589,   590,
6327      591,   592,   593,   594,  1070,  1071,   597,  1072,   599,   600,
6328      601,     0,   602,   603,   604,  1073,     0,     0,     0,   940,
6329      941,   942,   943,   944,  1074,  1075,     0,  2282,     0,     0,
6330     1076,   945,   946,     0,   947,  1077,     0,     0,     0,  1078,
6331     1079,   948,   949,  1080,  1081,   950,   951,   952,   953,     0,
6332      954,   955,     0,   956,   957,     0,     0,     0,     0,   958,
6333        0,     0,     0,   959,     0,     0,   960,     0,     0,     0,
6334        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6335        0,     0,     0,     0,     0,     0,   961,   962,   963,     0,
6336      964,   965,     0,     0,     0,     0,     0,     0,     0,     0,
6337        0,     0,   966,   967,   968,     0,   969,   970,     0,     0,
6338        0,   971,   972,   973,     0,     0,     0,     0,     0,     0,
6339        0,   974,     0,   975,     0,     0,     0,     0,     0,     0,
6340        0,     0,     0,     0,  2283,     0,   976,     0,     0,     0,
6341        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6342      977,     0,     0,     0,     0,   978,   979,     0,   980,     0,
6343        0,     0,     0,     0,   981,     0,   982,     0,     0,   983,
6344        0,     0,   984,   985,   986,     0,   987,   988,   989,     0,
6345      990,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6346        0,     0,     0,     0,     0,   991,     0,     0,     0,   992,
6347      993,   994,     0,   995,     0,     0,     0,     0,     0,     0,
6348      996,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6349        0,   997,   998,     0,     0,     0,     0,     0,     0,     0,
6350      999,     0,     0,  1000,     0,     0,     0,     0,     0,     0,
6351        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6352        0,     0,     0,  1001,     0,     0,     0,     0,     0,  1002,
6353     1003,     0,  1004,  1005,  1006,     0,     0,     0,  1007,     0,
6354        0,     0,     0,     0,  2284,     0,  1008,  1009,  1010,  1011,
6355        0,     0,     0,     0,     0,     0,     0,     0,     0,  1012,
6356     1013,  1014,     0,     0,     0,     0,     0,  1015,     0,  1016,
6357        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6358        0,   174,   175,   176,   177,   178,   179,   180,   181,   182,
6359      183,   184,   185,  1017,   187,   188,   189,   190,   191,   192,
6360     1018,   194,   195,   196,   197,   198,   199,   200,  1019,   202,
6361      203,     0,   204,   205,   206,   207,   208,   209,   210,   211,
6362      212,   213,   214,   215,  1020,   217,   218,   219,   220,   221,
6363      222,   223,   224,  1021,   226,  1022,  1023,   228,  1024,  1025,
6364     1026,  1027,  1028,     0,   234,   235,   236,   237,   238,   239,
6365      240,   241,   242,   243,   244,   245,   246,  1029,   248,   249,
6366      250,   251,   252,   253,   254,   255,   256,   257,   258,  1030,
6367     1031,  1032,   262,  1033,  1034,   265,     0,   266,   267,   268,
6368      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
6369      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
6370      289,   290,   291,   292,   293,     0,     0,   294,   295,   296,
6371      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
6372        0,  1035,   308,   309,   310,   311,   312,  1036,   314,  1037,
6373      316,   317,   318,   319,   320,   321,   322,     0,   323,   324,
6374      325,  1038,   327,   328,   329,   330,   331,   332,   333,   334,
6375      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
6376      345,   346,   347,  1039,  1040,   350,   351,   352,  1041,   354,
6377      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
6378      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
6379      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
6380      385,   386,   387,   388,   389,   390,  1042,   392,  1043,   394,
6381      395,   396,   397,  1044,  1045,  1046,  1047,   402,   403,   404,
6382      405,   406,   407,   408,   409,   410,  1048,  1049,   413,   414,
6383      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
6384      425,   426,   427,  1050,   429,   430,   431,   432,   433,   434,
6385      435,   436,   437,   438,   439,   440,   441,  1051,   443,   444,
6386      445,   446,   447,  1052,  1053,   450,   451,   452,   453,   454,
6387      455,  1054,   457,   458,   459,   460,   461,   462,  1055,   464,
6388      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
6389      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
6390      485,   486,   487,   488,   489,   490,   491,   492,  1056,   494,
6391      495,   496,   497,   498,  1057,  1058,   501,   502,   503,   504,
6392      505,  1059,   507,   508,   509,   510,   511,   512,  1060,   514,
6393      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
6394      525,   526,   527,   528,   529,     0,   530,   531,   532,   533,
6395      534,   535,   536,   537,   538,   539,   540,   541,  1061,   543,
6396      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
6397      554,   555,   556,   557,   558,   559,   560,  1062,  1063,  1064,
6398     1065,   565,   566,   567,  1066,  1067,   570,   571,   572,   573,
6399      574,   575,   576,   577,   578,   579,   580,   581,   582,  1068,
6400      584,  1069,   586,   587,   588,   589,   590,   591,   592,   593,
6401      594,  1070,  1071,   597,  1072,   599,   600,   601,     0,   602,
6402      603,   604,  1073,     0,     0,     0,   940,   941,   942,   943,
6403      944,  1074,  1075,     0,     0,     0,     0,  1076,   945,   946,
6404        0,   947,  1077,     0,     0,     0,  1078,  1079,   948,   949,
6405     1080,  1081,   950,   951,   952,   953,     0,   954,   955,     0,
6406      956,   957,     0,     0,     0,     0,   958,     0,     0,     0,
6407      959,     0,     0,   960,     0,     0,     0,     0,     0,     0,
6408        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6409        0,     0,     0,   961,   962,   963,     0,   964,   965,     0,
6410        0,     0,     0,     0,     0,     0,     0,     0,     0,   966,
6411      967,   968,     0,   969,   970,     0,     0,     0,   971,   972,
6412      973,     0,     0,     0,     0,     0,     0,     0,   974,     0,
6413      975,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6414        0,     0,     0,   976,     0,     0,     0,     0,     0,     0,
6415        0,     0,     0,     0,     0,     0,     0,   977,     0,     0,
6416        0,     0,   978,   979,     0,   980,     0,     0,     0,     0,
6417        0,   981,     0,   982,     0,     0,   983,     0,     0,   984,
6418      985,   986,     0,   987,   988,   989,     0,   990,     0,     0,
6419        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6420        0,     0,   991,     0,     0,     0,   992,   993,   994,     0,
6421      995,     0,     0,     0,     0,     0,     0,   996,     0,     0,
6422        0,     0,     0,     0,     0,     0,     0,     0,   997,   998,
6423        0,     0,     0,     0,     0,     0,     0,   999,     0,     0,
6424     1000,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6425        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6426     1001,     0,     0,     0,     0,     0,  1002,  1003,     0,  1004,
6427     1005,  1006,     0,     0,     0,  1007,     0,     0,     0,     0,
6428        0,     0,     0,  1008,  1009,  1010,  1011,     0,     0,     0,
6429        0,     0,     0,     0,     0,     0,  1012,  1013,  1014,     0,
6430        0,     0,     0,     0,  1015,     0,  1016,  1548,     0,     0,
6431        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
6432      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
6433     1017,   187,   188,   189,   190,   191,   192,  1018,   194,   195,
6434      196,   197,   198,   199,   200,  1019,   202,   203,     0,   204,
6435      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
6436      215,  1020,   217,   218,   219,   220,   221,   222,   223,   224,
6437     1021,   226,  1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,
6438        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
6439      243,   244,   245,   246,  1029,   248,   249,   250,   251,   252,
6440      253,   254,   255,   256,   257,   258,  1030,  1031,  1032,   262,
6441     1033,  1034,   265,     0,   266,   267,   268,   269,   270,   271,
6442      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
6443      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
6444      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
6445      300,   301,   302,   303,   304,   305,   306,     0,  1035,   308,
6446      309,   310,   311,   312,  1036,   314,  1037,   316,   317,   318,
6447      319,   320,   321,   322,     0,   323,   324,   325,  1038,   327,
6448      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
6449      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
6450     1039,  1040,   350,   351,   352,  1041,   354,   355,   356,   357,
6451      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
6452      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
6453      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
6454      388,   389,   390,  1042,   392,  1043,   394,   395,   396,   397,
6455     1044,  1045,  1046,  1047,   402,   403,   404,   405,   406,   407,
6456      408,   409,   410,  1048,  1049,   413,   414,   415,   416,   417,
6457      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
6458     1050,   429,   430,   431,   432,   433,   434,   435,   436,   437,
6459      438,   439,   440,   441,  1051,   443,   444,   445,   446,   447,
6460     1052,  1053,   450,   451,   452,   453,   454,   455,  1054,   457,
6461      458,   459,   460,   461,   462,  1055,   464,   465,   466,   467,
6462      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
6463      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
6464      488,   489,   490,   491,   492,  1056,   494,   495,   496,   497,
6465      498,  1057,  1058,   501,   502,   503,   504,   505,  1059,   507,
6466      508,   509,   510,   511,   512,  1060,   514,   515,   516,   517,
6467      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
6468      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
6469      537,   538,   539,   540,   541,  1061,   543,   544,   545,   546,
6470      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
6471      557,   558,   559,   560,  1062,  1063,  1064,  1065,   565,   566,
6472      567,  1066,  1067,   570,   571,   572,   573,   574,   575,   576,
6473      577,   578,   579,   580,   581,   582,  1068,   584,  1069,   586,
6474      587,   588,   589,   590,   591,   592,   593,   594,  1070,  1071,
6475      597,  1072,   599,   600,   601,     0,   602,   603,   604,  1073,
6476        0,     0,     0,   940,   941,   942,   943,   944,  1074,  1075,
6477        0,     0,     0,     0,  1076,   945,   946,     0,   947,  1077,
6478        0,     0,     0,  1078,  1079,   948,   949,  1080,  1081,   950,
6479      951,   952,   953,     0,   954,   955,     0,   956,   957,     0,
6480        0,     0,     0,   958,     0,     0,     0,  2577,     0,     0,
6481      960,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6482        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6483      961,   962,   963,     0,   964,   965,     0,     0,     0,     0,
6484        0,     0,     0,     0,     0,     0,   966,   967,   968,     0,
6485      969,   970,     0,     0,     0,   971,   972,   973,     0,  2578,
6486        0,     0,     0,     0,     0,   974,     0,   975,     0,     0,
6487        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6488      976,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6489        0,     0,     0,     0,   977,     0,     0,     0,     0,   978,
6490      979,     0,   980,     0,     0,     0,     0,     0,   981,     0,
6491      982,     0,     0,   983,     0,     0,   984,   985,   986,     0,
6492      987,   988,   989,     0,   990,     0,     0,     0,     0,     0,
6493        0,     0,     0,     0,     0,     0,     0,     0,     0,   991,
6494        0,     0,     0,   992,   993,   994,     0,   995,     0,     0,
6495        0,     0,     0,     0,   996,     0,     0,     0,     0,     0,
6496        0,     0,     0,     0,     0,   997,   998,     0,     0,     0,
6497        0,     0,     0,     0,   999,     0,     0,  1000,     0,     0,
6498        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6499        0,     0,     0,     0,     0,     0,     0,  1001,     0,     0,
6500        0,     0,     0,  1002,  1003,     0,  1004,  1005,  1006,     0,
6501        0,     0,  1007,     0,     0,     0,     0,     0,     0,     0,
6502     1008,  1009,  1010,  1011,     0,     0,     0,     0,     0,     0,
6503        0,     0,     0,  1012,  1013,  1014,     0,     0,     0,     0,
6504        0,  1015,     0,  1016,     0,     0,     0,     0,     0,     0,
6505        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
6506      179,   180,   181,   182,   183,   184,   185,  1017,   187,   188,
6507      189,   190,   191,   192,  1018,   194,   195,   196,   197,   198,
6508      199,   200,  1019,   202,   203,     0,   204,   205,   206,   207,
6509      208,   209,   210,   211,   212,   213,   214,   215,  1020,   217,
6510      218,   219,   220,   221,   222,   223,   224,  1021,   226,  1022,
6511     1023,   228,  1024,  1025,  1026,  1027,  1028,     0,   234,   235,
6512      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
6513      246,  1029,   248,   249,   250,   251,   252,   253,   254,   255,
6514      256,   257,   258,  1030,  1031,  1032,   262,  1033,  1034,   265,
6515        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
6516      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
6517      285,   286,   287,   288,   289,   290,   291,   292,   293,     0,
6518        0,   294,   295,   296,   297,   298,   299,   300,   301,   302,
6519      303,   304,   305,   306,     0,  1035,   308,   309,   310,   311,
6520      312,  1036,   314,  1037,   316,   317,   318,   319,   320,   321,
6521      322,     0,   323,   324,   325,  1038,   327,   328,   329,   330,
6522      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
6523      341,   342,   343,   344,   345,   346,   347,  1039,  1040,   350,
6524      351,   352,  1041,   354,   355,   356,   357,   358,   359,   360,
6525      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
6526      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
6527      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
6528     1042,   392,  1043,   394,   395,   396,   397,  1044,  1045,  1046,
6529     1047,   402,   403,   404,   405,   406,   407,   408,   409,   410,
6530     1048,  1049,   413,   414,   415,   416,   417,   418,   419,   420,
6531      421,   422,   423,   424,   425,   426,   427,  1050,   429,   430,
6532      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
6533      441,  1051,   443,   444,   445,   446,   447,  1052,  1053,   450,
6534      451,   452,   453,   454,   455,  1054,   457,   458,   459,   460,
6535      461,   462,  1055,   464,   465,   466,   467,   468,   469,   470,
6536      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
6537      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
6538      491,   492,  1056,   494,   495,   496,   497,   498,  1057,  1058,
6539      501,   502,   503,   504,   505,  1059,   507,   508,   509,   510,
6540      511,   512,  1060,   514,   515,   516,   517,   518,   519,   520,
6541      521,   522,   523,   524,   525,   526,   527,   528,   529,     0,
6542      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
6543      540,   541,  1061,   543,   544,   545,   546,   547,   548,   549,
6544      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
6545      560,  1062,  1063,  1064,  1065,   565,   566,   567,  1066,  1067,
6546      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
6547      580,   581,   582,  1068,   584,  1069,   586,   587,   588,   589,
6548      590,   591,   592,   593,   594,  1070,  1071,   597,  1072,   599,
6549      600,   601,     0,   602,   603,   604,  1073,     0,     0,     0,
6550      940,   941,   942,   943,   944,  1074,  1075,     0,     0,     0,
6551        0,  1076,   945,   946,     0,   947,  1077,     0,     0,     0,
6552     1078,  1079,   948,   949,  1080,  1081,   950,   951,   952,   953,
6553        0,   954,   955,     0,   956,   957,     0,     0,     0,     0,
6554      958,     0,     0,     0,   959,     0,     0,   960,     0,     0,
6555        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6556        0,     0,     0,     0,     0,     0,     0,   961,   962,   963,
6557        0,   964,   965,     0,     0,     0,     0,  2948,     0,     0,
6558        0,     0,     0,   966,   967,   968,     0,   969,   970,     0,
6559        0,     0,   971,   972,   973,     0,     0,     0,     0,     0,
6560        0,     0,   974,     0,   975,     0,     0,     0,     0,     0,
6561        0,     0,     0,     0,     0,     0,     0,   976,     0,     0,
6562        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6563        0,   977,     0,     0,     0,     0,   978,   979,     0,   980,
6564        0,     0,     0,     0,     0,   981,     0,   982,     0,     0,
6565      983,     0,     0,   984,   985,   986,     0,   987,   988,   989,
6566        0,   990,     0,     0,     0,     0,     0,     0,     0,     0,
6567        0,     0,     0,     0,     0,     0,   991,     0,     0,     0,
6568      992,   993,   994,     0,   995,     0,     0,     0,     0,     0,
6569        0,   996,     0,     0,     0,     0,     0,     0,     0,     0,
6570        0,     0,   997,   998,     0,     0,     0,     0,     0,     0,
6571        0,   999,     0,     0,  1000,     0,     0,     0,     0,     0,
6572        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6573        0,     0,     0,     0,  1001,     0,     0,     0,     0,     0,
6574     1002,  1003,     0,  1004,  1005,  1006,     0,     0,     0,  1007,
6575        0,     0,     0,     0,     0,     0,     0,  1008,  1009,  1010,
6576     1011,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6577     1012,  1013,  1014,     0,     0,     0,     0,     0,  1015,     0,
6578     1016,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6579        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
6580      182,   183,   184,   185,  1017,   187,   188,   189,   190,   191,
6581      192,  1018,   194,   195,   196,   197,   198,   199,   200,  1019,
6582      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
6583      211,   212,   213,   214,   215,  1020,   217,   218,   219,   220,
6584      221,   222,   223,   224,  1021,   226,  1022,  1023,   228,  1024,
6585     1025,  1026,  1027,  1028,     0,   234,   235,   236,   237,   238,
6586      239,   240,   241,   242,   243,   244,   245,   246,  1029,   248,
6587      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
6588     1030,  1031,  1032,   262,  1033,  1034,   265,     0,   266,   267,
6589      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
6590      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
6591      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
6592      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
6593      306,     0,  1035,   308,   309,   310,   311,   312,  1036,   314,
6594     1037,   316,   317,   318,   319,   320,   321,   322,     0,   323,
6595      324,   325,  1038,   327,   328,   329,   330,   331,   332,   333,
6596      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
6597      344,   345,   346,   347,  1039,  1040,   350,   351,   352,  1041,
6598      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
6599      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
6600      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
6601      384,   385,   386,   387,   388,   389,   390,  1042,   392,  1043,
6602      394,   395,   396,   397,  1044,  1045,  1046,  1047,   402,   403,
6603      404,   405,   406,   407,   408,   409,   410,  1048,  1049,   413,
6604      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
6605      424,   425,   426,   427,  1050,   429,   430,   431,   432,   433,
6606      434,   435,   436,   437,   438,   439,   440,   441,  1051,   443,
6607      444,   445,   446,   447,  1052,  1053,   450,   451,   452,   453,
6608      454,   455,  1054,   457,   458,   459,   460,   461,   462,  1055,
6609      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
6610      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
6611      484,   485,   486,   487,   488,   489,   490,   491,   492,  1056,
6612      494,   495,   496,   497,   498,  1057,  1058,   501,   502,   503,
6613      504,   505,  1059,   507,   508,   509,   510,   511,   512,  1060,
6614      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
6615      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
6616      533,   534,   535,   536,   537,   538,   539,   540,   541,  1061,
6617      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
6618      553,   554,   555,   556,   557,   558,   559,   560,  1062,  1063,
6619     1064,  1065,   565,   566,   567,  1066,  1067,   570,   571,   572,
6620      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
6621     1068,   584,  1069,   586,   587,   588,   589,   590,   591,   592,
6622      593,   594,  1070,  1071,   597,  1072,   599,   600,   601,     0,
6623      602,   603,   604,  1073,     0,     0,     0,   940,   941,   942,
6624      943,   944,  1074,  1075,     0,     0,     0,     0,  1076,   945,
6625      946,     0,   947,  1077,     0,     0,     0,  1078,  1079,   948,
6626      949,  1080,  1081,   950,   951,   952,   953,     0,   954,   955,
6627        0,   956,   957,     0,     0,     0,     0,   958,     0,     0,
6628        0,   959,     0,     0,   960,     0,     0,     0,     0,     0,
6629        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6630        0,     0,     0,     0,   961,   962,   963,     0,   964,   965,
6631        0,     0,     0,     0,  2950,     0,     0,     0,     0,     0,
6632      966,   967,   968,     0,   969,   970,     0,     0,     0,   971,
6633      972,   973,     0,     0,     0,     0,     0,     0,     0,   974,
6634        0,   975,     0,     0,     0,     0,     0,     0,     0,     0,
6635        0,     0,     0,     0,   976,     0,     0,     0,     0,     0,
6636        0,     0,     0,     0,     0,     0,     0,     0,   977,     0,
6637        0,     0,     0,   978,   979,     0,   980,     0,     0,     0,
6638        0,     0,   981,     0,   982,     0,     0,   983,     0,     0,
6639      984,   985,   986,     0,   987,   988,   989,     0,   990,     0,
6640        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6641        0,     0,     0,   991,     0,     0,     0,   992,   993,   994,
6642        0,   995,     0,     0,     0,     0,     0,     0,   996,     0,
6643        0,     0,     0,     0,     0,     0,     0,     0,     0,   997,
6644      998,     0,     0,     0,     0,     0,     0,     0,   999,     0,
6645        0,  1000,     0,     0,     0,     0,     0,     0,     0,     0,
6646        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6647        0,  1001,     0,     0,     0,     0,     0,  1002,  1003,     0,
6648     1004,  1005,  1006,     0,     0,     0,  1007,     0,     0,     0,
6649        0,     0,     0,     0,  1008,  1009,  1010,  1011,     0,     0,
6650        0,     0,     0,     0,     0,     0,     0,  1012,  1013,  1014,
6651        0,     0,     0,     0,     0,  1015,     0,  1016,     0,     0,
6652        0,     0,     0,     0,     0,     0,     0,     0,     0,   174,
6653      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
6654      185,  1017,   187,   188,   189,   190,   191,   192,  1018,   194,
6655      195,   196,   197,   198,   199,   200,  1019,   202,   203,     0,
6656      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
6657      214,   215,  1020,   217,   218,   219,   220,   221,   222,   223,
6658      224,  1021,   226,  1022,  1023,   228,  1024,  1025,  1026,  1027,
6659     1028,     0,   234,   235,   236,   237,   238,   239,   240,   241,
6660      242,   243,   244,   245,   246,  1029,   248,   249,   250,   251,
6661      252,   253,   254,   255,   256,   257,   258,  1030,  1031,  1032,
6662      262,  1033,  1034,   265,     0,   266,   267,   268,   269,   270,
6663      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6664      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
6665      291,   292,   293,     0,     0,   294,   295,   296,   297,   298,
6666      299,   300,   301,   302,   303,   304,   305,   306,     0,  1035,
6667      308,   309,   310,   311,   312,  1036,   314,  1037,   316,   317,
6668      318,   319,   320,   321,   322,     0,   323,   324,   325,  1038,
6669      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
6670      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
6671      347,  1039,  1040,   350,   351,   352,  1041,   354,   355,   356,
6672      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
6673      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
6674      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
6675      387,   388,   389,   390,  1042,   392,  1043,   394,   395,   396,
6676      397,  1044,  1045,  1046,  1047,   402,   403,   404,   405,   406,
6677      407,   408,   409,   410,  1048,  1049,   413,   414,   415,   416,
6678      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
6679      427,  1050,   429,   430,   431,   432,   433,   434,   435,   436,
6680      437,   438,   439,   440,   441,  1051,   443,   444,   445,   446,
6681      447,  1052,  1053,   450,   451,   452,   453,   454,   455,  1054,
6682      457,   458,   459,   460,   461,   462,  1055,   464,   465,   466,
6683      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
6684      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
6685      487,   488,   489,   490,   491,   492,  1056,   494,   495,   496,
6686      497,   498,  1057,  1058,   501,   502,   503,   504,   505,  1059,
6687      507,   508,   509,   510,   511,   512,  1060,   514,   515,   516,
6688      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
6689      527,   528,   529,     0,   530,   531,   532,   533,   534,   535,
6690      536,   537,   538,   539,   540,   541,  1061,   543,   544,   545,
6691      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
6692      556,   557,   558,   559,   560,  1062,  1063,  1064,  1065,   565,
6693      566,   567,  1066,  1067,   570,   571,   572,   573,   574,   575,
6694      576,   577,   578,   579,   580,   581,   582,  1068,   584,  1069,
6695      586,   587,   588,   589,   590,   591,   592,   593,   594,  1070,
6696     1071,   597,  1072,   599,   600,   601,     0,   602,   603,   604,
6697     1073,     0,     0,     0,   940,   941,   942,   943,   944,  1074,
6698     1075,     0,     0,     0,     0,  1076,   945,   946,     0,   947,
6699     1077,     0,     0,     0,  1078,  1079,   948,   949,  1080,  1081,
6700      950,   951,   952,   953,     0,   954,   955,     0,   956,   957,
6701        0,     0,     0,     0,   958,     0,     0,     0,   959,     0,
6702        0,   960,     0,     0,     0,     0,     0,     0,     0,     0,
6703        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6704        0,   961,   962,   963,     0,   964,   965,     0,     0,     0,
6705        0,  2952,     0,     0,     0,     0,     0,   966,   967,   968,
6706        0,   969,   970,     0,     0,     0,   971,   972,   973,     0,
6707        0,     0,     0,     0,     0,     0,   974,     0,   975,     0,
6708        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6709        0,   976,     0,     0,     0,     0,     0,     0,     0,     0,
6710        0,     0,     0,     0,     0,   977,     0,     0,     0,     0,
6711      978,   979,     0,   980,     0,     0,     0,     0,     0,   981,
6712        0,   982,     0,     0,   983,     0,     0,   984,   985,   986,
6713        0,   987,   988,   989,     0,   990,     0,     0,     0,     0,
6714        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6715      991,     0,     0,     0,   992,   993,   994,     0,   995,     0,
6716        0,     0,     0,     0,     0,   996,     0,     0,     0,     0,
6717        0,     0,     0,     0,     0,     0,   997,   998,     0,     0,
6718        0,     0,     0,     0,     0,   999,     0,     0,  1000,     0,
6719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6720        0,     0,     0,     0,     0,     0,     0,     0,  1001,     0,
6721        0,     0,     0,     0,  1002,  1003,     0,  1004,  1005,  1006,
6722        0,     0,     0,  1007,     0,     0,     0,     0,     0,     0,
6723        0,  1008,  1009,  1010,  1011,     0,     0,     0,     0,     0,
6724        0,     0,     0,     0,  1012,  1013,  1014,     0,     0,     0,
6725        0,     0,  1015,     0,  1016,     0,     0,     0,     0,     0,
6726        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
6727      178,   179,   180,   181,   182,   183,   184,   185,  1017,   187,
6728      188,   189,   190,   191,   192,  1018,   194,   195,   196,   197,
6729      198,   199,   200,  1019,   202,   203,     0,   204,   205,   206,
6730      207,   208,   209,   210,   211,   212,   213,   214,   215,  1020,
6731      217,   218,   219,   220,   221,   222,   223,   224,  1021,   226,
6732     1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,     0,   234,
6733      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
6734      245,   246,  1029,   248,   249,   250,   251,   252,   253,   254,
6735      255,   256,   257,   258,  1030,  1031,  1032,   262,  1033,  1034,
6736      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
6737      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
6738      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
6739        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
6740      302,   303,   304,   305,   306,     0,  1035,   308,   309,   310,
6741      311,   312,  1036,   314,  1037,   316,   317,   318,   319,   320,
6742      321,   322,     0,   323,   324,   325,  1038,   327,   328,   329,
6743      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
6744      340,   341,   342,   343,   344,   345,   346,   347,  1039,  1040,
6745      350,   351,   352,  1041,   354,   355,   356,   357,   358,   359,
6746      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
6747      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
6748      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
6749      390,  1042,   392,  1043,   394,   395,   396,   397,  1044,  1045,
6750     1046,  1047,   402,   403,   404,   405,   406,   407,   408,   409,
6751      410,  1048,  1049,   413,   414,   415,   416,   417,   418,   419,
6752      420,   421,   422,   423,   424,   425,   426,   427,  1050,   429,
6753      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
6754      440,   441,  1051,   443,   444,   445,   446,   447,  1052,  1053,
6755      450,   451,   452,   453,   454,   455,  1054,   457,   458,   459,
6756      460,   461,   462,  1055,   464,   465,   466,   467,   468,   469,
6757      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
6758      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
6759      490,   491,   492,  1056,   494,   495,   496,   497,   498,  1057,
6760     1058,   501,   502,   503,   504,   505,  1059,   507,   508,   509,
6761      510,   511,   512,  1060,   514,   515,   516,   517,   518,   519,
6762      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
6763        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
6764      539,   540,   541,  1061,   543,   544,   545,   546,   547,   548,
6765      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
6766      559,   560,  1062,  1063,  1064,  1065,   565,   566,   567,  1066,
6767     1067,   570,   571,   572,   573,   574,   575,   576,   577,   578,
6768      579,   580,   581,   582,  1068,   584,  1069,   586,   587,   588,
6769      589,   590,   591,   592,   593,   594,  1070,  1071,   597,  1072,
6770      599,   600,   601,     0,   602,   603,   604,  1073,     0,     0,
6771        0,   940,   941,   942,   943,   944,  1074,  1075,     0,     0,
6772        0,     0,  1076,   945,   946,     0,   947,  1077,     0,     0,
6773        0,  1078,  1079,   948,   949,  1080,  1081,   950,   951,   952,
6774      953,     0,   954,   955,     0,   956,   957,     0,     0,     0,
6775        0,   958,     0,     0,     0,  4687,     0,     0,   960,     0,
6776        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6777        0,     0,     0,     0,     0,     0,     0,     0,   961,   962,
6778      963,     0,   964,   965,     0,     0,     0,     0,     0,     0,
6779        0,     0,     0,     0,   966,   967,   968,     0,   969,   970,
6780        0,     0,     0,   971,   972,   973,     0,  2578,     0,     0,
6781        0,     0,     0,   974,     0,   975,     0,     0,     0,     0,
6782        0,     0,     0,     0,     0,     0,     0,     0,   976,     0,
6783        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6784        0,     0,   977,     0,     0,     0,     0,   978,   979,     0,
6785      980,     0,     0,     0,     0,     0,   981,     0,   982,     0,
6786        0,   983,     0,     0,   984,   985,   986,     0,   987,   988,
6787      989,     0,   990,     0,     0,     0,     0,     0,     0,     0,
6788        0,     0,     0,     0,     0,     0,     0,   991,     0,     0,
6789        0,   992,   993,   994,     0,   995,     0,     0,     0,     0,
6790        0,     0,   996,     0,     0,     0,     0,     0,     0,     0,
6791        0,     0,     0,   997,   998,     0,     0,     0,     0,     0,
6792        0,     0,   999,     0,     0,  1000,     0,     0,     0,     0,
6793        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6794        0,     0,     0,     0,     0,  1001,     0,     0,     0,     0,
6795        0,  1002,  1003,     0,  1004,  1005,  1006,     0,     0,     0,
6796     1007,     0,     0,     0,     0,     0,     0,     0,  1008,  1009,
6797     1010,  1011,     0,     0,     0,     0,     0,     0,     0,     0,
6798        0,  1012,  1013,  1014,     0,     0,     0,     0,     0,  1015,
6799        0,  1016,     0,     0,     0,     0,     0,     0,     0,     0,
6800        0,     0,     0,   174,   175,   176,   177,   178,   179,   180,
6801      181,   182,   183,   184,   185,  1017,   187,   188,   189,   190,
6802      191,   192,  1018,   194,   195,   196,   197,   198,   199,   200,
6803     1019,   202,   203,     0,   204,   205,   206,   207,   208,   209,
6804      210,   211,   212,   213,   214,   215,  1020,   217,   218,   219,
6805      220,   221,   222,   223,   224,  1021,   226,  1022,  1023,   228,
6806     1024,  1025,  1026,  1027,  1028,     0,   234,   235,   236,   237,
6807      238,   239,   240,   241,   242,   243,   244,   245,   246,  1029,
6808      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
6809      258,  1030,  1031,  1032,   262,  1033,  1034,   265,     0,   266,
6810      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
6811      277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
6812      287,   288,   289,   290,   291,   292,   293,     0,     0,   294,
6813      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
6814      305,   306,     0,  1035,   308,   309,   310,   311,   312,  1036,
6815      314,  1037,   316,   317,   318,   319,   320,   321,   322,     0,
6816      323,   324,   325,  1038,   327,   328,   329,   330,   331,   332,
6817      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
6818      343,   344,   345,   346,   347,  1039,  1040,   350,   351,   352,
6819     1041,   354,   355,   356,   357,   358,   359,   360,   361,   362,
6820      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
6821      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
6822      383,   384,   385,   386,   387,   388,   389,   390,  1042,   392,
6823     1043,   394,   395,   396,   397,  1044,  1045,  1046,  1047,   402,
6824      403,   404,   405,   406,   407,   408,   409,   410,  1048,  1049,
6825      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
6826      423,   424,   425,   426,   427,  1050,   429,   430,   431,   432,
6827      433,   434,   435,   436,   437,   438,   439,   440,   441,  1051,
6828      443,   444,   445,   446,   447,  1052,  1053,   450,   451,   452,
6829      453,   454,   455,  1054,   457,   458,   459,   460,   461,   462,
6830     1055,   464,   465,   466,   467,   468,   469,   470,   471,   472,
6831      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
6832      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
6833     1056,   494,   495,   496,   497,   498,  1057,  1058,   501,   502,
6834      503,   504,   505,  1059,   507,   508,   509,   510,   511,   512,
6835     1060,   514,   515,   516,   517,   518,   519,   520,   521,   522,
6836      523,   524,   525,   526,   527,   528,   529,     0,   530,   531,
6837      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
6838     1061,   543,   544,   545,   546,   547,   548,   549,   550,   551,
6839      552,   553,   554,   555,   556,   557,   558,   559,   560,  1062,
6840     1063,  1064,  1065,   565,   566,   567,  1066,  1067,   570,   571,
6841      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
6842      582,  1068,   584,  1069,   586,   587,   588,   589,   590,   591,
6843      592,   593,   594,  1070,  1071,   597,  1072,   599,   600,   601,
6844        0,   602,   603,   604,  1073,     0,     0,     0,   940,   941,
6845      942,   943,   944,  1074,  1075,     0,     0,     0,     0,  1076,
6846      945,   946,     0,   947,  1077,     0,     0,     0,  1078,  1079,
6847      948,   949,  1080,  1081,   950,   951,   952,   953,     0,   954,
6848      955,     0,   956,   957,     0,     0,     0,     0,   958,     0,
6849        0,     0,   959,     0,     0,   960,     0,     0,     0,     0,
6850        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6851        0,     0,     0,     0,     0,   961,   962,   963,     0,   964,
6852      965,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6853        0,   966,   967,   968,     0,   969,   970,     0,     0,     0,
6854      971,   972,   973,     0,     0,     0,     0,     0,     0,     0,
6855      974,     0,   975,     0,     0,     0,     0,     0,     0,     0,
6856        0,     0,     0,     0,     0,   976,     0,     0,     0,     0,
6857        0,     0,     0,     0,     0,     0,     0,     0,     0,   977,
6858        0,     0,     0,     0,   978,   979,     0,   980,     0,     0,
6859        0,     0,     0,   981,     0,   982,     0,     0,   983,     0,
6860        0,   984,   985,   986,     0,   987,   988,   989,     0,   990,
6861        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6862        0,     0,     0,     0,   991,     0,     0,     0,   992,   993,
6863      994,     0,   995,     0,     0,     0,     0,     0,     0,   996,
6864        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6865      997,   998,     0,     0,     0,     0,     0,     0,     0,   999,
6866        0,     0,  1000,     0,     0,     0,     0,     0,     0,     0,
6867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6868        0,     0,  1001,     0,     0,     0,     0,     0,  1002,  1003,
6869        0,  1004,  1005,  1006,     0,     0,     0,  1007,     0,     0,
6870        0,     0,     0,     0,     0,  1008,  1009,  1010,  1011,     0,
6871        0,     0,     0,     0,     0,     0,     0,     0,  1012,  1013,
6872     1014,     0,     0,     0,     0,     0,  1015,     0,  1016,     0,
6873        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6874      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
6875      184,   185,  1017,   187,   188,   189,   190,   191,   192,  1018,
6876      194,   195,   196,   197,   198,   199,   200,  1019,   202,   203,
6877        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
6878      213,   214,   215,  1020,   217,   218,   219,   220,   221,   222,
6879      223,   224,  1021,   226,  1022,  1023,   228,  1024,  1025,  1026,
6880     1027,  1028,     0,   234,   235,   236,   237,   238,   239,   240,
6881      241,   242,   243,   244,   245,   246,  1029,   248,   249,   250,
6882      251,   252,   253,   254,   255,   256,   257,   258,  1030,  1031,
6883     1032,   262,  1033,  1034,   265,     0,   266,   267,   268,   269,
6884      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
6885      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
6886      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
6887      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
6888     1035,   308,   309,   310,   311,   312,  1036,   314,  1037,   316,
6889      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
6890     1038,   327,   328,   329,   330,   331,   332,   333,   334,   335,
6891      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
6892      346,   347,  1039,  1040,   350,   351,   352,  1041,   354,   355,
6893      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
6894      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
6895      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
6896      386,   387,   388,   389,   390,  1042,   392,  1043,   394,   395,
6897      396,   397,  1044,  1045,  1046,  1047,   402,   403,   404,   405,
6898      406,   407,   408,   409,   410,  1048,  1049,   413,   414,   415,
6899      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
6900      426,   427,  1050,   429,   430,   431,   432,   433,   434,   435,
6901      436,   437,   438,   439,   440,   441,  1051,   443,   444,   445,
6902      446,   447,  1052,  1053,   450,   451,   452,   453,   454,   455,
6903     1054,   457,   458,   459,   460,   461,   462,  1055,   464,   465,
6904      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
6905      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
6906      486,   487,   488,   489,   490,   491,   492,  1056,   494,   495,
6907      496,   497,   498,  1057,  1058,   501,   502,   503,   504,   505,
6908     1059,   507,   508,   509,   510,   511,   512,  1060,   514,   515,
6909      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
6910      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
6911      535,   536,   537,   538,   539,   540,   541,  1061,   543,   544,
6912      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
6913      555,   556,   557,   558,   559,   560,  1062,  1063,  1064,  1065,
6914      565,   566,   567,  1066,  1067,   570,   571,   572,   573,   574,
6915      575,   576,   577,   578,   579,   580,   581,   582,  1068,   584,
6916     1069,   586,   587,   588,   589,   590,   591,   592,   593,   594,
6917     1070,  1071,   597,  1072,   599,   600,   601,     0,   602,   603,
6918      604,  1073,     0,     0,     0,   940,   941,   942,   943,   944,
6919     1074,  1075,     0,     0,     0,     0,  1076,   945,   946,     0,
6920      947,  1077,     0,     0,     0,  1078,  1079,   948,   949,  1080,
6921     1081,   950,   951,   952,   953,     0,   954,   955,     0,   956,
6922      957,     0,     0,     0,     0,   958,     0,     0,     0,   959,
6923        0,     0,   960,     0,     0,     0,     0,     0,     0,     0,
6924        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6925        0,     0,   961,   962,   963,     0,   964,   965,     0,     0,
6926        0,     0,     0,     0,     0,     0,     0,     0,   966,   967,
6927      968,     0,   969,   970,     0,     0,     0,   971,   972,   973,
6928        0,     0,     0,     0,     0,     0,     0,   974,     0,   975,
6929        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6930        0,     0,   976,     0,     0,     0,     0,     0,     0,     0,
6931        0,     0,     0,     0,     0,     0,   977,     0,     0,     0,
6932        0,   978,   979,     0,   980,     0,     0,     0,     0,     0,
6933      981,     0,   982,     0,     0,   983,     0,     0,   984,   985,
6934      986,     0,   987,   988,   989,     0,   990,     0,     0,     0,
6935        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6936        0,   991,     0,     0,     0,   992,   993,   994,     0,   995,
6937        0,     0,     0,     0,     0,     0,   996,     0,     0,     0,
6938        0,     0,     0,     0,     0,     0,     0,   997,   998,     0,
6939        0,     0,     0,     0,     0,     0,   999,     0,     0,  1000,
6940        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6941        0,     0,     0,     0,     0,     0,     0,     0,     0,  1001,
6942        0,     0,     0,     0,     0,  1002,  1003,     0,  1004,  1005,
6943     1006,     0,     0,     0,  1007,     0,     0,     0,     0,     0,
6944        0,     0,  1008,  1009,  1010,  1011,     0,     0,     0,     0,
6945        0,     0,     0,     0,     0,  1012,  1013,  1014,     0,     0,
6946        0,     0,     0,  1015,     0,  1016,     0,     0,     0,     0,
6947        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
6948      177,   178,   179,   180,   181,   182,   183,   184,   185,  1017,
6949      187,   188,   189,   190,   191,   192,  1018,   194,   195,   196,
6950      197,   198,   199,   200,  1019,   202,   203,     0,   204,   205,
6951      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
6952     1020,   217,   218,   219,   220,   221,   222,   223,   224,  1021,
6953      226,  1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,     0,
6954      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
6955      244,   245,   246,  1029,   248,   249,   250,   251,   252,   253,
6956      254,   255,   256,   257,   258,  1030,  1031,  1032,   262,  1033,
6957     1034,   265,     0,   266,   267,   268,   269,   270,   271,   272,
6958      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
6959      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
6960      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
6961      301,   302,   303,   304,   305,   306,     0,  1035,   308,   309,
6962      310,   311,   312,  1036,   314,  1037,   316,   317,   318,   319,
6963      320,   321,   322,     0,   323,   324,   325,  1038,   327,   328,
6964      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
6965      339,   340,   341,   342,   343,   344,   345,   346,   347,  1039,
6966     1040,   350,   351,   352,  1041,   354,   355,   356,   357,   358,
6967      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
6968      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
6969      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
6970      389,   390,  1042,   392,  1043,   394,   395,   396,   397,  1044,
6971     1045,  1046,  1047,   402,   403,   404,   405,   406,   407,   408,
6972      409,   410,  1048,  1049,   413,   414,   415,   416,   417,   418,
6973      419,   420,   421,   422,   423,   424,   425,   426,   427,  1050,
6974      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
6975      439,   440,   441,  1051,   443,   444,   445,   446,   447,  1052,
6976     1053,   450,   451,   452,   453,   454,   455,  1054,   457,   458,
6977      459,   460,   461,   462,  1055,   464,   465,   466,   467,   468,
6978      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
6979      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
6980      489,   490,   491,   492,  1056,   494,   495,   496,   497,   498,
6981     1057,  1058,   501,   502,   503,   504,   505,  1059,   507,   508,
6982      509,   510,   511,   512,  1060,   514,   515,   516,   517,   518,
6983      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
6984      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
6985      538,   539,   540,   541,  1061,   543,   544,   545,   546,   547,
6986      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
6987      558,   559,   560,  1062,  1063,  1064,  1065,   565,   566,   567,
6988     1066,  1067,   570,   571,   572,   573,   574,   575,   576,   577,
6989      578,   579,   580,   581,   582,  1068,   584,  1069,   586,   587,
6990      588,   589,   590,   591,   592,   593,   594,  1070,  1071,   597,
6991     1072,   599,   600,   601,     0,   602,   603,   604,  1073,     0,
6992        0,     0,   940,   941,   942,   943,   944,  1074,  1075,     0,
6993        0,     0,     0,  1076,   945,   946,     0,   947,  1575,     0,
6994        0,     0,  1078,  1079,   948,   949,  1080,  1081,   950,   951,
6995      952,   953,     0,   954,   955,     0,   956,   957,     0,     0,
6996        0,     0,   958,     0,     0,     0,   959,     0,     0,   960,
6997        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6998        0,     0,     0,     0,     0,     0,     0,     0,     0,   961,
6999      962,   963,     0,   964,   965,     0,     0,     0,     0,     0,
7000        0,     0,     0,     0,     0,   966,   967,   968,     0,   969,
7001      970,     0,     0,     0,   971,   972,   973,     0,     0,     0,
7002        0,     0,     0,     0,   974,     0,   975,     0,     0,     0,
7003        0,     0,     0,     0,     0,     0,     0,     0,     0,   976,
7004        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7005        0,     0,     0,   977,     0,     0,     0,     0,   978,   979,
7006        0,   980,     0,     0,     0,     0,     0,   981,     0,   982,
7007        0,     0,   983,     0,     0,   984,   985,   986,     0,   987,
7008      988,   989,     0,   990,     0,     0,     0,     0,     0,     0,
7009        0,     0,     0,     0,     0,     0,     0,     0,   991,     0,
7010        0,     0,   992,   993,   994,     0,   995,     0,     0,     0,
7011        0,     0,     0,   996,     0,     0,     0,     0,     0,     0,
7012        0,     0,     0,     0,   997,   998,     0,     0,     0,     0,
7013        0,     0,     0,   999,     0,     0,  1000,     0,     0,     0,
7014        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7015        0,     0,     0,     0,     0,     0,  1001,     0,     0,     0,
7016        0,     0,  1002,  1003,     0,  1004,  1005,  1006,     0,     0,
7017        0,  1007,     0,     0,     0,     0,     0,     0,     0,  1008,
7018     1009,  1010,  1011,     0,     0,     0,     0,     0,     0,     0,
7019        0,     0,  1012,  1013,  1014,     0,     0,     0,     0,     0,
7020     1015,     0,  1016,     0,     0,     0,     0,     0,     0,     0,
7021        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
7022      180,   181,   182,   183,   184,   185,  1017,   187,   188,   189,
7023      190,   191,   192,  1018,   194,   195,   196,   197,   198,   199,
7024      200,  1019,   202,   203,     0,   204,   205,   206,   207,   208,
7025      209,   210,   211,   212,   213,   214,   215,  1020,   217,   218,
7026      219,   220,   221,   222,   223,   224,  1021,   226,  1022,  1023,
7027      228,  1024,  1025,  1026,  1027,  1028,     0,   234,   235,   236,
7028      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
7029     1029,   248,   249,   250,   251,   252,   253,   254,   255,   256,
7030      257,   258,  1030,  1031,  1032,   262,  1033,  1034,   265,     0,
7031      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
7032      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
7033      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
7034      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
7035      304,   305,   306,     0,  1035,   308,   309,   310,   311,   312,
7036     1036,   314,  1037,   316,   317,   318,   319,   320,   321,   322,
7037        0,   323,   324,   325,  1038,  2146,   328,   329,   330,   331,
7038      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
7039      342,   343,   344,   345,   346,   347,  1039,  1040,   350,   351,
7040      352,  1041,   354,   355,   356,   357,   358,   359,   360,   361,
7041      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
7042      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
7043      382,   383,   384,   385,   386,   387,   388,   389,   390,  1042,
7044      392,  1043,   394,   395,   396,   397,  1044,  1045,  1046,  1047,
7045      402,   403,   404,   405,   406,   407,   408,   409,   410,  1048,
7046     1049,   413,   414,   415,   416,   417,   418,   419,   420,   421,
7047      422,   423,   424,   425,   426,   427,  1050,   429,   430,   431,
7048      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
7049     1051,   443,   444,   445,   446,   447,  1052,  1053,   450,   451,
7050      452,   453,   454,   455,  1054,   457,   458,   459,   460,   461,
7051      462,  1055,   464,   465,   466,   467,   468,   469,   470,   471,
7052      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
7053      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
7054      492,  1056,   494,   495,   496,   497,   498,  1057,  1058,   501,
7055      502,   503,   504,   505,  1059,   507,   508,   509,   510,   511,
7056      512,  1060,   514,   515,   516,   517,   518,   519,   520,   521,
7057      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
7058      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
7059      541,  1061,   543,   544,   545,   546,   547,   548,   549,   550,
7060      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
7061     1062,  1063,  1064,  1065,   565,   566,   567,  1066,  1067,   570,
7062      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
7063      581,   582,  2147,   584,  1069,   586,   587,   588,   589,   590,
7064      591,   592,   593,   594,  1070,  1071,   597,  1072,   599,   600,
7065      601,     0,   602,   603,   604,  1073,     0,     0,     0,   940,
7066      941,   942,   943,   944,  1074,  1075,     0,     0,     0,     0,
7067     1076,   945,   946,     0,   947,  1077,     0,     0,     0,  1078,
7068     1079,   948,   949,  1080,  1081,   950,   951,   952,   953,     0,
7069      954,   955,     0,   956,   957,     0,     0,     0,     0,   958,
7070        0,     0,     0,   959,     0,     0,   960,     0,     0,     0,
7071        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7072        0,     0,     0,     0,     0,     0,   961,   962,   963,     0,
7073      964,   965,     0,     0,     0,     0,     0,     0,     0,     0,
7074        0,     0,   966,   967,   968,     0,   969,   970,     0,     0,
7075        0,   971,   972,   973,     0,     0,     0,     0,     0,     0,
7076        0,   974,     0,   975,     0,     0,     0,     0,     0,     0,
7077        0,     0,     0,     0,     0,     0,   976,     0,     0,     0,
7078        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7079      977,     0,     0,     0,     0,   978,   979,     0,   980,     0,
7080        0,     0,     0,     0,   981,     0,   982,     0,     0,   983,
7081        0,     0,   984,   985,   986,     0,   987,   988,   989,     0,
7082      990,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7083        0,     0,     0,     0,     0,   991,     0,     0,     0,   992,
7084      993,   994,     0,   995,     0,     0,     0,     0,     0,     0,
7085      996,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7086        0,   997,   998,     0,     0,     0,     0,     0,     0,     0,
7087      999,     0,     0,  1000,     0,     0,     0,     0,     0,     0,
7088        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7089        0,     0,     0,  1001,     0,     0,     0,     0,     0,  1002,
7090     1003,     0,  1004,  1005,  1006,     0,     0,     0,  1007,     0,
7091        0,     0,     0,     0,     0,     0,  1008,  1009,  1010,  1011,
7092        0,     0,     0,     0,     0,     0,     0,     0,     0,  1012,
7093     1013,  1014,     0,     0,     0,     0,     0,  1015,     0,  1016,
7094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7095        0,   174,   175,   176,   177,   178,   179,   180,   181,   182,
7096      183,   184,   185,  1017,   187,   188,   189,   190,   191,   192,
7097     1018,   194,   195,   196,   197,   198,   199,   200,  1019,   202,
7098      203,     0,   204,   205,   206,   207,   208,   209,   210,   211,
7099      212,   213,   214,   215,  1020,   217,   218,   219,   220,   221,
7100      222,   223,   224,  1021,   226,  1022,  1023,   228,  1024,  1025,
7101     1026,  1027,  1028,     0,   234,   235,   236,   237,   238,   239,
7102      240,   241,   242,   243,   244,   245,   246,  1029,   248,   249,
7103      250,   251,   252,   253,   254,   255,   256,   257,   258,  1030,
7104     1031,  1032,   262,  1033,  1034,   265,     0,   266,   267,   268,
7105      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
7106      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
7107      289,   290,   291,   292,   293,     0,     0,   294,   295,   296,
7108      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
7109        0,  1035,   308,   309,   310,   311,   312,  1036,   314,  1037,
7110      316,   317,   318,   319,   320,   321,   322,     0,   323,   324,
7111      325,  1038,   327,   328,   329,   330,   331,   332,   333,   334,
7112      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
7113      345,   346,   347,  1039,  1040,   350,   351,   352,  1041,   354,
7114      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
7115      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
7116      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
7117      385,   386,   387,   388,   389,   390,  1042,   392,  1043,   394,
7118      395,   396,   397,  1044,  1045,  1046,  1047,   402,   403,   404,
7119      405,   406,   407,   408,   409,   410,  1048,  1049,   413,   414,
7120      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
7121      425,   426,   427,  1050,   429,   430,   431,   432,   433,   434,
7122      435,   436,   437,   438,   439,   440,   441,  1051,   443,   444,
7123      445,   446,   447,  1052,  1053,   450,   451,   452,   453,   454,
7124      455,  1054,   457,   458,   459,   460,   461,   462,  1055,   464,
7125      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
7126      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
7127      485,   486,   487,   488,   489,   490,   491,   492,  1056,   494,
7128      495,   496,   497,   498,  1057,  1058,   501,   502,   503,   504,
7129      505,  1059,   507,   508,   509,   510,   511,   512,  1060,   514,
7130      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
7131      525,   526,   527,   528,   529,     0,   530,   531,   532,   533,
7132      534,   535,   536,   537,   538,   539,   540,   541,  1061,   543,
7133      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
7134      554,   555,   556,   557,   558,   559,   560,  1062,  1063,  1064,
7135     1065,   565,   566,   567,  1066,  1067,   570,   571,   572,   573,
7136      574,   575,   576,   577,   578,   579,   580,   581,   582,  2147,
7137      584,  1069,   586,   587,   588,   589,   590,   591,   592,   593,
7138      594,  1070,  1071,   597,  1072,   599,   600,   601,     0,   602,
7139      603,   604,  1073,     0,     0,     0,   940,   941,   942,   943,
7140      944,  1074,  1075,     0,     0,     0,     0,  1076,   945,   946,
7141        0,   947,  1077,     0,     0,     0,  1078,  1079,   948,   949,
7142     1080,  1081,   950,   951,   952,   953,     0,   954,   955,     0,
7143      956,   957,     0,     0,     0,     0,   958,     0,     0,     0,
7144      959,     0,     0,   960,     0,     0,     0,     0,     0,     0,
7145        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7146        0,     0,     0,   961,   962,   963,     0,   964,   965,     0,
7147        0,     0,     0,     0,     0,     0,     0,     0,     0,   966,
7148      967,   968,     0,   969,   970,     0,     0,     0,   971,   972,
7149      973,     0,     0,     0,     0,     0,     0,     0,   974,     0,
7150     3544,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7151        0,     0,     0,   976,     0,     0,     0,     0,     0,     0,
7152        0,     0,     0,     0,     0,     0,     0,   977,     0,     0,
7153        0,     0,   978,   979,     0,   980,     0,     0,     0,     0,
7154        0,   981,     0,   982,     0,     0,   983,     0,     0,   984,
7155      985,   986,     0,   987,   988,   989,     0,   990,     0,     0,
7156        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7157        0,     0,   991,     0,     0,     0,   992,   993,   994,     0,
7158      995,     0,     0,     0,     0,     0,     0,   996,     0,     0,
7159        0,     0,     0,     0,     0,     0,     0,     0,   997,   998,
7160        0,     0,     0,     0,     0,     0,     0,   999,     0,     0,
7161     1000,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7162        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7163     1001,     0,     0,     0,     0,     0,  1002,  1003,     0,  1004,
7164     1005,  1006,     0,     0,     0,  1007,     0,     0,     0,     0,
7165        0,     0,     0,  1008,  1009,  1010,  1011,     0,     0,     0,
7166        0,     0,     0,     0,     0,     0,  1012,  1013,  1014,     0,
7167        0,     0,     0,     0,  1015,     0,  1016,     0,     0,     0,
7168        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
7169      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
7170     1017,   187,   188,   189,   190,   191,   192,  1018,   194,   195,
7171      196,   197,   198,   199,   200,  1019,   202,   203,     0,   204,
7172      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
7173      215,  1020,   217,   218,   219,   220,   221,   222,   223,   224,
7174     1021,   226,  1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,
7175        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
7176      243,   244,   245,   246,  1029,   248,   249,   250,   251,   252,
7177      253,   254,   255,   256,   257,   258,  1030,  1031,  1032,   262,
7178     1033,  1034,   265,     0,   266,   267,   268,   269,   270,   271,
7179      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
7180      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
7181      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
7182      300,   301,   302,   303,   304,   305,   306,     0,  1035,   308,
7183      309,   310,   311,   312,  1036,   314,  1037,   316,   317,   318,
7184      319,   320,   321,   322,     0,   323,   324,   325,  1038,   327,
7185      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
7186      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
7187     1039,  1040,   350,   351,   352,  1041,   354,   355,   356,   357,
7188      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
7189      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
7190      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
7191      388,   389,   390,  1042,   392,  1043,   394,   395,   396,   397,
7192     1044,  1045,  1046,  1047,   402,   403,   404,   405,   406,   407,
7193      408,   409,   410,  1048,  1049,   413,   414,   415,   416,   417,
7194      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
7195     1050,   429,   430,   431,   432,   433,   434,   435,   436,   437,
7196      438,   439,   440,   441,  1051,   443,   444,   445,   446,   447,
7197     1052,  1053,   450,   451,   452,   453,   454,   455,  1054,   457,
7198      458,   459,   460,   461,   462,  1055,   464,   465,   466,   467,
7199      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
7200      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
7201      488,   489,   490,   491,   492,  1056,   494,   495,   496,   497,
7202      498,  1057,  1058,   501,   502,   503,   504,   505,  1059,   507,
7203      508,   509,   510,   511,   512,  1060,   514,   515,   516,   517,
7204      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
7205      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
7206      537,   538,   539,   540,   541,  1061,   543,   544,   545,   546,
7207      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
7208      557,   558,   559,   560,  1062,  1063,  1064,  1065,   565,   566,
7209      567,  1066,  1067,   570,   571,   572,   573,   574,   575,   576,
7210      577,   578,   579,   580,   581,   582,  1068,   584,  1069,   586,
7211      587,   588,   589,   590,   591,   592,   593,   594,  1070,  1071,
7212      597,  1072,   599,   600,   601,     0,   602,   603,   604,  1073,
7213        0,     0,     0,   940,   941,   942,   943,   944,  1074,  1075,
7214        0,     0,     0,     0,  1076,   945,   946,     0,   947,  1077,
7215        0,     0,     0,  1078,  1079,   948,   949,  1080,  1081,   950,
7216      951,   952,   953,     0,   954,   955,     0,   956,   957,     0,
7217        0,     0,     0,   958,     0,     0,     0,   959,     0,     0,
7218      960,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7219        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7220      961,   962,   963,     0,   964,   965,     0,     0,     0,     0,
7221        0,     0,     0,     0,     0,     0,   966,   967,   968,     0,
7222      969,   970,     0,     0,     0,   971,   972,   973,     0,     0,
7223        0,     0,     0,     0,     0,   974,     0,  3566,     0,     0,
7224        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7225      976,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7226        0,     0,     0,     0,   977,     0,     0,     0,     0,   978,
7227      979,     0,   980,     0,     0,     0,     0,     0,   981,     0,
7228      982,     0,     0,   983,     0,     0,   984,   985,   986,     0,
7229      987,   988,   989,     0,   990,     0,     0,     0,     0,     0,
7230        0,     0,     0,     0,     0,     0,     0,     0,     0,   991,
7231        0,     0,     0,   992,   993,   994,     0,   995,     0,     0,
7232        0,     0,     0,     0,   996,     0,     0,     0,     0,     0,
7233        0,     0,     0,     0,     0,   997,   998,     0,     0,     0,
7234        0,     0,     0,     0,   999,     0,     0,  1000,     0,     0,
7235        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7236        0,     0,     0,     0,     0,     0,     0,  1001,     0,     0,
7237        0,     0,     0,  1002,  1003,     0,  1004,  1005,  1006,     0,
7238        0,     0,  1007,     0,     0,     0,     0,     0,     0,     0,
7239     1008,  1009,  1010,  1011,     0,     0,     0,     0,     0,     0,
7240        0,     0,     0,  1012,  1013,  1014,     0,     0,     0,     0,
7241        0,  1015,     0,  1016,     0,     0,     0,     0,     0,     0,
7242        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
7243      179,   180,   181,   182,   183,   184,   185,  1017,   187,   188,
7244      189,   190,   191,   192,  1018,   194,   195,   196,   197,   198,
7245      199,   200,  1019,   202,   203,     0,   204,   205,   206,   207,
7246      208,   209,   210,   211,   212,   213,   214,   215,  1020,   217,
7247      218,   219,   220,   221,   222,   223,   224,  1021,   226,  1022,
7248     1023,   228,  1024,  1025,  1026,  1027,  1028,     0,   234,   235,
7249      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
7250      246,  1029,   248,   249,   250,   251,   252,   253,   254,   255,
7251      256,   257,   258,  1030,  1031,  1032,   262,  1033,  1034,   265,
7252        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
7253      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
7254      285,   286,   287,   288,   289,   290,   291,   292,   293,     0,
7255        0,   294,   295,   296,   297,   298,   299,   300,   301,   302,
7256      303,   304,   305,   306,     0,  1035,   308,   309,   310,   311,
7257      312,  1036,   314,  1037,   316,   317,   318,   319,   320,   321,
7258      322,     0,   323,   324,   325,  1038,   327,   328,   329,   330,
7259      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
7260      341,   342,   343,   344,   345,   346,   347,  1039,  1040,   350,
7261      351,   352,  1041,   354,   355,   356,   357,   358,   359,   360,
7262      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
7263      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
7264      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
7265     1042,   392,  1043,   394,   395,   396,   397,  1044,  1045,  1046,
7266     1047,   402,   403,   404,   405,   406,   407,   408,   409,   410,
7267     1048,  1049,   413,   414,   415,   416,   417,   418,   419,   420,
7268      421,   422,   423,   424,   425,   426,   427,  1050,   429,   430,
7269      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
7270      441,  1051,   443,   444,   445,   446,   447,  1052,  1053,   450,
7271      451,   452,   453,   454,   455,  1054,   457,   458,   459,   460,
7272      461,   462,  1055,   464,   465,   466,   467,   468,   469,   470,
7273      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
7274      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
7275      491,   492,  1056,   494,   495,   496,   497,   498,  1057,  1058,
7276      501,   502,   503,   504,   505,  1059,   507,   508,   509,   510,
7277      511,   512,  1060,   514,   515,   516,   517,   518,   519,   520,
7278      521,   522,   523,   524,   525,   526,   527,   528,   529,     0,
7279      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
7280      540,   541,  1061,   543,   544,   545,   546,   547,   548,   549,
7281      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
7282      560,  1062,  1063,  1064,  1065,   565,   566,   567,  1066,  1067,
7283      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
7284      580,   581,   582,  1068,   584,  1069,   586,   587,   588,   589,
7285      590,   591,   592,   593,   594,  1070,  1071,   597,  1072,   599,
7286      600,   601,     0,   602,   603,   604,  1073,     0,     0,     0,
7287      940,   941,   942,   943,   944,  1074,  1075,     0,     0,     0,
7288        0,  1076,   945,   946,     0,   947,  1077,     0,     0,     0,
7289     1078,  1079,   948,   949,  1080,  1081,   950,   951,   952,   953,
7290        0,   954,   955,     0,   956,   957,     0,     0,     0,     0,
7291      958,     0,     0,     0,   959,     0,     0,   960,     0,     0,
7292        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7293        0,     0,     0,     0,     0,     0,     0,   961,   962,   963,
7294        0,   964,   965,     0,     0,     0,     0,     0,     0,     0,
7295        0,     0,     0,   966,   967,   968,     0,   969,   970,     0,
7296        0,     0,   971,   972,   973,     0,     0,     0,     0,     0,
7297        0,     0,   974,     0,   975,     0,     0,     0,     0,     0,
7298        0,     0,     0,     0,     0,     0,     0,   976,     0,     0,
7299        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7300        0,   977,     0,     0,     0,     0,   978,   979,  5768,   980,
7301        0,     0,     0,     0,     0,   981,     0,   982,     0,     0,
7302      983,     0,     0,   984,     0,   986,     0,   987,   988,   989,
7303        0,   990,     0,     0,     0,     0,     0,     0,     0,     0,
7304        0,     0,     0,     0,     0,     0,   991,     0,     0,     0,
7305      992,   993,   994,     0,   995,     0,     0,     0,     0,     0,
7306        0,   996,     0,     0,     0,     0,     0,     0,     0,     0,
7307        0,     0,   997,   998,     0,     0,     0,     0,     0,     0,
7308        0,   999,     0,     0,  1000,     0,     0,     0,     0,     0,
7309        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7310        0,     0,     0,     0,  1001,     0,     0,     0,     0,     0,
7311     1002,  1003,     0,  1004,  1005,  1006,     0,     0,     0,  1007,
7312        0,     0,     0,     0,     0,     0,     0,  1008,  1009,  1010,
7313     1011,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7314     1012,  1013,  1014,     0,     0,     0,     0,     0,  1015,     0,
7315     1016,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7316        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
7317      182,   183,   184,   185,  1017,   187,   188,   189,   190,   191,
7318      192,  1018,   194,   195,   196,   197,   198,   199,   200,  1019,
7319      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
7320      211,   212,   213,   214,   215,  1020,   217,   218,   219,   220,
7321      221,   222,   223,   224,  1021,   226,  1022,  1023,   228,  1024,
7322     1025,  1026,  1027,  1028,     0,   234,   235,   236,   237,   238,
7323      239,   240,   241,   242,   243,   244,   245,   246,  1029,   248,
7324      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
7325     1030,  1031,  1032,   262,  1033,  1034,   265,     0,   266,   267,
7326      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
7327      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
7328      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
7329      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
7330      306,     0,  1035,   308,   309,   310,   311,   312,  1036,   314,
7331     1037,   316,   317,   318,   319,   320,   321,   322,     0,   323,
7332      324,   325,  1038,   327,   328,   329,   330,   331,   332,   333,
7333      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
7334      344,   345,   346,   347,  1039,  1040,   350,   351,   352,  1041,
7335      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
7336      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
7337      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
7338      384,   385,   386,   387,   388,   389,   390,  1042,   392,  1043,
7339      394,   395,   396,   397,  1044,  1045,  1046,  1047,   402,   403,
7340      404,   405,   406,   407,   408,   409,   410,  1048,  1049,   413,
7341      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
7342      424,   425,   426,   427,  1050,   429,   430,   431,   432,   433,
7343      434,   435,   436,   437,   438,   439,   440,   441,  1051,   443,
7344      444,   445,   446,   447,  1052,  1053,   450,   451,   452,   453,
7345      454,   455,  1054,   457,   458,   459,   460,   461,   462,  1055,
7346      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
7347      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
7348      484,   485,   486,   487,   488,   489,   490,   491,   492,  1056,
7349      494,   495,   496,   497,   498,  1057,  1058,   501,   502,   503,
7350      504,   505,  1059,   507,   508,   509,   510,   511,   512,  1060,
7351      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
7352      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
7353      533,   534,   535,   536,   537,   538,   539,   540,   541,  1061,
7354      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
7355      553,   554,   555,   556,   557,   558,   559,   560,  1062,  1063,
7356     1064,  1065,   565,   566,   567,  1066,  1067,   570,   571,   572,
7357      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
7358     1068,   584,  1069,   586,   587,   588,   589,   590,   591,   592,
7359      593,   594,  1070,  1071,   597,  1072,   599,   600,   601,     0,
7360      602,   603,   604,  1073,     0,     0,     0,   940,   941,   942,
7361      943,   944,  1074,  1075,     0,     0,     0,     0,  1076,   945,
7362      946,     0,   947,  1077,     0,     0,     0,  1078,  1079,   948,
7363      949,  1080,  1081,   950,   951,   952,   953,     0,   954,   955,
7364        0,   956,   957,     0,     0,     0,     0,   958,     0,     0,
7365        0,   959,     0,     0,   960,     0,     0,     0,     0,     0,
7366        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7367        0,     0,     0,     0,   961,   962,   963,     0,   964,   965,
7368        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7369      966,   967,   968,     0,   969,   970,     0,     0,     0,   971,
7370      972,   973,     0,     0,     0,     0,     0,     0,     0,   974,
7371        0,  1541,     0,     0,     0,     0,     0,     0,     0,     0,
7372        0,     0,     0,     0,   976,     0,     0,     0,     0,     0,
7373        0,     0,     0,     0,     0,     0,     0,     0,   977,     0,
7374        0,     0,     0,   978,   979,     0,   980,     0,     0,     0,
7375        0,     0,   981,     0,   982,     0,     0,   983,     0,     0,
7376      984,     0,   986,     0,   987,   988,   989,     0,   990,     0,
7377        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7378        0,     0,     0,   991,     0,     0,     0,   992,   993,   994,
7379        0,   995,     0,     0,     0,     0,     0,     0,   996,     0,
7380        0,     0,     0,     0,     0,     0,     0,     0,     0,   997,
7381      998,     0,     0,     0,     0,     0,     0,     0,   999,     0,
7382        0,  1000,     0,     0,     0,     0,     0,     0,     0,     0,
7383        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7384        0,  1001,     0,     0,     0,     0,     0,  1002,  1003,     0,
7385     1004,  1005,  1006,     0,     0,     0,  1007,     0,     0,     0,
7386        0,     0,     0,     0,  1008,  1009,  1010,  1011,     0,     0,
7387        0,     0,     0,     0,     0,     0,     0,  1012,  1013,  1014,
7388        0,     0,     0,     0,     0,  1015,     0,  1016,     0,     0,
7389        0,     0,     0,     0,     0,     0,     0,     0,     0,   174,
7390      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
7391      185,  1017,   187,   188,   189,   190,   191,   192,  1018,   194,
7392      195,   196,   197,   198,   199,   200,  1019,   202,   203,     0,
7393      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
7394      214,   215,  1020,   217,   218,   219,   220,   221,   222,   223,
7395      224,  1021,   226,  1022,  1023,   228,  1024,  1025,  1026,  1027,
7396     1028,     0,   234,   235,   236,   237,   238,   239,   240,   241,
7397      242,   243,   244,   245,   246,  1029,   248,   249,   250,   251,
7398      252,   253,   254,   255,   256,   257,   258,  1030,  1031,  1032,
7399      262,  1033,  1034,   265,     0,   266,   267,   268,   269,   270,
7400      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7401      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
7402      291,   292,   293,     0,     0,   294,   295,   296,   297,   298,
7403      299,   300,   301,   302,   303,   304,   305,   306,     0,  1035,
7404      308,   309,   310,   311,   312,  1036,   314,  1037,   316,   317,
7405      318,   319,   320,   321,   322,     0,   323,   324,   325,  1038,
7406      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
7407      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
7408      347,  1039,  1040,   350,   351,   352,  1041,   354,   355,   356,
7409      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
7410      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
7411      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
7412      387,   388,   389,   390,  1042,   392,  1043,   394,   395,   396,
7413      397,  1044,  1045,  1046,  1047,   402,   403,   404,   405,   406,
7414      407,   408,   409,   410,  1048,  1049,   413,   414,   415,   416,
7415      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
7416      427,  1050,   429,   430,   431,   432,   433,   434,   435,   436,
7417      437,   438,   439,   440,   441,  1051,   443,   444,   445,   446,
7418      447,  1052,  1053,   450,   451,   452,   453,   454,   455,  1054,
7419      457,   458,   459,   460,   461,   462,  1055,   464,   465,   466,
7420      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
7421      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
7422      487,   488,   489,   490,   491,   492,  1056,   494,   495,   496,
7423      497,   498,  1057,  1058,   501,   502,   503,   504,   505,  1059,
7424      507,   508,   509,   510,   511,   512,  1060,   514,   515,   516,
7425      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
7426      527,   528,   529,     0,   530,   531,   532,   533,   534,   535,
7427      536,   537,   538,   539,   540,   541,  1061,   543,   544,   545,
7428      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
7429      556,   557,   558,   559,   560,  1062,  1063,  1064,  1065,   565,
7430      566,   567,  1066,  1067,   570,   571,   572,   573,   574,   575,
7431      576,   577,   578,   579,   580,   581,   582,  1068,   584,  1069,
7432      586,   587,   588,   589,   590,   591,   592,   593,   594,  1070,
7433     1071,   597,  1072,   599,   600,   601,     0,   602,   603,   604,
7434     1073,     0,     0,     0,   940,   941,   942,   943,   944,  1542,
7435     1543,     0,     0,     0,     0,  1076,   945,   946,     0,   947,
7436     1077,     0,     0,     0,  1078,  1079,   948,   949,  1080,  1081,
7437      950,   951,   952,   953,     0,   954,   955,     0,   956,   957,
7438        0,     0,     0,     0,   958,     0,     0,     0,   959,     0,
7439        0,   960,     0,     0,     0,     0,     0,     0,     0,     0,
7440        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7441        0,   961,   962,   963,     0,   964,   965,     0,     0,     0,
7442        0,     0,     0,     0,     0,     0,     0,   966,   967,   968,
7443        0,   969,   970,     0,     0,     0,   971,   972,   973,     0,
7444        0,     0,     0,     0,     0,     0,   974,     0,  1679,     0,
7445        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7446        0,   976,     0,     0,     0,     0,     0,     0,     0,     0,
7447        0,     0,     0,     0,     0,   977,     0,     0,     0,     0,
7448      978,   979,     0,   980,     0,     0,     0,     0,     0,   981,
7449        0,   982,     0,     0,   983,     0,     0,   984,     0,   986,
7450        0,   987,   988,   989,     0,   990,     0,     0,     0,     0,
7451        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7452      991,     0,     0,     0,   992,   993,   994,     0,   995,     0,
7453        0,     0,     0,     0,     0,   996,     0,     0,     0,     0,
7454        0,     0,     0,     0,     0,     0,   997,   998,     0,     0,
7455        0,     0,     0,     0,     0,   999,     0,     0,  1000,     0,
7456        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7457        0,     0,     0,     0,     0,     0,     0,     0,  1001,     0,
7458        0,     0,     0,     0,  1002,  1003,     0,  1004,  1005,  1006,
7459        0,     0,     0,  1007,     0,     0,     0,     0,     0,     0,
7460        0,  1008,  1009,  1010,  1011,     0,     0,     0,     0,     0,
7461        0,     0,     0,     0,  1012,  1013,  1014,     0,     0,     0,
7462        0,     0,  1015,     0,  1016,     0,     0,     0,     0,     0,
7463        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
7464      178,   179,   180,   181,   182,   183,   184,   185,  1017,   187,
7465      188,   189,   190,   191,   192,  1018,   194,   195,   196,   197,
7466      198,   199,   200,  1019,   202,   203,     0,   204,   205,   206,
7467      207,   208,   209,   210,   211,   212,   213,   214,   215,  1020,
7468      217,   218,   219,   220,   221,   222,   223,   224,  1021,   226,
7469     1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,     0,   234,
7470      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
7471      245,   246,  1029,   248,   249,   250,   251,   252,   253,   254,
7472      255,   256,   257,   258,  1030,  1031,  1032,   262,  1033,  1034,
7473      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
7474      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
7475      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
7476        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
7477      302,   303,   304,   305,   306,     0,  1035,   308,   309,   310,
7478      311,   312,  1036,   314,  1037,   316,   317,   318,   319,   320,
7479      321,   322,     0,   323,   324,   325,  1038,   327,   328,   329,
7480      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
7481      340,   341,   342,   343,   344,   345,   346,   347,  1039,  1040,
7482      350,   351,   352,  1041,   354,   355,   356,   357,   358,   359,
7483      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
7484      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
7485      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
7486      390,  1042,   392,  1043,   394,   395,   396,   397,  1044,  1045,
7487     1046,  1047,   402,   403,   404,   405,   406,   407,   408,   409,
7488      410,  1048,  1049,   413,   414,   415,   416,   417,   418,   419,
7489      420,   421,   422,   423,   424,   425,   426,   427,  1050,   429,
7490      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
7491      440,   441,  1051,   443,   444,   445,   446,   447,  1052,  1053,
7492      450,   451,   452,   453,   454,   455,  1054,   457,   458,   459,
7493      460,   461,   462,  1055,   464,   465,   466,   467,   468,   469,
7494      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
7495      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
7496      490,   491,   492,  1056,   494,   495,   496,   497,   498,  1057,
7497     1058,   501,   502,   503,   504,   505,  1059,   507,   508,   509,
7498      510,   511,   512,  1060,   514,   515,   516,   517,   518,   519,
7499      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
7500        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
7501      539,   540,   541,  1061,   543,   544,   545,   546,   547,   548,
7502      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
7503      559,   560,  1062,  1063,  1064,  1065,   565,   566,   567,  1066,
7504     1067,   570,   571,   572,   573,   574,   575,   576,   577,   578,
7505      579,   580,   581,   582,  1068,   584,  1069,   586,   587,   588,
7506      589,   590,   591,   592,   593,   594,  1070,  1071,   597,  1072,
7507      599,   600,   601,     0,   602,   603,   604,  1073,     0,     0,
7508        0,   940,   941,   942,   943,   944,  1542,  1543,     0,     0,
7509        0,     0,  1076,   945,   946,     0,   947,  1077,     0,     0,
7510        0,  1078,  1079,   948,   949,  1080,  1081,   950,   951,   952,
7511      953,     0,   954,   955,     0,   956,   957,     0,     0,     0,
7512        0,   958,     0,     0,     0,   959,     0,     0,   960,     0,
7513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7514        0,     0,     0,     0,     0,     0,     0,     0,   961,   962,
7515      963,     0,   964,   965,     0,     0,     0,     0,     0,     0,
7516        0,     0,     0,     0,   966,   967,   968,     0,   969,   970,
7517        0,     0,     0,   971,   972,   973,     0,     0,     0,     0,
7518        0,     0,     0,   974,     0,  1681,     0,     0,     0,     0,
7519        0,     0,     0,     0,     0,     0,     0,     0,   976,     0,
7520        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7521        0,     0,   977,     0,     0,     0,     0,   978,   979,     0,
7522      980,     0,     0,     0,     0,     0,   981,     0,   982,     0,
7523        0,   983,     0,     0,   984,     0,   986,     0,   987,   988,
7524      989,     0,   990,     0,     0,     0,     0,     0,     0,     0,
7525        0,     0,     0,     0,     0,     0,     0,   991,     0,     0,
7526        0,   992,   993,   994,     0,   995,     0,     0,     0,     0,
7527        0,     0,   996,     0,     0,     0,     0,     0,     0,     0,
7528        0,     0,     0,   997,   998,     0,     0,     0,     0,     0,
7529        0,     0,   999,     0,     0,  1000,     0,     0,     0,     0,
7530        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7531        0,     0,     0,     0,     0,  1001,     0,     0,     0,     0,
7532        0,  1002,  1003,     0,  1004,  1005,  1006,     0,     0,     0,
7533     1007,     0,     0,     0,     0,     0,     0,     0,  1008,  1009,
7534     1010,  1011,     0,     0,     0,     0,     0,     0,     0,     0,
7535        0,  1012,  1013,  1014,     0,     0,     0,     0,     0,  1015,
7536        0,  1016,     0,     0,     0,     0,     0,     0,     0,     0,
7537        0,     0,     0,   174,   175,   176,   177,   178,   179,   180,
7538      181,   182,   183,   184,   185,  1017,   187,   188,   189,   190,
7539      191,   192,  1018,   194,   195,   196,   197,   198,   199,   200,
7540     1019,   202,   203,     0,   204,   205,   206,   207,   208,   209,
7541      210,   211,   212,   213,   214,   215,  1020,   217,   218,   219,
7542      220,   221,   222,   223,   224,  1021,   226,  1022,  1023,   228,
7543     1024,  1025,  1026,  1027,  1028,     0,   234,   235,   236,   237,
7544      238,   239,   240,   241,   242,   243,   244,   245,   246,  1029,
7545      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
7546      258,  1030,  1031,  1032,   262,  1033,  1034,   265,     0,   266,
7547      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
7548      277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
7549      287,   288,   289,   290,   291,   292,   293,     0,     0,   294,
7550      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
7551      305,   306,     0,  1035,   308,   309,   310,   311,   312,  1036,
7552      314,  1037,   316,   317,   318,   319,   320,   321,   322,     0,
7553      323,   324,   325,  1038,   327,   328,   329,   330,   331,   332,
7554      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
7555      343,   344,   345,   346,   347,  1039,  1040,   350,   351,   352,
7556     1041,   354,   355,   356,   357,   358,   359,   360,   361,   362,
7557      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
7558      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
7559      383,   384,   385,   386,   387,   388,   389,   390,  1042,   392,
7560     1043,   394,   395,   396,   397,  1044,  1045,  1046,  1047,   402,
7561      403,   404,   405,   406,   407,   408,   409,   410,  1048,  1049,
7562      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
7563      423,   424,   425,   426,   427,  1050,   429,   430,   431,   432,
7564      433,   434,   435,   436,   437,   438,   439,   440,   441,  1051,
7565      443,   444,   445,   446,   447,  1052,  1053,   450,   451,   452,
7566      453,   454,   455,  1054,   457,   458,   459,   460,   461,   462,
7567     1055,   464,   465,   466,   467,   468,   469,   470,   471,   472,
7568      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
7569      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
7570     1056,   494,   495,   496,   497,   498,  1057,  1058,   501,   502,
7571      503,   504,   505,  1059,   507,   508,   509,   510,   511,   512,
7572     1060,   514,   515,   516,   517,   518,   519,   520,   521,   522,
7573      523,   524,   525,   526,   527,   528,   529,     0,   530,   531,
7574      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
7575     1061,   543,   544,   545,   546,   547,   548,   549,   550,   551,
7576      552,   553,   554,   555,   556,   557,   558,   559,   560,  1062,
7577     1063,  1064,  1065,   565,   566,   567,  1066,  1067,   570,   571,
7578      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
7579      582,  1068,   584,  1069,   586,   587,   588,   589,   590,   591,
7580      592,   593,   594,  1070,  1071,   597,  1072,   599,   600,   601,
7581        0,   602,   603,   604,  1073,     0,     0,     0,   940,   941,
7582      942,   943,   944,  1542,  1543,     0,     0,     0,     0,  1076,
7583      945,   946,     0,   947,  1077,     0,     0,     0,  1078,  1079,
7584      948,   949,  1080,  1081,   950,   951,   952,   953,     0,   954,
7585      955,     0,   956,   957,     0,     0,     0,     0,   958,     0,
7586        0,     0,   959,     0,     0,   960,     0,     0,     0,     0,
7587        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7588        0,     0,     0,     0,     0,   961,   962,   963,     0,   964,
7589      965,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7590        0,   966,   967,   968,     0,   969,   970,     0,     0,     0,
7591      971,   972,   973,     0,     0,     0,     0,     0,     0,     0,
7592      974,     0,   975,     0,     0,     0,     0,     0,     0,     0,
7593        0,     0,     0,     0,     0,   976,     0,     0,     0,     0,
7594        0,     0,     0,     0,     0,     0,     0,     0,     0,   977,
7595        0,     0,     0,     0,   978,   979,     0,   980,     0,     0,
7596        0,     0,     0,   981,     0,   982,     0,     0,   983,     0,
7597        0,   984,     0,   986,     0,   987,   988,   989,     0,   990,
7598        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7599        0,     0,     0,     0,   991,     0,     0,     0,   992,   993,
7600      994,     0,   995,     0,     0,     0,     0,     0,     0,   996,
7601        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7602      997,   998,     0,     0,     0,     0,     0,     0,     0,   999,
7603        0,     0,  1000,     0,     0,     0,     0,     0,     0,     0,
7604        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7605        0,     0,  1001,     0,     0,     0,     0,     0,  1002,  1003,
7606        0,  1004,  1005,  1006,     0,     0,     0,  1007,     0,     0,
7607        0,     0,     0,     0,     0,  1008,  1009,  1010,  1011,     0,
7608        0,     0,     0,     0,     0,     0,     0,     0,  1012,  1013,
7609     1014,     0,     0,     0,     0,     0,  1015,     0,  1016,     0,
7610        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7611      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
7612      184,   185,  1017,   187,   188,   189,   190,   191,   192,  1018,
7613      194,   195,   196,   197,   198,   199,   200,  1019,   202,   203,
7614        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
7615      213,   214,   215,  1020,   217,   218,   219,   220,   221,   222,
7616      223,   224,  1021,   226,  1022,  1023,   228,  1024,  1025,  1026,
7617     1027,  1028,     0,   234,   235,   236,   237,   238,   239,   240,
7618      241,   242,   243,   244,   245,   246,  1029,   248,   249,   250,
7619      251,   252,   253,   254,   255,   256,   257,   258,  1030,  1031,
7620     1032,   262,  1033,  1034,   265,     0,   266,   267,   268,   269,
7621      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
7622      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
7623      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
7624      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
7625     1035,   308,   309,   310,   311,   312,  1036,   314,  1037,   316,
7626      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
7627     1038,   327,   328,   329,   330,   331,   332,   333,   334,   335,
7628      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
7629      346,   347,  1039,  1040,   350,   351,   352,  1041,   354,   355,
7630      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
7631      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
7632      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
7633      386,   387,   388,   389,   390,  1042,   392,  1043,   394,   395,
7634      396,   397,  1044,  1045,  1046,  1047,   402,   403,   404,   405,
7635      406,   407,   408,   409,   410,  1048,  1049,   413,   414,   415,
7636      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
7637      426,   427,  1050,   429,   430,   431,   432,   433,   434,   435,
7638      436,   437,   438,   439,   440,   441,  1051,   443,   444,   445,
7639      446,   447,  1052,  1053,   450,   451,   452,   453,   454,   455,
7640     1054,   457,   458,   459,   460,   461,   462,  1055,   464,   465,
7641      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
7642      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
7643      486,   487,   488,   489,   490,   491,   492,  1056,   494,   495,
7644      496,   497,   498,  1057,  1058,   501,   502,   503,   504,   505,
7645     1059,   507,   508,   509,   510,   511,   512,  1060,   514,   515,
7646      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
7647      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
7648      535,   536,   537,   538,   539,   540,   541,  1061,   543,   544,
7649      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
7650      555,   556,   557,   558,   559,   560,  1062,  1063,  1064,  1065,
7651      565,   566,   567,  1066,  1067,   570,   571,   572,   573,   574,
7652      575,   576,   577,   578,   579,   580,   581,   582,  1068,   584,
7653     1069,   586,   587,   588,   589,   590,   591,   592,   593,   594,
7654     1070,  1071,   597,  1072,   599,   600,   601,     0,   602,   603,
7655      604,  1073,     0,     0,     0,   940,   941,   942,   943,   944,
7656     1074,  1075,     0,     0,     0,     0,  1076,   945,   946,     0,
7657      947,  1077,     0,     0,     0,  1078,  1079,   948,   949,  1080,
7658     1081,   950,   951,   952,   953,     0,   954,   955,     0,   956,
7659      957,     0,     0,     0,     0,   958,     0,     0,     0,   959,
7660        0,     0,   960,     0,     0,     0,     0,     0,     0,     0,
7661        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7662        0,     0,   961,   962,   963,     0,   964,   965,     0,     0,
7663        0,     0,     0,     0,     0,     0,     0,     0,   966,   967,
7664      968,     0,   969,   970,     0,     0,     0,   971,   972,   973,
7665        0,     0,     0,     0,     0,     0,     0,   974,     0,  2397,
7666        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7667        0,     0,   976,     0,     0,     0,     0,     0,     0,     0,
7668        0,     0,     0,     0,     0,     0,   977,     0,     0,     0,
7669        0,   978,   979,     0,   980,     0,     0,     0,     0,     0,
7670      981,     0,   982,     0,     0,   983,     0,     0,   984,     0,
7671      986,     0,   987,   988,   989,     0,   990,     0,     0,     0,
7672        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7673        0,   991,     0,     0,     0,   992,   993,   994,     0,   995,
7674        0,     0,     0,     0,     0,     0,   996,     0,     0,     0,
7675        0,     0,     0,     0,     0,     0,     0,   997,   998,     0,
7676        0,     0,     0,     0,     0,     0,   999,     0,     0,  1000,
7677        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7678        0,     0,     0,     0,     0,     0,     0,     0,     0,  1001,
7679        0,     0,     0,     0,     0,  1002,  1003,     0,  1004,  1005,
7680     1006,     0,     0,     0,  1007,     0,     0,     0,     0,     0,
7681        0,     0,  1008,  1009,  1010,  1011,     0,     0,     0,     0,
7682        0,     0,     0,     0,     0,  1012,  1013,  1014,     0,     0,
7683        0,     0,     0,  1015,     0,  1016,     0,     0,     0,     0,
7684        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
7685      177,   178,   179,   180,   181,   182,   183,   184,   185,  1017,
7686      187,   188,   189,   190,   191,   192,  1018,   194,   195,   196,
7687      197,   198,   199,   200,  1019,   202,   203,     0,   204,   205,
7688      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
7689     1020,   217,   218,   219,   220,   221,   222,   223,   224,  1021,
7690      226,  1022,  1023,   228,  1024,  1025,  1026,  1027,  1028,     0,
7691      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
7692      244,   245,   246,  1029,   248,   249,   250,   251,   252,   253,
7693      254,   255,   256,   257,   258,  1030,  1031,  1032,   262,  1033,
7694     1034,   265,     0,   266,   267,   268,   269,   270,   271,   272,
7695      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
7696      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
7697      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
7698      301,   302,   303,   304,   305,   306,     0,  1035,   308,   309,
7699      310,   311,   312,  1036,   314,  1037,   316,   317,   318,   319,
7700      320,   321,   322,     0,   323,   324,   325,  1038,   327,   328,
7701      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
7702      339,   340,   341,   342,   343,   344,   345,   346,   347,  1039,
7703     1040,   350,   351,   352,  1041,   354,   355,   356,   357,   358,
7704      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
7705      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
7706      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
7707      389,   390,  1042,   392,  1043,   394,   395,   396,   397,  1044,
7708     1045,  1046,  1047,   402,   403,   404,   405,   406,   407,   408,
7709      409,   410,  1048,  1049,   413,   414,   415,   416,   417,   418,
7710      419,   420,   421,   422,   423,   424,   425,   426,   427,  1050,
7711      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
7712      439,   440,   441,  1051,   443,   444,   445,   446,   447,  1052,
7713     1053,   450,   451,   452,   453,   454,   455,  1054,   457,   458,
7714      459,   460,   461,   462,  1055,   464,   465,   466,   467,   468,
7715      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
7716      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
7717      489,   490,   491,   492,  1056,   494,   495,   496,   497,   498,
7718     1057,  1058,   501,   502,   503,   504,   505,  1059,   507,   508,
7719      509,   510,   511,   512,  1060,   514,   515,   516,   517,   518,
7720      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
7721      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
7722      538,   539,   540,   541,  1061,   543,   544,   545,   546,   547,
7723      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
7724      558,   559,   560,  1062,  1063,  1064,  1065,   565,   566,   567,
7725     1066,  1067,   570,   571,   572,   573,   574,   575,   576,   577,
7726      578,   579,   580,   581,   582,  1068,   584,  1069,   586,   587,
7727      588,   589,   590,   591,   592,   593,   594,  1070,  1071,   597,
7728     1072,   599,   600,   601,     0,   602,   603,   604,  1073,     0,
7729        0,     0,   940,   941,   942,   943,   944,  1074,  1075,     0,
7730        0,     0,     0,  1076,   945,   946,     0,   947,  1077,     0,
7731        0,     0,  1078,  1079,   948,   949,  1080,  1081,   950,   951,
7732      952,   953,     0,   954,   955,     0,   956,   957,     0,     0,
7733        0,     0,   958,     0,     0,     0,   959,     0,     0,   960,
7734        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7735        0,     0,     0,     0,     0,     0,     0,     0,     0,   961,
7736      962,   963,     0,   964,   965,     0,     0,     0,     0,     0,
7737        0,     0,     0,     0,     0,   966,   967,   968,     0,   969,
7738      970,     0,     0,     0,   971,   972,   973,     0,     0,     0,
7739        0,     0,     0,     0,   974,     0,  2399,     0,     0,     0,
7740        0,     0,     0,     0,     0,     0,     0,     0,     0,   976,
7741        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7742        0,     0,     0,   977,     0,     0,     0,     0,   978,   979,
7743        0,   980,     0,     0,     0,     0,     0,   981,     0,   982,
7744        0,     0,   983,     0,     0,   984,     0,   986,     0,   987,
7745      988,   989,     0,   990,     0,     0,     0,     0,     0,     0,
7746        0,     0,     0,     0,     0,     0,     0,     0,   991,     0,
7747        0,     0,   992,   993,   994,     0,   995,     0,     0,     0,
7748        0,     0,     0,   996,     0,     0,     0,     0,     0,     0,
7749        0,     0,     0,     0,   997,   998,     0,     0,     0,     0,
7750        0,     0,     0,   999,     0,     0,  1000,     0,     0,     0,
7751        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7752        0,     0,     0,     0,     0,     0,  1001,     0,     0,     0,
7753        0,     0,  1002,  1003,     0,  1004,  1005,  1006,     0,     0,
7754        0,  1007,     0,     0,     0,     0,     0,     0,     0,  1008,
7755     1009,  1010,  1011,     0,     0,     0,     0,     0,     0,     0,
7756        0,     0,  1012,  1013,  1014,     0,     0,     0,     0,     0,
7757     1015,     0,  1016,     0,     0,     0,     0,     0,     0,     0,
7758        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
7759      180,   181,   182,   183,   184,   185,  1017,   187,   188,   189,
7760      190,   191,   192,  1018,   194,   195,   196,   197,   198,   199,
7761      200,  1019,   202,   203,     0,   204,   205,   206,   207,   208,
7762      209,   210,   211,   212,   213,   214,   215,  1020,   217,   218,
7763      219,   220,   221,   222,   223,   224,  1021,   226,  1022,  1023,
7764      228,  1024,  1025,  1026,  1027,  1028,     0,   234,   235,   236,
7765      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
7766     1029,   248,   249,   250,   251,   252,   253,   254,   255,   256,
7767      257,   258,  1030,  1031,  1032,   262,  1033,  1034,   265,     0,
7768      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
7769      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
7770      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
7771      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
7772      304,   305,   306,     0,  1035,   308,   309,   310,   311,   312,
7773     1036,   314,  1037,   316,   317,   318,   319,   320,   321,   322,
7774        0,   323,   324,   325,  1038,   327,   328,   329,   330,   331,
7775      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
7776      342,   343,   344,   345,   346,   347,  1039,  1040,   350,   351,
7777      352,  1041,   354,   355,   356,   357,   358,   359,   360,   361,
7778      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
7779      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
7780      382,   383,   384,   385,   386,   387,   388,   389,   390,  1042,
7781      392,  1043,   394,   395,   396,   397,  1044,  1045,  1046,  1047,
7782      402,   403,   404,   405,   406,   407,   408,   409,   410,  1048,
7783     1049,   413,   414,   415,   416,   417,   418,   419,   420,   421,
7784      422,   423,   424,   425,   426,   427,  1050,   429,   430,   431,
7785      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
7786     1051,   443,   444,   445,   446,   447,  1052,  1053,   450,   451,
7787      452,   453,   454,   455,  1054,   457,   458,   459,   460,   461,
7788      462,  1055,   464,   465,   466,   467,   468,   469,   470,   471,
7789      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
7790      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
7791      492,  1056,   494,   495,   496,   497,   498,  1057,  1058,   501,
7792      502,   503,   504,   505,  1059,   507,   508,   509,   510,   511,
7793      512,  1060,   514,   515,   516,   517,   518,   519,   520,   521,
7794      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
7795      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
7796      541,  1061,   543,   544,   545,   546,   547,   548,   549,   550,
7797      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
7798     1062,  1063,  1064,  1065,   565,   566,   567,  1066,  1067,   570,
7799      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
7800      581,   582,  1068,   584,  1069,   586,   587,   588,   589,   590,
7801      591,   592,   593,   594,  1070,  1071,   597,  1072,   599,   600,
7802      601,     0,   602,   603,   604,  1073,     0,     0,     0,     0,
7803      941,   942,   943,   944,  1074,  1075,     0,     0,     0,     0,
7804     1076,   945,   946,     0,   947,  1077,     0,     0,     0,  1078,
7805     1079,   948,   949,  1080,  1081,   950,   951,   952,   953,     0,
7806      954,   955,     0,   956,   957,     0,     0,     0,     0,   958,
7807        0,     0,     0,   959,     0,     0,   960,     0,     0,     0,
7808        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7809        0,     0,     0,     0,     0,     0,   961,   962,   963,     0,
7810      964,   965,     0,     0,     0,     0,     0,     0,     0,     0,
7811        0,     0,   966,   967,   968,     0,   969,   970,     0,     0,
7812        0,   971,   972,   973,     0,     0,     0,     0,     0,     0,
7813        0,   974,     0,  1541,     0,     0,     0,     0,     0,     0,
7814        0,     0,     0,     0,     0,     0,   976,     0,     0,     0,
7815        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7816      977,     0,     0,     0,     0,   978,   979,     0,   980,     0,
7817        0,     0,     0,     0,   981,     0,   982,     0,     0,   983,
7818        0,     0,     0,     0,   986,     0,   987,   988,   989,     0,
7819      990,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7820        0,     0,     0,     0,     0,   991,     0,     0,     0,   992,
7821      993,   994,     0,   995,     0,     0,     0,     0,     0,     0,
7822      996,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7823        0,   997,   998,     0,     0,     0,     0,     0,     0,     0,
7824      999,     0,     0,  1000,     0,     0,     0,     0,     0,     0,
7825        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7826        0,     0,     0,  1001,     0,     0,     0,     0,     0,  1002,
7827     1003,     0,  1004,  1005,  1006,     0,     0,     0,  1007,     0,
7828        0,     0,     0,     0,     0,     0,  1008,  1009,  1010,  1011,
7829        0,     0,     0,     0,     0,     0,     0,     0,     0,  1012,
7830     1013,  1014,     0,     0,     0,     0,     0,  1015,     0,  1016,
7831        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7832        0,   174,   175,   176,   177,   178,   179,   180,   181,   182,
7833      183,   184,   185,  1017,   187,   188,   189,   190,   191,   192,
7834     1018,   194,   195,   196,   197,   198,   199,   200,  1019,   202,
7835      203,     0,   204,   205,   206,   207,   208,   209,   210,   211,
7836      212,   213,   214,   215,  1020,   217,   218,   219,   220,   221,
7837      222,   223,   224,  1021,   226,  1022,  1023,   228,  1024,  1025,
7838     1026,  1027,  1028,     0,   234,   235,   236,   237,   238,   239,
7839      240,   241,   242,   243,   244,   245,   246,  1029,   248,   249,
7840      250,   251,   252,   253,   254,   255,   256,   257,   258,  1030,
7841     1031,  1032,   262,  1033,  1034,   265,     0,   266,   267,   268,
7842      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
7843      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
7844      289,   290,   291,   292,   293,     0,     0,   294,   295,   296,
7845      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
7846        0,  1035,   308,   309,   310,   311,   312,  1036,   314,  1037,
7847      316,   317,   318,   319,   320,   321,   322,     0,   323,   324,
7848      325,  1038,   327,   328,   329,   330,   331,   332,   333,   334,
7849      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
7850      345,   346,   347,  1039,  1040,   350,   351,   352,  1041,   354,
7851      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
7852      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
7853      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
7854      385,   386,   387,   388,   389,   390,  1042,   392,  1043,   394,
7855      395,   396,   397,  1044,  1045,  1046,  1047,   402,   403,   404,
7856      405,   406,   407,   408,   409,   410,  1048,  1049,   413,   414,
7857      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
7858      425,   426,   427,  1050,   429,   430,   431,   432,   433,   434,
7859      435,   436,   437,   438,   439,   440,   441,  1051,   443,   444,
7860      445,   446,   447,  1052,  1053,   450,   451,   452,   453,   454,
7861      455,  1054,   457,   458,   459,   460,   461,   462,  1055,   464,
7862      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
7863      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
7864      485,   486,   487,   488,   489,   490,   491,   492,  1056,   494,
7865      495,   496,   497,   498,  1057,  1058,   501,   502,   503,   504,
7866      505,  1059,   507,   508,   509,   510,   511,   512,  1060,   514,
7867      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
7868      525,   526,   527,   528,   529,     0,   530,   531,   532,   533,
7869      534,   535,   536,   537,   538,   539,   540,   541,  1061,   543,
7870      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
7871      554,   555,   556,   557,   558,   559,   560,  1062,  1063,  1064,
7872     1065,   565,   566,   567,  1066,  1067,   570,   571,   572,   573,
7873      574,   575,   576,   577,   578,   579,   580,   581,   582,  1068,
7874      584,  1069,   586,   587,   588,   589,   590,   591,   592,   593,
7875      594,  1070,  1071,   597,  1072,   599,   600,   601,   941,   602,
7876      603,   604,  1073,     0,     0,     0,     0,     0,     0,     0,
7877        0,  5571,  5572,     0,     0,     0,     0,     0,     0,     0,
7878        0,     0,  5573,     0,     0,     0,     0,  1079,     0,     0,
7879     1080,  1081,     0,     0,     0,     0,     0,   958,     0,     0,
7880        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7881        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7882        0,     0,     0,     0,     0,     0,   963,     0,     0,   965,
7883        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7884        0,     0,     0,     0,   969,   970,     0,     0,     0,  1578,
7885     1579,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7886        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7887        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7888        0,     0,     0,     0,     0,     0,     0,     0,   977,     0,
7889        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7890        0,     0,     0,     0,     0,     0,     0,   983,     0,     0,
7891        0,     0,     0,     0,     0,   988,   989,     0,     0,     0,
7892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7893        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7894        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7895        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7896        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7897        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7898        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7899        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7900        0,     0,     0,     0,     0,     0,  1007,     0,     0,     0,
7901        0,     0,     0,     0,     0,  1009,  1010,  1011,     0,     0,
7902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7903        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7904        0,     0,     0,     0,     0,     0,     0,     0,     0,   174,
7905      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
7906      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
7907      195,   196,   197,   198,   199,   200,   201,   202,   203,     0,
7908      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
7909      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
7910      224,   225,   226,   227,  1580,   228,   229,   230,   231,   232,
7911      233,     0,   234,   235,   236,   237,   238,   239,   240,   241,
7912      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
7913      252,   253,   254,   255,   256,   257,   258,   259,  2430,   261,
7914      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
7915      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7916      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
7917      291,   292,   293,     0,     0,   294,   295,   296,   297,   298,
7918      299,   300,   301,   302,   303,   304,   305,   306,     0,   307,
7919      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
7920      318,   319,   320,   321,   322,     0,   323,   324,   325,   326,
7921      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
7922      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
7923      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
7924      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
7925      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
7926      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
7927      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
7928      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
7929      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
7930      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
7931      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
7932      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
7933      447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
7934      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
7935      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
7936      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
7937      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
7938      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
7939      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
7940      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
7941      527,   528,   529,  2832,   530,   531,   532,   533,   534,   535,
7942      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
7943      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
7944      556,   557,   558,   559,   560,  2431,   562,   563,  2432,   565,
7945      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
7946      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
7947      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
7948      596,   597,   598,   599,   600,   601,     0,   602,   603,   604,
7949      605,     0,     0,     0,     0,     0,     0,     0,   172,   173,
7950        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7951        0,     0,     0,     0,     0,     0,     0,     0,  1080,  1081,
7952        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7953        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7954        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7955        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7956        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7957        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7958        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7959        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7960        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7961        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7962        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7963        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7964        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7965        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7966        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7967        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7968        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7969        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
7970      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
7971      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
7972      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
7973      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
7974      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
7975      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
7976        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
7977      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
7978      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
7979      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
7980      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
7981      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
7982      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
7983      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
7984      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
7985      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
7986      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
7987      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
7988      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
7989      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
7990      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
7991      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
7992      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
7993      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7994      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
7995      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
7996      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
7997      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
7998      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
7999      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
8000      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
8001      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
8002      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
8003      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
8004      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
8005      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
8006      528,   529,  3090,   530,   531,   532,   533,   534,   535,   536,
8007      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
8008      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
8009      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
8010      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
8011      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
8012      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
8013      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
8014        0,     0,     0,     0,     0,     0,     0,   172,   173,     0,
8015     2833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8016        0,     0,     0,     0,     0,     0,     0,   772,     0,     0,
8017        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8018        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8019        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8020        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8021        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8022        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8023        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8024        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8025        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8026        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8027        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8028        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8029        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8030        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8031        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8032        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8034        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
8035      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
8036      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
8037      197,   198,   199,   200,   201,   202,   203,     0,   204,   205,
8038      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
8039      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
8040      226,   227,     0,   228,   229,   230,   231,   232,   233,     0,
8041      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
8042      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
8043      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
8044      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
8045      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
8046      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
8047      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
8048      301,   302,   303,   304,   305,   306,     0,   307,   308,   309,
8049      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
8050      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
8051      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
8052      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
8053      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
8054      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
8055      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
8056      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
8057      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
8058      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
8059      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
8060      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
8061      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
8062      439,   440,   441,   442,   443,   444,   445,   446,   447,   448,
8063      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
8064      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
8065      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
8066      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
8067      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
8068      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
8069      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
8070      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
8071      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
8072      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
8073      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
8074      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
8075      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
8076      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
8077      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
8078      598,   599,   600,   601,  1170,   602,   603,   604,   605,     0,
8079        0,     0,     0,     0,     0,     0,     0,     0,     0,  2833,
8080        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8081        0,     0,     0,  1171,     0,     0,   772,     0,     0,     0,
8082        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8083        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8084        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8085        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8086        0,   172,   173,     0,     0,     0,     0,     0,     0,     0,
8087        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8088        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8089        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8090        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8091        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8092        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8093        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8096        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8097        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8098        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8099        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8100        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8101        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8102        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8103        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8104        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8105        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8106        0,   174,   175,   176,   177,   178,   179,   180,   181,   182,
8107      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
8108      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
8109      203,     0,   204,   205,   206,   207,   208,   209,   210,   211,
8110      212,   213,   214,   215,  1172,   217,   218,   219,   220,   221,
8111      222,   223,   224,   225,   226,   227,     0,   228,   229,   230,
8112      231,   232,   233,     0,   234,   235,   236,   237,   238,   239,
8113      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
8114      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
8115      260,   261,   262,   263,   264,   265,     0,   266,   267,   268,
8116      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
8117      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
8118      289,   290,   291,   292,   293,     0,     0,   294,   295,   296,
8119      297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
8120        0,   307,   308,   309,   310,   311,   312,   313,   314,   315,
8121      316,  1173,   318,   319,   320,   321,   322,     0,   323,   324,
8122      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
8123      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
8124      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
8125     1174,   356,   357,   358,   359,   360,   361,   362,   363,   364,
8126      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
8127      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
8128      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
8129      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
8130     1175,   406,   407,   408,   409,   410,   411,   412,   413,   414,
8131      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
8132      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
8133      435,   436,   437,   438,   439,   440,   441,  1176,   443,   444,
8134      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
8135      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
8136      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
8137      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
8138      485,   486,   487,   488,   489,   490,   491,   492,   493,  1177,
8139      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
8140      505,   506,   507,   508,   509,   510,  1178,   512,   513,   514,
8141      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
8142      525,   526,   527,   528,   529,     0,   530,   531,   532,   533,
8143      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
8144      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
8145      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
8146      564,  1179,   566,   567,   568,   569,   570,   571,   572,   573,
8147      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
8148      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
8149      594,   595,   596,  1180,   598,   599,   600,   601,  1170,   602,
8150      603,   604,   605,     0,     0,     0,     0,     0,     0,     0,
8151        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8152        0,     0,     0,     0,     0,     0,     0,  1171,     0,     0,
8153        0,  1181,     0,     0,     0,     0,     0,     0,     0,     0,
8154        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8155        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8156        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8157        0,     0,     0,     0,     0,   172,   173,     0,     0,     0,
8158        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8159        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8160        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8161        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8162        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8163        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8164        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8165        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8166        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8167        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8169        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8170        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8171        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8172        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8174        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8175        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8176        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8177        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
8178      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
8179      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
8180      199,   200,   201,   202,   203,     0,   204,   205,   206,   207,
8181      208,   209,   210,   211,   212,   213,   214,   215,  1172,   217,
8182      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
8183        0,   228,   229,   230,   231,   232,   233,     0,   234,   235,
8184      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
8185      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
8186      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
8187        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
8188      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
8189      285,   286,   287,   288,   289,   290,   291,   292,   293,     0,
8190        0,   294,   295,   296,   297,   298,   299,   300,   301,   302,
8191      303,   304,   305,   306,     0,   307,   308,   309,   310,   311,
8192      312,   313,   314,   315,   316,  1173,   318,   319,   320,   321,
8193      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
8194      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
8195      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
8196      351,   352,   353,   354,  1174,   356,   357,   358,   359,   360,
8197      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
8198      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
8199      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
8200      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
8201      401,   402,   403,   404,  1175,   406,   407,   408,   409,   410,
8202      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
8203      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
8204      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
8205      441,  1176,   443,   444,   445,   446,   447,   448,   449,   450,
8206      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
8207      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
8208      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
8209      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
8210      491,   492,   493,  1177,   495,   496,   497,   498,   499,   500,
8211      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
8212     1178,   512,   513,   514,   515,   516,   517,   518,   519,   520,
8213      521,   522,   523,   524,   525,   526,   527,   528,   529,     0,
8214      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
8215      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
8216      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
8217      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
8218      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
8219      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
8220      590,   591,   592,   593,   594,   595,   596,  1180,   598,   599,
8221      600,   601,     0,   602,   603,   604,   605,   854,   855,     0,
8222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8223        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8224        0,     0,     0,     0,     0,  1181,     0,     0,     0,     0,
8225        0,     0,   856,     0,     0,     0,     0,   857,     0,     0,
8226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8227        0,     0,     0,     0,   858,     0,     0,     0,     0,     0,
8228        0,     0,     0,     0,   859,     0,     0,     0,     0,     0,
8229        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8230        0,     0,     0,     0,     0,     0,     0,     0,     0,   860,
8231        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8232      172,   173,     0,     0,     0,   861,     0,     0,     0,     0,
8233      862,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8234        0,     0,     0,     0,     0,     0,     0,     0,     0,   788,
8235        0,     0,     0,     0,     0,     0,   863,     0,     0,     0,
8236        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8237        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8238        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8239        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8240        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8241        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8242        0,     0,     0,     0,     0,     0,   864,     0,     0,     0,
8243        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8244        0,     0,     0,     0,   865,     0,     0,     0,     0,     0,
8245        0,     0,   866,     0,     0,     0,     0,     0,     0,     0,
8246        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8247        0,     0,     0,     0,     0,     0,     0,   693,     0,     0,
8248        0,     0,     0,     0,   867,     0,     0,     0,     0,     0,
8249        0,     0,     0,     0,   868,   869,     0,     0,     0,     0,
8250        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8251        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8252      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
8253      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
8254      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
8255        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
8256      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
8257      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
8258      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
8259      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
8260      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
8261      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
8262      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
8263      280,   281,   282,   283,   284,   285,   286,   870,   288,   289,
8264      290,   291,   871,   293,     0,     0,   294,   295,   296,   297,
8265      298,   299,   300,   872,   302,   303,   304,   305,   306,     0,
8266      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
8267      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
8268      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
8269      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
8270      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
8271      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
8272      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
8273      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
8274      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
8275      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
8276      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
8277      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
8278      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
8279      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
8280      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
8281      456,   457,   873,   459,   460,   461,   874,   463,   464,   465,
8282      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
8283      476,   477,   478,   875,   480,   481,   482,   483,   876,   485,
8284      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
8285      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
8286      506,   507,   508,   509,   510,   511,   512,   513,   514,   877,
8287      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
8288      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
8289      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
8290      545,   878,   547,   548,   549,   550,   551,   552,   553,   554,
8291      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
8292      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
8293      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
8294      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
8295      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
8296      604,   605,  1148,   855,     0,     0,     0,     0,     0,     0,
8297        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8298        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8299        0,     0,     0,     0,     0,     0,     0,   856,     0,     0,
8300        0,     0,   857,     0,     0,     0,     0,     0,     0,     0,
8301        0,     0,     0,     0,     0,     0,     0,     0,     0,   858,
8302        0,     0,     0,     0,     0,     0,     0,     0,     0,   859,
8303        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8304        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8305        0,     0,     0,     0,   860,     0,     0,     0,     0,     0,
8306        0,     0,     0,     0,     0,   172,   173,     0,     0,     0,
8307      861,     0,     0,     0,     0,   862,     0,     0,     0,     0,
8308        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8309        0,     0,     0,     0,   788,     0,     0,     0,     0,     0,
8310        0,   863,     0,     0,     0,     0,     0,     0,     0,     0,
8311        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8312        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8313        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8314        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8315        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8316        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8317        0,   864,     0,     0,     0,     0,     0,     0,     0,     0,
8318        0,     0,     0,     0,     0,     0,     0,     0,     0,   865,
8319        0,     0,     0,     0,     0,     0,     0,   866,     0,     0,
8320        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8321        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8322        0,     0,   693,     0,     0,     0,     0,     0,     0,   867,
8323        0,     0,     0,     0,     0,     0,     0,     0,     0,   868,
8324      869,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8325        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8326        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
8327      179,   180,   181,   182,   183,   184,  1149,   186,   187,   188,
8328      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
8329      199,   200,   201,   202,   203,     0,   204,   205,   206,   207,
8330      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
8331      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
8332        0,   228,   229,   230,   231,   232,   233,     0,   234,   235,
8333      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
8334      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
8335      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
8336        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
8337      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
8338      285,   286,   870,   288,   289,   290,   291,   871,   293,     0,
8339        0,   294,   295,   296,   297,   298,   299,   300,   872,   302,
8340      303,   304,   305,   306,     0,   307,   308,   309,   310,   311,
8341      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
8342      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
8343      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
8344      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
8345      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
8346      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
8347      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
8348      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
8349      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
8350      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
8351      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
8352      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
8353      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
8354      441,   442,   443,   444,   445,   446,   447,   448,   449,   450,
8355      451,   452,   453,   454,   455,   456,   457,   873,   459,   460,
8356      461,  1150,   463,   464,   465,   466,   467,   468,   469,   470,
8357      471,   472,   473,   474,   475,   476,   477,   478,   875,   480,
8358      481,   482,   483,   876,   485,   486,   487,   488,   489,   490,
8359      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
8360      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
8361      511,   512,   513,   514,   877,   516,   517,   518,   519,   520,
8362      521,   522,   523,   524,   525,   526,   527,   528,   529,  1814,
8363      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
8364      540,   541,   542,   543,   544,   545,   878,   547,   548,   549,
8365      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
8366      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
8367      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
8368      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
8369      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
8370      600,   601,     0,   602,   603,   604,   605,     0,     0,     0,
8371        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8372        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8373        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
8374        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8375        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8376        0,   788,     0,     0,     0,     0,     0,     0,     0,     0,
8377        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8378        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8379        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8380        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8381        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8382        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8383        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8384        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8385        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8386        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8387        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8388        0,     0,     0,     0,     0,     0,     0,     0,     0,   693,
8389        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8390        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8391        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8392        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8393        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
8394      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
8395      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
8396      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
8397      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
8398      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
8399      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
8400      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
8401      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
8402      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
8403      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
8404      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
8405      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
8406      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
8407      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
8408      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
8409      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
8410      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
8411      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
8412      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
8413      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
8414      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
8415      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
8416      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
8417      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
8418      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
8419      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
8420      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
8421      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
8422      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
8423      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
8424      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
8425      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
8426      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
8427      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
8428      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
8429      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
8430      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
8431      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
8432      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
8433      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
8434      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
8435      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
8436      593,   594,   595,   596,   597,   598,   599,   600,   601,  1905,
8437      602,   603,   604,   605,     0,     0,     0,     0,     0,     0,
8438        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8439        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8440        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8441        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8442        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8443        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8444        0,     0,     0,  1578,  1579,     0,     0,     0,     0,     0,
8445        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8446        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8447        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8448        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8449        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8450        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8451        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8452        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8453        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8454        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8455        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8456        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8457        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8458        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8459        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8460        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8461        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8462        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8463        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8464        0,     0,     0,   174,   175,   176,   177,   178,   179,   180,
8465      181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
8466      191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
8467      201,   202,   203,     0,   204,   205,   206,   207,   208,   209,
8468      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
8469      220,   221,   222,   223,   224,   225,   226,   227,     0,   228,
8470      229,   230,   231,   232,   233,     0,   234,   235,   236,   237,
8471      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
8472      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
8473      258,   259,   260,   261,   262,   263,   264,   265,     0,   266,
8474      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
8475      277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
8476      287,   288,   289,   290,   291,   292,   293,     0,     0,   294,
8477      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
8478      305,   306,     0,   307,   308,   309,   310,   311,   312,   313,
8479      314,   315,   316,   317,   318,   319,   320,   321,   322,     0,
8480      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
8481      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
8482      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
8483      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
8484      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
8485      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
8486      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
8487      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
8488      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
8489      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
8490      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
8491      433,   434,   435,   436,   437,   438,   439,   440,   441,   442,
8492      443,   444,   445,   446,   447,   448,   449,   450,   451,   452,
8493      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
8494      463,   464,   465,   466,   467,   468,   469,   470,   471,   472,
8495      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
8496      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
8497      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
8498      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
8499      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
8500      523,   524,   525,   526,   527,   528,   529,  4693,   530,   531,
8501      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
8502      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
8503      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
8504      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
8505      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
8506      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
8507      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
8508        0,   602,   603,   604,   605,     0,     0,     0,     0,     0,
8509        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8510        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8511      172,   173,     0,  1906,     0,     0,     0,     0,     0,     0,
8512        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8514        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8515        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8516        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8517        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8518        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8519        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8520        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8521        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8522        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8523        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8524        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8525        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8526        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8527        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8528        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8529        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8530        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8531      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
8532      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
8533      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
8534        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
8535      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
8536      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
8537      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
8538      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
8539      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
8540      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
8541      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
8542      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
8543      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
8544      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
8545      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
8546      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
8547      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
8548      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
8549      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
8550      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
8551      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
8552      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
8553      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
8554      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
8555      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
8556      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
8557      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
8558      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
8559      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
8560      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
8561      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
8562      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
8563      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
8564      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
8565      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
8566      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
8567      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
8568      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
8569      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
8570      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
8571      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
8572      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
8573      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
8574      595,   596,   597,   598,   599,   600,   601,     4,   602,   603,
8575      604,   605,     0,     0,     0,     0,   898,     0,     0,     0,
8576        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8577        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8578        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8579        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8580        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
8581       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
8582        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
8583        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8584        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
8585        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
8586        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
8587        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8588        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8589        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8590        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8591        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8592        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8593        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
8594        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
8595        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8596        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8597        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8598        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8599        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8600        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8601        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
8602        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
8603        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
8604      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
8605      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
8606      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
8607        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
8608      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
8609      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
8610      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
8611      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
8612      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
8613        0,   274,   275,   276,   277,     0,   279,   280,   281,   282,
8614      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
8615      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
8616      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
8617      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
8618      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
8619      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
8620      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
8621      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
8622      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
8623      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
8624      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
8625      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
8626      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
8627      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
8628      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
8629      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
8630      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
8631      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
8632      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
8633      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
8634      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
8635      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
8636      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
8637      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
8638        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
8639      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
8640      538,  4712,   540,   541,   542,   543,   544,   545,   546,   547,
8641      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
8642      558,   559,     0,   561,   562,   563,   564,   565,   566,   567,
8643      568,     0,   570,   571,   572,     0,   574,   575,   576,   577,
8644        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
8645      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
8646      741,   599,   600,     0,     0,   602,     0,   604,   605,     0,
8647        0,     0,     0,     0,   172,   173,     0,     0,     0,  3180,
8648        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8649        0,  5374,     0,     0,  3181,     0,     0,     0,     0,     0,
8650        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8651        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8652        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8653        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8654        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8655        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8656        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8657        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8658        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8659        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8660        0,     0,     0,     0,     0,     0,     0,     0,     0,   742,
8661        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8662        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8663        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8664        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8665        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8666        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8667        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
8668      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
8669      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
8670      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
8671      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
8672      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
8673      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
8674      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
8675      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
8676      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
8677      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
8678      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
8679      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
8680      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
8681      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
8682      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
8683        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
8684      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
8685      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
8686      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
8687      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
8688      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
8689      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
8690      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
8691      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
8692      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
8693      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
8694      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
8695      442,  4713,   444,   445,   446,   447,   448,   449,   450,   451,
8696      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
8697      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
8698      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
8699      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
8700      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
8701      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
8702      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
8703      522,   523,   524,   525,   526,   527,   528,   529,  4223,   530,
8704      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
8705      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
8706      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
8707      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
8708      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
8709      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
8710      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
8711      601,     0,   602,   603,   604,   605,     0,     0,     0,     0,
8712        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8713        0,     0,     0,     0,     0,     0,   172,   173,     0,     0,
8714        0,     0,     0,  4454,     0,     0,     0,     0,     0,     0,
8715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8716        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8717        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8718        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8720        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8721        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8722        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8723        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8724        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8725        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8726        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8727        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8728        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8729        0,     0,     0,   693,     0,     0,     0,     0,     0,     0,
8730        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8731        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8732        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8733        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
8734      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
8735      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
8736      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
8737      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
8738      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
8739      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
8740      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
8741      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
8742      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
8743      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
8744      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
8745      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
8746        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
8747      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
8748      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
8749      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
8750      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
8751      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
8752      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
8753      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
8754      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
8755      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
8756      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
8757      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
8758      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
8759      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
8760      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
8761      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
8762      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
8763      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
8764      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
8765      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
8766      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
8767      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
8768      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
8769      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
8770        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
8771      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
8772      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
8773      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
8774      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
8775      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
8776      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
8777      599,   600,   601,  1767,   602,   603,   604,   605,     0,     0,
8778        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8779        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8780        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8781        0,     0,     0,     0,     0,     0,     0,  1768,     0,     0,
8782        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8783        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8784        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8785        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8786        0,     0,     0,     0,     0,   172,   173,     0,     0,     0,
8787        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8788        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8789        0,     0,     0,     0,   788,     0,     0,     0,     0,     0,
8790        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8791        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8792        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8793        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8795        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8796        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8797        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8798        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8799        0,     0,     0,     0,  1769,     0,     0,     0,     0,     0,
8800        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8801        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8802        0,     0,   693,     0,     0,     0,     0,     0,     0,     0,
8803        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8804        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8805        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8806        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
8807      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
8808      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
8809      199,   200,   201,   202,   203,     0,   204,   205,   206,   207,
8810      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
8811      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
8812        0,   228,   229,   230,   231,   232,   233,     0,   234,   235,
8813      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
8814      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
8815      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
8816        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
8817      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
8818      285,   286,   287,   288,   289,   290,   291,   292,   293,     0,
8819        0,   294,   295,   296,   297,   298,   299,   300,   301,   302,
8820      303,   304,   305,   306,     0,   307,   308,   309,   310,   311,
8821      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
8822      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
8823      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
8824      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
8825      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
8826      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
8827      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
8828      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
8829      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
8830      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
8831      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
8832      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
8833      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
8834      441,   442,   443,   444,   445,   446,   447,   448,   449,   450,
8835      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
8836      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
8837      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
8838      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
8839      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
8840      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
8841      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
8842      521,   522,   523,   524,   525,   526,   527,   528,   529,     0,
8843      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
8844      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
8845      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
8846      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
8847      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
8848      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
8849      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
8850      600,   601,     0,   602,   603,   604,   605,  4001,  4002,     0,
8851     1770,     0,     0,  4003,  4004,     0,     0,     0,     0,     0,
8852        0,     0,     0,  4005,     0,     0,     0,     0,     0,     0,
8853        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8854        0,     0,     0,     0,     0,     0,     0,     0,     0,  4006,
8855        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8856        0,  4007,     0,     0,     0,     0,     0,     0,     0,     0,
8857        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8858        0,  4008,     0,     0,     0,     0,     0,     0,     0,     0,
8859        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8860      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
8861        0,     0,     0,     0,  4009,     0,     0,     0,     0,     0,
8862        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8863        0,     0,     0,     0,     0,     0,     0,  4010,  4011,     0,
8864     4012,     0,     0,     0,     0,     0,     0,     0,  4013,  4014,
8865     4015,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8866        0,     0,     0,     0,     0,     0,     0,     0,  4016,     0,
8867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8868        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8869        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8870        0,     0,     0,  4017,     0,     0,     0,     0,     0,     0,
8871        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8872        0,     0,     0,     0,     0,     0,     0,     0,  4018,     0,
8873        0,     0,     0,     0,  4019,     0,     0,     0,     0,     0,
8874        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8875        0,     0,     0,     0,     0,     0,     0,     0,     0,  4020,
8876     4021,  4022,     0,     0,     0,     0,     0,     0,     0,     0,
8877        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8878        0,     0,     0,     0,  4023,  4024,     0,     0,     0,     0,
8879        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8880      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
8881      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
8882      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
8883        0,   204,  5151,   206,  5152,  5153,   209,   210,   211,   212,
8884      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
8885     5154,   224,   225,   226,   227,     0,   228,   229,   230,   231,
8886      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
8887      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
8888      251,   252,   253,   254,   255,   256,   257,  5155,   259,  5156,
8889      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
8890      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
8891      280,   281,  5157,   283,   284,   285,   286,   287,   288,   289,
8892      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
8893      298,   299,   300,   301,   302,  5158,   304,   305,   306,     0,
8894      307,   308,   309,   310,   311,   312,  5159,  5160,   315,   316,
8895      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
8896      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
8897      336,   337,   338,   339,   340,   341,   342,   343,  5161,   345,
8898      346,   347,   348,   349,   350,   351,   352,  5162,   354,   355,
8899      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
8900      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
8901      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
8902      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
8903      396,   397,   398,  5163,  5164,  5165,   402,   403,   404,   405,
8904      406,  5166,  5167,   409,   410,   411,   412,   413,   414,   415,
8905      416,   417,   418,   419,   420,   421,   422,   423,  5168,  5169,
8906      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
8907      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
8908      446,   447,  5170,  5171,   450,   451,   452,   453,   454,   455,
8909      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
8910      466,  5172,   468,   469,   470,   471,   472,   473,   474,   475,
8911      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
8912      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
8913      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
8914      506,   507,   508,   509,  5173,   511,   512,   513,   514,   515,
8915      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
8916      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
8917      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
8918      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
8919      555,   556,   557,  5174,   559,   560,  5175,   562,   563,  5176,
8920      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
8921      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
8922      585,   586,  5177,   588,   589,   590,   591,   592,   593,   594,
8923      595,   596,  3456,   598,   599,   600,   601,  1783,   602,   603,
8924      604,  5178,     0,     0,     0,     0,     0,     0,     0,     0,
8925        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8926        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8927        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8928        0,  1784,     0,     0,     0,     0,     0,     0,     0,     0,
8929        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8930        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8931        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8932        0,     0,     0,     0,     0,     0,     0,     0,     0,   172,
8933      173,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8934        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8935        0,     0,     0,     0,     0,     0,     0,     0,   788,     0,
8936        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8937        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8938        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8939        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8940        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8941        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8942        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8943        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8944        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8945        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8946        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8947        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8948        0,     0,     0,     0,     0,     0,   693,     0,     0,     0,
8949        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8950        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8951        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8952        0,     0,     0,     0,     0,     0,     0,     0,     0,   174,
8953      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
8954      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
8955      195,   196,   197,   198,   199,   200,   201,   202,   203,     0,
8956      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
8957      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
8958      224,   225,   226,   227,     0,   228,   229,   230,   231,   232,
8959      233,     0,   234,   235,   236,   237,   238,   239,   240,   241,
8960      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
8961      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
8962      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
8963      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
8964      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
8965      291,   292,   293,     0,     0,   294,   295,   296,   297,   298,
8966      299,   300,   301,   302,   303,   304,   305,   306,     0,   307,
8967      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
8968      318,   319,   320,   321,   322,     0,   323,   324,   325,   326,
8969      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
8970      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
8971      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
8972      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
8973      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
8974      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
8975      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
8976      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
8977      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
8978      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
8979      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
8980      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
8981      447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
8982      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
8983      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
8984      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
8985      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
8986      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
8987      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
8988      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
8989      527,   528,   529,     0,   530,   531,   532,   533,   534,   535,
8990      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
8991      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
8992      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
8993      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
8994      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
8995      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
8996      596,   597,   598,   599,   600,   601,  1767,   602,   603,   604,
8997      605,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8998        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8999        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9000        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9001     1768,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9002        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9003        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9004        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9005        0,     0,     0,     0,     0,     0,     0,     0,   172,   173,
9006        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9007        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9008        0,     0,     0,     0,     0,     0,     0,   788,     0,     0,
9009        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9010        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9011        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9012        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9013        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9014        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9015        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9016        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9017        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9018        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9019        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9020        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9021        0,     0,     0,     0,     0,   693,     0,     0,     0,     0,
9022        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9023        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9024        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9025        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
9026      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
9027      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
9028      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
9029      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
9030      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
9031      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
9032        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
9033      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
9034      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
9035      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
9036      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
9037      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
9038      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
9039      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
9040      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
9041      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
9042      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
9043      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
9044      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
9045      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
9046      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
9047      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
9048      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
9049      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
9050      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
9051      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
9052      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
9053      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
9054      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
9055      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
9056      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
9057      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
9058      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
9059      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
9060      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
9061      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
9062      528,   529,  1767,   530,   531,   532,   533,   534,   535,   536,
9063      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
9064      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
9065      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
9066      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
9067      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
9068      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
9069      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
9070        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9071        0,     0,     0,     0,   172,   173,     0,     0,     0,     0,
9072        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9073        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9074        0,     0,     0,   788,     0,     0,     0,     0,     0,     0,
9075        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9076        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9077        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9078        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9079        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9080        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9081        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9082        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9083        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9084        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9085        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9086        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9087        0,   693,     0,     0,     0,     0,     0,     0,     0,     0,
9088        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9089        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9090        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9091        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
9092      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
9093      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
9094      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
9095      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
9096      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
9097      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
9098      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
9099      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
9100      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
9101      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
9102      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
9103      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
9104      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
9105      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
9106      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
9107        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
9108      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
9109      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
9110      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
9111      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
9112      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9113      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
9114      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
9115      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
9116      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
9117      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
9118      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
9119      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
9120      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
9121      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
9122      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
9123      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
9124      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
9125      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
9126      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
9127      522,   523,   524,   525,   526,   527,   528,   529,  1297,   530,
9128      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
9129      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
9130      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
9131      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
9132      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
9133      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
9134      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
9135      601,     0,   602,   603,   604,   605,     0,     0,     0,     0,
9136        0,     0,     0,     0,  1298,  1299,     0,     0,     0,   172,
9137      173,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9138        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9139        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9140        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9141        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9142        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9143        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9144        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9145        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9146        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9147        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9148        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9149        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9150        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9151        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9152        0,     0,     0,     0,     0,     0,  1300,     0,     0,     0,
9153        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9154        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9155        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9156        0,     0,     0,     0,     0,     0,     0,     0,     0,   174,
9157      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
9158      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
9159      195,   196,   197,   198,   199,   200,   201,   202,   203,     0,
9160      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
9161      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
9162      224,   225,   226,   227,     0,   228,   229,   230,   231,   232,
9163      233,     0,   234,   235,   236,   237,   238,   239,   240,   241,
9164      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
9165      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
9166      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
9167      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
9168      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
9169      291,   292,   293,     0,     0,   294,   295,   296,   297,   298,
9170      299,   300,   301,   302,   303,   304,   305,   306,     0,   307,
9171      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
9172      318,   319,   320,   321,   322,     0,   323,   324,   325,   326,
9173      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
9174      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
9175      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
9176      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
9177      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9178      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
9179      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
9180      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
9181      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
9182      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
9183      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
9184      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
9185      447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
9186      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
9187      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
9188      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
9189      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
9190      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
9191      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
9192      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
9193      527,   528,   529,     0,   530,   531,   532,   533,   534,   535,
9194      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
9195      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
9196      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
9197      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
9198      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
9199      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
9200      596,   597,   598,   599,   600,   601,  1397,   602,   603,   604,
9201      605,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9202        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9203        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9204        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9205        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9206        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9207      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
9208        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9209        0,     0,     0,     0,     0,     0,     0,     0,     0,   788,
9210        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9211        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9212        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9213        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9214        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9215        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9216        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9217        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9218        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9219        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9220        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9221        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9222        0,     0,     0,     0,     0,     0,     0,   693,     0,     0,
9223        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9224        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9225        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9227      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
9228      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
9229      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
9230        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
9231      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
9232      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
9233      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
9234      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
9235      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
9236      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
9237      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
9238      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
9239      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
9240      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
9241      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
9242      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
9243      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
9244      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
9245      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
9246      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
9247      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
9248      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
9249      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
9250      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
9251      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
9252      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
9253      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
9254      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
9255      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
9256      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
9257      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
9258      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9259      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
9260      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
9261      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
9262      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
9263        0,   527,   528,   529,     0,   530,   531,   532,   533,   534,
9264      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
9265      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
9266      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
9267      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
9268      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
9269      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
9270      595,   596,   597,   598,   599,   600,   601,     4,   602,   603,
9271      604,   605,     0,     0,     0,     0,   898,     0,     0,     0,
9272        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9273        0,  1673,     0,     0,     0,     0,     0,     0,     0,     0,
9274        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9275        0,     0,     0,     0,  -443,  -443,     0,     0,     0,     0,
9276        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
9277       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
9278        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
9279        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9280        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
9281        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
9282        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
9283        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9284        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9285        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9286        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9287        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9288        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9289        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
9290        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
9291        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9292        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9293        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9294        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9295        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9296        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9297        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
9298        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
9299        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
9300      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
9301      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
9302      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
9303        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
9304      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
9305      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
9306      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
9307      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
9308      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
9309        0,   274,   275,   276,   277,  -443,   279,   280,   281,   282,
9310      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
9311      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
9312      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
9313      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
9314      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
9315      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
9316      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
9317      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
9318      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
9319      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9320      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
9321      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
9322      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9323      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
9324      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
9325      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
9326      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
9327      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
9328      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
9329      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9330      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
9331      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
9332      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
9333      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
9334        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
9335      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
9336      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
9337      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
9338      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
9339      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
9340        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
9341      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
9342        0,   599,   600,     0,     0,   602,     0,   604,   605,  -463,
9343        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9344      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
9345      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9346        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
9347        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
9348        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
9349        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9350        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
9351        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9352        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9353        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9354        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9355        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9356        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9357        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
9358        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9359        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9360        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9361        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9362        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9363        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9364        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9365        0,  -463,     0,    40,     0,     0,     0,     0,     0,     0,
9366        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
9367      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
9368      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
9369        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
9370        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
9371      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
9372        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
9373      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
9374      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
9375      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
9376      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
9377     -463,   279,   280,   281,   282,   283,   284,   285,   286,   287,
9378      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
9379      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
9380        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
9381      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
9382        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
9383      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
9384      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
9385      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
9386      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
9387      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
9388      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
9389      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
9390      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
9391      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
9392      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
9393        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
9394      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
9395      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
9396      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
9397      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
9398      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
9399      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
9400      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
9401      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
9402      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
9403      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
9404      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
9405      553,   554,   555,   556,   557,   558,   559,     4,   561,   562,
9406      563,   564,   565,   566,   567,   568,   898,   570,   571,   572,
9407        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
9408      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9409      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
9410      602,     0,   604,   605,  -460,     0,     0,     0,     0,     0,
9411        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
9412       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
9413        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
9414        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9415        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
9416        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
9417        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
9418        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9419        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9420        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9421        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9422        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9423        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9424        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
9425        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
9426        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9427        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9428        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9429        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9430        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9431        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9432        0,     0,     0,     0,     0,     0,  -460,     0,    40,     0,
9433        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
9434        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
9435      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
9436      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
9437      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
9438        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
9439      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
9440      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
9441      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
9442      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
9443      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
9444        0,   274,   275,   276,   277,  -460,   279,   280,   281,   282,
9445      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
9446      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
9447      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
9448      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
9449      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
9450      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
9451      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
9452      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
9453      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
9454      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9455      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
9456      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
9457      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9458      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
9459      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
9460      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
9461      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
9462      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
9463      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
9464      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9465      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
9466      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
9467      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
9468      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
9469        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
9470      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
9471      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
9472      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
9473      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
9474      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
9475        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
9476      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
9477        0,   599,   600,     0,     0,   602,     0,   604,   605,     0,
9478        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9479      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
9480      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9481        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
9482        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
9483        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
9484        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9485        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
9486        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9487        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9488        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9489        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9490        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9491        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9492        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
9493        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9494        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9495        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9496        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9497        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9498        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9499        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9500        0,     0,     0,    40,     0,     0,     0,     0,     0,     0,
9501        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
9502      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
9503      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
9504        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
9505        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
9506      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
9507        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
9508      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
9509      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
9510      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
9511      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
9512     1527,   279,   280,   281,   282,   283,   284,   285,   286,   287,
9513      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
9514      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
9515        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
9516      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
9517        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
9518      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
9519      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
9520      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
9521      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
9522      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
9523      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
9524      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
9525      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
9526      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
9527      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
9528        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
9529      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
9530      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
9531      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
9532      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
9533      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
9534      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
9535      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
9536      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
9537      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
9538      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
9539      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
9540      553,   554,   555,   556,   557,   558,   559,     4,   561,   562,
9541      563,   564,   565,   566,   567,   568,   898,   570,   571,   572,
9542        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
9543      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9544      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
9545      602,     0,   604,   605,     0,     0,     0,     0,     0,     0,
9546        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
9547       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
9548        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
9549        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9550        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
9551        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
9552        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
9553        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9554        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9555        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9556        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9557        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9558        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9559        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
9560        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
9561        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9562        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9563        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9564        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9565        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9566        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9567        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
9568        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
9569        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
9570      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
9571      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
9572      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
9573        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
9574      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
9575      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
9576      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
9577      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
9578      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
9579        0,   274,   275,   276,   277,  -465,   279,   280,   281,   282,
9580      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
9581      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
9582      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
9583      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
9584      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
9585      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
9586      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
9587      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
9588      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
9589      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9590      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
9591      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
9592      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9593      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
9594      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
9595      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
9596      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
9597      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
9598      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
9599      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9600      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
9601      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
9602      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
9603      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
9604        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
9605      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
9606      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
9607      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
9608      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
9609      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
9610        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
9611      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
9612        0,   599,   600,     0,     0,   602,     0,   604,   605,     0,
9613        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9614      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
9615      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9616        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
9617        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
9618        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
9619        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9620        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
9621        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9622        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9623        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9624        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9625        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9626        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9627        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
9628        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9629        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9630        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9631        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9632        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9633        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9634        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9635        0,     0,     0,    40,     0,     0,     0,     0,     0,     0,
9636        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
9637      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
9638      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
9639        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
9640        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
9641      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
9642        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
9643      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
9644      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
9645      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
9646      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
9647     3422,   279,   280,   281,   282,   283,   284,   285,   286,   287,
9648      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
9649      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
9650        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
9651      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
9652        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
9653      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
9654      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
9655      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
9656      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
9657      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
9658      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
9659      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
9660      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
9661      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
9662      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
9663        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
9664      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
9665      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
9666      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
9667      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
9668      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
9669      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
9670      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
9671      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
9672      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
9673      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
9674      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
9675      553,   554,   555,   556,   557,   558,   559,     4,   561,   562,
9676      563,   564,   565,   566,   567,   568,   898,   570,   571,   572,
9677        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
9678      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9679      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
9680      602,     0,   604,   605,     0,     0,     0,     0,     0,     0,
9681        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
9682       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
9683        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
9684        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9685        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
9686        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
9687        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
9688        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9689        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9690        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9691        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9692        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9693        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9694        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
9695        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
9696        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9697        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9698        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9699        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9700        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9701        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9702        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
9703        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
9704        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
9705      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
9706      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
9707      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
9708        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
9709      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
9710      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
9711      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
9712      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
9713      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
9714        0,   274,   275,   276,   277,  3474,   279,   280,   281,   282,
9715      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
9716      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
9717      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
9718      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
9719      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
9720      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
9721      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
9722      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
9723      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
9724      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9725      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
9726      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
9727      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9728      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
9729      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
9730      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
9731      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
9732      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
9733      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
9734      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9735      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
9736      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
9737      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
9738      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
9739        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
9740      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
9741      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
9742      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
9743      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
9744      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
9745        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
9746      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
9747        0,   599,   600,     0,     0,   602,     0,   604,   605,     0,
9748        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9749      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
9750      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9751        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
9752        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
9753        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
9754        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9755        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
9756        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9757        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9758        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9759        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9760        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9761        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9762        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
9763        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9764        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9765        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9766        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9767        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9768        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9769        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9770        0,     0,     0,    40,     0,     0,     0,     0,     0,     0,
9771        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
9772      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
9773      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
9774        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
9775        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
9776      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
9777        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
9778      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
9779      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
9780      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
9781      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
9782     3690,   279,   280,   281,   282,   283,   284,   285,   286,   287,
9783      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
9784      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
9785        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
9786      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
9787        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
9788      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
9789      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
9790      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
9791      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
9792      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
9793      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
9794      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
9795      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
9796      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
9797      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
9798        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
9799      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
9800      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
9801      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
9802      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
9803      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
9804      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
9805      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
9806      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
9807      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
9808      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
9809      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
9810      553,   554,   555,   556,   557,   558,   559,     4,   561,   562,
9811      563,   564,   565,   566,   567,   568,   898,   570,   571,   572,
9812        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
9813      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9814      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
9815      602,     0,   604,   605,     0,     0,     0,     0,     0,     0,
9816        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
9817       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
9818        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
9819        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9820        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
9821        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
9822        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
9823        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9824        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9825        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9826        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9827        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9829        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
9830        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
9831        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9832        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9833        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9834        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9835        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9836        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9837        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
9838        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
9839        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
9840      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
9841      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
9842      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
9843        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
9844      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
9845      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
9846      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
9847      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
9848      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
9849        0,   274,   275,   276,   277,  3694,   279,   280,   281,   282,
9850      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
9851      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
9852      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
9853      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
9854      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
9855      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
9856      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
9857      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
9858      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
9859      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9860      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
9861      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
9862      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9863      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
9864      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
9865      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
9866      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
9867      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
9868      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
9869      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9870      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
9871      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
9872      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
9873      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
9874        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
9875      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
9876      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
9877      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
9878      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
9879      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
9880        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
9881      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
9882        0,   599,   600,     0,     0,   602,     0,   604,   605,     0,
9883        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9884      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
9885      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9886        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
9887        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
9888        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
9889        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9890        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
9891        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9893        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9894        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9895        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9896        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9897        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
9898        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9899        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9900        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9901        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9903        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9904        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9905        0,     0,     0,    40,     0,     0,     0,     0,     0,     0,
9906        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
9907      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
9908      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
9909        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
9910        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
9911      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
9912        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
9913      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
9914      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
9915      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
9916      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
9917     4076,   279,   280,   281,   282,   283,   284,   285,   286,   287,
9918      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
9919      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
9920        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
9921      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
9922        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
9923      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
9924      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
9925      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
9926      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
9927      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
9928      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
9929      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
9930      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
9931      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
9932      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
9933        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
9934      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
9935      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
9936      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
9937      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
9938      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
9939      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
9940      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
9941      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
9942      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
9943      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
9944      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
9945      553,   554,   555,   556,   557,   558,   559,     4,   561,   562,
9946      563,   564,   565,   566,   567,   568,   898,   570,   571,   572,
9947        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
9948      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9949      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
9950      602,     0,   604,   605,     0,     0,     0,     0,     0,     0,
9951        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
9952       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
9953        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
9954        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9955        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
9956        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
9957        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
9958        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9959        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9960        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9961        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9962        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9963        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9964        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
9965        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
9966        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9967        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9968        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9969        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9970        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9971        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9972        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
9973        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
9974        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
9975      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
9976      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
9977      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
9978        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
9979      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
9980      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
9981      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
9982      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
9983      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
9984        0,   274,   275,   276,   277,  4973,   279,   280,   281,   282,
9985      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
9986      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
9987      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
9988      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
9989      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
9990      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
9991      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
9992      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
9993      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
9994      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9995      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
9996      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
9997      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9998      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
9999      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
10000      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
10001      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
10002      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
10003      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
10004      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10005      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
10006      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
10007      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
10008      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
10009        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
10010      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
10011      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
10012      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
10013      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
10014      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
10015        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
10016      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
10017        0,   599,   600,     0,     0,   602,     0,   604,   605,     0,
10018        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10019      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
10020      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10021        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
10022        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
10023        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
10024        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10025        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
10026        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10027        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10028        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10029        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10030        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10031        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10032        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
10033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10034        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10035        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10036        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10037        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10038        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10039        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10040        0,     0,     0,    40,     0,     0,     0,     0,     0,     0,
10041        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
10042      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
10043      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
10044        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
10045        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
10046      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
10047        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
10048      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
10049      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
10050      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
10051      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
10052     -447,   279,   280,   281,   282,   283,   284,   285,   286,   287,
10053      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
10054      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
10055        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
10056      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
10057        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
10058      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
10059      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
10060      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
10061      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
10062      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
10063      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
10064      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
10065      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
10066      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
10067      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
10068        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
10069      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
10070      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
10071      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
10072      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
10073      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
10074      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
10075      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
10076      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
10077      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
10078      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
10079      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
10080      553,   554,   555,   556,   557,   558,   559,     4,   561,   562,
10081      563,   564,   565,   566,   567,   568,   898,   570,   571,   572,
10082        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
10083      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10084      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
10085      602,     0,   604,   605,     0,     0,     0,     0,     0,     0,
10086        0,     0,     0,     0,     0,   899,     0,     0,     0,     0,
10087       13,     0,     0,     0,     0,   900,     0,     0,     0,     0,
10088        0,     0,     0,     0,     0,     0,     0,   172,   173,    15,
10089        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10090        0,     0,     0,     0,   901,     0,     0,     0,     0,     0,
10091        0,   902,     0,     0,     0,     0,     0,     0,     0,     0,
10092        0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
10093        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10096        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10097        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10098        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10099        0,     0,     0,     0,     0,     0,     0,    28,     0,     0,
10100        0,     0,     0,   903,   904,     0,     0,     0,     0,     0,
10101        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10102        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10103        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10104        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10105        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10106        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10107        0,     0,     0,     0,     0,     0,     0,     0,    40,     0,
10108        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
10109        0,   178,     0,   180,   181,   182,   183,   184,   185,   186,
10110      187,   188,   189,   190,   191,   192,     0,   194,   195,   196,
10111      197,   198,   199,   200,   201,     0,   905,     0,     0,   205,
10112      206,   207,   208,   209,     0,     0,   212,   213,   214,   215,
10113        0,     0,     0,   219,   220,   221,   222,   223,   906,   225,
10114      226,   227,     0,   228,     0,     0,     0,     0,     0,     0,
10115      234,     0,   236,     0,   238,   239,     0,   241,   242,   243,
10116      244,   245,   246,     0,   248,   249,   250,   251,   252,   253,
10117      254,   255,   256,   257,   258,   259,   260,   261,     0,   263,
10118      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
10119        0,   274,   275,   276,   277,     0,   279,   280,   281,   282,
10120      283,   284,   285,   286,   287,   288,   289,     0,     0,     0,
10121      293,     0,   907,   294,   295,   296,   297,   298,   299,   300,
10122      301,   302,   303,     0,     0,     0,     0,     0,   308,   309,
10123      310,   311,   312,   313,   314,   315,     0,   317,   318,     0,
10124      320,   321,     0,     0,   323,     0,   325,   326,   327,   328,
10125      329,   330,   331,   332,   333,   334,   335,     0,   337,   338,
10126      339,   340,   341,   342,   343,   344,   345,     0,   347,   348,
10127      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
10128      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
10129      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
10130      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
10131      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
10132      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10133      409,   410,   411,   412,   413,   414,   415,   416,   417,     0,
10134      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
10135      429,   430,   431,   908,     0,     0,     0,   436,   437,     0,
10136      439,   440,   441,   442,     0,   444,   445,   446,   447,   448,
10137      449,     0,     0,     0,     0,   454,   455,   456,   457,   458,
10138      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
10139      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10140      479,     0,   481,     0,   483,   484,     0,   486,   487,     0,
10141      489,   490,   491,   492,   493,   494,     0,   496,   497,   498,
10142      499,   500,   501,   502,     0,   504,   505,   506,     0,   508,
10143      509,   510,   511,     0,   513,   514,     0,     0,   517,     0,
10144        0,   520,   521,   522,     0,   524,     0,   526,   527,   528,
10145      529,     0,   530,   531,   532,   533,     0,   535,   536,     0,
10146      538,     0,   540,   541,   542,   543,   544,   545,   546,   547,
10147      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
10148      558,   559,     4,   561,   562,   563,   564,   565,   566,   567,
10149      568,   898,   570,   571,   572,     0,   574,   575,   576,   577,
10150        0,     0,   580,   581,     0,   583,   584,   585,   586,   587,
10151      588,   589,   590,   591,   592,   593,   594,   595,   596,     0,
10152        0,   599,   600,     0,     0,   602,     0,   604,   605,     0,
10153        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10154      899,     0,     0,     0,     0,    13,     0,     0,     0,     0,
10155      900,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10156        0,     0,   172,   173,    15,     0,     0,     0,     0,     0,
10157        0,     0,     0,     0,     0,     0,     0,     0,     0,   901,
10158        0,     0,     0,     0,     0,     0,   902,     0,     0,     0,
10159        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10160        0,     0,     0,    20,     0,     0,     0,     0,     0,     0,
10161        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10162        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10163        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10164        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10165        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10166        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10167        0,     0,    28,     0,     0,     0,     0,     0,   903,   904,
10168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10169        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10170        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10171        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10172        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10174        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10175        0,     0,     0,    40,     0,     0,     0,     0,     0,     0,
10176        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
10177      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
10178      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
10179        0,   905,     0,     0,   205,   206,   207,   208,   209,     0,
10180        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
10181      221,   222,   223,   906,   225,   226,   227,     0,   228,     0,
10182        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
10183      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
10184      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
10185      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
10186      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
10187        0,   279,   280,   281,   282,   283,   284,   285,   286,   287,
10188      288,   289,     0,     0,     0,   293,     0,   907,   294,   295,
10189      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
10190        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
10191      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
10192        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
10193      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
10194      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
10195      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
10196      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
10197      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
10198      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
10199      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
10200      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
10201      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
10202      424,   425,   426,   427,   428,   429,   430,   431,   908,     0,
10203        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
10204      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
10205      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
10206      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
10207      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
10208      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
10209      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
10210      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
10211      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
10212      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
10213      533,     4,   535,   536,     0,   538,     0,   540,   541,   542,
10214      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
10215      553,   554,   555,   556,   557,   558,   559,     0,   561,   562,
10216      563,   564,   565,   566,   567,   568,     0,   570,   571,   572,
10217        0,   574,   575,   576,   577,     0,     0,   580,  1748,     0,
10218      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10219      593,   594,   595,   596,    13,     0,   599,   600,     0,     0,
10220      602,     0,   604,   605,     0,     0,     0,     0,     0,     0,
10221        0,   172,   173,    15,     0,     0,     0,     0,     0,     0,
10222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10223        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10224        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10225        0,     0,    20,     0,     0,     0,     0,     0,     0,     0,
10226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10227        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10228        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10229        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10230        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10231        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10232        0,    28,     0,     0,     0,     0,     0,   903,   904,     0,
10233        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10234        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10235        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10236        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10237        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10238        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10239        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10240        0,     0,    40,     0,     0,     0,     0,     0,     0,     0,
10241        0,   174,   175,   176,     0,   178,     0,   180,   181,   182,
10242      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
10243        0,   194,   195,   196,   197,   198,   199,   200,   201,     0,
10244      905,     0,     0,   205,   206,   207,   208,   209,     0,     0,
10245      212,   213,   214,   215,     0,     0,     0,   219,   220,   221,
10246      222,   223,     0,   225,   226,   227,     0,   228,     0,     0,
10247        0,     0,     0,     0,   234,     0,   236,     0,   238,   239,
10248        0,   241,   242,   243,   244,   245,   246,     0,   248,   249,
10249      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
10250      260,   261,     0,   263,   264,   265,     0,   266,   267,   268,
10251      269,   270,   271,   272,     0,   274,   275,   276,   277,     0,
10252      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
10253      289,     0,     0,     0,   293,     0,     0,   294,   295,   296,
10254      297,   298,   299,   300,   301,   302,   303,     0,     0,     0,
10255        0,     0,   308,   309,   310,   311,   312,   313,   314,   315,
10256        0,   317,   318,     0,   320,   321,     0,     0,   323,     0,
10257      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
10258      335,     0,   337,   338,   339,   340,   341,   342,   343,   344,
10259      345,     0,   347,   348,   349,   350,   351,   352,   353,   354,
10260      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
10261      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
10262      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
10263      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
10264      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
10265      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
10266      415,   416,   417,     0,   419,   420,   421,   422,   423,   424,
10267      425,   426,   427,   428,   429,   430,   431,     0,     0,     0,
10268        0,   436,   437,     0,   439,   440,   441,   442,     0,   444,
10269      445,   446,   447,   448,   449,     0,     0,     0,     0,   454,
10270      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
10271      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
10272      475,   476,   477,   478,   479,     0,   481,     0,   483,   484,
10273        0,   486,   487,     0,   489,   490,   491,   492,   493,   494,
10274        0,   496,   497,   498,   499,   500,   501,   502,     0,   504,
10275      505,   506,     0,   508,   509,   510,   511,     0,   513,   514,
10276        0,     0,   517,     0,     0,   520,   521,   522,     0,   524,
10277        0,   526,   527,   528,   529,     0,   530,   531,   532,   533,
10278        0,   535,   536,     0,   538,     0,   540,   541,   542,   543,
10279      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
10280      554,   555,   556,   557,   558,   559,     0,   561,   562,   563,
10281      564,   565,   566,   567,   568,     0,   570,   571,   572,     0,
10282      574,   575,   576,   577,  3452,  3453,   580,   581,     0,   583,
10283      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
10284      594,   595,   596,     0,     0,   599,   600,     0,     0,   602,
10285        0,   604,   605,     0,     0,     0,     0,     0,     0,     0,
10286        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10287        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10288        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10289        0,     0,     0,     0,     0,     0,   172,   173,     0,     0,
10290        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10291        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10292        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10293        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10294        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10295        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10296        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10297        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10298        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10299        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10300        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10301        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10302        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10303        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10304        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10305        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10306        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10307        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10308        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10309        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
10310      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
10311      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
10312      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
10313      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
10314      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
10315      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
10316      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
10317      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
10318      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
10319      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
10320      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
10321      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
10322     3454,  3455,   294,   295,   296,   297,   298,   299,   300,   301,
10323      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
10324      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
10325      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
10326      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
10327      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
10328      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
10329      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
10330      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
10331      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
10332      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
10333      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
10334      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
10335      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
10336      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
10337      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
10338      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10339      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
10340      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
10341      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
10342      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
10343      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
10344      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
10345      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
10346        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10347      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
10348      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
10349      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
10350      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
10351      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
10352      589,   590,   591,   592,   593,   594,   595,   596,  3456,   598,
10353      599,   600,   601,     0,   602,   603,   604,   605,  1397,   857,
10354        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10355        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10356        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10357        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10358        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10359        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10360        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
10361        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10362        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10363        0,   788,     0,     0,     0,     0,     0,     0,     0,     0,
10364        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10365        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10366        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10367        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10368        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10369        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10370        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10371        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10372        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10373        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10374        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10375        0,     0,     0,     0,     0,     0,     0,     0,     0,   693,
10376        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10377        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10378        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10379        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10380        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
10381      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
10382      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
10383      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
10384      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
10385      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
10386      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
10387      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
10388      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
10389      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
10390      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
10391      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
10392      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
10393      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
10394      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
10395      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
10396      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
10397      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
10398      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
10399      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
10400      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
10401      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
10402      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
10403      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
10404      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
10405      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
10406      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
10407      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
10408      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
10409      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
10410      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
10411      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
10412      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
10413      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
10414      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
10415      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
10416      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
10417      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
10418      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
10419      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
10420      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
10421      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
10422      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10423      593,   594,   595,   596,   597,   598,   599,   600,   601,  1397,
10424      602,   603,   604,   605,     0,     0,     0,     0,     0,     0,
10425        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10426        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10427        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10428        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10429        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10430        0,     0,     0,   172,   173,     0,     0,     0,     0,     0,
10431        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10432        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10433        0,     0,   788,     0,     0,     0,     0,     0,     0,     0,
10434        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10435        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10436        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10437        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10438        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10439        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10440        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10441        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10442        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10443        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10444        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10445        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10446      693,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10447        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10448        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10449        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10450        0,     0,     0,   174,   175,   176,   177,   178,   179,   180,
10451      181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
10452      191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
10453      201,   202,   203,     0,   204,   205,   206,   207,   208,   209,
10454      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
10455      220,   221,   222,   223,   224,   225,   226,   227,     0,   228,
10456      229,   230,   231,   232,   233,     0,   234,   235,   236,   237,
10457      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
10458      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
10459      258,   259,   260,   261,   262,   263,   264,   265,     0,   266,
10460      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
10461      277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
10462      287,   288,   289,   290,   291,   292,   293,     0,     0,   294,
10463      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
10464      305,   306,     0,   307,   308,   309,   310,   311,   312,   313,
10465      314,   315,   316,   317,   318,   319,   320,   321,   322,     0,
10466      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
10467      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
10468      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
10469      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
10470      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
10471      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
10472      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
10473      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
10474      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10475      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10476      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10477      433,   434,   435,   436,   437,   438,   439,   440,   441,   442,
10478      443,   444,   445,   446,   447,   448,   449,   450,   451,   452,
10479      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
10480      463,   464,   465,   466,   467,   468,   469,   470,   471,   472,
10481      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
10482      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
10483      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
10484      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
10485      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
10486      523,   524,   525,   526,   527,   528,   529,     0,   530,   531,
10487      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
10488      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
10489      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
10490      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
10491      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
10492      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
10493      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
10494     1333,   602,   603,   604,   605,     0,     0,     0,     0,     0,
10495        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10496        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10497        0,     0,     0,     0,     0,   172,   173,     0,     0,     0,
10498        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10499        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10500        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10501        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10502        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10503        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10504        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10505        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10506        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10507        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10508        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10509        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10510        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10511        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10512        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10514        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10515        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10516        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10517        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
10518      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
10519      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
10520      199,   200,   201,   202,   203,     0,   204,   205,   206,   207,
10521      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
10522      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
10523        0,   228,   229,   230,   231,   232,   233,     0,   234,   235,
10524      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
10525      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
10526      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
10527        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
10528      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
10529      285,   286,   287,   288,   289,   290,   291,   292,   293,     0,
10530        0,   294,   295,   296,   297,   298,   299,   300,   301,   302,
10531      303,   304,   305,   306,     0,   307,   308,   309,   310,   311,
10532      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
10533      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
10534      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
10535      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
10536      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
10537      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
10538      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
10539      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
10540      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
10541      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10542      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
10543      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
10544      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
10545      441,   442,   443,   444,   445,   446,   447,   448,   449,   450,
10546      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
10547      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
10548      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
10549      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
10550      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
10551      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
10552      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
10553      521,   522,   523,   524,   525,   526,   527,   528,   529,     0,
10554      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
10555      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
10556      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
10557      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
10558      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
10559      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
10560      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
10561      600,   601,   857,   602,   603,   604,   605,     0,     0,     0,
10562        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10563        0,     0,     0,     0,     0,     0,  1334,     0,     0,     0,
10564        0,  1335,     0,     0,   772,     0,     0,     0,     0,     0,
10565        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10566        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10567        0,     0,     0,     0,     0,   172,   173,     0,     0,     0,
10568        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10569        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10570        0,     0,     0,     0,   788,     0,     0,     0,     0,     0,
10571        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10572        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10573        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10574        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10575        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10576        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10577        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10578        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10579        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10580        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10581        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10582        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10583        0,     0,   693,     0,     0,     0,     0,     0,     0,     0,
10584        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10585        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10586        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10587        0,     0,     0,     0,     0,   174,   175,   176,   177,   178,
10588      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
10589      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
10590      199,   200,   201,   202,   203,     0,   204,   205,   206,   207,
10591      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
10592      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
10593        0,   228,   229,   230,   231,   232,   233,     0,   234,   235,
10594      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
10595      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
10596      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
10597        0,   266,   267,   268,   269,   270,   271,   272,   273,   274,
10598      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
10599      285,   286,   287,   288,   289,   290,   291,   292,   293,     0,
10600        0,   294,   295,   296,   297,   298,   299,   300,   301,   302,
10601      303,   304,   305,   306,     0,   307,   308,   309,   310,   311,
10602      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
10603      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
10604      331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
10605      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
10606      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
10607      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
10608      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
10609      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
10610      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
10611      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10612      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
10613      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
10614      431,   432,   433,   434,   435,   436,   437,   438,   439,   440,
10615      441,   442,   443,   444,   445,   446,   447,   448,   449,   450,
10616      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
10617      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
10618      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
10619      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
10620      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
10621      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
10622      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
10623      521,   522,   523,   524,   525,   526,   527,   528,   529,     0,
10624      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
10625      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
10626      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
10627      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
10628      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
10629      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
10630      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
10631      600,   601,     0,   602,   603,   604,   605,  2203,     0,     0,
10632        0,  4877,     0,     0,     0,     0,     0,     0,     0,     0,
10633        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10634        0,     0,     0,     0,     0,     0,     0,     0,     0,  2204,
10635        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10636        0,     0,     0,     0,  3790,     0,     0,     0,     0,   172,
10637      173,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10638        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10639        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10640        0,     0,     0,     0,     0,     0,     0,     0,  3791,     0,
10641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10642        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10643        0,     0,     0,     0,     0,     0,  3792,     0,     0,     0,
10644        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10645        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10646        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10647        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10648        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10649        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10650        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10651        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10652        0,     0,     0,     0,     0,     0,   693,     0,     0,     0,
10653        0,     0,     0,     0,     0,     0,  3793,     0,     0,     0,
10654        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10655        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10656        0,     0,     0,     0,     0,     0,     0,     0,     0,   174,
10657      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
10658      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
10659      195,   196,   197,   198,   199,   200,   201,   202,   203,     0,
10660      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
10661      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
10662      224,   225,   226,   227,     0,   228,   229,   230,   231,   232,
10663      233,     0,   234,   235,   236,   237,   238,   239,   240,   241,
10664      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
10665      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
10666      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
10667      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
10668      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
10669      291,   292,   293,     0,     0,   294,   295,   296,   297,   298,
10670      299,   300,   301,   302,   303,   304,   305,   306,     0,   307,
10671      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
10672      318,   319,   320,   321,   322,     0,   323,   324,   325,   326,
10673      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
10674      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
10675      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
10676      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
10677      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10678      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
10679      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
10680      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
10681      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
10682      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
10683      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
10684      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
10685      447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
10686      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
10687      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
10688      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
10689      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
10690      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
10691      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
10692      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
10693      527,   528,   529,     0,   530,   531,   532,   533,   534,   535,
10694      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
10695      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
10696      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
10697      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
10698      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
10699      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
10700      596,   597,   598,   599,   600,   601,     0,   602,   603,   604,
10701      605,  2203,     0,     0,     0,  5682,     0,     0,     0,     0,
10702        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10703        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10704        0,     0,     0,  2204,     0,     0,     0,     0,     0,     0,
10705        0,     0,     0,     0,     0,     0,     0,     0,  3790,     0,
10706        0,     0,     0,   172,   173,     0,     0,     0,     0,     0,
10707        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10708        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10709        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10710        0,     0,  3791,     0,     0,     0,     0,     0,     0,     0,
10711        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10712        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10713     3792,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10714        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10716        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10717        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10718        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10720        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10721        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10722      693,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10723     3793,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10724        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10725        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10726        0,     0,     0,   174,   175,   176,   177,   178,   179,   180,
10727      181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
10728      191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
10729      201,   202,   203,     0,   204,   205,   206,   207,   208,   209,
10730      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
10731      220,   221,   222,   223,   224,   225,   226,   227,     0,   228,
10732      229,   230,   231,   232,   233,     0,   234,   235,   236,   237,
10733      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
10734      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
10735      258,   259,   260,   261,   262,   263,   264,   265,     0,   266,
10736      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
10737      277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
10738      287,   288,   289,   290,   291,   292,   293,     0,     0,   294,
10739      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
10740      305,   306,     0,   307,   308,   309,   310,   311,   312,   313,
10741      314,   315,   316,   317,   318,   319,   320,   321,   322,     0,
10742      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
10743      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
10744      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
10745      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
10746      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
10747      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
10748      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
10749      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
10750      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10751      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10752      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10753      433,   434,   435,   436,   437,   438,   439,   440,   441,   442,
10754      443,   444,   445,   446,   447,   448,   449,   450,   451,   452,
10755      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
10756      463,   464,   465,   466,   467,   468,   469,   470,   471,   472,
10757      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
10758      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
10759      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
10760      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
10761      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
10762      523,   524,   525,   526,   527,   528,   529,     0,   530,   531,
10763      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
10764      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
10765      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
10766      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
10767      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
10768      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
10769      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
10770        0,   602,   603,   604,   605,  2203,     0,     0,     0,  5786,
10771        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10772        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10773        0,     0,     0,     0,     0,     0,     0,  2204,     0,     0,
10774        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10775        0,     0,  3790,     0,     0,     0,     0,   172,   173,     0,
10776        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10777        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10778        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10779        0,     0,     0,     0,     0,     0,  3791,     0,     0,     0,
10780        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10781        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10782        0,     0,     0,     0,  3792,     0,     0,     0,     0,     0,
10783        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10784        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10785        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10786        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10787        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10788        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10789        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10790        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10791        0,     0,     0,     0,   693,     0,     0,     0,     0,     0,
10792        0,     0,     0,     0,  3793,     0,     0,     0,     0,     0,
10793        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10795        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
10796      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
10797      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
10798      197,   198,   199,   200,   201,   202,   203,     0,   204,   205,
10799      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
10800      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
10801      226,   227,     0,   228,   229,   230,   231,   232,   233,     0,
10802      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
10803      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
10804      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
10805      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
10806      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
10807      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
10808      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
10809      301,   302,   303,   304,   305,   306,     0,   307,   308,   309,
10810      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
10811      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
10812      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
10813      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
10814      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
10815      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
10816      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
10817      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
10818      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
10819      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10820      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
10821      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
10822      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
10823      439,   440,   441,   442,   443,   444,   445,   446,   447,   448,
10824      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
10825      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
10826      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10827      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
10828      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
10829      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10830      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
10831      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
10832      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
10833      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
10834      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
10835      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
10836      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
10837      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
10838      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
10839      598,   599,   600,   601,  3106,   602,   603,   604,   605,     0,
10840        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10841        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10842        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10843        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10844        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
10845        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10846        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10847        0,   788,     0,     0,     0,     0,     0,     0,     0,     0,
10848        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10849        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10850        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10851        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10852        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10853        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10854        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10855        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10856        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10857        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10858        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10859        0,     0,     0,     0,     0,     0,     0,     0,     0,   693,
10860        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10861        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10862        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10863        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10864        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
10865      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
10866      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
10867      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
10868      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
10869      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
10870      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
10871      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
10872      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
10873      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
10874      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
10875      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
10876      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
10877      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
10878      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
10879      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
10880      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
10881      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
10882      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
10883      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
10884      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
10885      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
10886      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
10887      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
10888      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
10889      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
10890      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
10891      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
10892      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
10893      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
10894      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
10895      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
10896      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
10897      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
10898      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
10899      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
10900      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
10901      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
10902      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
10903      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
10904      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
10905      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
10906      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10907      593,   594,   595,   596,   597,   598,   599,   600,   601,  1760,
10908      602,   603,   604,   605,     0,     0,     0,     0,     0,     0,
10909        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10910        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10911        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10912        0,     0,     0,     0,     0,     0,     0,   172,   173,     0,
10913        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10914        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10915        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10916        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10917        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10918        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10919        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10920        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10921        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10922        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10923        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10924        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10925        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10926        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10927        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10928        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10929        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10930        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10931        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10932        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
10933      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
10934      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
10935      197,   198,   199,   200,   201,   202,   203,     0,   204,   205,
10936      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
10937      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
10938      226,   227,     0,   228,   229,   230,   231,   232,   233,     0,
10939      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
10940      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
10941      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
10942      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
10943      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
10944      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
10945      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
10946      301,   302,   303,   304,   305,   306,     0,   307,   308,   309,
10947      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
10948      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
10949      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
10950      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
10951      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
10952      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
10953      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
10954      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
10955      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
10956      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10957      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
10958      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
10959      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
10960      439,   440,   441,   442,   443,   444,   445,   446,   447,   448,
10961      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
10962      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
10963      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10964      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
10965      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
10966      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10967      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
10968      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
10969      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
10970      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
10971      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
10972      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
10973      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
10974      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
10975      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
10976      598,   599,   600,   601,  1760,   602,   603,   604,   605,     0,
10977        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10978        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10979        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10980        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10981        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
10982        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10983        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10984        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10985        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10986        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10987        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10988        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10989        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10990        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10991        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10992        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10993        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10994        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10995        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10996        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10997        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10998        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10999        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11000        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11001        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
11002      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
11003      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
11004      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
11005      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
11006      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
11007      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
11008      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
11009      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
11010      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
11011      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
11012      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
11013      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
11014      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
11015      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
11016      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
11017      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
11018      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
11019      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
11020      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
11021      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
11022      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
11023      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
11024      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
11025      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
11026      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
11027      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
11028      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
11029      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
11030      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
11031      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
11032      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
11033      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
11034      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
11035      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
11036      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
11037      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
11038      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
11039      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
11040      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
11041      563,   564,  2493,   566,   567,   568,   569,   570,   571,   572,
11042      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
11043      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11044      593,   594,   595,   596,   597,   598,   599,   600,   601,  3173,
11045      602,   603,   604,   605,     0,     0,     0,     0,     0,     0,
11046        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11047        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11048        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11049        0,     0,     0,     0,     0,     0,     0,   172,   173,     0,
11050        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11051        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11052        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11053        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11054        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11055        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11056        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11057        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11058        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11059        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11060        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11061        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11062        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11063        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11064        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11065        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11066        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11067        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11068        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11069        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
11070      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
11071      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
11072      197,   198,   199,   200,   201,   202,   203,     0,   204,   205,
11073      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
11074      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
11075      226,   227,     0,   228,   229,   230,   231,   232,   233,     0,
11076      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
11077      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
11078      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
11079      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
11080      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
11081      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
11082      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
11083      301,   302,   303,   304,   305,   306,     0,   307,   308,   309,
11084      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
11085      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
11086      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
11087      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
11088      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
11089      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
11090      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
11091      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
11092      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
11093      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
11094      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
11095      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
11096      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
11097      439,   440,   441,   442,   443,   444,   445,   446,   447,   448,
11098      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
11099      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
11100      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
11101      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
11102      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
11103      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
11104      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
11105      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
11106      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
11107      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
11108      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
11109      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
11110      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
11111      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
11112      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
11113      598,   599,   600,   601,  4808,   602,   603,   604,   605,     0,
11114        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11115        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11116        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11117        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11118        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
11119        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11120        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11121        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11122        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11123        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11124        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11125        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11126        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11127        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11128        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11129        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11130        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11131        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11132        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11133        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11134        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11135        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11136        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11137        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11138        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
11139      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
11140      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
11141      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
11142      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
11143      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
11144      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
11145      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
11146      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
11147      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
11148      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
11149      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
11150      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
11151      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
11152      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
11153      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
11154      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
11155      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
11156      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
11157      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
11158      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
11159      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
11160      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
11161      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
11162      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
11163      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
11164      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
11165      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
11166      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
11167      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
11168      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
11169      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
11170      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
11171      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
11172      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
11173      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
11174      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
11175      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
11176      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
11177      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
11178      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
11179      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
11180      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11181      593,   594,   595,   596,   597,   598,   599,   600,   601,  4826,
11182      602,   603,   604,   605,     0,     0,     0,     0,     0,     0,
11183        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11184        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11185        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11186        0,     0,     0,     0,     0,     0,     0,   172,   173,     0,
11187        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11188        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11189        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11190        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11191        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11192        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11193        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11194        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11195        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11196        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11197        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11198        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11199        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11200        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11201        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11202        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11203        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11204        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11205        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11206        0,     0,     0,     0,     0,     0,     0,   174,   175,   176,
11207      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
11208      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
11209      197,   198,   199,   200,   201,   202,   203,     0,   204,   205,
11210      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
11211      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
11212      226,   227,     0,   228,   229,   230,   231,   232,   233,     0,
11213      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
11214      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
11215      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
11216      264,   265,     0,   266,   267,   268,   269,   270,   271,   272,
11217      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
11218      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
11219      293,     0,     0,   294,   295,   296,   297,   298,   299,   300,
11220      301,   302,   303,   304,   305,   306,     0,   307,   308,   309,
11221      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
11222      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
11223      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
11224      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
11225      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
11226      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
11227      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
11228      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
11229      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
11230      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
11231      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
11232      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
11233      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
11234      439,   440,   441,   442,   443,   444,   445,   446,   447,   448,
11235      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
11236      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
11237      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
11238      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
11239      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
11240      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
11241      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
11242      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
11243      529,     0,   530,   531,   532,   533,   534,   535,   536,   537,
11244      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
11245      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
11246      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
11247      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
11248      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
11249      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
11250      598,   599,   600,   601,  3120,   602,   603,   604,   605,     0,
11251        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11252        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11253        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11254        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11255        0,     0,   172,   173,     0,     0,     0,     0,     0,     0,
11256        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11257        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11258        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11259        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11260        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11261        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11262        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11263        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11264        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11265        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11266        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11267        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11268        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11269        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11270        0,     0,     0,     0,     0,     0,     0,     0,     0,   693,
11271        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11272        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11273        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11274        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11275        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
11276      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
11277      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
11278      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
11279      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
11280      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
11281      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
11282      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
11283      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
11284      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
11285      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
11286      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
11287      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
11288      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
11289      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
11290      315,   316,     0,   318,   319,   320,   321,   322,     0,   323,
11291      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
11292      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
11293      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
11294      354,     0,   356,   357,   358,   359,   360,   361,   362,   363,
11295      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
11296      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
11297      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
11298      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
11299      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
11300      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
11301      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
11302      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
11303      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
11304      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
11305      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
11306      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
11307      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
11308      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
11309      504,   505,   506,   507,   508,   509,   510,     0,   512,   513,
11310      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
11311      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
11312      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
11313      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
11314      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
11315      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
11316      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
11317      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11318      593,   594,   595,   596,  3121,   598,   599,   600,   601,     0,
11319      602,   603,   604,   605,   172,   173,     0,     0,     0,     0,
11320        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11321        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11322        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11323        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11324        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11325        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11326        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11327        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11328        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11329        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11330        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11331        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11332        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11333        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11334        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11335        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11336        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11337        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11338        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11339        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
11340      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
11341      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
11342      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
11343      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
11344      219,   220,   221,   222,   223,   224,   225,   226,   227,  2349,
11345      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
11346      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
11347      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
11348      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
11349      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
11350      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
11351      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
11352      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
11353      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
11354      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
11355        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11356      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
11357      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
11358      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
11359      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
11360      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11361      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
11362      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
11363      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
11364      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
11365      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
11366      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
11367      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
11368      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
11369      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
11370      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
11371      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
11372      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
11373      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
11374      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
11375      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
11376      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
11377      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
11378      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
11379      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
11380      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
11381      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
11382      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
11383      601,     0,   602,   603,   604,   605,   172,   173,     0,     0,
11384        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11385        0,     0,     0,     0,     0,     0,  5866,     0,     0,     0,
11386        0,     0,     0,  2350,  5867,   788,     0,     0,     0,     0,
11387        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11388        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11389        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11390        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11391        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11392        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11393        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11394        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11395        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11396        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11397        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11398        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11399        0,     0,     0,   693,     0,     0,     0,     0,     0,     0,
11400        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11401        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11402        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11403        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
11404      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
11405      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
11406      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
11407      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
11408      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
11409      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
11410      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
11411      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
11412      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
11413      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
11414      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
11415      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
11416        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
11417      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
11418      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
11419      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
11420      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
11421      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
11422      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
11423      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
11424      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
11425      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
11426      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
11427      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
11428      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
11429      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
11430      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
11431      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
11432      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11433      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
11434      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
11435      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
11436      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
11437      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
11438      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
11439      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
11440        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11441      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
11442      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
11443      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
11444      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
11445      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
11446      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
11447      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
11448        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11449        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11450        0,     0,     0,     0,     0,     0,  1781,   788,     0,     0,
11451        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11452        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11453        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11454        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11455        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11456        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11457        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11458        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11459        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11460        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11461        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11462        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11463        0,     0,     0,     0,     0,   693,     0,     0,     0,     0,
11464        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11465        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11466        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11467        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
11468      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
11469      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
11470      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
11471      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
11472      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
11473      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
11474        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
11475      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
11476      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
11477      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
11478      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
11479      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
11480      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
11481      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
11482      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
11483      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
11484      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
11485      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
11486      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
11487      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
11488      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
11489      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
11490      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
11491      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
11492      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
11493      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
11494      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
11495      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
11496      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
11497      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
11498      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
11499      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
11500      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
11501      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
11502      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
11503      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
11504      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
11505      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
11506      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
11507      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
11508      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
11509      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
11510      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
11511      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
11512      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
11513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11514        0,     0,     0,     0,     0,     0,     0,     0,  1994,   788,
11515        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11516        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11517        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11518        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11519        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11520        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11521        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11522        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11523        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11524        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11525        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11526        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11527        0,     0,     0,     0,     0,     0,     0,   693,     0,     0,
11528        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11529        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11530        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11531        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11532      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
11533      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
11534      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
11535        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
11536      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
11537      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
11538      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
11539      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
11540      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
11541      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11542      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
11543      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
11544      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
11545      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
11546      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
11547      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
11548      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
11549      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
11550      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
11551      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
11552      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
11553      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
11554      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
11555      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
11556      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
11557      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
11558      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
11559      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
11560      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
11561      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
11562      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
11563      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11564      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
11565      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
11566      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
11567      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
11568      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
11569      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
11570      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
11571      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
11572      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
11573      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
11574      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11575      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
11576      604,   605,   172,   173,     0,     0,     0,     0,     0,     0,
11577        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11578        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11579     2364,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11580        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11581        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11582        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11583        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11584        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11585        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11586        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11587        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11588        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11589        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11590        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11591        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11592        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11593        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11594        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11595        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11596        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
11597      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
11598      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
11599      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
11600      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
11601      221,   222,   223,   224,   225,   226,   227,  2349,   228,   229,
11602      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
11603      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
11604      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
11605      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
11606      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
11607      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
11608      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
11609      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
11610      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
11611      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
11612      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
11613      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
11614      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
11615      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
11616      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
11617      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
11618      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
11619      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
11620      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
11621      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
11622      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
11623      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
11624      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
11625      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
11626      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
11627      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
11628      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
11629      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
11630      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
11631      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
11632      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
11633      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
11634      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
11635      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
11636      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
11637      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
11638      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11639      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
11640      602,   603,   604,   605,  1578,  1579,     0,     0,     0,     0,
11641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11642        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11643        0,  2350,  5867,     0,     0,     0,     0,     0,     0,     0,
11644        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11645        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11646        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11647        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11648        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11649        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11650        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11651        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11652        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11653        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11654        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11655        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11656        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11657        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11658        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11659        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11660        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
11661      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
11662      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
11663      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
11664      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
11665      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
11666      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
11667      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
11668      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
11669      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
11670      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
11671      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
11672      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
11673      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
11674      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
11675      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
11676        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11677      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
11678      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
11679      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
11680      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
11681      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11682      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
11683      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
11684      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
11685      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
11686      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
11687      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
11688      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
11689      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
11690      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
11691      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
11692      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
11693      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
11694      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
11695      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
11696      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
11697      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
11698      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
11699      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
11700      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
11701      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
11702      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
11703      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
11704      601,     0,   602,   603,   604,   605,   172,   173,     0,     0,
11705        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11706        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11707        0,     0,     0,     0,  1906,     0,     0,     0,     0,     0,
11708        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11709        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11710        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11711        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11712        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11713        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11714        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11716        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11717       32,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11718        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11720        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11721        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11722        0,     0,     0,     0,     0,     0,     0,    39,     0,     0,
11723        0,     0,     0,     0,     0,     0,     0,     0,    41,     0,
11724        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
11725      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
11726      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
11727      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
11728      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
11729      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
11730      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
11731      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
11732      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
11733      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
11734      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
11735      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
11736      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
11737        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
11738      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
11739      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
11740      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
11741      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
11742      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
11743      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
11744      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
11745      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
11746      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
11747      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
11748      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
11749      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
11750      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
11751      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
11752      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
11753      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11754      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
11755      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
11756      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
11757      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
11758      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
11759      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
11760      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
11761        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11762      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
11763      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
11764      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
11765      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
11766      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
11767      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
11768      599,   600,   601,     0,   602,   603,   604,   605,  1578,  1579,
11769        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11770        0,     0,     0,     0,     0,     0,     0,  1334,     0,     0,
11771        0,     0,     0,     0,     0,   772,     0,     0,     0,     0,
11772        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11773        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11774        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11775        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11776        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11777        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11778        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11779        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11780        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11781        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11782        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11783        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11784        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11785        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11786        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11787        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11788        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
11789      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
11790      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
11791      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
11792      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
11793      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
11794      225,   226,   227,  1580,   228,   229,   230,   231,   232,   233,
11795        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
11796      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
11797      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
11798      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
11799      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
11800      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
11801      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
11802      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
11803      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
11804      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
11805      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
11806      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
11807      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
11808      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
11809      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
11810      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
11811      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
11812      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
11813      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
11814      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
11815      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
11816      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
11817      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
11818      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
11819      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
11820      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
11821      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
11822      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
11823      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
11824      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
11825      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
11826      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
11827      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
11828      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
11829      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
11830      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
11831      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
11832      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
11833      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
11834        0,     0,     0,     0,     0,     0,     0,     0,     0,  1581,
11835        0,     0,     0,     0,     0,     0,     0,  1080,     0,     0,
11836        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11837        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11838        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11839        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11840        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11841        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11842        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11843        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11844        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11845        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11846        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11847        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11848        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11849        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11850        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11851        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11852        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11853      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
11854      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
11855      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
11856        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
11857      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
11858      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
11859      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
11860      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
11861      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
11862      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11863      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
11864      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
11865      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
11866      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
11867      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
11868      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
11869      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
11870      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
11871      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
11872      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
11873      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
11874      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
11875      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
11876      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
11877      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
11878      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
11879      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
11880      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
11881      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
11882      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
11883      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
11884      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11885      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
11886      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
11887      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
11888      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
11889      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
11890      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
11891      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
11892      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
11893      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
11894      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
11895      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11896      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
11897      604,   605,  1578,  1579,     0,     0,     0,     0,     0,     0,
11898        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11899        0,  1334,     0,     0,     0,     0,  1335,     0,     0,   772,
11900        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11901        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11903        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11904        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11905        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11906        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11907        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11908        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11909        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11910        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11911        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11912        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11913        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11914        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11915        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11916        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11917        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
11918      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
11919      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
11920      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
11921      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
11922      221,   222,   223,   224,   225,   226,   227,  1580,   228,   229,
11923      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
11924      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
11925      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
11926      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
11927      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
11928      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
11929      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
11930      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
11931      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
11932      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
11933      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
11934      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
11935      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
11936      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
11937      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
11938      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
11939      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
11940      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
11941      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
11942      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
11943      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
11944      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
11945      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
11946      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
11947      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
11948      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
11949      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
11950      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
11951      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
11952      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
11953      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
11954      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
11955      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
11956      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
11957      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
11958      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
11959      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11960      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
11961      602,   603,   604,   605,   172,   173,     0,     0,     0,     0,
11962        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11963        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11964        0,  1080,     0,     0,     0,     0,     0,     0,     0,     0,
11965        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11966        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11967        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11968        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11969        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11970        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11971        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11972        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11973        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11974        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11975        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11976        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11977        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11978        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11979        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11980        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11981        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
11982      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
11983      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
11984      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
11985      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
11986      219,   220,   221,   222,   223,   224,   225,   226,   227,  2349,
11987      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
11988      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
11989      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
11990      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
11991      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
11992      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
11993      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
11994      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
11995      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
11996      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
11997        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11998      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
11999      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
12000      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
12001      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
12002      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12003      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
12004      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
12005      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
12006      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
12007      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
12008      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
12009      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
12010      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
12011      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
12012      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
12013      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
12014      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
12015      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
12016      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
12017      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
12018      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
12019      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
12020      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
12021      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
12022      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
12023      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
12024      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12025      601,     0,   602,   603,   604,   605,   172,   173,     0,     0,
12026        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12027        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12028        0,     0,     0,  2350,     0,     0,     0,     0,     0,     0,
12029        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12030        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12031        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12032        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12034        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12035        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12036        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12037        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12038        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12039        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12040        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12041        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12042        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12043        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12044        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12045        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
12046      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
12047      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
12048      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
12049      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
12050      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
12051      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
12052      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
12053      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
12054      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
12055      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
12056      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
12057      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
12058        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
12059      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
12060      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
12061      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12062      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
12063      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
12064      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
12065      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
12066      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
12067      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
12068      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
12069      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
12070      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
12071      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
12072      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
12073      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
12074      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12075      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
12076      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
12077      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12078      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
12079      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
12080      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
12081      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
12082        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12083      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
12084      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
12085      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
12086      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
12087      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
12088      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12089      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
12090        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12091        0,     0,     0,     0,     0,     0,     0,  1334,     0,     0,
12092        0,     0,     0,     0,     0,   772,     0,     0,     0,     0,
12093        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12096        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12097        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12098        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12099        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12100        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12101        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12102        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12103        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12104        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12105        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12106        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12107        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12108        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12109        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
12110      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
12111      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
12112      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
12113      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
12114      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
12115      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
12116        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
12117      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
12118      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
12119      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
12120      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
12121      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
12122      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
12123      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
12124      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
12125      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12126      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
12127      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
12128      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
12129      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
12130      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
12131      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
12132      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
12133      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
12134      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
12135      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
12136      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
12137      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
12138      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
12139      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
12140      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
12141      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12142      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
12143      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
12144      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
12145      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
12146      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
12147      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
12148      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
12149      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
12150      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
12151      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
12152      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12153      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
12154      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
12155     2833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12156        0,     0,     0,     0,     0,     0,     0,   772,     0,     0,
12157        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12158        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12159        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12160        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12161        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12162        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12163        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12164        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12165        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12166        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12167        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12169        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12170        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12171        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12172        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12174      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
12175      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
12176      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
12177        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
12178      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
12179      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
12180      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
12181      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
12182      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
12183      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12184      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
12185      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
12186      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
12187      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
12188      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
12189      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
12190      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
12191      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
12192      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
12193      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
12194      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
12195      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
12196      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
12197      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
12198      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
12199      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
12200      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
12201      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
12202      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12203      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
12204      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
12205      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12206      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
12207      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
12208      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
12209      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
12210      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
12211      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
12212      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
12213      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
12214      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
12215      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
12216      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
12217      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
12218      604,   605,   172,   173,  4774,     0,     0,     0,     0,     0,
12219        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12220        0,  4453,     0,     0,     0,     0,     0,     0,     0,  4454,
12221        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12223        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12224        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12225        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12227        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12228        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12229        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12230        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12231        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12232        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12233        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12234        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12235        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12236        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12237        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12238        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
12239      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
12240      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
12241      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
12242      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
12243      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
12244      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
12245      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
12246      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
12247      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
12248      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
12249      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
12250      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
12251      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
12252      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
12253      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
12254      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
12255      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
12256      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
12257      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
12258      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
12259      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
12260      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
12261      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
12262      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
12263      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
12264      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
12265      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
12266      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
12267      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
12268      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
12269      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
12270      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
12271      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
12272      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
12273      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
12274      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
12275      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
12276      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
12277      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
12278      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
12279      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
12280      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
12281      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
12282      602,   603,   604,   605,   172,   173,     0,     0,     0,     0,
12283        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12284        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12285        0,  4454,     0,     0,     0,     0,     0,     0,     0,     0,
12286        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12287        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12288        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12289        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12290        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12291        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12292        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12293        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12294        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12295        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12296        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12297        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12298        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12299        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12300        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12301        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12302        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
12303      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
12304      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
12305      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
12306      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
12307      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
12308      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
12309      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
12310      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
12311      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
12312      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
12313      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
12314      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
12315      294,   295,   296,   769,   298,   299,   300,   301,   302,   303,
12316      304,   305,   306,     0,   770,   308,   309,   310,   311,   312,
12317      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
12318        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12319      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
12320      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
12321      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
12322      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
12323      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12324      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
12325      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
12326      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
12327      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
12328      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
12329      432,   433,   434,   435,   436,   437,   438,   439,   771,   441,
12330      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
12331      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
12332      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
12333      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
12334      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
12335      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
12336      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
12337      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
12338      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
12339      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
12340      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
12341      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
12342      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
12343      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
12344      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
12345      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12346      601,     0,   602,   603,   604,   605,   172,   173,     0,     0,
12347        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12348        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12349        0,     0,     0,   772,     0,     0,     0,     0,     0,     0,
12350        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12351        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12352        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12353        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12354        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12355        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12356        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12357        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12358        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12359        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12360        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12361        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12362        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12363        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12364        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12365        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12366        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
12367      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
12368      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
12369      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
12370      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
12371      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
12372      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
12373      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
12374      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
12375      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
12376      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
12377      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
12378      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
12379        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
12380      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
12381      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
12382      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12383      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
12384      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
12385      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
12386      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
12387      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
12388      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
12389      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
12390      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
12391      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
12392      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
12393      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
12394      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
12395      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12396      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
12397      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
12398      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12399      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
12400      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
12401      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
12402      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
12403        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12404      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
12405      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
12406      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
12407      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
12408      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
12409      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12410      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
12411        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12412        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12413        0,     0,     0,     0,     0,   772,     0,     0,     0,     0,
12414        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12415        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12416        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12417        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12418        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12419        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12420        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12421        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12422        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12423        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12424        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12425        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12426        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12427        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12428        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12429        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12430        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
12431      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
12432      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
12433      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
12434      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
12435      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
12436      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
12437        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
12438      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
12439      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
12440      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
12441      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
12442      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
12443      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
12444      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
12445      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
12446      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12447      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
12448      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
12449      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
12450      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
12451      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
12452      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
12453      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
12454      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
12455      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
12456      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
12457      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
12458      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
12459      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
12460      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
12461      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
12462      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12463      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
12464      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
12465      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
12466      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
12467      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
12468      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
12469      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
12470      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
12471      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
12472      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
12473      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12474      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
12475      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
12476        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12477        0,     0,     0,     0,     0,     0,     0,  4454,     0,     0,
12478        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12479        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12480        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12481        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12482        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12483        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12484        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12485        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12486        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12487        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12488        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12489        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12490        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12491        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12492        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12493        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12494        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12495      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
12496      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
12497      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
12498        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
12499      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
12500      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
12501      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
12502      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
12503      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
12504      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12505      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
12506      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
12507      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
12508      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
12509      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
12510      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
12511      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
12512      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
12513      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
12514      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
12515      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
12516      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
12517      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
12518      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
12519      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
12520      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
12521      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
12522      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
12523      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12524      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
12525      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
12526      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12527      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
12528      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
12529      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
12530      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
12531      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
12532      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
12533      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
12534      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
12535      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
12536      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
12537      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
12538      595,   596,   597,   598,   599,   600,   601,  2865,   602,   603,
12539      604,   605,   172,   173,     0,     0,     0,     0,     0,     0,
12540        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12541        0,  2408,     0,     0,     0,     0,     0,     0,     0,     0,
12542        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12543        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12544        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12545        0,     0,     0,   689,   690,     0,     0,     0,     0,     0,
12546        0,     0,     0,     0,     0,     0,     0,     0,     0,  5223,
12547        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12548        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12549        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12550        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12551        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12552        0,     0,     0,     0,     0,     0,     0,     0,     0,  5224,
12553      660,  5225,     0,     0,     0,     0,     0,     0,     0,     0,
12554        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12555        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12556        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12557        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12558        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12559        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
12560      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
12561      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
12562      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
12563      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
12564      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
12565      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
12566      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
12567      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
12568      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
12569      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
12570      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
12571      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
12572      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
12573      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
12574      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
12575      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
12576      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
12577      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
12578      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
12579      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
12580      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
12581      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
12582      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
12583      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
12584      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
12585      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
12586      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
12587      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
12588      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
12589      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
12590      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
12591      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
12592      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
12593      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
12594      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
12595      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
12596      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
12597      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
12598      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
12599      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
12600      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
12601      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
12602      593,   594,   595,   596,   597,   598,   599,   600,   601,  1515,
12603      602,   603,   604,   605,  1516,     0,     0,     0,     0,     0,
12604        0,     0,     0,  2866,   172,   173,     0,     0,     0,     0,
12605        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12606        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12607        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12608        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12609        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12610        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12611        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12612        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12613        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12614        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12615        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12616        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12617        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12618        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12619        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12620        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12621        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12622        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12623        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12624        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
12625      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
12626      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
12627      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
12628      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
12629      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
12630      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
12631      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
12632      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
12633      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
12634      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
12635      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
12636      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
12637      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
12638      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
12639      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
12640        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12641      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
12642      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
12643      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
12644      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
12645      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12646      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
12647      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
12648      402,   403,   404,   405,   406,   407,   408,   409,   410,  1517,
12649      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
12650      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
12651      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
12652      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
12653      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
12654      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
12655      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
12656      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
12657      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
12658      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
12659      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
12660      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
12661      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
12662      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
12663      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
12664      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
12665      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
12666      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
12667      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12668      601,  1447,   602,   603,   604,   605,     0,     0,     0,     0,
12669        0,     0,     0,     0,     0,     0,   172,   173,     0,     0,
12670        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12671        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12672        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12673        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12674        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12675        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12676        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12677        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12678        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12679        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12680        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12681        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12682        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12683        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12684        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12685        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12686        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12687        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12688        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12689        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
12690      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
12691      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
12692      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
12693      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
12694      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
12695      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
12696      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
12697      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
12698      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
12699      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
12700      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
12701      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
12702        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
12703      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
12704      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
12705      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12706      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
12707      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
12708      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
12709      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
12710      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
12711      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
12712      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
12713      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
12714      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
12715      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
12716      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
12717      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
12718      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12719      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
12720      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
12721      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12722      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
12723      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
12724      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
12725      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
12726        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12727      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
12728      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
12729      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
12730      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
12731      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
12732      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12733      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
12734        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12735        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12736        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12737        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12738        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12739        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12740        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12741        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12742        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12743        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12744        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12745        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12746        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12747        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12748        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12749        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12750        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12751        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12752        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12753        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
12754      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
12755      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
12756      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
12757      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
12758      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
12759      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
12760        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
12761      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
12762      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
12763      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
12764      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
12765      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
12766      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
12767      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
12768      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
12769      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12770      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
12771      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
12772      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
12773      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
12774      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
12775      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
12776      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
12777      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
12778      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
12779      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
12780      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
12781      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
12782      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
12783      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
12784      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
12785      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12786      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
12787      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
12788      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
12789      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
12790      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
12791      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
12792      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
12793      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
12794      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
12795      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
12796      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12797      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
12798      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
12799     2809,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12800        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12801        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12802        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12803        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12804        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12805        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12806        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12807        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12808        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12809        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12810        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12811        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12812        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12813        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12814        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12815        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12816        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12817        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12818      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
12819      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
12820      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
12821        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
12822      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
12823      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
12824      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
12825      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
12826      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
12827      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12828      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
12829      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
12830      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
12831      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
12832      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
12833      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
12834      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
12835      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
12836      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
12837      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
12838      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
12839      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
12840      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
12841      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
12842      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
12843      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
12844      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
12845      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
12846      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12847      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
12848      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
12849      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12850      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
12851      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
12852      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
12853      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
12854      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
12855      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
12856      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
12857      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
12858      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
12859      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
12860      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
12861      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
12862      604,   605,  1578,  1579,     0,     0,     0,     0,     0,     0,
12863        0,     0,  3987,     0,     0,     0,     0,     0,     0,     0,
12864        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12865        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12866        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12868        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12869        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12870        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12871        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12872        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12873        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12874        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12875        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12876        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12877        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12878        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12879        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12880        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12881        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12882        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
12883      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
12884      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
12885      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
12886      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
12887      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
12888      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
12889      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
12890      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
12891      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
12892      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
12893      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
12894      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
12895      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
12896      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
12897      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
12898      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
12899      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
12900      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
12901      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
12902      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
12903      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
12904      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
12905      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
12906      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
12907      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
12908      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
12909      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
12910      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
12911      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
12912      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
12913      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
12914      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
12915      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
12916      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
12917      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
12918      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
12919      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
12920      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
12921      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
12922      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
12923      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
12924      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
12925      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
12926      602,   603,   604,   605,   172,   173,     0,     0,     0,     0,
12927        0,     0,     0,     0,  4227,     0,     0,     0,     0,     0,
12928        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12929        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12930        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12931        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12932        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12933        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12934        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12935        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12936        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12937        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12938        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12939        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12940        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12941        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12942        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12943        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12944        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12945        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12946        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
12947      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
12948      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
12949      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
12950      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
12951      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
12952      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
12953      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
12954      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
12955      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
12956      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
12957      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
12958      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
12959      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
12960      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
12961      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
12962        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12963      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
12964      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
12965      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
12966      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
12967      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12968      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
12969      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
12970      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
12971      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
12972      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
12973      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
12974      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
12975      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
12976      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
12977      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
12978      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
12979      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
12980      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
12981      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
12982      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
12983      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
12984      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
12985      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
12986      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
12987      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
12988      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
12989      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12990      601,     0,   602,   603,   604,   605,  1578,  1579,     0,     0,
12991        0,     0,     0,     0,     0,     0,  4670,     0,     0,     0,
12992        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12993        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12994        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12995        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12996        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12997        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12998        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12999        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13000        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13001        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13002        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13003        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13004        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13005        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13006        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13007        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13008        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13009        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13010        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
13011      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
13012      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
13013      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
13014      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
13015      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
13016      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
13017      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
13018      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
13019      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
13020      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
13021      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
13022      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
13023        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
13024      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
13025      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
13026      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
13027      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
13028      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
13029      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13030      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
13031      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
13032      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
13033      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
13034      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
13035      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
13036      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
13037      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
13038      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
13039      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13040      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
13041      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
13042      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13043      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
13044      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
13045      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
13046      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
13047        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13048      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
13049      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
13050      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
13051      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
13052      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
13053      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
13054      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
13055        0,     0,     0,     0,     0,     0,     0,     0,  5037,     0,
13056        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13057        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13058        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13059        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13060        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13061        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13062        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13063        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13064        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13065        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13066        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13067        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13068        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13069        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13070        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13071        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13072        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13073        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13074        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
13075      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
13076      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
13077      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
13078      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
13079      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
13080      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
13081        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
13082      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
13083      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
13084      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
13085      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
13086      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
13087      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
13088      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
13089      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
13090      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
13091      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
13092      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
13093      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
13094      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
13095      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
13096      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
13097      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
13098      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
13099      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
13100      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
13101      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
13102      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
13103      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
13104      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
13105      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
13106      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13107      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
13108      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
13109      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
13110      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
13111      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
13112      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
13113      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
13114      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
13115      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
13116      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
13117      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
13118      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
13119      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
13120     5267,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13121        0,     0,     0,     0,     0,     0,     0,     0,     0,   788,
13122        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13123        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13124        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13125        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13126        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13127        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13128        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13129        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13130        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13131        0,     0,     0,     0,     0,     0,     0,     0,     0,  1769,
13132        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13133        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13134        0,     0,     0,     0,     0,     0,     0,   693,     0,     0,
13135        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13136        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13137        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13138        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13139      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
13140      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
13141      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
13142        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
13143      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
13144      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
13145      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
13146      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
13147      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
13148      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
13149      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
13150      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
13151      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
13152      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
13153      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
13154      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
13155      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
13156      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
13157      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
13158      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
13159      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
13160      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
13161      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
13162      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
13163      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
13164      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
13165      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
13166      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
13167      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
13168      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
13169      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
13170      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13171      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
13172      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
13173      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
13174      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
13175      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
13176      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
13177      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
13178      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
13179      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
13180      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
13181      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
13182      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
13183      604,   605,  1578,  1579,     0,  1770,     0,     0,     0,     0,
13184        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13185        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13186        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13187        0,  2005,     0,     0,     0,     0,     0,     0,     0,     0,
13188        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13189        0,     0,     0,     0,     0,     0,     0,     0,     0,  2006,
13190        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13191        0,     0,     0,     0,     0,     0,   991,     0,     0,     0,
13192        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13193        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13194        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13195        0,     0,  2007,     0,     0,     0,     0,     0,     0,     0,
13196        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13197        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13198        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13199        0,     0,     0,     0,     0,     0,     0,     0,     0,  2008,
13200        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13201        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13202        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13203        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
13204      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
13205      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
13206      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
13207      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
13208      221,   222,   223,   224,   225,   226,   227,  2009,   228,   229,
13209      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
13210      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
13211      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
13212      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
13213      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
13214      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
13215      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
13216      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
13217      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
13218      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
13219      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
13220      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
13221      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
13222      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
13223      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
13224      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
13225      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
13226      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
13227      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
13228      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
13229      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
13230      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
13231      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
13232      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
13233      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
13234      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
13235      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
13236      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
13237      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
13238      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
13239      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
13240      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
13241      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
13242      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
13243      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
13244      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
13245      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
13246      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
13247      602,   603,   604,   605,  1578,  1579,     0,     0,     0,     0,
13248        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13249        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13250        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13251        0,     0,     0,  2005,     0,     0,     0,     0,     0,     0,
13252        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13253        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13254        0,  2006,     0,     0,     0,     0,     0,     0,     0,     0,
13255        0,     0,     0,     0,     0,     0,     0,     0,   991,     0,
13256        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13257        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13258        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13259        0,     0,     0,     0,  3969,     0,     0,     0,     0,     0,
13260        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13261        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13262        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13263        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13264        0,  2008,     0,     0,     0,     0,     0,     0,     0,     0,
13265        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13266        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13267        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
13268      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
13269      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
13270      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
13271      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
13272      219,   220,   221,   222,   223,   224,   225,   226,   227,  2009,
13273      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
13274      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
13275      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
13276      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
13277      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
13278      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
13279      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
13280      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
13281      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
13282      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
13283        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
13284      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
13285      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
13286      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
13287      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
13288      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13289      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
13290      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
13291      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
13292      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
13293      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
13294      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
13295      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
13296      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
13297      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
13298      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
13299      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
13300      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
13301      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
13302      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
13303      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
13304      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
13305      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
13306      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
13307      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
13308      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
13309      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
13310      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
13311      601,     0,   602,   603,   604,   605,  1578,  1579,     0,     0,
13312        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13313        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13314        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13315        0,     0,     0,     0,     0,  2005,     0,     0,     0,     0,
13316        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13317        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13318        0,     0,     0,  2006,     0,     0,     0,     0,     0,     0,
13319        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13320      991,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13321        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13322        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13323        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13324        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13325        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13326        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13327        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13328        0,     0,     0,  2008,     0,     0,     0,     0,     0,     0,
13329        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13330        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13331        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
13332      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
13333      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
13334      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
13335      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
13336      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
13337      227,  2009,   228,   229,   230,   231,   232,   233,     0,   234,
13338      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
13339      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
13340      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
13341      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
13342      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
13343      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
13344        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
13345      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
13346      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
13347      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
13348      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
13349      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
13350      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13351      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
13352      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
13353      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
13354      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
13355      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
13356      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
13357      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
13358      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
13359      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
13360      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13361      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
13362      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
13363      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13364      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
13365      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
13366      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
13367      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
13368        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13369      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
13370      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
13371      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
13372      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
13373      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
13374      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
13375      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
13376        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13377        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13378        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13379        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13380        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13381        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13382        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13383        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13384        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13385        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13386        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13387        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13388        0,     0,     0,     0,     0,     0,   659,     0,     0,     0,
13389        0,     0,     0,     0,     0,     0,   660,     0,     0,     0,
13390        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13391        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13392        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13393        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13394        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13395        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
13396      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
13397      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
13398      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
13399      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
13400      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
13401      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
13402        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
13403      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
13404      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
13405      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
13406      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
13407      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
13408      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
13409      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
13410      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
13411      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
13412      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
13413      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
13414      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
13415      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
13416      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
13417      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
13418      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
13419      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
13420      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
13421      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
13422      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
13423      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
13424      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
13425      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
13426      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
13427      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13428      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
13429      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
13430      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
13431      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
13432      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
13433      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
13434      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
13435      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
13436      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
13437      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
13438      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
13439      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
13440      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
13441        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13442        0,     0,     0,     0,     0,     0,     0,     0,     0,   788,
13443        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13444        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13445        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13446        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13447        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13448        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13449        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13450        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13451        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13452        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13453        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13454        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13455        0,     0,     0,     0,     0,     0,     0,   693,     0,     0,
13456        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13457        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13458        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13459        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13460      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
13461      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
13462      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
13463        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
13464      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
13465      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
13466      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
13467      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
13468      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
13469      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
13470      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
13471      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
13472      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
13473      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
13474      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
13475      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
13476      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
13477      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
13478      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
13479      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
13480      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
13481      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
13482      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
13483      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
13484      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
13485      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
13486      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
13487      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
13488      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
13489      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
13490      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
13491      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13492      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
13493      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
13494      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
13495      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
13496      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
13497      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
13498      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
13499      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
13500      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
13501      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
13502      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
13503      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
13504      604,   605,   172,   173,     0,     0,     0,     0,     0,     0,
13505        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13506        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13507        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13508        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13509        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13510        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13511        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13512        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13514        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13515        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13516        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13517        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13518      660,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13519        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13520        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13521        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13522        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13523        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13524        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
13525      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
13526      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
13527      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
13528      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
13529      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
13530      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
13531      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
13532      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
13533      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
13534      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
13535      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
13536      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
13537      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
13538      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
13539      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
13540      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
13541      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
13542      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
13543      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
13544      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
13545      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
13546      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
13547      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
13548      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
13549      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
13550      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
13551      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
13552      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
13553      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
13554      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
13555      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
13556      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
13557      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
13558      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
13559      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
13560      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
13561      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
13562      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
13563      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
13564      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
13565      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
13566      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
13567      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
13568      602,   603,   604,   605,  1578,  1579,     0,     0,     0,     0,
13569        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13570        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13571        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13572        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13573        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13574        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13575        0,  1624,     0,     0,     0,     0,     0,     0,     0,     0,
13576        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13577        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13578        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13579        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13580        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13581        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13582        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13583        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13584        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13585        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13586        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13587        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13588        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
13589      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
13590      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
13591      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
13592      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
13593      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
13594      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
13595      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
13596      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
13597      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
13598      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
13599      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
13600      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
13601      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
13602      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
13603      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
13604        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
13605      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
13606      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
13607      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
13608      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
13609      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13610      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
13611      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
13612      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
13613      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
13614      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
13615      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
13616      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
13617      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
13618      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
13619      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
13620      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
13621      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
13622      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
13623      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
13624      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
13625      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
13626      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
13627      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
13628      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
13629      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
13630      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
13631      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
13632      601,     0,   602,   603,   604,   605,   172,   173,     0,     0,
13633        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13634        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13635        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13636        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13637        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13638        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13639        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13640        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13642     4260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13643        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13644        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13645        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13646        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13647        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13648        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13649        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13650        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13651        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13652        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
13653      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
13654      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
13655      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
13656      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
13657      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
13658      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
13659      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
13660      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
13661      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
13662      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
13663      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
13664      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
13665        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
13666      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
13667      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
13668      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
13669      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
13670      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
13671      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13672      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
13673      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
13674      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
13675      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
13676      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
13677      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
13678      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
13679      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
13680      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
13681      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13682      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
13683      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
13684      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13685      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
13686      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
13687      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
13688      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
13689        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13690      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
13691      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
13692      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
13693      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
13694      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
13695      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
13696      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
13697        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13698        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13699        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13700        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13701        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13702        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13703        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13704        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13705        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13706        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13707        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13708        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13709        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13710        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13711        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13712        0,     0,     0,     0,     0,   693,     0,     0,     0,     0,
13713        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13714        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13716        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
13717      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
13718      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
13719      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
13720      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
13721      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
13722      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
13723        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
13724      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
13725      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
13726      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
13727      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
13728      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
13729      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
13730      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
13731      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
13732      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
13733      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
13734      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
13735      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
13736      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
13737      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
13738      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
13739      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
13740      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
13741      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
13742      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
13743      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
13744      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
13745      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
13746      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
13747      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
13748      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13749      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
13750      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
13751      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
13752      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
13753      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
13754      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
13755      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
13756      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
13757      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
13758      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
13759      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
13760      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
13761      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
13762        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13763        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13764        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13765        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13766        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13767        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13768        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13769        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13770        0,     0,     0,     0,  5501,     0,     0,     0,     0,     0,
13771        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13772        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13773        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13774        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13775        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13776        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13777        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13778        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13779        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13780        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13781      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
13782      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
13783      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
13784        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
13785      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
13786      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
13787      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
13788      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
13789      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
13790      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
13791      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
13792      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
13793      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
13794      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
13795      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
13796      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
13797      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
13798      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
13799      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
13800      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
13801      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
13802      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
13803      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
13804      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
13805      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
13806      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
13807      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
13808      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
13809      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
13810      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
13811      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
13812      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13813      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
13814      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
13815      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
13816      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
13817      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
13818      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
13819      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
13820      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
13821      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
13822      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
13823      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
13824      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
13825      604,   605,   172,   173,     0,     0,     0,     0,     0,     0,
13826        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13827        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13829        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13830        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13831        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13832        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13833        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13834        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13835        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13836        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13837        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13838        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13839        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13840        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13841        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13842        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13843        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13844        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13845        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
13846      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
13847      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
13848      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
13849      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
13850      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
13851      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
13852      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
13853      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
13854      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
13855      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
13856      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
13857      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
13858      296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
13859      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
13860      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
13861      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
13862      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
13863      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
13864      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
13865      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
13866      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
13867      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
13868      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
13869      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
13870      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
13871      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
13872      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
13873      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
13874      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
13875      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
13876      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
13877      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
13878      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
13879      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
13880      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
13881      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
13882      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
13883      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
13884      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
13885      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
13886      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
13887      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
13888      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
13889      602,   603,   604,   605,   172,   173,     0,     0,     0,     0,
13890        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13891        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13893        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13894        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13895        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13896        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13897        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13898        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13899        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13900        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13901        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13903        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13904        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13905        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13906        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13907        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13908        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13909        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
13910      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
13911      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
13912      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
13913      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
13914      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
13915      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
13916      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
13917      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
13918      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
13919      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
13920      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
13921      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
13922      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
13923      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
13924      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
13925        0,   323,   324,   325,   326,   327,   328,   329,   701,   331,
13926      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
13927      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
13928      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
13929      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
13930      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13931      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
13932      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
13933      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
13934      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
13935      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
13936      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
13937      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
13938      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
13939      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
13940      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
13941      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
13942      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
13943      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
13944      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
13945      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
13946      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
13947      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
13948      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
13949      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
13950      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
13951      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
13952      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
13953      601,     0,   602,   603,   604,   605,  1578,  1579,     0,     0,
13954        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13955        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13956        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13957        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13958        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13959        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13960        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13961        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13962        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13963        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13964        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13965        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13966        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13967        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13968        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13969        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13970        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13971        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13972        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13973        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
13974      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
13975      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
13976      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
13977      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
13978      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
13979      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
13980      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
13981      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
13982      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
13983      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
13984      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
13985      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
13986        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
13987      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
13988      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
13989      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
13990      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
13991      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
13992      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13993      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
13994      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
13995      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
13996      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
13997      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
13998      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
13999      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
14000      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
14001      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
14002      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
14003      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
14004      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
14005      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
14006      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
14007      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
14008      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
14009      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
14010        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
14011      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
14012      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
14013      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
14014      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
14015      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
14016      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
14017      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
14018        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14019        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14020        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14021        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14022        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14023        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14024        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14025        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14026        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14027        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14028        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14029        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14030        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14031        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14032        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14034        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14035        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14036        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14037        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
14038      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
14039      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
14040      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
14041      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
14042      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
14043      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
14044        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
14045      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
14046      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
14047      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
14048      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
14049      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
14050      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
14051      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
14052      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
14053      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
14054      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
14055      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
14056      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
14057      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
14058      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
14059      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
14060      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
14061      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
14062      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
14063      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
14064      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
14065      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
14066      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
14067      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
14068      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
14069      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
14070      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
14071      498,   499,   500,   501,   502,  1925,   504,   505,   506,   507,
14072      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
14073      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
14074      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
14075      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
14076      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
14077      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
14078      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
14079      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
14080      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
14081      597,   598,   599,   600,   601,     0,   602,   603,   604,   605,
14082      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
14083        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14084        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14085        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14086        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14087        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14088        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14089        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14090        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14091        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14092        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14093        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14096        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14097        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14098        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14099        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14100        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14101        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14102     2504,   175,   176,   177,   178,   179,   180,   181,   182,   183,
14103      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
14104      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
14105        0,   204,   205,   206,   207,   208,   209,   210,   211,   212,
14106      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
14107      223,   224,   225,   226,   227,     0,   228,   229,   230,   231,
14108      232,   233,     0,   234,   235,   236,   237,   238,   239,   240,
14109      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
14110      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
14111      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
14112      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
14113      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
14114      290,   291,   292,   293,     0,     0,   294,   295,   296,   297,
14115      298,   299,   300,   301,   302,   303,   304,   305,   306,     0,
14116      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
14117      317,   318,   319,   320,   321,   322,     0,   323,   324,   325,
14118      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
14119      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
14120      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
14121      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
14122      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
14123      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
14124      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
14125      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
14126      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
14127      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
14128      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
14129      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
14130      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
14131      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
14132      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
14133      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
14134      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
14135      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
14136      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
14137      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
14138      526,   527,   528,   529,     0,   530,   531,   532,   533,   534,
14139      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
14140      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
14141      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
14142      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
14143      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
14144      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
14145      595,   596,   597,   598,   599,   600,   601,     0,   602,   603,
14146      604,   605,   172,   173,     0,     0,     0,     0,     0,     0,
14147        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14148        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14149        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14150        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14151        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14152        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14153        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14154        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14155        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14156        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14157        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14158        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14159        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14160        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14161        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14162        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14163        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14164        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14165        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14166        0,     0,   174,   175,   176,   177,   178,   179,   180,   181,
14167      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
14168      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
14169      202,   203,     0,   204,   205,   206,   207,   208,   209,   210,
14170      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
14171      221,   222,   223,   224,   225,   226,   227,     0,   228,   229,
14172      230,   231,   232,   233,     0,   234,   235,   236,   237,   238,
14173      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
14174      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
14175      259,   260,   261,   262,   263,   264,   265,     0,   266,   267,
14176      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
14177      278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
14178      288,   289,   290,   291,   292,   293,     0,     0,   294,   295,
14179      296,   297,   298,   299,   300,   301,  3200,   303,   304,   305,
14180      306,     0,   307,   308,   309,   310,   311,   312,   313,   314,
14181      315,   316,   317,   318,   319,   320,   321,   322,     0,   323,
14182      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
14183      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
14184      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
14185      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
14186      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
14187      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
14188      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
14189      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
14190      404,   405,   406,   407,   408,   409,   410,  3201,   412,   413,
14191      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
14192      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
14193      434,   435,   436,   437,   438,   439,   440,   441,   442,   443,
14194      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
14195      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
14196      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
14197      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
14198      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
14199      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
14200      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
14201      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
14202      524,   525,   526,   527,   528,   529,     0,   530,   531,   532,
14203      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
14204      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
14205      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
14206      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
14207      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
14208      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
14209      593,   594,   595,   596,   597,   598,   599,   600,   601,     0,
14210      602,   603,   604,   605,   172,   173,     0,     0,     0,     0,
14211        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14212        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14213        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14214        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14215        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14216        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14217        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14218        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14219        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14220        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14221        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14223        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14224        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14225        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14227        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14228        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14229        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14230        0,     0,     0,     0,   174,   175,   176,   177,   178,   179,
14231      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
14232      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
14233      200,   201,   202,   203,     0,   204,   205,   206,   207,   208,
14234      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
14235      219,   220,   221,   222,   223,   224,   225,   226,   227,     0,
14236      228,   229,   230,   231,   232,   233,     0,   234,   235,   236,
14237      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
14238      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
14239      257,   258,   259,   260,   261,   262,   263,   264,   265,     0,
14240      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
14241      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
14242      286,   287,   288,   289,   290,   291,   292,   293,     0,     0,
14243      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
14244      304,   305,   306,     0,   307,   308,   309,   310,   311,   312,
14245      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
14246        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
14247      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
14248      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
14249      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
14250      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
14251      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
14252      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
14253      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
14254      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
14255      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
14256      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
14257      432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
14258      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
14259      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
14260      462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
14261      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
14262      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
14263      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
14264      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
14265      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
14266      522,   523,   524,   525,   526,   527,   528,   529,     0,   530,
14267      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
14268      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
14269      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
14270      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
14271      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
14272      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
14273      591,   592,   593,   594,   595,   596,  3456,   598,   599,   600,
14274      601,     0,   602,   603,   604,   605,   172,   173,     0,     0,
14275        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14276        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14277        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14278        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14279        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14280        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14281        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14282        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14283        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14284        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14285        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14286        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14287        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14288        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14289        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14290        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14291        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14292        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14293        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14294        0,     0,     0,     0,     0,     0,   174,   175,   176,   177,
14295      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
14296      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
14297      198,   199,   200,   201,   202,   203,     0,   204,   205,   206,
14298      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
14299      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
14300      227,     0,   228,   229,   230,   231,   232,   233,     0,   234,
14301      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
14302      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
14303      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
14304      265,     0,   266,   267,   268,   269,   270,   271,   272,   273,
14305      274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
14306      284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
14307        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
14308      302,   303,   304,   305,   306,     0,   307,   308,   309,   310,
14309      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
14310      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
14311      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
14312      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
14313      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
14314      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
14315      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
14316      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
14317      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
14318      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
14319      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
14320      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
14321      430,   431,   432,   433,   434,   435,   436,   437,   438,   439,
14322      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
14323      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
14324      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
14325      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
14326      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
14327      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
14328      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
14329      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
14330      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
14331        0,   530,   531,   532,   533,   534,   535,   536,   537,   538,
14332      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
14333      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
14334      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
14335      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
14336      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
14337      589,   590,   591,   592,   593,   594,   595,   596,     0,   598,
14338      599,   600,   601,     0,   602,   603,   604,   605,   172,   173,
14339        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14340        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14341        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14342        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14343        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14344        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14345        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14346        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14347        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14348        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14349        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14350        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14351        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14352        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14353        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14354        0,     0,     0,     0,     0,   693,     0,     0,     0,     0,
14355        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14356        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14357        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14358        0,     0,     0,     0,     0,     0,     0,     0,   174,   175,
14359      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
14360      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
14361      196,   197,   198,   199,   200,   201,   202,   203,     0,   204,
14362      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
14363      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
14364      225,   226,   227,     0,   228,   229,   230,   231,   232,   233,
14365        0,   234,   235,   236,   237,   238,   239,   240,   241,   242,
14366      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
14367      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
14368      263,   264,   265,     0,   266,   267,   268,   269,   270,   271,
14369      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
14370      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
14371      292,   293,     0,     0,   294,   295,   296,   297,   298,   299,
14372      300,   301,   302,   303,   304,   305,   306,     0,   307,   308,
14373      309,   310,   311,   312,   313,   314,   315,   316,     0,   318,
14374      319,   320,   321,   322,     0,   323,   324,   325,   326,   327,
14375      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
14376      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
14377      348,   349,   350,   351,   352,   353,   354,     0,   356,   357,
14378      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
14379      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
14380      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
14381      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
14382      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
14383      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
14384      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
14385      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
14386      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
14387      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
14388      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
14389      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
14390      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
14391      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
14392      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
14393      508,   509,   510,     0,   512,   513,   514,   515,   516,   517,
14394      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
14395      528,   529,     0,   530,   531,   532,   533,   534,   535,   536,
14396      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
14397      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
14398      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
14399      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
14400      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
14401      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
14402     3121,   598,   599,   600,   601,     0,   602,   603,   604,   605,
14403      172,   173,     0,     0,     0,     0,     0,     0,     0,     0,
14404        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14405        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14406        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14407        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14408        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14409        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14410        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14411        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14412        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14413        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14414        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14415        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14416        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14417        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14418        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14419        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14420        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14421        0,     0,     0,     0,     0,     0,     0,     0,     0,  1513,
14422        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14423      174,   175,   176,     0,   178,     0,   180,   181,   182,   183,
14424      184,   185,   186,   187,   188,   189,   190,   191,   192,     0,
14425      194,   195,   196,   197,   198,   199,   200,   201,     0,     0,
14426        0,     0,   205,   206,   207,   208,   209,     0,     0,   212,
14427      213,   214,   215,     0,     0,     0,   219,   220,   221,   222,
14428      223,     0,   225,   226,   227,     0,   228,     0,     0,     0,
14429        0,     0,     0,   234,     0,   236,     0,   238,   239,     0,
14430      241,   242,   243,   244,   245,   246,     0,   248,   249,   250,
14431      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
14432      261,     0,   263,   264,   265,     0,   266,   267,   268,   269,
14433      270,   271,   272,     0,   274,   275,   276,   277,     0,   279,
14434      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
14435        0,     0,     0,   293,     0,     0,   294,   295,   296,   297,
14436      298,   299,   300,   301,   302,   303,     0,     0,     0,     0,
14437        0,   308,   309,   310,   311,   312,   313,   314,   315,     0,
14438      317,   318,     0,   320,   321,     0,     0,   323,     0,   325,
14439      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
14440        0,   337,   338,   339,   340,   341,   342,   343,   344,   345,
14441        0,   347,   348,   349,   350,   351,   352,   353,   354,   355,
14442      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
14443      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
14444      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
14445      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
14446      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
14447      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
14448      416,   417,     0,   419,   420,   421,   422,   423,   424,   425,
14449      426,   427,   428,   429,   430,   431,   172,   173,     0,     0,
14450      436,   437,     0,   439,   440,   441,   442,     0,   444,   445,
14451      446,   447,   448,   449,     0,     0,     0,     0,   454,   455,
14452      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
14453      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
14454      476,   477,   478,   479,     0,   481,     0,   483,   484,     0,
14455      486,   487,     0,   489,   490,   491,   492,   493,   494,     0,
14456      496,   497,   498,   499,   500,   501,   502,     0,   504,   505,
14457      506,     0,   508,   509,   510,   511,     0,   513,   514,     0,
14458        0,   517,     0,     0,   520,   521,   522,     0,   524,     0,
14459      526,   527,   528,   529,     0,   530,   531,   532,   533,     0,
14460      535,   536,     0,   538,     0,   540,   541,   542,   543,   544,
14461      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
14462      555,   556,   557,   558,   559,     0,   561,   562,   563,   564,
14463      565,   566,   567,   568,     0,   570,   571,   572,     0,   574,
14464      575,   576,   577,     0,     0,   580,   581,     0,   583,   584,
14465      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
14466      595,   596,     0,     0,   599,   600,     0,     0,   602,     0,
14467      604,   605,     0,     0,     0,     0,     0,     0,     0,     0,
14468        0,     0,     0,     0,     0,  1524,     0,     0,     0,     0,
14469        0,     0,     0,     0,     0,     0,   174,   175,   176,     0,
14470      178,     0,   180,   181,   182,   183,   184,   185,   186,   187,
14471      188,   189,   190,   191,   192,     0,   194,   195,   196,   197,
14472      198,   199,   200,   201,     0,     0,     0,     0,   205,   206,
14473      207,   208,   209,     0,     0,   212,   213,   214,   215,     0,
14474        0,     0,   219,   220,   221,   222,   223,     0,   225,   226,
14475      227,     0,   228,     0,     0,     0,     0,     0,     0,   234,
14476        0,   236,     0,   238,   239,     0,   241,   242,   243,   244,
14477      245,   246,     0,   248,   249,   250,   251,   252,   253,   254,
14478      255,   256,   257,   258,   259,   260,   261,     0,   263,   264,
14479      265,     0,   266,   267,   268,   269,   270,   271,   272,     0,
14480      274,   275,   276,   277,     0,   279,   280,   281,   282,   283,
14481      284,   285,   286,   287,   288,   289,     0,     0,     0,   293,
14482        0,     0,   294,   295,   296,   297,   298,   299,   300,   301,
14483      302,   303,     0,     0,     0,     0,     0,   308,   309,   310,
14484      311,   312,   313,   314,   315,     0,   317,   318,     0,   320,
14485      321,     0,     0,   323,     0,   325,   326,   327,   328,   329,
14486      330,   331,   332,   333,   334,   335,     0,   337,   338,   339,
14487      340,   341,   342,   343,   344,   345,     0,   347,   348,   349,
14488      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
14489      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
14490      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
14491      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
14492      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
14493      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
14494      410,   411,   412,   413,   414,   415,   416,   417,     0,   419,
14495      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
14496      430,   431,   172,   173,     0,     0,   436,   437,     0,   439,
14497      440,   441,   442,     0,   444,   445,   446,   447,   448,   449,
14498        0,     0,     0,     0,   454,   455,   456,   457,   458,   459,
14499      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
14500      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
14501        0,   481,     0,   483,   484,     0,   486,   487,     0,   489,
14502      490,   491,   492,   493,   494,     0,   496,   497,   498,   499,
14503      500,   501,   502,     0,   504,   505,   506,     0,   508,   509,
14504      510,   511,     0,   513,   514,     0,     0,   517,     0,     0,
14505      520,   521,   522,     0,   524,     0,   526,   527,   528,   529,
14506        0,   530,   531,   532,   533,     0,   535,   536,     0,   538,
14507        0,   540,   541,   542,   543,   544,   545,   546,   547,   548,
14508      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
14509      559,     0,   561,   562,   563,   564,   565,   566,   567,   568,
14510        0,   570,   571,   572,     0,   574,   575,   576,   577,     0,
14511        0,   580,   581,     0,   583,   584,   585,   586,   587,   588,
14512      589,   590,   591,   592,   593,   594,   595,   596,     0,     0,
14513      599,   600,     0,     0,   602,     0,   604,   605,     0,     0,
14514        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14515        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
14516        0,     0,   174,   175,   176,     0,   178,     0,   180,   181,
14517      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
14518      192,     0,   194,   195,   196,   197,   198,   199,   200,   201,
14519        0,     0,     0,     0,   205,   206,   207,   208,   209,     0,
14520        0,   212,   213,   214,   215,     0,     0,     0,   219,   220,
14521      221,   222,   223,     0,   225,   226,   227,     0,   228,     0,
14522        0,     0,     0,     0,     0,   234,     0,   236,     0,   238,
14523      239,     0,   241,   242,   243,   244,   245,   246,     0,   248,
14524      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
14525      259,   260,   261,     0,   263,   264,   265,     0,   266,   267,
14526      268,   269,   270,   271,   272,     0,   274,   275,   276,   277,
14527        0,   279,   280,   281,   282,   283,   284,   285,   286,   287,
14528      288,   289,     0,     0,     0,   293,     0,     0,   294,   295,
14529      296,   297,   298,   299,   300,   301,   302,   303,     0,     0,
14530        0,     0,     0,   308,   309,   310,   311,   312,   313,   314,
14531      315,     0,   317,   318,     0,   320,   321,     0,     0,   323,
14532        0,   325,   326,   327,   328,   329,   330,   331,   332,   333,
14533      334,   335,     0,   337,   338,   339,   340,   341,   342,   343,
14534      344,   345,     0,   347,   348,   349,   350,   351,   352,   353,
14535      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
14536      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
14537      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
14538      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
14539      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
14540      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
14541      414,   415,   416,   417,     0,   419,   420,   421,   422,   423,
14542      424,   425,   426,   427,   428,   429,   430,   431,     0,     0,
14543        0,     0,   436,   437,     0,   439,   440,   441,   442,     0,
14544      444,   445,   446,   447,   448,   449,     0,     0,     0,     0,
14545      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
14546      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
14547      474,   475,   476,   477,   478,   479,     0,   481,     0,   483,
14548      484,     0,   486,   487,     0,   489,   490,   491,   492,   493,
14549      494,     0,   496,   497,   498,   499,   500,   501,   502,     0,
14550      504,   505,   506,     0,   508,   509,   510,   511,     0,   513,
14551      514,     0,     0,   517,     0,     0,   520,   521,   522,     0,
14552      524,     0,   526,   527,   528,   529,     0,   530,   531,   532,
14553      533,     0,   535,   536,     0,   538,     0,   540,   541,   542,
14554      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
14555      553,   554,   555,   556,   557,   558,   559,     0,   561,   562,
14556      563,   564,   565,   566,   567,   568,     0,   570,   571,   572,
14557        0,   574,   575,   576,   577,     0,     0,   580,   581,     0,
14558      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
14559      593,   594,   595,   596,     0,     0,   599,   600,     0,     0,
14560      602,     0,   604,   605
14561 };
14562 
14563 static const yytype_int16 yycheck[] =
14564 {
14565        3,    44,   163,    68,   171,     0,   676,  1883,     0,  1360,
14566        0,  1598,  1387,    21,  1727,   909,  2086,   675,   676,  1740,
14567      161,   898,    25,   900,   901,   902,     0,    30,  3097,     0,
14568      907,  1747,    35,   668,   153,    38,  2689,   156,   978,  1230,
14569     1790,   159,  3347,   783,    52,  1453,  3347,   978,    51,   675,
14570       58,   675,  2096,   675,    57,  2875,  1567,  1560,    61,  2885,
14571     2886,  1912,   783,   675,  1788,  3730,  2569,  3381,   641,  3758,
14572     1352,  3263,  1674,  1360,  3148,  3493,    31,  1495,    68,   755,
14573     1391,  1859,   826,  1023,  2627,  1391,  2567,  1358,   641,  2899,
14574     3421,  2901,   717,  3162,  3286,   720,  1804,  1805,   740,   672,
14575      847,  1294,   744,   745,  2042,  1740,  3283,  2902,  1905,  4459,
14576     3285,  2031,   171,   171,   171,   171,  2797,  2595,  1334,   672,
14577     2730,   171,   125,  1809,  2825,  3218,  1713,  1714,  1715,  1716,
14578     1717,  1718,  1719,  1720,  1721,  1722,  1723,  1724,  1725,  3297,
14579     1080,  2797,  1828,   135,  1576,   135,  2084,  2655,   940,   152,
14580      153,  3846,  3846,   156,  2664,  3910,   159,   160,  3735,  2730,
14581     3353,    28,  3347,  3846,   135,  3323,  3324,  1853,  1854,  3858,
14582     4331,    27,  2654,  2655,  4464,    11,   171,  4581,  1449,   171,
14583     3847,   171,  3849,     6,  1905,  3852,    45,  2797,    83,     6,
14584       12,    47,  3004,    26,    26,  1903,  2130,    50,  2132,  2133,
14585      171,    61,  4728,    80,    80,    11,  1524,    11,     6,   767,
14586       61,    80,  1983,  1465,  4934,    11,    90,    32,  3885,     6,
14587       80,   104,  1938,  2722,    92,   120,  2797,    12,    11,   766,
14588     3388,  3389,   184,     9,    10,  1428,    61,   113,     9,    10,
14589     2711,    61,    42,    65,    80,    61,    92,  1141,  1175,  1176,
14590     1177,     6,  1139,   104,  4427,   652,   196,  1184,  3063,  1693,
14591       80,   221,  2787,    94,    80,  1209,   179,   700,   266,    17,
14592     1905,   668,  1706,  1707,   155,  1709,  1710,  4563,   675,   104,
14593       65,    17,  1074,  1075,  1076,  1232,   266,  1231,   114,   185,
14594      238,  2799,   166,  3494,  3368,  1087,    32,    61,    34,   266,
14595       10,  3395,     9,    10,    61,    81,    60,   266,    63,   113,
14596       81,    80,   296,    80,   170,   127,   116,  2799,  4011,  4012,
14597       96,    42,  4015,   196,  1264,    96,    61,   127,    17,  4022,
14598       57,  3327,     9,    10,   134,  4028,  3148,  4306,   179,  2055,
14599      104,   266,  4875,    32,   220,    34,  4473,   104,   286,   125,
14600        9,    10,    11,   104,   125,   131,   223,     9,    10,   264,
14601      131,   264,    89,  3312,   119,   266,   166,  2848,   151,   104,
14602      238,   140,    10,   140,    81,  2445,    32,   104,   104,   411,
14603      173,    86,    63,   309,   279,   155,  4800,  3491,  3492,    96,
14604     4845,    63,   168,  4384,   760,   116,  3500,   168,  3502,   765,
14605     3504,   767,   148,    57,    81,   238,   127,   183,  2562,   185,
14606       11,   179,   183,   134,   185,    92,   104,   286,   125,    96,
14607     1360,   148,    81,   751,   131,   378,   423,   210,   228,    81,
14608      179,  5180,    14,   237,  5490,    89,    63,    96,   119,   151,
14609       32,   634,  3345,   113,    96,   166,    69,   119,   125,   176,
14610      104,   652,   166,  5626,   131,   104,  5629,    30,   614,   259,
14611      179,   168,    35,   374,   179,   220,   125,   668,  2184,   301,
14612      175,   179,   131,   125,   675,   271,   804,    86,   233,   131,
14613      519,   285,  2552,  4575,   113,   626,    61,   628,   629,   630,
14614      631,   168,   633,   634,   148,   104,   637,   638,    28,   531,
14615      136,   898,    61,   900,   901,   902,   183,   228,   185,   168,
14616      907,  1255,   909,   328,   151,   286,   168,  2451,  2452,  2453,
14617     2454,   247,   176,   641,   183,  3839,   185,   251,   283,   305,
14618      299,   183,   299,   185,   305,   290,  1954,   352,   259,   220,
14619     3609,   164,    86,  3617,  4299,   238,   301,  3740,   220,   276,
14620       83,   238,   233,   195,   672,   294,  3368,   296,   264,    92,
14621      113,   233,   121,  4967,   720,   113,  1941,   468,   646,   395,
14622      275,    49,   238,   210,   121,   679,   694,   117,    73,   210,
14623     1467,   722,   723,   286,   124,   778,   286,   120,  4006,   707,
14624     4008,   220,   328,   140,  5767,  3323,  3324,   233,  4016,    58,
14625      175,  1226,   283,   151,   500,  1492,  4733,   140,   301,   290,
14626      346,   283,   145,   141,   238,   285,   352,   238,   290,   238,
14627      301,   624,   276,   233,  4042,  1565,   170,   171,   305,   301,
14628      344,   175,   635,   271,  1565,  5691,   365,   640,   641,   328,
14629     1580,  1581,   378,  4061,   448,   355,   305,   302,   303,   189,
14630     1581,   184,   264,   305,   290,   217,   283,   346,  1334,   145,
14631     3388,  3389,   665,   352,   123,   301,   275,   379,  4954,   672,
14632     5125,   301,   675,   129,  4948,   301,  1318,  2553,  1320,   207,
14633      290,  1323,  1324,  1325,   687,   286,   301,   805,   213,   378,
14634     5439,   694,   378,   223,  1438,  1416,   352,   898,  4453,   900,
14635      901,   902,   294,   706,   707,   498,   907,   237,   909,   850,
14636      851,   666,  2462,   210,  3395,  1462,  3901,  3327,   652,     6,
14637     2031,   840,   841,   842,  1468,  2031,  4532,   266,   846,   360,
14638      264,   275,  5146,  2887,   668,    99,   739,  2461,  3246,  3395,
14639      322,   738,   237,  3253,  1141,    17,   279,  3257,   651,   238,
14640     1542,  1543,   755,   212,   680,  4724,  3327,     9,    10,  1975,
14641       32,   620,    34,   286,  3246,   621,    81,   537,  4574,   772,
14642     1986,   519,   770,  2711,  1495,   485,   766,   715,   448,   680,
14643      783,    96,   785,   639,  4590,  3395,   770,  3736,  4594,  4595,
14644     2042,   696,  2730,  1733,  4785,   281,  1540,   653,  1433,   779,
14645     1740,   697,   805,   770,  3962,  3617,   754,   718,  5082,  1740,
14646      125,   770,   815,   773,   636,  5348,   131,   770,  2669,  3624,
14647      632,   773,   678,   826,  3395,   828,  3325,  3298,  3824,    81,
14648      770,  1389,  2084,   836,  1761,   838,   495,   840,   841,   842,
14649      843,   844,   797,   846,    96,   770,  1383,  2165,  4541,  2787,
14650      709,   636,  2104,   168,  2172,  1782,  2542,   125,   717,  2797,
14651      773,   720,   905,   661,  1808,  3390,  4067,  1811,  1755,  3963,
14652     5043,  4564,  4964,   125,   661,  4568,   771,   760,  1822,   131,
14653      754,  1825,   735,  4576,  5604,  1829,   754,  2080,  1775,   770,
14654      845,  2662,  2663,   848,   897,  5421,   899,   770,  2832,  4003,
14655      777,   777,   734,   906,  1851,   908,   773,   722,   777,   760,
14656     1463,   709,  1856,  1857,  1858,  1802,   168,   777,   754,   914,
14657      923,   754,   914,   749,   914,  2357,  2358,   773,  5089,  5215,
14658     5091,   183,   773,   185,   113,   760,  1728,   759,   692,  3842,
14659     1141,   777,   773,   914,  4048,  4049,  4050,   770,   754,  4053,
14660      754,  2385,  2386,   770,  2388,  2389,   264,   777,   754,  3440,
14661     5087,   777,  4066,   746,   898,  1905,   900,   901,   902,   497,
14662     5374,   754,   151,   907,  1905,   909,   776,   687,   754,   755,
14663      756,   623,   362,   754,   755,   756,   722,  3799,  3800,   467,
14664      696,  3803,  3804,   552,     9,    10,   760,  3809,  3810,   561,
14665      776,  5291,   773,   760,  1332,   773,   266,   463,   777,   760,
14666      777,   735,  1077,   759,   760,   770,  1756,    92,  1868,   724,
14667      771,   574,   773,  1389,   773,   760,   390,   139,  3840,   735,
14668     2808,   561,  1708,   722,   760,  1756,  1433,    69,  4793,   778,
14669     4795,   770,   778,  4798,   771,  4788,   585,   754,   755,   756,
14670     4805,  4806,   773,   305,   773,   342,   328,  1175,   773,  1177,
14671      608,   754,   362,  1181,  1182,   773,    81,   754,   114,  2009,
14672      773,   771,   760,   773,   346,   778,  1079,   754,   755,   756,
14673      352,    96,  1077,   771,   696,   773,  1826,  1077,   754,   770,
14674     4845,   778,   778,  1211,   771,   754,   755,   756,   770,   386,
14675      578,   388,   754,   755,   756,  1826,  2822,   585,    36,   746,
14676      125,   760,   778,  3766,   773,   593,   131,   771,   773,   771,
14677     1553,   773,   771,   735,   773,  3778,     6,    36,  4321,   626,
14678      754,   773,   164,   754,   770,   754,  1139,  1140,   761,   762,
14679      763,   764,     5,   773,  4449,   233,  5420,   773,  4449,  4726,
14680      182,   760,  1794,   168,   778,   652,  3090,   778,   773,   778,
14681      770,  4338,   696,    91,  4341,   362,  1169,   695,    31,  4864,
14682     4864,   129,  1175,   417,  1177,  2069,  1920,   357,  1181,  1182,
14683      724,  4864,    91,  1859,  4253,    33,   114,   299,   666,  1622,
14684      676,   355,  1765,   727,  4287,   482,  4614,   561,  4865,   282,
14685     5006,   129,   290,   266,    49,   114,  1639,  1141,  1211,  1642,
14686       73,  1644,  1765,   301,  3824,  1648,  1649,  1650,   210,  1386,
14687      129,   210,    14,  1656,   307,   684,  3704,  1270,   377,   113,
14688     4389,   771,  1433,  1954,  3962,   637,  1354,    32,   771,    34,
14689     3748,  3749,  3752,  3753,   531,  1248,  1249,  5597,   151,   727,
14690      773,  1254,  1255,  3824,   438,   778,  3642,  3643,  3644,  3645,
14691     2147,   318,   744,   380,  4449,   754,  3748,  3749,  1271,  1334,
14692      170,    92,  1897,  4342,  3071,   203,   351,  1280,   145,  3980,
14693      365,   332,  3963,   151,  5634,  5635,   195,   466,  4447,   778,
14694      305,  1294,  1295,   580,   203,  2042,   109,   110,  1923,  1975,
14695      680,  4459,  5057,   447,  3224,  1424,   409,  3963,   171,  3185,
14696     1986,  1987,  1315,   416,  2625,  1957,  1958,  2257,  2258,  2625,
14697      145,   485,  1964,  1965,  1966,   585,  2257,  1386,  1386,  1386,
14698     1386,  1334,  1335,  2183,  2685,  2686,  1386,  2084,  2925,  1334,
14699      704,  4415,  4137,   651,  1334,  1463,   252,  2538,   211,  3852,
14700     3071,  1354,  4527,  3963,   345,   350,  2296,  4431,  4432,   204,
14701     3298,  1316,  1317,   438,   390,   440,  1369,  1226,   170,  1228,
14702     5125,  2115,  2116,   438,  5129,  5118,   778,  2035,  5121,  5122,
14703      680,  3105,  5732,   670,  1387,  1388,   135,   136,   696,  3327,
14704       76,  1386,  3963,  1383,  1386,  2682,  1386,  5441,  2685,  2686,
14705     1953,   285,  2810,   188,  1407,   692,  5212,  1263,  5214,  2349,
14706     3134,  2829,    69,  1416,  1417,  1386,  5069,   590,  1274,   264,
14707       57,  1424,  1425,  2363,   608,  1428,   477,  2643,   273,   608,
14708     4503,  4504,  4505,  2649,   678,  1438,  3071,  1296,   706,   754,
14709      755,   756,  1445,   371,  1447,  3988,  3989,  3990,  3991,   355,
14710      722,   595,  3390,  4265,  1457,   530,   281,  3395,   325,  2711,
14711     1463,  5154,   371,   210,  1467,  1468,   565,   438,     9,    10,
14712      315,  3157,   463,  3060,  5347,   526,    92,   451,   148,   271,
14713      301,   661,  2117,   680,   233,   365,   462,   755,   237,  1492,
14714      607,   483,  1495,    15,   483,   668,   391,    69,   647,  1433,
14715      348,   404,   754,   755,   756,   463,   176,   164,   571,    15,
14716     1575,   148,  1515,    63,    17,  3996,  4620,   602,  2458,   771,
14717     4624,   773,   585,   687,   424,   182,  3037,    18,   585,    32,
14718     2156,    34,  2156,   608,  2156,  2787,   404,  1540,  2465,   176,
14719       81,   290,  2469,   608,  2156,  2797,  2181,  2740,    28,    61,
14720     2437,  2438,   301,    94,   301,    96,     0,   352,  3160,    18,
14721      373,  5316,   465,  3066,   448,  2492,   561,  2849,   238,   119,
14722       99,  2515,  1690,  2517,   109,   110,   659,  1567,  5321,   485,
14723     1575,   426,   239,   240,   125,  1575,   396,  2531,   398,   773,
14724      131,    61,   164,  4012,   173,   565,   322,     9,    10,  5472,
14725     2544,  2545,   124,  4415,  3038,  4797,  3040,   452,   582,  1727,
14726      182,   696,   298,   104,   105,  3047,  3048,   139,   124,  4431,
14727     4432,   596,   424,   575,    49,   587,   711,   168,   413,   897,
14728     3408,   301,   573,   139,  5678,  4794,  4813,   608,   737,   276,
14729     1643,  5294,   183,   191,   185,   104,   105,  1765,   170,  1652,
14730      498,  4810,  1695,   559,   645,  2595,   204,  2597,   586,  5324,
14731     1663,  5326,  3249,   728,   170,   171,   561,   239,   240,    81,
14732       95,  1674,  2069,   142,   773,   488,  1795,   586,  1797,  1798,
14733     1799,  1800,   770,  2475,    96,   264,   660,  1690,  1807,   114,
14734     4849,   667,  4851,   564,   216,  1687,   280,  1687,   773,  1860,
14735     3416,   565,  3410,  4011,  4012,  1824,  5681,  4015,   773,    94,
14736      216,  2387,   570,   125,  4022,  4134,   264,   443,   583,   131,
14737     2117,   683,   773,  4533,  1727,   565,  1729,   759,   760,   761,
14738      762,   763,   764,   283,    49,   351,   570,   122,   828,   754,
14739      755,   756,  2682,   223,  5144,  2685,  2686,  2687,   611,  1752,
14740     5168,   286,  1755,  1756,   844,    33,   168,   728,    36,  2156,
14741      229,   573,  1765,  1766,   305,   332,   694,   737,   663,  5458,
14742      459,   183,  1775,   185,   736,   266,   590,  5053,   450,   291,
14743      292,   687,  5447,  2180,  2181,   694,  1789,  1790,  1906,   373,
14744      293,   294,  1795,  1796,  1797,  1798,  1799,  1800,  1801,  1802,
14745     1803,  1962,  1963,  5134,  1807,   746,   651,   266,  4985,   498,
14746     3686,    92,   484,    91,   191,    83,    57,    95,    80,   244,
14747     1823,  1824,   438,  1826,   440,   328,   778,   204,  1946,   139,
14748      652,  4217,  4218,  3684,  4907,  1953,   114,  1955,   373,   264,
14749      324,   747,   754,   346,   329,  1848,   668,  5024,    89,   352,
14750      332,   129,   120,   675,   668,   280,  1859,  5832,  5833,    49,
14751     2604,   532,    33,  2489,   204,  2489,   737,  2489,  2069,   150,
14752      449,   642,  1140,   737,  2447,   378,  1994,  2489,   390,  1738,
14753     4383,  4384,   727,   111,  3387,  3156,  3824,   264,   560,   204,
14754      735,    10,   754,   305,  2447,   705,    15,   737,   708,   446,
14755      325,   447,   486,  1906,   452,   770,   376,   148,   378,   773,
14756      477,   251,    96,  3224,   530,   773,  2117,  1920,  3224,   498,
14757       91,  2039,  1925,  2558,   114,   203,  3650,  3651,  4574,  2823,
14758     2817,  5331,  3203,   273,   746,   176,   251,  5011,   219,   773,
14759      477,  3665,   427,  1946,  4590,   415,  4599,   131,  4594,  4595,
14760     1953,  1954,  1955,   488,   466,  2156,   266,  1960,  4501,   526,
14761      122,   403,   501,  2588,  2711,   654,   244,  2643,   452,   641,
14762     1829,   111,  1975,  2649,   444,   109,   110,   443,   403,  2180,
14763     2181,  1249,  2876,  1986,  1987,   163,  1254,   117,  2664,   299,
14764     3277,  1994,   608,  2635,   124,   477,  2638,   564,  5274,   770,
14765     2642,  3409,   280,   754,  4657,   124,   545,  2884,  2885,  2886,
14766      325,   279,  2670,  2734,   204,  3433,  3434,  3435,  3436,   300,
14767      139,   770,   778,    79,   490,  3963,    82,   564,   715,   298,
14768      701,   209,   203,    99,  3636,   276,  2039,  3253,  1897,   148,
14769     2787,  3257,   204,   186,   526,   266,  3298,   594,   719,   595,
14770     2797,   170,   171,  5718,  5719,  4875,   566,   567,  2061,   189,
14771     3411,   127,    57,   203,  1923,   715,  1334,   176,   519,  5745,
14772     5174,  5175,  5176,   251,  5178,   452,   898,  2080,   900,   901,
14773      902,    92,   403,   273,   754,   907,   426,   909,   403,   759,
14774      760,   778,  2489,   371,  2097,   561,  2099,   216,     6,  5276,
14775     2103,   758,   759,   760,   761,   762,   763,   764,  2829,   280,
14776      580,   426,  2115,  2116,  3054,   682,    15,   696,   184,  2122,
14777     5796,     9,    10,  5799,  3411,   181,  2129,  2130,   778,  2132,
14778     2133,  3071,  2808,   643,   145,  2069,    57,   452,  3390,  1407,
14779     3071,   680,  3413,  3395,  2147,   682,   616,   669,  2151,  1417,
14780      951,   952,   953,   148,  5830,   220,   607,  1425,  2161,   480,
14781       68,  2558,  3596,   669,  3598,  2168,   621,   301,    89,    98,
14782      737,   314,  3099,  3100,  5454,  2178,  2179,  1445,  1108,  1447,
14783      715,   176,    12,  2117,  5654,   500,  2045,   759,   760,   761,
14784      762,   763,   764,    81,   403,   373,    57,  3124,  4441,  5011,
14785      737,  3088,  5482,  4446,  5381,  2840,  1136,   385,    96,   265,
14786      661,  1012,   637,   754,   755,   756,    10,  3104,  4002,   722,
14787      675,    15,  2156,     6,     6,   124,   651,   148,    89,  2221,
14788      655,  2221,   773,  4541,  5046,    65,   426,   125,     6,   373,
14789      139,  2814,  4745,   131,  4747,    99,  2180,  2181,   129,  2875,
14790     5720,  2875,     6,  2875,  2415,   176,  4564,  5571,  5572,   443,
14791     4568,  2814,   452,  2875,  1546,  1547,     6,    17,  4576,   680,
14792     2160,   480,  3166,  1555,    94,   700,  5817,  3171,  4062,  4063,
14793      168,   276,  4785,    99,    34,    68,    68,   148,  2489,   170,
14794      171,  5567,   760,  5569,  5570,   183,  5837,   185,    67,   122,
14795       68,   715,   727,   771,   124,  1587,   490,  1589,   586,   116,
14796      500,   489,    26,    32,    68,   176,  2381,   216,   715,  1141,
14797      127,   732,   203,  1605,  1606,  2328,  1608,   134,    68,  2447,
14798      124,  2334,   170,   171,  1616,  1617,   651,  3277,  1620,    58,
14799      655,   207,   754,   755,   756,   139,    93,  2350,  2466,  3089,
14800       92,    70,   501,   332,   488,   276,   770,  2558,   760,   771,
14801     5006,   773,  4865,   229,   111,   729,  5019,  5544,  3089,   771,
14802      554,    90,   237,   770,   705,  1643,   170,   171,   709,  4255,
14803     5759,  5760,   697,   561,  1652,  2504,  2381,   338,   339,  1410,
14804     1411,  2381,  5668,  5669,   163,  1663,  5672,  2516,   140,   280,
14805       93,   170,   171,   145,   123,  3031,   596,  3031,   770,  3031,
14806      986,   330,   727,     6,   598,   276,   694,   305,   111,  3031,
14807      735,   228,   216,  1444,   375,  5730,  2823,  4172,  5729,   286,
14808     1006,  4176,  5811,   151,  2437,  2438,  2439,  1013,  1014,  5597,
14809      209,   420,   184,  2840,  2447,  2563,   662,   637,  2451,  2452,
14810     2453,  2454,   259,  2443,   114,   671,  2459,  2460,  4004,  2462,
14811       35,   677,    10,  2466,  4010,   655,   417,  4013,  5744,   129,
14812     2903,  3411,    47,   407,  4020,    68,  5634,  5635,  2875,  2876,
14813     3138,  2914,   251,   253,  1752,  3676,   737,  2884,  2885,  2886,
14814     4240,    94,   373,   212,  4386,   265,  4388,  2500,   477,  4391,
14815      624,  2504,  4394,   111,    17,  4397,  4398,   697,   662,   770,
14816      700,   635,  3138,  2516,  3138,  2634,  3138,   778,     6,    32,
14817       69,  2640,  2641,    11,   662,  3716,  3138,    15,  1796,    92,
14818       93,   760,    57,  1801,   771,  1803,   773,   727,  2971,   264,
14819     2543,  4433,   771,  3437,   773,   735,   449,   526,  1487,  1488,
14820      669,  3298,  1491,  5379,  2672,  2489,  2559,  2560,  4524,    94,
14821     2563,  2564,  2565,   282,    89,   770,  5212,  3985,  5214,  3002,
14822      754,   755,   756,   778,  5732,  2530,   770,  3253,  4544,   104,
14823     1848,  3257,   114,  5236,   778,   564,   771,  4553,   773,   771,
14824     2593,  1859,  3486,  4559,   523,   524,  1397,  2600,   527,   528,
14825      529,  2604,   770,  4569,   373,   486,    94,   759,   760,   770,
14826      778,  1433,  4578,  4579,   777,   164,   385,   778,   655,   420,
14827     3053,   114,  2823,   148,  2558,   114,  2629,  2630,  2631,  2632,
14828     2489,  2634,  3572,   182,  3031,   155,  2639,  2640,  2641,  2840,
14829     2643,   114,  4686,  3390,   299,   596,  2649,  4249,  3395,    69,
14830      770,   176,  2511,   506,   507,   778,   249,   250,   778,   770,
14831     2519,  2664,   613,  4166,   726,  2668,   259,   778,   521,  2672,
14832     2673,  4103,  4104,   770,  2875,  2876,   477,   396,   640,   398,
14833      770,   778,    84,  2884,  2885,  2886,   770,   638,   778,   650,
14834      239,   240,  1960,   426,   778,  3966,  2814,   735,  2816,  4131,
14835        9,    10,  4205,   682,   124,   727,   728,  1975,   730,  3649,
14836      732,  3963,  3433,  3434,  3435,  3436,  2606,   264,  1986,  1987,
14837      489,   771,  3357,   773,  4156,   251,   771,   678,   773,  2588,
14838     1368,  2734,  3408,  1371,  1372,   697,  3680,  2740,   700,  3626,
14839      770,  3138,  1285,  2602,   164,    76,    77,  4258,  1291,  1292,
14840      332,   276,   771,   771,   773,   773,  3683,   771,   737,   773,
14841       92,    93,   182,   564,  3704,   727,   619,   620,  4200,  3166,
14842      109,   110,    81,   735,  3171,  3799,  3800,    76,    57,  3803,
14843     3804,  2899,   771,  2901,   773,  3809,  3810,    96,  1667,  1668,
14844     2680,   373,   561,  2061,   773,   271,   373,  2800,  4674,  2802,
14845     4402,     5,   771,  5543,   773,  2808,  5546,   771,  2811,   773,
14846       89,  2814,   399,  2816,  2817,   771,   125,   773,  5887,   239,
14847      240,   771,   131,   773,    94,   104,  2829,   347,   111,  2832,
14848     3031,   550,   551,   771,   771,   773,   773,   682,  3493,  2698,
14849      600,   373,     9,    10,  3499,   640,  2705,  2706,   380,   466,
14850     3505,  2841,   770,     9,    10,   696,   771,   439,   773,   168,
14851      577,  2129,  2130,   395,  2132,  2133,   754,   755,   756,   148,
14852      271,   179,   465,   393,   183,   669,   185,   179,   771,   373,
14853      773,   682,   469,  2151,   504,   773,   506,   507,   420,  2823,
14854      773,   113,   771,  2161,   773,   477,  2899,   176,  2901,   347,
14855      477,   521,  3642,  3643,  3644,  3645,  2840,  4799,  5648,   771,
14856      417,   773,   523,   524,    81,  5655,   527,   528,   529,   777,
14857      338,  3642,  3643,  3644,  3645,    81,   420,   196,   771,    96,
14858      773,   771,   771,   773,   773,   770,   737,  3138,   780,   770,
14859       96,  2875,  2876,   294,   526,   296,   771,   534,   773,   536,
14860     2884,  2885,  2886,   770,   541,   475,  4680,  4681,   125,   770,
14861     3357,  4472,   770,    34,   131,  3166,   771,   770,   773,   125,
14862     3171,  4517,   773,  4519,   770,   131,   558,  2259,  3043,  4250,
14863     2262,   558,   564,   477,   770,   770,  3726,   564,  3915,   708,
14864      770,   770,  4538,   525,   770,   770,   305,   276,  2280,   619,
14865      620,   168,  4548,  3164,   770,  3726,   538,  5747,  5748,  2291,
14866      165,   770,   168,  3016,  4560,   770,   183,   537,   185,   606,
14867        9,    10,   771,   771,   773,   773,   558,   183,   771,   185,
14868      773,  4577,   770,  3927,   109,   110,   556,   557,   615,   770,
14869     3437,   561,   562,   563,   770,    42,  3049,  3037,  3043,   771,
14870      771,   773,   773,  3043,   129,   771,  4247,   773,   190,   771,
14871     2328,   773,   649,   771,   558,   773,  2334,   771,   770,   773,
14872      564,  4673,  3075,   771,  3077,   773,  3752,  3753,   671,   672,
14873      673,   674,  4490,  3078,   770,  3088,  3089,  3090,   771,  3486,
14874      773,   770,    81,  3083,   770,   170,   171,  3031,   770,   770,
14875      682,  3104,     9,    10,   770,   682,    42,    96,  3103,   629,
14876      771,  3103,   773,  3103,   771,   771,   773,   773,  3237,   116,
14877      771,   615,   773,  3284,   771,   771,   773,   773,   203,  3103,
14878      127,  3021,  3103,   770,   770,  3138,   125,   134,   305,   771,
14879      770,   773,   131,   770,   721,  3263,   771,   770,   773,   305,
14880      682,   770,   739,   729,   770,   737,  3357,  3160,   678,   729,
14881      737,  3594,   190,   750,    83,   697,   770,  3285,  3286,   166,
14882     4545,  2439,  3031,    92,    81,   190,   771,  4552,   773,   168,
14883      116,   770,   179,  2451,  2452,  2453,  2454,   770,   682,    96,
14884      771,   127,   773,   771,   183,   773,   185,   770,   134,  4076,
14885      771,   120,   773,   190,   771,   280,   773,   266,   757,   758,
14886      759,   760,   761,   762,   763,   764,  3963,  3335,   125,   742,
14887      771,   140,   773,   778,   131,  4600,   145,   721,   770,   304,
14888      166,   228,  3166,   771,  3237,   773,  3437,  3171,   771,  3242,
14889      773,   196,   771,   737,   773,   196,   770,  2069,   754,   771,
14890     3253,   773,   773,   771,  3257,   773,   412,   771,   770,   773,
14891     3263,   168,   259,   122,  3985,   184,   577,   771,  3271,   773,
14892      179,   771,    17,   773,   770,  2543,   183,    94,   185,   773,
14893      770,   179,  3285,  3286,   349,  3486,   771,    32,   773,  4216,
14894      770,   356,   228,   770,   237,  2117,  5366,  2565,   373,   771,
14895      770,   773,  5023,    57,   771,   770,   773,   372,   770,  4236,
14896     4237,   425,   771,    58,   773,  4902,   305,   382,   383,   384,
14897      771,   770,   773,   259,   770,    70,   770,   392,  4831,   770,
14898     3220,   770,  3335,   770,  2156,    89,   770,   757,   758,   759,
14899      760,   761,   762,   763,   764,    90,   770,  4002,  3351,  4004,
14900      104,  4006,    42,  4008,   770,   109,   110,   770,  2180,  2181,
14901      279,  4016,   770,   770,  2632,   770,   770,   770,  4023,   778,
14902     4025,  2639,   770,   770,   770,  2643,   121,  4032,   123,   770,
14903      770,  2649,   770,   770,   770,   770,    69,  4042,   770,   770,
14904      770,  4046,   770,   770,   148,   770,  2664,  4052,   305,   770,
14905      770,   770,   770,   770,   770,  3408,  4061,  4062,  4063,  4064,
14906     4065,   486,   770,   770,   770,  2111,   770,   770,   770,   778,
14907      770,   770,   176,  3357,  3427,   770,   116,   770,  3318,  3432,
14908     3433,  3434,  3435,  3436,   770,  4090,  3439,   127,   778,   662,
14909     4075,   124,   770,   770,   134,   754,   755,   756,   770,   778,
14910     3611,  4883,     9,    10,   778,  3314,  3315,  3316,  3317,   778,
14911     3319,  3320,   771,   778,   773,   778,   778,   770,   533,   680,
14912      140,   778,  3362,    92,  3364,  3365,   166,  4217,  4218,   680,
14913     3370,   164,   547,   696,   668,   501,   419,    92,  3378,   179,
14914      575,   773,   773,  3383,   347,   773,  4217,  4218,   773,   182,
14915       92,   381,   773,  3437,   572,   773,   691,  3366,  3367,   754,
14916     3369,    80,  3371,  3372,  3373,  3374,  3375,  3376,  3377,   735,
14917     3379,   452,   276,  3382,    81,   452,    93,  3386,   195,  5250,
14918     3927,   773,   266,    99,   283,  5137,    69,   282,   228,    96,
14919     2808,   124,    26,  2811,    61,   395,   779,     5,   394,   294,
14920      576,     4,  3486,   735,   417,    14,   239,   240,    92,   773,
14921      778,    84,   420,   778,  2832,   412,   124,   696,   125,   259,
14922     3573,   771,   770,   111,   131,   498,   298,   554,    94,   122,
14923      298,  4239,   770,   648,   777,   150,   773,   754,   755,   756,
14924      770,  4518,   417,     6,   771,     9,    10,   771,   754,   755,
14925      756,   771,    68,   323,   771,   773,   773,   778,   771,  3612,
14926      771,   168,   771,  4239,   641,  4239,   778,  4239,    92,  3738,
14927      685,    92,   771,  3626,   771,   771,   183,  4239,   185,    33,
14928      778,   164,    36,  3636,   699,   770,   139,   770,  4989,  3642,
14929     3643,  3644,  3645,  3635,  3647,  3635,   773,    99,   271,   182,
14930      773,   396,   780,   398,   773,    92,     9,    10,   761,    34,
14931     3663,  3664,   778,   773,   773,   761,   680,    81,   743,   124,
14932      481,   693,   441,    92,   773,  5262,   680,   425,  4075,  4076,
14933     4113,   771,    96,   770,   773,   779,   332,    91,   770,  3692,
14934     4584,    95,  5408,  3696,   124,   773,  5412,   195,   350,   217,
14935      501,   501,  4989,   501,   501,   347,   239,   240,   501,   501,
14936      114,   125,   773,     9,    10,   773,   754,   131,    84,   668,
14937      271,  5096,  5097,  3726,  5099,   129,  3927,   373,    81,  3732,
14938     3733,  4373,  4390,     6,   588,  3738,  2558,   665,   271,  4679,
14939     4382,     9,    10,    96,   735,   127,   771,   771,   305,  3752,
14940     3753,   771,   771,  4186,   168,   127,  3759,   778,   771,   187,
14941      770,   773,    26,   103,   429,   754,   755,   756,  5481,   183,
14942      778,   185,   125,   229,   420,  5362,   657,   408,   131,   471,
14943      770,   773,   771,   471,   773,    81,   771,   773,  3647,    29,
14944      298,   195,   587,   439,  5515,   285,   726,   773,   695,   203,
14945       96,   200,    94,   184,   773,   179,   551,  3075,   773,   636,
14946      271,   115,   122,    81,   642,   168,    59,   771,   349,  5695,
14947      417,   771,  3090,   771,   771,   356,  5542,   761,    96,   125,
14948      183,   477,   185,   771,   771,   131,   771,    94,  5213,   760,
14949      244,   372,  4239,   238,   770,   170,   771,   754,   755,   756,
14950      770,   382,   383,   384,   771,   771,   771,   125,   771,   771,
14951      771,   392,   770,   131,   771,   771,   773,   771,   773,   771,
14952      773,  4506,   168,  3916,  4075,  4076,   280,   771,   773,   778,
14953      526,   773,   773,   771,     9,    10,   771,   183,   771,   185,
14954      764,   305,  3895,   770,   195,   770,   365,   583,   771,   754,
14955      168,   266,   266,   266,  5506,    98,    94,  3910,   773,   271,
14956       92,   773,   558,    92,   659,   183,   495,   185,   564,   770,
14957       42,   770,   778,    94,   237,   773,   778,   771,   773,   607,
14958      771,    62,  5307,   773,  5309,  5310,   778,  5440,   773,     6,
14959      773,  4567,   725,  4567,   773,  4567,  3836,  3837,  3838,   662,
14960       92,   569,   305,   127,   127,  4567,    81,   741,  3961,  4614,
14961      770,   429,  3965,   708,   539,  3968,   251,   371,   549,   251,
14962      650,    96,   251,   251,  3242,   251,   179,   301,    92,   770,
14963      267,   754,  3985,   754,   754,  3253,   731,   754,   754,  3257,
14964      754,   754,   754,  3927,   116,   754,  2692,  2693,     9,    10,
14965      125,  2823,   533,   754,   754,   127,   131,  4934,   754,   305,
14966     5886,   754,   134,  2709,   754,   754,   547,   754,  2840,  4913,
14967      773,   754,  5525,  2719,  2720,   754,   754,   754,   754,   754,
14968      754,  5382,  5383,   754,   286,   726,   682,   305,  4239,  3929,
14969     3930,   569,  3932,   168,   166,   140,   500,   778,   320,  4989,
14970      773,   770,   271,  2875,  2876,   271,   271,   179,   183,   271,
14971      185,   778,  2884,  2885,  2886,   773,   778,   746,  4071,   498,
14972       81,   379,   122,   777,   757,   758,   759,   760,   761,   762,
14973      763,   764,   771,   121,   121,    96,  2782,  2783,  2784,  2785,
14974      771,   737,  5694,   778,   771,  5382,  5383,   771,   771,   190,
14975      760,   760,   633,   778,    26,   771,   228,   778,   771,  4506,
14976      771,   773,   770,   770,   125,  5702,   689,   648,   325,   271,
14977      131,   301,    94,    94,    94,    94,   577,   773,   778,   266,
14978      266,   483,   210,  5636,   778,   773,   760,   259,    11,   754,
14979     3408,  4075,  4076,   176,   770,  4787,   754,   535,  4790,  4791,
14980      320,   773,    91,   179,   685,   179,   770,   168,   770,    10,
14981      271,  4164,   127,   127,   286,   771,   773,   395,   699,   395,
14982     4567,  3439,   183,   266,   185,   218,   266,   266,  4181,  5073,
14983      305,    11,   586,  4344,   770,   770,   770,  4584,    99,   778,
14984     4193,   761,   224,    92,    72,   271,   179,   754,   755,   756,
14985      577,   761,   461,  4206,   113,   773,   777,   412,  4211,  4212,
14986       56,   770,   773,   123,  4217,  4218,   773,   770,   770,   123,
14987     4223,   771,   771,   771,   757,   758,   759,   760,   761,   762,
14988      763,   764,   771,   176,  5821,   770,  4239,  4240,   778,   184,
14989     4358,   773,   778,    26,   771,   771,  4249,   771,   770,  4875,
14990      754,  4875,  4393,  4875,  5757,  5857,  4259,   770,     9,    10,
14991     4895,   219,   771,  4875,   778,  4155,   773,    94,  4258,  5871,
14992       94,   771,   771,   210,   770,  5877,   773,   771,   773,   300,
14993      210,  5883,   770,   770,   546,   395,   179,  4177,   773,   754,
14994      694,   770,   286,  4296,   305,   286,  4299,   770,  4301,   365,
14995       11,   773,  5196,   773,   771,  4506,   266,   436,  4426,   185,
14996      371,   195,   195,   195,   271,   733,  3138,     9,    10,    26,
14997      408,  4947,   408,  4947,   195,  4947,   128,   697,  4331,  4496,
14998       81,   128,  5226,   195,  4193,  4947,   697,  4340,   195,   584,
14999      754,   755,   756,   195,  3166,    96,  4465,   195,   195,  3171,
15000      271,    11,   429,    98,   229,  4358,   771,   771,   414,   773,
15001      493,   202,   378,   770,  4223,   770,  4567,   569,    61,  4372,
15002       92,    92,   176,   771,   125,    26,   235,   771,   301,  4387,
15003      131,   771,   495,  4584,   184,   636,  4389,   773,    26,    81,
15004      773,   771,   771,  4401,   141,   771,   195,  4400,   437,  4402,
15005      773,   754,   755,   756,    96,  4408,   773,   145,   745,  4527,
15006     4418,  4414,   771,   770,   139,  4533,   195,   168,   771,   179,
15007      773,    11,   771,  4426,  4427,   286,   668,  4286,  4436,   142,
15008     4438,  4439,   183,   125,   185,   770,   286,   176,   585,   131,
15009      176,   111,  5382,  5383,  4447,   733,   129,   733,   203,   215,
15010     4453,  4454,   778,   597,   373,   179,  4459,   476,   754,   755,
15011      756,  5355,  4465,   179,  3732,  3733,   267,  4470,    94,   577,
15012      429,   378,   301,  5115,  5849,   771,   168,   773,  4875,   122,
15013      296,   296,  4472,   214,  3752,  3753,   754,   755,   756,   569,
15014       17,   183,   773,   185,   771,   770,  5151,  4356,  4895,   140,
15015      771,  4496,  5379,  5158,  4496,   773,  4496,   489,   771,   539,
15016      771,   771,   123,  5168,    32,   771,  4913,  5172,   771,  4409,
15017     4410,  4411,  5177,   607,  4527,   771,  4416,  4417,    26,   773,
15018     4533,   677,  4422,   771,   771,  3357,   771,   778,    10,   773,
15019     4430,   770,   647,   770,  4434,    11,   771,   771,   770,   770,
15020     4947,    26,  5479,    26,   305,  4445,    79,    26,   176,  4562,
15021     4419,  4420,   770,    92,   436,   318,   770,   129,   129,   770,
15022       92,   129,  4506,   773,   770,   301,  4435,   771,   773,     9,
15023       10,   377,   661,   301,   412,   129,   264,   307,   282,   778,
15024     4708,   754,    92,    92,   176,   773,   771,   539,   435,   771,
15025     4459,   409,   771,   770,  3300,  3301,   770,  3303,  3304,   576,
15026      771,    11,   771,   305,    67,  3437,   773,   634,   773,   179,
15027       26,    92,    26,    26,   266,   399,    84,    84,   286,   754,
15028      755,   756,   264,  4567,     9,    10,   770,   778,   778,   778,
15029      778,     9,    10,   778,    33,   577,   778,   283,   773,   642,
15030     4584,    81,   778,   430,   778,   778,   176,   778,  4661,   778,
15031      778,   778,   778,   778,  3486,   450,    96,     9,    10,   771,
15032     4673,   771,   771,   770,  4875,   595,  5073,  5604,   595,  4797,
15033      353,   569,    61,   770,    61,  4728,   771,   770,   770,  5616,
15034      153,  4581,   773,   677,  4895,   125,  4699,  3393,   771,    33,
15035      577,   131,    33,   778,    10,  4708,    81,   771,   688,  4712,
15036      304,   703,  4913,    81,   176,   569,    26,  4720,    26,   770,
15037      122,    96,   770,   770,  5651,   770,   770,   179,    96,   733,
15038      129,  4774,  4735,   694,  5404,   129,  4779,   175,   168,    81,
15039      283,   326,    61,   754,   755,   756,  4947,     9,    10,   418,
15040      125,    11,   577,   183,    96,   185,   131,   125,   577,   408,
15041      770,   642,   773,   131,   408,   770,   420,   773,   771,  4777,
15042      778,   771,   770,   770,   770,     9,    10,   172,  5454,   729,
15043      770,   689,   770,   125,   773,  4788,   581,    92,   412,   131,
15044     4793,  4794,  4795,   168,  4797,  4798,   771,  4800,   771,  5196,
15045      168,   778,  4805,  4806,   770,   145,  5482,  4810,   183,   325,
15046      185,   319,   179,     9,    10,   183,   770,   185,   771,    81,
15047      179,   229,   778,   283,   773,    63,   168,   771,    75,  5226,
15048      771,   471,    26,   642,    96,   113,   770,   176,   773,   237,
15049     3103,   183,  4845,   185,   914,  4897,  4849,    81,  4851,  2576,
15050     3384,  4899,  4901,  3233,  5406,  3820,  5078,  1228,  5418,  5551,
15051     1402,  5737,    96,   125,   753,  4310,  4320,  4870,  5538,   131,
15052     4873,  4971,  5073,  4876,  5286,   305,  4947,  4736,  5218,  5295,
15053     5233,  5374,  4581,  3479,  2597,    81,  3704,  5553,  3980,  4507,
15054     4893,   125,  2748,   819,  4076,  2179,  1739,   131,     9,    10,
15055       96,  2104,  2182,  2180,  2048,  2181,   168,  5284,  5283,  5062,
15056     3909,  3347,  4202,  4905,  1443,  4905,  4919,  4817,  5028,  4661,
15057     4206,   183,  2423,   185,  4967,     9,    10,  5603,  5624,   125,
15058      305,  5262,  5697,  5032,   168,   131,  5821,   305,  5776,  5823,
15059     5538,  4875,  4385,  2625,  3901,  5414,  5717,  4453,  4807,   183,
15060     5057,   185,  4780,  5880,  3910,  5760,  5573,  5603,  5355,  5617,
15061     5482,  4895,  4134,   305,  4967,  4012,  4067,  5606,  4971,  5617,
15062       81,  4526,   168,  5127,  4534,  4834,   652,  3577,   654,  4913,
15063     5874,  4173,  5379,  4176,  5795,    96,    90,   183,    90,   185,
15064     4168,  5747,   668,  5748,  5721,  5196,  5322,    81,  5655,   675,
15065      676,  5648,  5409,   754,   755,   756,   682,  4897,  5106,  4899,
15066     4552,  4901,    96,  4947,   125,  5108,  3727,  3909,  4449,  1242,
15067      131,  1421,   773,  5344,   700,  5226,  3217,  5030,  4296,  4888,
15068     2740,  5034,  3212,  4301,  1935,  5613,  5126,  2083,  2565,  2439,
15069     5043,   125,  2848,   305,  3439,   135,  3997,   131,  3161,  5052,
15070     5053,  5054,  1383,  3037,  5057,   759,  1336,   168,  1372,  1166,
15071        9,    10,   754,   755,   756,  4193,  5069,  3281,  3095,  3971,
15072     2970,   305,   183,  1671,   185,  2966,  1729,  4967,  3611,  1581,
15073     1334,   773,  5094,  4252,   168,  1549,  5089,  1987,  5091,  1982,
15074     5558,  4749,  4699,  5559,  2678,  1334,     9,    10,  1334,   183,
15075     3273,   185,  1334,  1334,  3603,  3927,  1977,  1555,  5111,   305,
15076     4340,  4339,  3601,  2003,  5023,  5118,  5515,  5137,  5121,  5122,
15077     4686,  5019,  5125,  5040,  3277,  1390,  5129,  5017,  5131,  5290,
15078      765,  1364,    81,  4344,  5137,  2672,  5026,  5140,   108,  5073,
15079     4408,  2800,   818,  5146,    90,  1501,  1749,    96,  3083,  2841,
15080     5694,  4673,  3311,  5823,  5355,  4705,  5553,  4251,  3854,   836,
15081     4249,  3857,   679,   837,  3860,  3861,  3862,  3863,    81,  3865,
15082     3866,  3867,  3868,  2097,  3870,  3871,   125,  3873,  5379,  2539,
15083     1815,  3877,   131,    96,   676,  3881,  3882,  3883,  3884,  3155,
15084     3886,  3887,  2540,   676,   305,  1386,  3892,  3893,   125,  2591,
15085     3896,  3897,  5046,  5140,  5207,  1505,  4000,  5840,  1924,  5819,
15086     5103,   887,   125,  4754,  5877,  5218,  5883,  5220,   131,   168,
15087     1011,   305,   898,  4211,   900,   901,   902,  3031,  4239,  2559,
15088     3136,   907,   675,   909,   183,   675,   185,  2493,  2364,  3116,
15089     3115,   672,  1953,  2161,  3835,  1757,  1148,  1497,  2734,  4358,
15090     3427,  3088,  3227,  4075,  4076,   168,  3916,  5204,   713,  1281,
15091      114,    90,  5196,    90,   940,    90,    -1,  5086,  5298,   945,
15092      183,  5274,   185,    -1,    -1,     9,    10,    -1,    -1,    -1,
15093       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15094       -1,  5294,  5226,  5283,    -1,    -1,    -1,    -1,    -1,   975,
15095       -1,    -1,    -1,    -1,  5347,    -1,    -1,    -1,  5351,   985,
15096       -1,    -1,    -1,  5316,    -1,    -1,    -1,    -1,  5321,    -1,
15097       -1,    -1,     9,    10,   754,   755,   756,    -1,    -1,  5337,
15098       -1,  5374,    -1,    -1,    -1,    -1,    -1,  5340,    -1,    -1,
15099       -1,    -1,  5345,   773,    -1,    -1,    -1,    81,    -1,  5352,
15100       -1,    -1,  5553,    -1,     9,    10,   305,  5360,  5361,    -1,
15101       -1,    -1,    96,  5481,    -1,    -1,    -1,    -1,    -1,    -1,
15102       -1,  5374,    -1,    -1,    -1,    -1,    -1,    -1,  5421,   754,
15103      755,   756,    -1,    -1,    -1,    -1,   754,   755,   756,    -1,
15104       -1,   125,   305,  5396,    81,    -1,   771,   131,  1074,  1075,
15105     1076,  1077,    -1,    -1,    -1,   773,  5409,    -1,    -1,    96,
15106     5413,  1087,   754,   755,   756,    -1,    -1,  4239,    -1,    -1,
15107       -1,  5355,    -1,  5426,    -1,    -1,    81,    -1,    -1,  5472,
15108       -1,   773,    -1,    -1,   168,    -1,    -1,    -1,   125,    -1,
15109     5443,    96,    -1,    -1,   131,  5379,    -1,  5490,    -1,   183,
15110       -1,   185,  4720,    -1,     9,    10,    -1,    -1,    -1,    -1,
15111       -1,    -1,    -1,     9,    10,  1141,    -1,    -1,    -1,    -1,
15112      125,    -1,    -1,    -1,    -1,    -1,   131,  5874,  5481,    -1,
15113       -1,   168,    -1,    -1,  5374,    -1,    -1,    -1,    -1,    -1,
15114       -1,    -1,   754,   755,   756,    -1,   183,    -1,   185,    -1,
15115       -1,    -1,    -1,  5506,    -1,  5508,    -1,    -1,  5573,    -1,
15116       -1,   773,    -1,   168,    -1,    -1,     9,    10,    -1,  5637,
15117      754,   755,   756,    -1,    -1,    -1,    81,    -1,   183,    -1,
15118      185,    -1,    -1,   267,    -1,    81,    -1,    -1,    -1,   773,
15119       -1,    96,    -1,    -1,    -1,    -1,    -1,  5550,    -1,    -1,
15120       96,  5554,    -1,    -1,    -1,  5558,  5559,    -1,   754,   755,
15121      756,    -1,    -1,  5606,  5567,    -1,  5569,  5570,    -1,    -1,
15122      125,   305,    -1,    -1,    -1,  5736,   131,   773,  5573,   125,
15123       -1,  5584,    -1,  5573,  1260,   131,    -1,  1263,    81,    -1,
15124       -1,    -1,    -1,    -1,  5597,    -1,    -1,    -1,    -1,  5717,
15125       -1,    -1,    -1,    96,    -1,  4873,    -1,    -1,    -1,  5468,
15126     5613,     9,    10,   168,    -1,    -1,    -1,    -1,   305,  5553,
15127       -1,  5624,   168,    -1,    -1,    -1,    -1,    -1,   183,    -1,
15128      185,    -1,   125,    -1,  5637,    -1,    -1,   183,   131,   185,
15129       -1,    -1,    -1,   754,   755,   756,    -1,    -1,  5691,    -1,
15130      305,    -1,    -1,    -1,    -1,  5658,  5774,    -1,    -1,    -1,
15131     5663,    -1,   773,    -1,    -1,  5668,  5669,    -1,    -1,  5672,
15132      754,   755,   756,  5874,    -1,   168,    -1,    -1,    -1,    -1,
15133       -1,    -1,    -1,    81,  4506,    -1,    -1,    -1,    -1,   773,
15134      183,  5694,   185,    -1,    -1,    -1,    -1,    -1,    96,    -1,
15135       -1,    -1,    -1,  4399,    -1,    -1,    -1,    -1,    -1,    -1,
15136        9,    10,    -1,    -1,  5717,    -1,  5759,  5760,    -1,    -1,
15137       -1,    -1,    -1,  5884,    -1,  4421,    -1,   125,    -1,  5732,
15138        9,    10,    -1,   131,    -1,  5738,    -1,    -1,  5597,    -1,
15139       -1,  5744,    -1,  5861,    -1,  4567,    -1,    -1,    -1,  5867,
15140      305,    -1,    -1,  1429,    -1,    -1,  1432,  1433,    -1,   305,
15141       -1,    -1,  4584,    -1,    -1,    -1,    -1,    -1,  5811,    -1,
15142      168,  5774,  5631,  5632,    -1,    -1,    -1,    -1,    -1,    -1,
15143       -1,    -1,    81,    -1,    -1,   183,  5645,   185,    -1,    -1,
15144       -1,  5794,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,
15145       -1,    -1,    81,    -1,    -1,   754,   755,   756,    -1,    -1,
15146       -1,    -1,   305,    -1,    -1,    -1,    -1,    96,    -1,    -1,
15147       -1,    -1,    -1,    -1,   773,    -1,   125,  1503,    -1,  1505,
15148       -1,    -1,   131,    -1,    -1,    -1,    -1,  5727,    -1,    -1,
15149       -1,   754,   755,   756,    -1,    -1,   125,  5706,    -1,    -1,
15150     5709,    -1,   131,    -1,  5857,  1531,    -1,    -1,  5861,    -1,
15151      773,    -1,    -1,    -1,  5867,    -1,  1542,  1543,  5871,   168,
15152       -1,    -1,  1548,  5732,  5877,    -1,  1552,  1553,  1554,    -1,
15153     5883,    -1,    -1,    -1,   183,    -1,   185,  1563,  1564,   168,
15154       -1,    -1,    -1,  1569,    -1,  1571,  1572,  1573,  1574,  1575,
15155       -1,  1577,    -1,    -1,   183,    -1,   185,   305,    -1,    -1,
15156       -1,    -1,  1588,    -1,  1590,    -1,    -1,  1593,  1594,    -1,
15157     1596,  1597,  1598,    -1,  1600,  1601,  1602,    -1,    -1,    -1,
15158       -1,  1607,    -1,    -1,  1610,    -1,    -1,    -1,    -1,  5207,
15159     5874,    -1,  1618,  1619,    -1,  1621,  1622,  1623,    -1,    -1,
15160     1626,  1627,  1628,  1629,  1630,  1631,  1632,    -1,  1634,  1635,
15161     1636,  1637,  1638,  1639,    -1,  1641,  1642,    -1,  1644,  1645,
15162     1646,  1647,  1648,  1649,  1650,    -1,    -1,  1653,  1654,  1655,
15163     1656,    -1,  1658,  1659,  1660,    -1,  1662,    -1,  1664,    -1,
15164     1666,    -1,    -1,    -1,  1670,  1671,  1672,    -1,    -1,  1675,
15165     1676,  1677,  1678,  1679,    -1,  1681,   305,    -1,    -1,    -1,
15166       -1,    -1,  1688,    -1,    -1,    -1,    -1,  1693,    -1,    -1,
15167      754,   755,   756,    -1,  1700,    -1,   305,    -1,  1704,  1705,
15168     1706,  1707,    -1,  1709,  1710,    -1,    -1,  1713,  1714,  1715,
15169     1716,  1717,  1718,  1719,  1720,  1721,  1722,  1723,  1724,  1725,
15170       -1,    -1,  1728,  4875,    -1,     9,    10,    -1,    -1,    -1,
15171       -1,    -1,    -1,    -1,     9,    10,    -1,   754,   755,   756,
15172       -1,    -1,  5340,  4895,    -1,    -1,    -1,    -1,    -1,     5,
15173       -1,     7,     8,    -1,    -1,    -1,   773,    -1,    -1,    -1,
15174       -1,  4913,    -1,    -1,    -1,    -1,    -1,  1773,    -1,   754,
15175      755,   756,  1778,    -1,    -1,    31,    -1,    33,    -1,    -1,
15176       -1,    -1,  1788,    39,    -1,    -1,    -1,    -1,   773,    -1,
15177       -1,    -1,    -1,    -1,    -1,  4947,    -1,    81,    -1,    -1,
15178       -1,    -1,    -1,    -1,    -1,    61,    81,    -1,    -1,    -1,
15179       -1,    -1,    96,    -1,    11,    -1,    -1,    73,    -1,    -1,
15180       -1,    96,    -1,    -1,    80,    -1,    -1,    -1,    -1,    -1,
15181       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15182       -1,   125,     9,    10,    -1,    42,    -1,   131,    -1,  1855,
15183      125,    -1,    -1,   109,   110,    -1,   131,    -1,   114,    -1,
15184       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   754,
15185      755,   756,    -1,    -1,    -1,  1881,    -1,  1883,   754,   755,
15186      756,    -1,    -1,    80,   168,    -1,    83,    -1,   773,   145,
15187       -1,    -1,    -1,   168,    -1,    92,    -1,   773,    -1,   183,
15188       -1,   185,    99,    -1,    -1,    -1,   103,    -1,   183,    -1,
15189      185,  1917,    -1,    -1,    81,    -1,   113,     9,    10,   116,
15190       -1,  5073,    -1,   120,   180,   122,    -1,    -1,   184,    96,
15191      127,   754,   755,   756,    -1,    -1,   192,   134,    -1,   195,
15192       -1,    -1,    -1,   140,    -1,    -1,    -1,    -1,   145,    -1,
15193      773,    -1,  5550,    -1,    -1,    -1,    -1,    -1,   125,    -1,
15194       -1,    -1,   218,    -1,   131,    -1,    -1,    -1,    -1,   166,
15195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15196       -1,    -1,   179,    -1,    -1,    -1,    -1,   184,    -1,    81,
15197       -1,    -1,    -1,    -1,  2000,    -1,    -1,    -1,   254,   255,
15198      256,   168,    -1,    -1,    96,    -1,    -1,   204,    -1,    -1,
15199       -1,    -1,    -1,    -1,    -1,    -1,   183,    -1,   185,    -1,
15200       -1,   305,    -1,   279,    -1,    -1,   754,   755,   756,    -1,
15201      305,   228,    -1,   125,    -1,    -1,    -1,    -1,    -1,   131,
15202      237,     9,    10,    -1,  5196,   773,    -1,    -1,   304,     9,
15203       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15204       -1,    -1,   259,  2069,    -1,    -1,    -1,    -1,    -1,   325,
15205       -1,    -1,    -1,    -1,  5226,    -1,   168,   333,    -1,   335,
15206        9,    10,   279,    -1,    -1,    -1,    -1,    -1,   285,   286,
15207       -1,   183,    -1,   185,     9,    10,    -1,    -1,   354,    -1,
15208       -1,    -1,   299,    -1,   301,   361,    -1,   304,    -1,    -1,
15209       -1,  2117,    -1,    81,     9,    10,    -1,   373,    -1,    -1,
15210       -1,    81,    -1,    -1,   380,   754,   755,   756,    96,    -1,
15211       -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,   305,   395,
15212     2146,    -1,    -1,    -1,   773,   754,   755,   756,    -1,   405,
15213     2156,    -1,    81,   409,   410,    -1,    -1,   125,  2164,    -1,
15214      416,    -1,   771,   131,   420,   125,    81,    96,    -1,    -1,
15215       -1,   131,   428,    -1,  2180,  2181,  2182,     9,    10,  2185,
15216       -1,    96,    -1,    -1,    -1,    -1,    81,  2193,  2194,    -1,
15217       -1,    -1,   448,    -1,    -1,    -1,   125,    -1,    -1,    -1,
15218      168,    96,   131,  5355,    -1,    -1,    -1,    -1,   168,    -1,
15219      125,    -1,    -1,   305,    -1,   183,   131,   185,   474,    -1,
15220       -1,    -1,   478,   183,    -1,   185,    -1,  5379,    -1,    -1,
15221      125,    -1,   488,    -1,    -1,    -1,   131,    -1,    -1,   168,
15222       -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    81,
15223       -1,   448,    -1,   168,   183,    -1,   185,    -1,    -1,    -1,
15224       -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,   183,   525,
15225      185,    -1,    -1,   168,    -1,    -1,  2282,  2283,  2284,    -1,
15226       -1,    -1,   538,    -1,   540,    -1,    -1,    -1,   183,    -1,
15227      185,    -1,    -1,   125,    -1,    -1,    -1,    -1,    -1,   131,
15228       -1,    -1,    -1,    -1,    -1,    -1,    -1,    15,    -1,    -1,
15229       18,    -1,    -1,    81,    -1,    -1,    -1,     9,    10,    -1,
15230       -1,    -1,    -1,   579,    -1,    -1,    -1,    -1,    96,   585,
15231       -1,    -1,    -1,    -1,    -1,    -1,   168,   305,    -1,    -1,
15232        9,    10,    -1,    -1,    -1,   305,    -1,    -1,    -1,    57,
15233       -1,   183,    -1,   185,  2360,    -1,   612,   125,    -1,    -1,
15234       -1,    -1,    -1,   131,    -1,    -1,    -1,   623,   624,   625,
15235       -1,    -1,    -1,    -1,    -1,  2381,   305,    -1,    86,  2385,
15236     2386,    89,  2388,  2389,    -1,    -1,    -1,    -1,   644,    81,
15237      305,  2397,    -1,  2399,    -1,   651,   104,   105,    -1,    -1,
15238      168,  5553,    -1,    -1,    96,    -1,    -1,    -1,    -1,    -1,
15239      305,    -1,    81,    -1,    -1,   183,    -1,   185,    -1,    -1,
15240       -1,  2427,    -1,    -1,    -1,    -1,   682,    96,    -1,    -1,
15241       -1,    -1,    -1,   125,    -1,  2441,    -1,    -1,    -1,   131,
15242      148,   697,   698,     9,    10,    -1,    -1,    -1,    -1,    -1,
15243       -1,    -1,  2458,    -1,   710,  2461,   125,   713,    -1,   167,
15244       -1,    -1,   131,    -1,    -1,    -1,    -1,   175,   176,  2475,
15245      754,   755,   756,   305,     9,    10,   168,    -1,    -1,   754,
15246      755,   756,    -1,  2489,  2490,    -1,    -1,    -1,    -1,   773,
15247       -1,   183,    -1,   185,     9,    10,    -1,    -1,   773,   168,
15248       -1,    -1,    -1,    -1,  5530,  5531,  2512,  5533,  5534,  5535,
15249     5536,    -1,     9,    10,   183,    81,   185,    -1,    -1,    -1,
15250       -1,   777,    -1,    -1,    -1,     9,    10,    -1,    -1,    -1,
15251       96,    -1,    -1,    -1,    -1,    -1,    -1,   305,    -1,     9,
15252       10,    -1,    -1,    -1,   741,    -1,    81,  2553,    -1,    -1,
15253        9,    10,  2558,    -1,    -1,    -1,    -1,   754,   266,   125,
15254       -1,    96,    -1,    -1,    -1,   131,    81,   275,   276,   277,
15255       -1,    -1,    -1,    -1,   771,    -1,   773,    -1,    -1,   776,
15256      777,    96,    -1,    -1,    81,  2591,    -1,   754,   755,   756,
15257      125,    -1,    -1,    -1,    -1,    -1,   131,    81,    -1,    96,
15258       -1,    -1,   168,    -1,  5630,    -1,   773,  5633,    -1,    -1,
15259      125,    81,    96,   305,    -1,  5641,   131,   183,    -1,   185,
15260     5646,    -1,    81,    -1,    -1,    -1,    96,    -1,   125,    -1,
15261        9,    10,    -1,   168,   131,    -1,   305,    96,    -1,    -1,
15262       -1,   125,    -1,    -1,    -1,    -1,    -1,   131,   183,    -1,
15263      185,    -1,    -1,   168,    -1,   125,    -1,     9,    10,    -1,
15264       -1,   131,   754,   755,   756,    -1,   125,    -1,   183,  2675,
15265      185,   168,   131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15266       -1,   773,   390,  2689,   168,    -1,   183,    -1,   185,    -1,
15267      398,    -1,    -1,    -1,    53,    54,    55,    56,   168,   183,
15268       -1,   185,    81,    -1,    -1,    -1,    -1,    -1,    -1,   168,
15269       -1,    -1,    -1,   183,    -1,   185,    -1,    96,    -1,    -1,
15270       -1,    -1,  5874,    -1,   183,    -1,   185,     9,    10,    81,
15271       -1,     9,    10,    -1,    -1,    -1,    -1,    -1,  2744,   305,
15272       -1,    -1,    -1,    -1,    96,    -1,   125,   106,   107,   108,
15273       -1,    -1,   131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15274       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15275      305,    -1,    -1,   125,    -1,    -1,    -1,    -1,    -1,   131,
15276       -1,    -1,    -1,    -1,    -1,    -1,   754,   755,   756,   168,
15277      305,    -1,    -1,    -1,   754,   755,   756,    -1,    -1,    81,
15278       -1,   160,   161,    81,   183,   773,   185,    -1,   305,    -1,
15279       -1,    -1,    -1,   773,    96,    -1,   168,  2823,    96,    -1,
15280       -1,   305,    -1,    -1,    -1,   754,   755,   756,    -1,    -1,
15281       -1,   183,    -1,   185,  2840,   305,    -1,    -1,    -1,   754,
15282      755,   756,    -1,   125,   773,    -1,   305,   125,    -1,   131,
15283       -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,   773,   754,
15284      755,   756,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2875,
15285     2876,    -1,    -1,   232,    -1,    -1,   771,    -1,  2884,  2885,
15286     2886,    -1,    -1,    -1,    -1,  2891,   168,    -1,  2894,    -1,
15287      168,    -1,    -1,    -1,    -1,    -1,    -1,  2903,    -1,    -1,
15288       -1,   183,    -1,   185,    -1,   183,  2912,   185,  2914,    -1,
15289     2916,    -1,  2918,  2919,  2920,  2921,  2922,  2923,    -1,  2925,
15290       -1,    -1,   754,   755,   756,    -1,   305,  2933,    -1,  2935,
15291       -1,    -1,  2938,  2939,  2940,  2941,    -1,    -1,  2944,  2945,
15292       -1,   773,  2948,    -1,  2950,    -1,  2952,   306,  2954,     9,
15293       10,    -1,  2958,   305,    -1,    -1,    -1,     9,    10,    -1,
15294     2966,    -1,  2968,    -1,  2970,  2971,  2972,  2973,  2974,    -1,
15295       -1,  2977,  2978,  2979,    -1,  2981,    -1,    -1,  2984,    -1,
15296       -1,    -1,    -1,    -1,    -1,    -1,   754,   755,   756,    -1,
15297       -1,  2997,    -1,    -1,    -1,    -1,  3002,   705,    -1,  3005,
15298      708,  3007,  3008,  3009,    -1,   773,  3012,    -1,    -1,   717,
15299       -1,    -1,  3018,    -1,    -1,    -1,    -1,  3023,    -1,    -1,
15300       -1,    81,    -1,   305,    -1,  3031,  3032,   305,    -1,    81,
15301       -1,    -1,  3038,    -1,  3040,    -1,    96,  3043,    -1,    -1,
15302      399,    -1,    -1,    -1,    96,    -1,    -1,  3053,    -1,  3055,
15303       -1,    -1,    -1,    -1,  3060,    -1,    -1,    -1,    -1,    -1,
15304       -1,    -1,   754,   755,   756,   125,    -1,    -1,    -1,    -1,
15305       -1,   131,    -1,   125,    -1,    -1,     9,    10,    -1,   131,
15306       -1,   773,    -1,    -1,    -1,   754,   755,   756,    -1,    -1,
15307       -1,    -1,    -1,    -1,    -1,     7,     8,    -1,    -1,  3105,
15308       -1,    -1,   771,    -1,    -1,    -1,    -1,    -1,   168,    -1,
15309      469,    -1,    -1,    -1,    -1,    27,   168,    29,    -1,    31,
15310       -1,    33,    -1,   183,    -1,   185,    -1,    -1,  3134,    41,
15311       -1,   183,  3138,   185,    -1,    -1,    -1,    -1,    -1,    -1,
15312       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    81,    -1,
15313       -1,    63,    -1,    65,    66,    -1,    -1,    -1,    -1,  3165,
15314     3166,    73,    -1,    96,    -1,  3171,    -1,    -1,    80,    -1,
15315       -1,    -1,    -1,    -1,    -1,   534,    -1,   536,    -1,  3185,
15316       92,    -1,   541,    -1,    -1,    -1,    98,    -1,   754,   755,
15317      756,    -1,   125,    -1,    -1,    -1,    -1,    -1,   131,   111,
15318       -1,    -1,    -1,    -1,    -1,   771,    -1,   119,    -1,    -1,
15319       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   130,   754,
15320      755,   756,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15321       -1,   143,    -1,   145,    -1,   168,   771,    -1,   150,   754,
15322      755,   756,    -1,  3249,    -1,   305,    -1,   606,    -1,    -1,
15323      183,    -1,   185,   305,    -1,    -1,   771,   754,   755,   756,
15324       -1,    -1,    -1,    -1,  3270,    -1,    -1,    -1,   180,    -1,
15325      754,   755,   756,    -1,   771,    -1,    -1,    -1,    -1,    -1,
15326       -1,    -1,   194,   195,   754,   755,   756,   771,    -1,    -1,
15327      649,  3297,    -1,   205,   206,   754,   755,   756,    -1,    -1,
15328       -1,   771,    -1,    -1,    -1,   217,   218,   219,   220,    -1,
15329      222,    -1,   771,    -1,    -1,   227,    -1,  3323,  3324,    -1,
15330       -1,   233,    -1,    -1,    -1,   237,    -1,     9,    10,   241,
15331      242,    -1,    -1,    -1,    -1,    -1,     9,    10,    -1,    -1,
15332       -1,  3347,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15333       -1,  3357,  3358,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15334       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   281,
15335       -1,   283,   305,   285,    -1,   754,   755,   756,   290,    -1,
15336      739,    -1,  3388,  3389,    -1,    -1,    -1,    -1,   300,   301,
15337       -1,   750,   771,    -1,    -1,    -1,   308,    -1,    -1,    81,
15338       -1,    -1,   754,   755,   756,    -1,    -1,    -1,    81,    -1,
15339       -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,   771,
15340       -1,    -1,    -1,    96,    -1,   337,   338,    -1,   340,    -1,
15341       -1,  3437,    -1,    -1,    -1,   347,    -1,    -1,    -1,     9,
15342       10,    -1,   354,   125,    -1,    -1,    -1,    -1,    -1,   131,
15343       -1,    -1,   125,    -1,    -1,    -1,    -1,    -1,   131,    -1,
15344       -1,    -1,    -1,   375,    -1,    -1,    -1,    -1,    -1,    -1,
15345       -1,  3477,   754,   755,   756,    -1,   754,   755,   756,    -1,
15346     3486,  3487,    -1,    -1,  3490,    -1,   168,    -1,   400,   771,
15347        9,    10,    -1,   771,    -1,   168,    -1,    -1,    -1,    -1,
15348      412,   183,    -1,   185,    -1,    -1,    -1,    -1,  3514,  3515,
15349      183,    81,   185,    -1,    -1,    -1,    -1,    -1,    -1,   431,
15350       -1,    -1,    -1,    -1,     9,    10,    96,    -1,    -1,    -1,
15351       -1,    -1,  3538,   445,  3540,    -1,  3542,    -1,  3544,    -1,
15352       -1,    -1,    -1,    -1,    -1,    -1,   458,    -1,    -1,   461,
15353       -1,    -1,   464,    -1,    -1,   125,    -1,    -1,    -1,    -1,
15354     3566,   131,    81,    -1,    -1,    -1,    -1,   479,    -1,     7,
15355        8,    -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,
15356       -1,  3587,  3588,    -1,    -1,    -1,    -1,    -1,  3594,    27,
15357     3596,    29,  3598,    31,    -1,    33,    81,  3603,   168,    -1,
15358       -1,    -1,    -1,    41,    -1,    -1,   125,    -1,    -1,    -1,
15359     3616,    96,   131,   183,    -1,   185,    -1,    -1,    -1,    -1,
15360       -1,    -1,    -1,   305,    -1,    63,    -1,    65,    66,    -1,
15361       -1,    -1,   305,    -1,    -1,    73,    -1,    -1,    -1,    -1,
15362      125,    -1,    -1,    -1,  3650,  3651,   131,    -1,    -1,   168,
15363       -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,  3665,
15364       98,    -1,    -1,    -1,   183,    -1,   185,    -1,    -1,    -1,
15365       -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
15366     3686,   119,    -1,   168,   596,    -1,    -1,    -1,    -1,    -1,
15367        9,    10,   130,    -1,   754,   755,   756,    -1,   183,    -1,
15368      185,    -1,   754,   755,   756,   143,    -1,   145,    -1,    -1,
15369       -1,   771,   150,   625,    -1,    -1,   628,    -1,    -1,   771,
15370       -1,    -1,    -1,    -1,    -1,    -1,   638,    -1,  3734,  3735,
15371       -1,    -1,    -1,    -1,   646,   305,    -1,    -1,    -1,    -1,
15372       -1,    -1,   180,    -1,    -1,    -1,   658,    -1,    -1,    -1,
15373     3756,    -1,     9,    10,    -1,    -1,   194,   195,    -1,    -1,
15374     3766,    -1,    81,    -1,    -1,    -1,   678,   205,   206,   681,
15375       -1,    -1,  3778,    -1,  3780,    -1,    -1,    96,    -1,   217,
15376      218,   219,   220,    -1,   222,    -1,   305,    -1,    -1,   227,
15377       -1,    -1,    -1,    -1,    -1,   233,    -1,    -1,    -1,   237,
15378       -1,   713,    -1,   241,   242,    -1,   125,     9,    10,    -1,
15379       -1,   723,   131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15380      305,   754,   755,   756,    81,    -1,     9,    10,    -1,    -1,
15381       -1,    -1,    -1,    -1,    -1,    -1,   748,    -1,   771,    96,
15382       -1,    -1,    -1,   281,    -1,   283,    -1,   285,    -1,   168,
15383       -1,    -1,   290,    -1,    -1,    -1,    -1,    -1,   770,    -1,
15384        9,    10,   300,   301,   183,    -1,   185,    -1,   125,    -1,
15385      308,    -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,    81,
15386       -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15387       -1,    -1,     9,    10,    96,  3901,    -1,    -1,    81,   337,
15388      338,    -1,   340,    -1,    -1,    -1,    -1,    -1,    -1,   347,
15389       -1,   168,    -1,    96,    -1,    -1,   354,    -1,    -1,    -1,
15390       -1,  3927,    -1,   125,    -1,    -1,   183,    -1,   185,   131,
15391       -1,    -1,    81,    -1,    -1,    -1,    -1,   375,     9,    10,
15392       -1,    -1,   125,    -1,    -1,    -1,    -1,    96,   131,    -1,
15393       -1,    -1,    -1,    81,    -1,    -1,  3962,    -1,    -1,    -1,
15394       -1,    -1,   400,    -1,    81,    -1,   168,    -1,    96,    -1,
15395       -1,    -1,    -1,  3979,   412,    -1,   125,    -1,    -1,    96,
15396       -1,   183,   131,   185,    -1,   168,   305,    -1,    -1,    -1,
15397       -1,    -1,    -1,   431,    -1,    -1,    -1,   125,    -1,    -1,
15398      183,    -1,   185,   131,    -1,    -1,    -1,   445,   125,    -1,
15399       81,    -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,   168,
15400      458,    -1,    -1,   461,    -1,    96,   464,    -1,    -1,    -1,
15401       -1,    -1,    -1,    -1,   183,    -1,   185,    -1,    -1,    -1,
15402      168,   479,    -1,    -1,    -1,    -1,    -1,    -1,   305,    -1,
15403       -1,   168,    -1,    -1,   125,   183,    -1,   185,    -1,    -1,
15404      131,    -1,    -1,    -1,    -1,    -1,   183,    -1,   185,  4075,
15405     4076,    -1,   754,   755,   756,    -1,    -1,    -1,    -1,    -1,
15406       -1,   754,   755,   756,    -1,    -1,    -1,    -1,    -1,   771,
15407       -1,     7,     8,    -1,    -1,    -1,    -1,   168,   771,    -1,
15408       -1,    -1,    -1,   305,  4110,  4111,    -1,  4113,    -1,    -1,
15409       -1,    27,   183,    -1,   185,    31,  4122,    33,  4124,    -1,
15410       -1,  4127,   305,    -1,    -1,    41,    -1,    -1,    -1,    -1,
15411       -1,    -1,    -1,    -1,  4140,    -1,  4142,    -1,  4144,    -1,
15412     4146,    -1,    -1,    -1,    -1,    -1,    -1,    63,    -1,    65,
15413       66,    -1,    -1,  4159,  4160,    -1,   305,    73,   596,    -1,
15414       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15415       -1,    -1,     9,    10,    -1,     9,    10,   305,    -1,    -1,
15416     4186,    -1,    98,    -1,   754,   755,   756,   625,   305,    -1,
15417      628,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15418      638,   771,    -1,   119,    -1,    -1,    -1,    -1,   646,    -1,
15419       -1,    -1,    -1,    -1,   130,    -1,    -1,    -1,    -1,    -1,
15420      658,    -1,    -1,    -1,    -1,    -1,    -1,   143,    -1,   145,
15421       -1,     9,    10,  4239,   305,   754,   755,   756,    -1,    -1,
15422      678,    -1,    -1,   681,    81,  4251,    -1,    81,    -1,  4255,
15423       -1,    -1,   771,    -1,    -1,    -1,    -1,    -1,    -1,    96,
15424       -1,    -1,    96,    -1,   180,    -1,    -1,    -1,    -1,   754,
15425      755,   756,    -1,    -1,    -1,   713,    -1,    -1,   194,   195,
15426       -1,    -1,    -1,    -1,    -1,   723,   771,    -1,   125,   205,
15427      206,   125,    -1,    -1,   131,    -1,    -1,   131,    -1,    -1,
15428     4306,   217,   218,    81,   220,    -1,   222,     9,    10,    -1,
15429      748,   227,    -1,    -1,    -1,    -1,    -1,   233,    96,    -1,
15430       -1,   237,    -1,    -1,    -1,   241,   242,    -1,     9,    10,
15431       -1,   168,   770,    -1,   168,    -1,    -1,    -1,    -1,    -1,
15432       -1,    -1,    -1,    -1,    -1,    -1,   183,   125,   185,   183,
15433       -1,   185,    -1,   131,     9,    10,    -1,    -1,    -1,    -1,
15434       -1,    -1,    -1,    -1,    -1,   281,    -1,   283,    -1,   285,
15435       -1,    -1,    -1,    -1,   290,    -1,    -1,    -1,    -1,    81,
15436       -1,    -1,    -1,    -1,    -1,   301,    -1,    -1,    -1,    -1,
15437      168,    -1,   308,    -1,    96,    -1,    -1,    -1,    -1,    -1,
15438       81,     9,    10,    -1,    -1,   183,    -1,   185,    -1,    -1,
15439       -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,
15440       -1,   337,    -1,   125,   340,    -1,    81,    -1,    -1,   131,
15441       -1,   347,    -1,    -1,    -1,   754,   755,   756,   354,    -1,
15442       -1,    96,    -1,  4449,   125,    -1,    -1,    -1,    -1,    -1,
15443      131,    -1,   771,    -1,    -1,    -1,  4462,  4463,    -1,   375,
15444        9,    10,    -1,    -1,    -1,    -1,   168,    -1,   305,    -1,
15445      125,   305,    -1,    81,    -1,    -1,   131,    -1,    -1,    -1,
15446       -1,   183,    -1,   185,   400,    -1,    -1,   168,    96,    -1,
15447       -1,    -1,    -1,     9,    10,    -1,   412,   754,   755,   756,
15448     4506,    -1,   183,    -1,   185,    -1,    -1,    -1,    -1,    -1,
15449       -1,    -1,    -1,   168,   771,   431,    -1,   125,    -1,    -1,
15450       -1,    -1,    -1,   131,    -1,    -1,    -1,   305,   183,   445,
15451      185,    -1,    81,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15452       -1,    -1,   458,    -1,    -1,   461,    -1,    96,   464,    -1,
15453       -1,    -1,   754,   755,   756,    -1,    -1,    -1,    -1,    -1,
15454      168,  4567,    -1,   479,  4570,    81,    -1,    -1,    -1,   771,
15455       -1,   754,   755,   756,    -1,   183,   125,   185,  4584,    -1,
15456       96,    -1,   131,    -1,    -1,     9,    10,    -1,   771,    -1,
15457       -1,    -1,    -1,  4599,    -1,    -1,    -1,    -1,    -1,    -1,
15458       -1,    -1,    -1,   305,    -1,   754,   755,   756,    -1,   125,
15459       -1,    -1,    -1,    -1,    -1,   131,     9,    10,    -1,   168,
15460       -1,    -1,   771,    -1,   305,    -1,   754,   755,   756,    -1,
15461       -1,    -1,    -1,    -1,   183,    -1,   185,   754,   755,   756,
15462       -1,    -1,    -1,   771,     9,    10,    -1,     9,    10,    -1,
15463      305,  4657,   168,    -1,   771,    -1,    -1,    81,    -1,    -1,
15464       -1,    -1,    -1,    -1,    -1,     9,    10,   183,  4674,   185,
15465       -1,    -1,    96,    -1,  4680,  4681,    -1,     9,    10,    -1,
15466      596,    -1,    -1,   754,   755,   756,     9,    10,    81,    -1,
15467       -1,    -1,    -1,    -1,    -1,    -1,    -1,   305,    -1,  4705,
15468      771,   125,    -1,    96,    -1,    -1,    -1,   131,    -1,   625,
15469       -1,    -1,   628,    -1,    -1,    -1,    81,    -1,  4724,    81,
15470     4726,    -1,   638,    -1,     9,    10,    -1,    -1,     9,    10,
15471      646,    96,   125,  4739,    96,  4741,    -1,    81,   131,    -1,
15472       -1,    -1,   658,    -1,   168,    -1,    -1,    -1,    -1,    81,
15473        9,    10,    96,    -1,    -1,    -1,   305,    -1,    81,   183,
15474      125,   185,   678,   125,    96,   681,   131,    -1,    -1,   131,
15475        9,    10,    -1,    96,    -1,   168,    -1,    -1,    -1,    -1,
15476       -1,   125,    -1,     9,    10,    -1,    -1,   131,    -1,   305,
15477      183,    -1,   185,   125,    -1,    -1,    81,   713,    -1,   131,
15478       81,    -1,   125,   168,    -1,    -1,   168,   723,   131,    -1,
15479       -1,    96,    -1,    -1,    -1,    96,    -1,    -1,   183,    -1,
15480      185,   183,    81,   185,   168,    -1,    -1,    -1,    -1,     9,
15481       10,    -1,   748,    -1,    -1,    -1,   168,    96,    -1,   183,
15482      125,   185,    81,    -1,   125,   168,   131,    -1,    -1,    -1,
15483      131,   183,    -1,   185,   770,    81,    -1,    96,    -1,    -1,
15484      183,    -1,   185,     9,    10,    -1,   125,    -1,    -1,  4875,
15485       96,    -1,   131,    -1,   267,     9,    10,    11,    -1,    -1,
15486       -1,   305,    -1,   168,     9,    10,   125,   168,    -1,  4895,
15487       -1,    -1,   131,    -1,    -1,    -1,  4902,    -1,   183,   125,
15488      185,    81,   183,    -1,   185,   131,    -1,  4913,    -1,   168,
15489       -1,    -1,   305,    -1,    -1,    -1,    96,   754,   755,   756,
15490      754,   755,   756,    -1,   183,    -1,   185,    -1,    -1,   168,
15491       -1,    -1,    -1,    -1,   771,    81,    -1,   771,    -1,    -1,
15492      305,  4947,   168,   305,   183,   125,   185,    81,    -1,    -1,
15493       96,   131,    -1,    -1,    -1,   654,    81,   183,    -1,   185,
15494       -1,   305,    96,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15495       -1,    96,    -1,   305,    -1,   298,   754,   755,   756,   125,
15496       -1,    -1,   305,   682,    -1,   131,  4992,    -1,   168,    -1,
15497       -1,   125,    -1,   771,    -1,    -1,    -1,   131,    -1,    -1,
15498      125,   700,    -1,   183,    -1,   185,   131,    -1,     9,    10,
15499       -1,     9,    10,  5019,    -1,    -1,    -1,    -1,    -1,    -1,
15500      305,    -1,   168,    -1,   305,    -1,    -1,    -1,    34,    -1,
15501       -1,    -1,    -1,    -1,   168,    -1,    11,   183,    -1,   185,
15502       -1,    -1,    -1,   168,    -1,    -1,   305,    -1,    -1,   183,
15503       -1,   185,   754,   755,   756,    61,    -1,    -1,   183,    34,
15504      185,    -1,    -1,    -1,    -1,    -1,   305,  5073,    -1,   771,
15505       -1,    -1,    -1,   754,   755,   756,    -1,    -1,    -1,   305,
15506       81,    -1,    -1,    81,    -1,    -1,    61,    -1,    -1,    -1,
15507      771,    -1,    -1,    94,    -1,    96,    -1,    -1,    96,   754,
15508      755,   756,    -1,   109,   110,    -1,    -1,    -1,  5114,    -1,
15509       -1,     9,    10,    -1,    -1,    -1,   771,    -1,    -1,   818,
15510       -1,    -1,    -1,   129,   125,   305,    -1,   125,    -1,    -1,
15511      131,    -1,    -1,   131,   109,   110,    -1,    -1,    -1,    -1,
15512       -1,    -1,    -1,    -1,    -1,    -1,   754,   755,   756,    -1,
15513       -1,    -1,    -1,    -1,   129,    53,    54,    55,    56,   305,
15514       -1,    -1,    -1,   771,   170,   171,    -1,   168,    -1,   175,
15515      168,   305,    -1,   179,    -1,    -1,    -1,    -1,    -1,    -1,
15516      305,    -1,   183,    81,   185,   183,    -1,   185,   887,    -1,
15517     5196,    -1,    -1,    -1,    -1,   170,   171,   203,    96,    -1,
15518      175,    -1,    -1,    -1,   179,   754,   755,   756,   106,   107,
15519      108,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15520     5226,    -1,   771,    -1,    -1,    -1,    -1,   125,   203,    -1,
15521     5236,    -1,    -1,   131,    -1,    -1,    -1,    -1,   754,   755,
15522      756,   940,    -1,    -1,    -1,    -1,   945,    -1,    -1,    -1,
15523       -1,    -1,    -1,    -1,    -1,   771,  5262,    -1,    -1,    -1,
15524       -1,    -1,   160,   161,    -1,    -1,    -1,    -1,    -1,   267,
15525      168,    -1,    -1,    -1,   280,    -1,   975,    -1,    -1,   978,
15526       -1,    -1,    -1,    -1,    -1,   183,   985,   185,    -1,    -1,
15527       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   304,    -1,
15528       -1,    -1,    -1,    -1,   305,   280,    -1,   305,    -1,    -1,
15529       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15530       -1,    -1,    -1,    -1,  1023,    -1,    -1,   333,    -1,   304,
15531      754,   755,   756,    -1,   232,    -1,    -1,    -1,    -1,    -1,
15532       -1,  5347,    -1,    -1,    -1,  5351,    -1,   771,    -1,  5355,
15533       -1,    -1,    -1,    -1,    -1,    -1,  5362,    -1,   333,    -1,
15534       -1,   754,   755,   756,    -1,    -1,    -1,   373,    -1,    -1,
15535       -1,    -1,   378,  5379,    -1,  1074,  1075,  1076,  1077,    -1,
15536       -1,  1080,    -1,    -1,    -1,    -1,    -1,    -1,  1087,   754,
15537      755,   756,   754,   755,   756,    -1,    -1,    -1,   373,    -1,
15538       -1,    -1,    -1,    -1,    -1,    -1,   771,   305,   306,   771,
15539      754,   755,   756,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15540        9,    10,   754,   755,   756,    -1,    -1,   771,    -1,    -1,
15541       -1,   754,   755,   756,    -1,    -1,    -1,    -1,    -1,   771,
15542       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5454,    -1,
15543       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15544       -1,    -1,    -1,    -1,    -1,    -1,  5472,    -1,    -1,   754,
15545      755,   756,    -1,   754,   755,   756,  5482,    -1,    -1,   454,
15546      486,     9,    10,    -1,  5490,    -1,   771,    -1,  5494,    -1,
15547      771,    -1,    81,    -1,    -1,   754,   755,   756,    -1,    -1,
15548       -1,   399,    -1,    -1,    -1,    94,    -1,    96,    -1,    -1,
15549       -1,   486,   771,    -1,    -1,   754,   755,   756,    -1,    -1,
15550       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   754,   755,
15551      756,    -1,   771,    -1,    -1,    -1,   125,  5543,    -1,    -1,
15552     5546,    -1,   131,    -1,    -1,   771,    -1,  5553,    -1,    -1,
15553       -1,    -1,    -1,    81,    -1,    -1,    -1,    -1,    -1,    -1,
15554       -1,  1260,    -1,    -1,    -1,  1264,    94,  5573,    96,    -1,
15555       -1,   469,    -1,    -1,   754,   755,   756,    -1,    -1,   168,
15556       -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,    10,    -1,
15557       -1,   771,    -1,    -1,   183,    -1,   185,   125,    -1,    -1,
15558     5606,    -1,  5608,   131,    -1,    -1,    -1,    -1,   754,   755,
15559      756,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15560      754,   755,   756,    -1,    -1,   771,    -1,    -1,    -1,   754,
15561      755,   756,    -1,    -1,    -1,    -1,   534,  5643,   536,    -1,
15562      168,    -1,  5648,   541,    -1,    -1,   771,   653,    -1,  5655,
15563       -1,    -1,    -1,    -1,    -1,   183,    -1,   185,    -1,    81,
15564       -1,  1360,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
15565       -1,    -1,    94,    -1,    96,    -1,    -1,    -1,   653,    -1,
15566       -1,    -1,    -1,    -1,    -1,  5691,    -1,     9,    10,  5695,
15567       -1,    -1,    -1,    -1,    -1,    -1,  5702,    -1,    -1,    -1,
15568       -1,    -1,    -1,   125,    -1,    -1,    -1,    -1,   606,   131,
15569       -1,    -1,    -1,    -1,    -1,  5721,   305,    -1,    -1,  5725,
15570       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15571     1429,    -1,    -1,  1432,    81,    -1,    -1,   743,    -1,  5745,
15572       -1,  5747,  5748,    -1,    -1,    -1,   168,    -1,    -1,    96,
15573       -1,   649,    -1,   754,   755,   756,   754,   755,   756,    81,
15574       -1,   183,    -1,   185,    -1,    -1,    -1,    -1,   743,    -1,
15575       -1,    -1,    -1,    -1,    96,    -1,    -1,   305,   125,    -1,
15576       -1,    -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,    -1,
15577     5796,    -1,    -1,  5799,    -1,    -1,    -1,    -1,    -1,    -1,
15578       -1,    -1,    -1,   125,  1503,    -1,  1505,    -1,    -1,   131,
15579       -1,    -1,    -1,    -1,    -1,  5821,    -1,    -1,    -1,    -1,
15580       -1,   168,    -1,    -1,  5830,    -1,    -1,    -1,    -1,    -1,
15581       -1,    -1,  1531,    -1,    -1,    -1,   183,    -1,   185,    -1,
15582       -1,   739,    -1,  1542,  1543,    -1,   168,    -1,    -1,  1548,
15583       -1,    -1,   750,  1552,  1553,  1554,   754,   755,   756,    -1,
15584       -1,   183,    -1,   185,  1563,  1564,  1565,    -1,  5874,    -1,
15585     1569,    -1,  1571,  1572,  1573,  1574,  1575,    -1,  1577,    -1,
15586     5886,  1580,  1581,   305,    -1,    -1,    -1,    -1,    -1,  1588,
15587       -1,  1590,    -1,    -1,  1593,  1594,    -1,  1596,  1597,  1598,
15588       -1,  1600,  1601,  1602,    -1,    -1,    -1,    -1,  1607,    -1,
15589       -1,  1610,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1618,
15590     1619,    -1,  1621,  1622,  1623,    -1,    -1,  1626,  1627,  1628,
15591     1629,  1630,  1631,  1632,    -1,  1634,  1635,  1636,  1637,  1638,
15592     1639,    -1,  1641,  1642,    -1,  1644,  1645,  1646,  1647,  1648,
15593     1649,  1650,    -1,    -1,  1653,  1654,  1655,  1656,   305,  1658,
15594     1659,  1660,    -1,  1662,    -1,  1664,    -1,  1666,     9,    10,
15595       11,  1670,  1671,  1672,    -1,    -1,  1675,  1676,  1677,  1678,
15596     1679,    -1,  1681,   305,     9,    10,    11,    -1,    -1,  1688,
15597       -1,    -1,    -1,    -1,  1693,    -1,    -1,    -1,    -1,    -1,
15598       -1,  1700,    -1,    -1,    -1,  1704,  1705,  1706,  1707,    -1,
15599     1709,  1710,    -1,    -1,  1713,  1714,  1715,  1716,  1717,  1718,
15600     1719,  1720,  1721,  1722,  1723,  1724,  1725,    34,    -1,  1728,
15601       -1,    -1,    -1,    -1,  1733,    -1,    -1,    -1,    -1,    -1,
15602       81,  1740,    -1,    32,    -1,    34,    -1,    -1,    -1,    -1,
15603       -1,    -1,    -1,    -1,    61,    96,    81,    -1,    -1,    -1,
15604       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15605      417,    96,    61,    -1,  1773,    -1,    -1,    -1,    -1,  1778,
15606       -1,    -1,    -1,    -1,   125,    -1,    -1,    -1,    -1,  1788,
15607      131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15608      125,    -1,   109,   110,    -1,    -1,   131,    -1,    -1,    -1,
15609       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15610      109,   110,   129,    -1,    -1,   114,    -1,   168,    -1,    -1,
15611       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15612       -1,    -1,   183,   168,   185,    -1,    -1,    -1,    -1,    -1,
15613       -1,    -1,    -1,    -1,    -1,    -1,  1855,    -1,   183,    -1,
15614      185,    -1,    -1,   170,   171,   754,   755,   756,   175,    -1,
15615       -1,    -1,   179,    -1,    71,    -1,    -1,    -1,    -1,    -1,
15616       -1,    -1,  1881,    -1,  1883,    -1,    -1,    -1,    -1,    -1,
15617       -1,    -1,    -1,    -1,    -1,    -1,   203,    -1,    16,    17,
15618       -1,    -1,    -1,   192,    22,    23,  1905,    -1,    -1,    -1,
15619       -1,    -1,    -1,    -1,    32,   112,    -1,    -1,  1917,    -1,
15620       -1,    -1,    -1,    -1,    -1,    -1,   754,   755,   756,    -1,
15621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15622       58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15623       -1,    -1,    70,    -1,    -1,   152,    18,    -1,    -1,    -1,
15624       -1,    -1,    -1,    -1,   305,   254,   255,   256,    17,    -1,
15625       -1,    -1,    90,   280,    -1,    -1,    -1,    -1,    -1,    -1,
15626      305,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15627      279,    -1,    -1,    -1,    -1,    57,    -1,   304,    -1,    -1,
15628       -1,  2000,    -1,    -1,    -1,   123,    -1,    -1,    -1,    -1,
15629     2009,    -1,    -1,    -1,    -1,   304,    -1,    -1,    -1,    -1,
15630       -1,    -1,    -1,    -1,    86,    -1,   333,    89,   146,   147,
15631       -1,   149,   754,   755,   756,    -1,    -1,    -1,    -1,   157,
15632      158,   159,   104,   105,   333,    -1,   335,    -1,    -1,    -1,
15633       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
15634      109,   110,    -1,   352,    -1,   354,   373,    -1,    -1,    -1,
15635       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15636       -1,    -1,    -1,    -1,   373,    -1,   148,    -1,    -1,    -1,
15637       -1,   380,    -1,    -1,   212,    -1,    -1,    -1,    -1,    -1,
15638       -1,    -1,    -1,    -1,    -1,   167,   395,   754,   755,   756,
15639       -1,    -1,    -1,   175,   176,    -1,   405,    -1,    -1,   237,
15640       -1,    -1,    -1,    -1,    -1,   243,    -1,    -1,    -1,    -1,
15641       -1,   420,   754,   755,   756,    -1,    -1,    -1,    -1,    -1,
15642       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2146,    -1,    -1,
15643      268,   269,   270,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15644       -1,    -1,    -1,    -1,    -1,  2164,    -1,    -1,    -1,    -1,
15645       -1,    -1,    -1,    -1,    -1,   293,   294,    -1,    -1,   486,
15646       -1,    -1,    -1,  2182,    -1,    -1,  2185,    -1,    -1,   478,
15647       -1,    -1,    -1,    -1,  2193,  2194,    -1,    -1,    -1,   488,
15648       -1,    -1,    -1,   252,   266,    -1,    -1,    -1,    -1,    -1,
15649       -1,    -1,    -1,   275,   276,   277,    -1,    -1,    -1,    -1,
15650       -1,    -1,    -1,   341,    -1,   343,   344,    -1,    -1,    -1,
15651       -1,    -1,    -1,    -1,    -1,    -1,   525,    -1,    -1,    -1,
15652       -1,   359,    -1,    -1,    -1,    61,    -1,    -1,    -1,   538,
15653       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2257,  2258,
15654       -1,    -1,    -1,    -1,    80,    -1,    -1,    -1,    -1,    -1,
15655       -1,    -1,    -1,    -1,    -1,   472,    -1,    -1,   396,    -1,
15656      398,    -1,    -1,  2282,  2283,  2284,    -1,    -1,    -1,    -1,
15657      579,    -1,    -1,   109,   110,    -1,   585,  2296,   114,    -1,
15658       -1,    -1,    -1,   421,    -1,   502,   503,    -1,   505,   506,
15659      507,   508,   509,    -1,   511,   512,   513,   514,   515,   516,
15660      517,   518,    -1,   520,   521,   522,   444,    -1,   390,    -1,
15661       -1,    -1,    -1,    -1,    -1,    -1,   398,   455,   456,    -1,
15662       -1,    -1,    -1,    -1,    -1,    -1,   653,    -1,    -1,    -1,
15663     2349,    -1,    -1,    -1,    -1,   644,    -1,   406,    -1,    -1,
15664       -1,  2360,   651,    -1,  2363,    -1,    -1,    -1,    -1,   487,
15665       -1,   420,    -1,   422,    -1,    -1,   192,    -1,   496,    -1,
15666       -1,    -1,  2381,    -1,    -1,    -1,  2385,  2386,    -1,  2388,
15667     2389,    -1,    -1,   682,    -1,    -1,    -1,    -1,  2397,    -1,
15668     2399,    -1,    -1,    -1,   453,    -1,    -1,    -1,   697,   698,
15669       -1,    -1,    -1,   754,   755,   756,    -1,    -1,    -1,   468,
15670       -1,   710,   619,   620,   542,   543,   544,    -1,  2427,   754,
15671      755,   756,   550,   551,    -1,    -1,   743,     7,   254,   255,
15672      256,    -1,  2441,    -1,    -1,    -1,    -1,    -1,    -1,   567,
15673      568,    -1,   501,    -1,    -1,    -1,    -1,    -1,    -1,  2458,
15674       -1,    -1,  2461,   279,    -1,    -1,    -1,    -1,    -1,    -1,
15675      519,    41,    -1,   591,   592,    -1,  2475,    -1,    -1,    -1,
15676       -1,    -1,    -1,    -1,   773,    -1,    -1,    -1,   304,    -1,
15677       -1,  2490,   610,    63,    -1,    -1,    -1,    -1,    -1,    -1,
15678       -1,    -1,    -1,    73,    -1,    -1,    -1,    -1,    -1,    -1,
15679       -1,    -1,    -1,  2512,    -1,    -1,    -1,   333,    -1,   335,
15680       -1,    -1,    -1,    -1,   642,    -1,    -1,    -1,    98,    -1,
15681       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   354,    -1,
15682       -1,    -1,    -1,    -1,   114,    -1,    -1,    -1,    -1,   119,
15683       -1,   600,    -1,    -1,  2553,    -1,    -1,   373,   607,    -1,
15684       -1,    -1,    -1,    -1,   380,    -1,    -1,    -1,   617,    -1,
15685       -1,    -1,    -1,    -1,    -1,   145,    -1,    -1,    -1,   395,
15686       -1,   630,    -1,    -1,   702,    -1,    -1,   705,    -1,   405,
15687      708,    -1,    -1,    -1,    -1,    -1,  2595,   715,  2597,    -1,
15688       -1,    -1,    -1,    -1,   420,    -1,    -1,    -1,    -1,    -1,
15689       -1,    -1,   661,   731,    -1,   664,    -1,    -1,    -1,    -1,
15690       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15691       -1,   680,   750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15692       -1,    -1,    -1,   705,    -1,   215,   708,    -1,    -1,    -1,
15693       -1,    -1,    -1,    -1,    -1,   717,    -1,    -1,    -1,    -1,
15694       -1,    -1,   478,   233,    -1,    -1,    -1,    -1,    -1,    -1,
15695       -1,   241,   488,    -1,    -1,    -1,  2675,    -1,    -1,    -1,
15696       -1,    -1,    -1,  2682,    -1,    -1,  2685,  2686,  2687,    -1,
15697     2689,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15698       17,    -1,    -1,   273,    -1,    -1,    -1,    -1,    -1,   525,
15699       16,    17,    -1,   283,   284,    -1,    22,    23,    -1,    -1,
15700       -1,    -1,   538,    -1,    -1,    -1,    32,    -1,    -1,    -1,
15701       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15702       -1,    -1,    -1,    -1,    -1,  2744,    -1,    -1,    -1,    -1,
15703       -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15704       -1,    -1,    -1,   579,    70,    -1,    -1,    -1,    -1,   585,
15705       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15706       -1,    -1,    -1,    -1,    90,    -1,    -1,    -1,    -1,    -1,
15707       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
15708       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15709       -1,    -1,    -1,    -1,    -1,    -1,    -1,   123,    -1,    -1,
15710       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   644,    -1,
15711       -1,    -1,    -1,    -1,    -1,   651,    -1,    -1,    -1,    -1,
15712      146,   147,    -1,   149,    -1,    -1,    -1,    -1,    -1,    -1,
15713       -1,   157,   158,   159,    -1,    -1,   426,    -1,    -1,    -1,
15714       -1,   431,    -1,    -1,    -1,    -1,   682,    -1,    -1,    -1,
15715       -1,   177,   442,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15716       -1,   697,   698,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15717       -1,    -1,  2891,    -1,   710,  2894,    -1,    -1,    -1,    -1,
15718       -1,    -1,    -1,    -1,  2903,    -1,   212,    -1,    -1,    -1,
15719       -1,    -1,    -1,  2912,    -1,  2914,    -1,  2916,    -1,  2918,
15720     2919,  2920,  2921,  2922,  2923,    -1,  2925,    -1,    -1,    -1,
15721       -1,   237,    -1,    -1,  2933,   252,  2935,   243,    -1,  2938,
15722     2939,  2940,  2941,    -1,    -1,  2944,  2945,   264,    -1,  2948,
15723       -1,  2950,    -1,  2952,    -1,  2954,    -1,    -1,    -1,  2958,
15724       -1,   777,   268,   269,   270,    -1,   654,  2966,    -1,  2968,
15725       -1,  2970,  2971,  2972,  2973,  2974,    -1,    -1,  2977,  2978,
15726     2979,    -1,  2981,    -1,    -1,  2984,    -1,   293,   294,    -1,
15727       -1,    -1,    -1,    -1,   682,    -1,    -1,    -1,  2997,    -1,
15728       -1,    -1,    -1,  3002,    -1,    -1,  3005,    -1,  3007,  3008,
15729     3009,    -1,    -1,  3012,    -1,    -1,    -1,    -1,    -1,  3018,
15730       -1,    -1,    -1,    -1,  3023,    -1,    -1,    -1,    -1,    -1,
15731       -1,   601,    -1,  3032,    -1,   341,    -1,   343,   344,  3038,
15732       -1,  3040,    -1,    -1,  3043,    -1,    -1,    -1,    -1,    -1,
15733       -1,    -1,   622,   359,  3053,  3054,  3055,   627,    -1,    -1,
15734       -1,  3060,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15735       -1,    -1,  3071,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15736       16,    17,    -1,    -1,    -1,    -1,    22,    23,   658,   406,
15737      396,    -1,   398,    -1,    -1,    -1,    32,    -1,    -1,    -1,
15738       -1,    -1,    -1,   420,    -1,   422,  3105,    -1,    -1,    -1,
15739       -1,    -1,    -1,    -1,    -1,   421,    -1,    -1,    -1,    -1,
15740      690,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15741      818,    -1,    -1,    -1,    70,  3134,   453,    -1,   444,    -1,
15742       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   455,
15743      456,   468,    -1,    -1,    90,    -1,    -1,    -1,    -1,    -1,
15744       -1,    -1,    -1,    -1,    -1,    -1,  3165,    -1,    -1,    -1,
15745       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15746       -1,   487,    -1,    -1,   501,    -1,  3185,   123,    -1,    -1,
15747      496,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   887,
15748       -1,    -1,   519,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15749      146,   147,    -1,   149,    -1,    -1,    -1,    -1,    -1,    -1,
15750       -1,   157,   158,   159,    -1,    -1,    -1,    -1,    -1,    -1,
15751       -1,    -1,    -1,    -1,    -1,    -1,   542,   543,   544,    -1,
15752       -1,   177,    -1,    -1,   550,   551,    -1,    -1,    -1,    -1,
15753     3249,    -1,    -1,    -1,    -1,    -1,    -1,   945,    -1,    -1,
15754       -1,   567,   568,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15755       -1,  3270,    -1,    -1,    -1,    -1,   212,    -1,  3277,    -1,
15756       -1,    -1,    -1,   600,    -1,   591,   592,   975,    -1,    -1,
15757      607,    -1,    -1,    -1,    -1,    -1,    -1,   985,    -1,    -1,
15758      617,   237,    -1,    -1,   610,    -1,    -1,   243,    -1,    -1,
15759       -1,    -1,    -1,   630,    -1,    -1,    -1,    -1,    -1,    -1,
15760       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15761       -1,    -1,   268,   269,   270,    -1,   642,    -1,    -1,    -1,
15762       -1,    -1,    -1,    -1,   661,    -1,    -1,   664,    -1,    -1,
15763       -1,    -1,    -1,    -1,    -1,    -1,    -1,   293,   294,  3358,
15764       -1,    -1,    -1,   680,    -1,    -1,    -1,    -1,    -1,    -1,
15765       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   696,
15766       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1077,
15767       -1,    -1,    -1,    -1,    -1,    -1,   702,    -1,    -1,   705,
15768       -1,    -1,   708,    -1,    -1,   341,    -1,   343,   344,   715,
15769       -1,    -1,  3411,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15770       -1,    -1,    -1,   359,    -1,   731,    -1,    -1,    -1,    -1,
15771       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15772       -1,    -1,    -1,    -1,   750,    -1,    -1,    -1,    -1,    -1,
15773       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15774      396,    -1,   398,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15775       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3477,    -1,
15776       -1,    -1,    -1,    -1,    -1,   421,    -1,    -1,  3487,    -1,
15777       -1,  3490,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15778       -1,    -1,    -1,    -1,    -1,    32,    -1,    34,   444,    -1,
15779       -1,    -1,    -1,    -1,    -1,  3514,  3515,    -1,    -1,   455,
15780      456,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15781       -1,    -1,    -1,    -1,    61,    -1,    -1,    -1,    -1,  3538,
15782       -1,  3540,    -1,  3542,    -1,  3544,    -1,    -1,    -1,    -1,
15783       -1,   487,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15784      496,    -1,    -1,    -1,    -1,    -1,    -1,  3566,    -1,    -1,
15785       -1,    -1,  1260,  3572,    -1,    -1,    -1,    -1,    -1,    -1,
15786       -1,    -1,   109,   110,    -1,    -1,    -1,   114,  3587,  3588,
15787       -1,    -1,    -1,    -1,    -1,  3594,    -1,  3596,    -1,  3598,
15788       -1,    -1,    -1,    -1,  3603,    -1,   542,   543,   544,    -1,
15789       -1,    -1,    -1,    -1,   550,   551,    -1,  3616,    -1,    -1,
15790       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15791       -1,   567,   568,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15792       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15793     3649,  3650,  3651,    -1,    -1,   591,   592,    -1,    -1,    -1,
15794       -1,    -1,    -1,    -1,    -1,   192,  3665,    -1,    -1,    -1,
15795       -1,    -1,    -1,    -1,   610,    -1,    -1,    -1,    -1,    -1,
15796       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3686,    -1,    -1,
15797       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15798       -1,    -1,    -1,    -1,    -1,  3704,    -1,    -1,    -1,    -1,
15799       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15800       -1,    -1,    -1,    -1,    -1,    -1,    -1,   254,   255,   256,
15801       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15802       -1,  1429,    -1,    -1,  1432,    -1,    -1,    -1,    -1,    -1,
15803       -1,    -1,   279,    -1,    -1,    -1,    -1,  3756,    -1,    -1,
15804       -1,    -1,    -1,    -1,    -1,    -1,   702,  3766,    -1,   705,
15805       -1,    -1,   708,    -1,    -1,    -1,    -1,   304,    -1,  3778,
15806       -1,  3780,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15807       -1,    -1,    -1,    -1,    -1,   731,    -1,    -1,    -1,    -1,
15808       -1,    -1,    -1,    -1,    -1,    -1,   333,    -1,   335,    -1,
15809       -1,    -1,    -1,    -1,   750,  1503,    -1,  1505,    -1,    -1,
15810       -1,    -1,    -1,    -1,    -1,   352,    -1,   354,    -1,    -1,
15811       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15812       -1,    -1,    -1,  1531,    -1,    -1,   373,    -1,    -1,    -1,
15813       -1,    -1,    -1,   380,    -1,    -1,    -1,    -1,    -1,    -1,
15814     1548,    -1,    -1,    -1,  1552,    -1,  1554,    -1,   395,    -1,
15815       -1,    -1,    -1,    -1,    -1,  1563,  1564,    -1,   405,    -1,
15816       -1,  1569,    -1,  1571,  1572,  1573,  1574,  1575,    -1,  1577,
15817       -1,    -1,    -1,   420,    -1,    -1,    -1,    -1,    -1,    -1,
15818     1588,    -1,  1590,    -1,    -1,  1593,  1594,    -1,  1596,  1597,
15819       -1,    -1,  1600,  1601,  1602,    -1,    -1,    -1,    -1,  1607,
15820       -1,    -1,  1610,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15821     1618,  1619,    -1,  1621,    -1,  1623,    -1,    -1,  1626,  1627,
15822     1628,  1629,  1630,  1631,  1632,    -1,  1634,  1635,  1636,  1637,
15823     1638,   478,    -1,  1641,  1642,    -1,    -1,  1645,  1646,  1647,
15824       -1,   488,    -1,    -1,    -1,  1653,  1654,  1655,    -1,    -1,
15825     1658,  1659,  1660,    -1,  1662,     6,  1664,    -1,  1666,    32,
15826     3979,    34,  1670,  1671,  1672,    -1,    17,  1675,  1676,  1677,
15827     1678,  1679,    -1,  1681,    -1,    -1,    -1,    -1,   525,    -1,
15828     1688,    32,    -1,    -1,    -1,    -1,    -1,    -1,    61,    40,
15829       41,   538,  1700,    -1,    -1,    -1,  1704,  1705,    -1,    50,
15830       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15831       -1,    -1,    -1,    -1,    65,    66,    -1,    -1,    -1,    -1,
15832       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15833       -1,    -1,   579,    -1,    -1,    -1,   109,   110,   585,    -1,
15834       -1,   114,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15835       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,
15836       -1,    -1,   135,   114,   137,  1773,   139,    -1,    -1,    -1,
15837     1778,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
15838     1788,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15839       -1,  4110,  4111,    -1,  4113,    -1,    -1,   644,    -1,    -1,
15840       -1,    -1,    -1,  4122,   651,  4124,    -1,    -1,  4127,    -1,
15841       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   192,
15842       -1,  4140,    -1,  4142,    -1,  4144,    -1,  4146,    -1,    -1,
15843       -1,    -1,    -1,    -1,    -1,   682,    -1,    -1,    -1,    -1,
15844     4159,  4160,    -1,    -1,    -1,    -1,    -1,  1855,    -1,    -1,
15845      697,   698,    -1,   204,    -1,    -1,    -1,    -1,    -1,    -1,
15846       -1,    -1,    -1,   710,    -1,    -1,    -1,  4186,    -1,    -1,
15847       -1,    -1,    -1,  1881,    -1,  1883,    -1,    -1,    -1,    -1,
15848       -1,   254,   255,   256,    -1,    -1,    -1,    -1,    -1,    -1,
15849       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15850       -1,    -1,    -1,    -1,    -1,    -1,   279,    -1,    -1,  1917,
15851       -1,    -1,    -1,   264,    -1,    -1,    -1,    -1,    -1,    -1,
15852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15853       -1,   304,  4251,    -1,    -1,    -1,  4255,    -1,    -1,    -1,
15854       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15855       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15856      333,    -1,   335,    -1,   315,    -1,    -1,    -1,    -1,    -1,
15857       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   352,
15858      331,   354,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   340,
15859       -1,    -1,  2000,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15860      373,   352,    -1,    -1,    -1,    -1,    -1,   380,    -1,    -1,
15861       -1,    -1,   363,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15862       -1,    -1,   395,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15863       -1,    -1,   405,    -1,    -1,    -1,   387,    -1,    -1,    -1,
15864       -1,    -1,    -1,    -1,    -1,    -1,    -1,   420,    -1,    -1,
15865       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15866       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   419,   420,
15867       -1,    -1,   423,    -1,   425,    -1,    -1,    -1,    -1,    -1,
15868       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15869       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15870      451,   452,    -1,    -1,    -1,   478,    -1,    -1,   459,   460,
15871       -1,    -1,    -1,    -1,    -1,   488,    -1,    -1,    -1,    -1,
15872       -1,    -1,    -1,    -1,    -1,   476,    -1,    -1,     5,    -1,
15873        7,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2146,    -1,
15874       -1,    -1,    -1,  4462,  4463,    -1,    -1,   498,    -1,    -1,
15875       -1,    61,   525,    -1,    31,    -1,  2164,    -1,    -1,    -1,
15876       -1,    -1,    39,    -1,    -1,   538,    -1,    -1,   519,    -1,
15877       -1,    -1,    -1,    -1,  2182,    -1,    -1,  2185,    -1,    -1,
15878       -1,    -1,    -1,    -1,    61,  2193,  2194,    -1,    -1,    -1,
15879       -1,    -1,    -1,    -1,    -1,    -1,    73,    -1,    -1,   109,
15880      110,    -1,    -1,    -1,   114,    -1,   579,    -1,    -1,    -1,
15881       -1,    -1,   585,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15882       -1,    -1,    -1,    -1,   575,    -1,    -1,    -1,    -1,    -1,
15883       -1,    -1,   109,   110,    -1,    -1,    -1,   114,   589,    -1,
15884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   600,
15885       -1,  4570,   603,   604,    -1,    -1,    -1,    -1,    -1,    -1,
15886       -1,    -1,    -1,    -1,    -1,    -1,    -1,   618,   145,    -1,
15887       -1,   644,    -1,    -1,  2282,  2283,  2284,    -1,   651,    -1,
15888     4599,    -1,   192,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15889       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15890       -1,    -1,    -1,   654,    -1,    -1,    -1,   184,    -1,   682,
15891      661,    -1,    -1,    -1,    -1,   192,    -1,    -1,    -1,    -1,
15892       -1,    -1,    -1,    -1,   697,   698,    -1,    -1,    -1,   680,
15893       -1,   682,    -1,    -1,    -1,    -1,    -1,   710,  4657,    -1,
15894       -1,   218,    -1,    -1,   254,   255,   256,    -1,    -1,    -1,
15895       -1,    -1,    -1,    -1,    -1,  4674,    -1,    -1,    -1,    -1,
15896     4679,  4680,  4681,    -1,    -1,    -1,    -1,    -1,    -1,   279,
15897       -1,    -1,    -1,  2381,    -1,    -1,    -1,   254,   255,   256,
15898       -1,   732,    -1,    -1,    -1,    -1,  4705,   738,    -1,  2397,
15899       -1,  2399,    -1,    -1,   304,    -1,    -1,    -1,    -1,    -1,
15900       -1,    -1,   279,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15901       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2427,
15902     4739,    -1,  4741,   333,    -1,   335,    -1,   304,    -1,    -1,
15903       -1,    -1,    -1,  2441,    -1,    -1,    -1,    -1,    -1,    -1,
15904       -1,    -1,    -1,    -1,   354,    -1,    -1,    -1,   325,    -1,
15905     2458,    -1,    -1,  2461,    -1,    -1,   333,    -1,   335,    -1,
15906       -1,    -1,    -1,   373,    -1,    -1,    -1,    -1,    -1,    -1,
15907      380,    -1,    -1,    -1,    -1,    -1,    -1,   354,    -1,    -1,
15908       -1,    -1,  2490,    -1,    -1,   395,    -1,    -1,    -1,    -1,
15909       -1,    -1,    -1,    -1,    -1,   405,   373,    -1,    -1,    -1,
15910       -1,    -1,    -1,   380,  2512,    -1,    -1,    -1,    -1,    -1,
15911      420,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   395,    -1,
15912       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   405,    -1,
15913       -1,    -1,   409,    -1,    -1,    -1,    -1,    -1,    -1,   416,
15914       -1,    -1,    -1,   420,    -1,  2553,    -1,    -1,    -1,    -1,
15915       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15916       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   478,    -1,
15917       -1,   448,    -1,    -1,    -1,    -1,    -1,    -1,   488,    -1,
15918       -1,    -1,    -1,  4902,    -1,    -1,    -1,    -1,    -1,    -1,
15919       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15920       -1,   478,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15921       -1,   488,    -1,    -1,    -1,   525,    -1,    -1,    -1,    -1,
15922       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   538,    -1,
15923       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15924       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   525,    -1,
15925       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15926       -1,   538,    -1,   540,    -1,    -1,    -1,  2675,    -1,   579,
15927     4989,    -1,    -1,  4992,    -1,   585,    -1,    -1,    -1,    -1,
15928       -1,  2689,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15929       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15930     5019,    -1,   579,    -1,    -1,    -1,    -1,    -1,   585,    -1,
15931       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15932       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15933       -1,    -1,    -1,    -1,   644,    -1,  2744,    -1,    -1,    -1,
15934       -1,   651,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15935       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15936       -1,    -1,    -1,    -1,    -1,    -1,    -1,   644,    -1,    -1,
15937       -1,    -1,   682,    -1,   651,    -1,    -1,    -1,    -1,    -1,
15938       -1,    -1,    -1,    -1,    -1,    -1,    -1,   697,   698,    -1,
15939       -1,    -1,    -1,    -1,    -1,  5114,    -1,    -1,    -1,    -1,
15940      710,    -1,    -1,    -1,    -1,   682,    -1,    -1,    -1,    -1,
15941       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15942      697,   698,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15943       -1,    -1,    -1,   710,    -1,    -1,    -1,    -1,    -1,    -1,
15944       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15945       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15946       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15947       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15948       -1,    -1,    -1,  2891,    -1,    -1,  2894,    -1,    -1,    -1,
15949       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15950       -1,    -1,    -1,    -1,  2912,    -1,    -1,    -1,  2916,    -1,
15951     2918,  2919,  2920,  2921,  2922,  2923,    -1,  5236,    -1,    -1,
15952       -1,    -1,    -1,    -1,    -1,  2933,    -1,  2935,    -1,    -1,
15953     2938,  2939,  2940,  2941,    -1,    -1,  2944,  2945,    -1,    -1,
15954     2948,    -1,  2950,  5262,  2952,    -1,  2954,    -1,    -1,    -1,
15955     2958,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2966,    -1,
15956     2968,    -1,  2970,    -1,  2972,  2973,  2974,    -1,    -1,  2977,
15957     2978,  2979,    -1,  2981,    -1,    -1,  2984,    -1,    -1,    -1,
15958       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2997,
15959       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3005,    -1,  3007,
15960     3008,  3009,    -1,    -1,  3012,    -1,    -1,    -1,    -1,    -1,
15961     3018,    -1,    -1,    -1,    -1,  3023,    -1,    -1,    -1,    -1,
15962       -1,    -1,    -1,    -1,  3032,    -1,    -1,    -1,    -1,    -1,
15963       -1,    -1,    -1,    -1,    -1,  3043,    -1,    -1,    -1,    -1,
15964       -1,    -1,    -1,  5362,    -1,    -1,    -1,  3055,    -1,    -1,
15965       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15966       -1,    -1,    -1,  5382,  5383,    -1,    -1,    -1,    -1,    -1,
15967       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15968       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15969       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3105,    -1,    -1,
15970       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15971       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15972       -1,    -1,    -1,    -1,    -1,    -1,  3134,    -1,    -1,    -1,
15973       -1,    -1,    -1,    -1,    -1,  5454,    -1,    -1,    -1,    -1,
15974       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15975       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3165,    -1,    -1,
15976       -1,    -1,    -1,  5482,    -1,    -1,    -1,    -1,    -1,    -1,
15977       -1,    -1,    -1,    -1,    -1,  5494,    -1,  3185,    -1,    -1,
15978       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15979       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15980       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15981       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15982       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15983       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15984       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15985       -1,    -1,    -1,    -1,  5573,    -1,    -1,    -1,    -1,    -1,
15986       -1,    -1,  3270,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15987       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15988       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5608,
15989       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15990       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15991       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15992       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15993       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15994       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15995     3358,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15996       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15997       -1,    -1,    -1,    -1,    -1,    -1,  5695,    -1,    -1,    -1,
15998       -1,    -1,    -1,  5702,    -1,    -1,    -1,    -1,    -1,    -1,
15999       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16000       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16001       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16002       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16004       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16005       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16006       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3477,
16007       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3487,
16008       -1,    -1,  3490,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16010       -1,    -1,  5821,    -1,    -1,    -1,  3514,  3515,    -1,    -1,
16011       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16012       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16013     3538,    -1,  3540,    -1,  3542,    -1,  3544,    -1,    -1,    -1,
16014       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16015       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3566,    -1,
16016       -1,    -1,    -1,    -1,    -1,    -1,    -1,  5886,    -1,    -1,
16017       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3587,
16018     3588,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16019       -1,    -1,    -1,    -1,    -1,  3603,    -1,    -1,    -1,    -1,
16020       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3616,    -1,
16021       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16022       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16023       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16024       -1,    -1,  3650,  3651,    -1,    -1,    -1,    -1,    -1,    -1,
16025       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3665,    -1,    -1,
16026       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16027       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3686,    -1,
16028       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16029       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16030       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16031       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16032       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16033       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16034       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3756,    -1,
16035       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3766,    -1,
16036       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16037     3778,    -1,  3780,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16038       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16039       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16040       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16041       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16042       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16043       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16044       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16045       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16046       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16047       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16048       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16049       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16050       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16051       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16052       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16053       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16054       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16055       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16056       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16057       -1,  3979,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16058       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16060       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16061       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16062       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16063       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16065       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16066       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16068       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16069       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16070       -1,    -1,  4110,  4111,    -1,    -1,    -1,    -1,    -1,    -1,
16071       -1,    -1,    -1,    -1,  4122,    -1,  4124,    -1,    -1,  4127,
16072       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16073       -1,    -1,  4140,    -1,  4142,    -1,  4144,    -1,  4146,    -1,
16074       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16075       -1,  4159,  4160,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16076       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16077       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16078       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16079       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16080       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16081       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16082       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16083       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16084       -1,    -1,    -1,  4251,    -1,    -1,    -1,  4255,    -1,    -1,
16085       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16086       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16087       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16088       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16089       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16090       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16091       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16092       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16093       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16094       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16095       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16096       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16097       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16098       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16100       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16102       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16103       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16104       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16105       -1,    -1,    -1,    -1,  4462,  4463,    -1,    -1,    -1,    -1,
16106       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16107       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16108       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16109       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16110       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16111       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16112       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16113       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16114       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16115       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16116       -1,    -1,  4570,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16117       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16118       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16119       -1,  4599,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16120       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16121       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16122       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16123       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16124       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4657,
16125       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16126       -1,    -1,    -1,    -1,    -1,    -1,  4674,    -1,    -1,    -1,
16127       -1,    -1,  4680,  4681,    -1,    -1,    -1,    -1,    -1,    -1,
16128       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16129       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4705,    -1,    -1,
16130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16131       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16132       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16133       -1,  4739,    -1,  4741,    -1,    -1,    -1,    -1,    -1,    -1,
16134       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16135       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16136       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16137       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16138       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16139       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16140       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16141       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16142       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16143       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16144       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16145       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16146       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16147       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16148       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16149       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16150       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16151       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16152       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16153       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16154       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16155       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16156       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16157       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16158       -1,    -1,    -1,    -1,  4992,    -1,    -1,    -1,    -1,    -1,
16159       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16160       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16161       -1,  5019,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16162       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16163       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16164       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16165       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16166       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16167       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16168       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16169       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16170       -1,    -1,    -1,    -1,    -1,    -1,  5114,    -1,    -1,    -1,
16171       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16172       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16173       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16174       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16175       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16176       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16177       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16178       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16179       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16180       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16181       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16182       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5236,    -1,
16183       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16184       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16185       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16186       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16187       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16188       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16190       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16191       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16192       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16196       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16198       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16199       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16200       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16201       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16202       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16203       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16204       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16205       -1,     6,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16206       -1,    -1,    17,    18,    19,    20,    21,    -1,    -1,    -1,
16207       -1,    -1,    -1,    -1,    29,    30,    -1,    32,    -1,    -1,
16208       -1,    -1,    -1,    -1,    39,    40,  5494,    -1,    43,    44,
16209       45,    46,    -1,    48,    49,    -1,    51,    52,    -1,    -1,
16210       -1,    -1,    57,    -1,    -1,    -1,    61,    -1,    -1,    64,
16211       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16212       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,
16213       85,    86,    -1,    88,    89,    -1,    -1,    -1,    -1,    -1,
16214       -1,    -1,    -1,    -1,    -1,   100,   101,   102,    -1,   104,
16215      105,    -1,    -1,    -1,   109,   110,   111,    -1,    -1,    -1,
16216       -1,    -1,    -1,    -1,   119,  5573,   121,    -1,    -1,    -1,
16217       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,
16218       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16219       -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,   153,   154,
16220     5608,   156,    -1,    -1,    -1,    -1,    -1,   162,    -1,   164,
16221       -1,    -1,   167,    -1,    -1,   170,   171,   172,    -1,   174,
16222      175,   176,    -1,   178,   179,    -1,    -1,    -1,    -1,    -1,
16223       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,
16224       -1,    -1,   197,   198,   199,    -1,   201,    -1,    -1,    -1,
16225       -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,
16226       -1,    -1,    -1,    -1,   219,   220,    -1,    -1,    -1,    -1,
16227       -1,    -1,    -1,   228,    -1,    -1,   231,    -1,    -1,    -1,
16228       -1,    -1,    -1,    -1,    -1,    -1,    -1,  5695,    -1,    -1,
16229       -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,
16230       -1,    -1,   257,   258,    -1,   260,   261,   262,    -1,    -1,
16231       -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,
16232      275,   276,   277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16233       -1,    -1,   287,   288,   289,    -1,    -1,    -1,    -1,    -1,
16234      295,    -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16235       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
16236      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
16237      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
16238      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
16239      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
16240      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
16241      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
16242      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
16243      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
16244      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
16245      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
16246      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
16247      425,   426,   427,   428,   429,   430,   431,   432,  5886,    -1,
16248      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
16249      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
16250      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
16251       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
16252      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
16253      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
16254      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
16255      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
16256      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
16257      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
16258      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
16259      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
16260      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
16261      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
16262      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
16263      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
16264      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
16265      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
16266      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
16267      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
16268      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
16269      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
16270      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
16271      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
16272      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
16273      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
16274      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
16275      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
16276      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
16277      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
16278      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
16279      745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,    -1,
16280       -1,    -1,    -1,    -1,   759,   760,    -1,    -1,    -1,    -1,
16281      765,    -1,    -1,    -1,     6,   770,    -1,    -1,    -1,   774,
16282      775,    -1,    -1,   778,   779,    17,    18,    19,    20,    21,
16283       -1,    -1,    -1,    -1,    -1,    -1,    -1,    29,    30,    -1,
16284       32,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
16285       -1,    43,    44,    45,    46,    -1,    48,    49,    -1,    51,
16286       52,    -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,
16287       -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16288       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16289       -1,    -1,    84,    85,    86,    -1,    88,    89,    -1,    -1,
16290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,
16291      102,    -1,   104,   105,    -1,    -1,    -1,   109,   110,   111,
16292       -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,   121,
16293       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16294       -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16295       -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,
16296       -1,   153,   154,    -1,   156,    -1,    -1,    -1,    -1,    -1,
16297      162,    -1,   164,    -1,    -1,   167,    -1,    -1,   170,    -1,
16298      172,    -1,   174,   175,   176,    -1,   178,    -1,    -1,    -1,
16299       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16300       -1,   193,    -1,    -1,    -1,   197,   198,   199,    -1,   201,
16301       -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,
16302       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,   220,    -1,
16303       -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,   231,
16304       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16305       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,
16306       -1,    -1,    -1,    -1,    -1,   257,   258,    -1,   260,   261,
16307      262,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,
16308       -1,    -1,   274,   275,   276,   277,    -1,    -1,    -1,    -1,
16309       -1,    -1,    -1,    -1,    -1,   287,   288,   289,    -1,    -1,
16310       -1,    -1,    -1,   295,    -1,   297,    -1,    -1,    -1,    -1,
16311       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
16312      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
16313      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
16314      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
16315      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
16316      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
16317      362,   363,   364,   365,   366,   367,   368,   369,   370,    -1,
16318      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
16319      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
16320      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
16321      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
16322      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
16323      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
16324      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
16325      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
16326      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
16327      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
16328      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
16329      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
16330      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
16331      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
16332      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
16333      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
16334      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
16335      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
16336      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
16337      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
16338      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
16339      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
16340      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
16341      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
16342      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
16343      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
16344      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
16345      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
16346      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
16347      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
16348      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
16349      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
16350      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
16351      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
16352      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
16353      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
16354      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
16355      742,   743,   744,   745,    -1,   747,   748,   749,   750,    -1,
16356       -1,    -1,    17,    18,    19,    20,    21,   759,   760,    -1,
16357       -1,    -1,    -1,   765,    29,    30,    -1,    32,   770,    -1,
16358       -1,    -1,   774,   775,    39,    40,   778,   779,    43,    44,
16359       45,    46,    -1,    48,    49,    -1,    51,    52,    -1,    -1,
16360       -1,    -1,    57,    -1,    -1,    -1,    61,    -1,    -1,    64,
16361       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16362       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,
16363       85,    86,    -1,    88,    89,    -1,    -1,    -1,    -1,    -1,
16364       -1,    -1,    -1,    -1,    -1,   100,   101,   102,    -1,   104,
16365      105,    -1,    -1,    -1,   109,   110,   111,    -1,    -1,    -1,
16366       -1,    -1,    -1,    -1,   119,    -1,   121,    -1,    -1,    -1,
16367       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,
16368       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16369       -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,   153,   154,
16370       -1,   156,    -1,    -1,    -1,    -1,    -1,   162,    -1,   164,
16371       -1,    -1,   167,    -1,    -1,   170,   171,   172,    -1,   174,
16372      175,   176,    -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,
16373       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,
16374       -1,    -1,   197,   198,   199,    -1,   201,    -1,    -1,    -1,
16375       -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,
16376       -1,    -1,    -1,    -1,   219,   220,    -1,    -1,    -1,    -1,
16377       -1,    -1,    -1,   228,    -1,    -1,   231,    -1,   233,    -1,
16378       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16379       -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,
16380       -1,    -1,   257,   258,    -1,   260,   261,   262,    -1,    -1,
16381       -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,
16382      275,   276,   277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16383       -1,    -1,   287,   288,   289,   290,    -1,    -1,    -1,    -1,
16384      295,    -1,   297,    -1,    -1,    -1,   301,    -1,    -1,    -1,
16385       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
16386      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
16387      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
16388      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
16389      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
16390      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
16391      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
16392      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
16393      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
16394      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
16395      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
16396      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
16397      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
16398      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
16399      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
16400      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
16401       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
16402      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
16403      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
16404      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
16405      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
16406      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
16407      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
16408      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
16409      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
16410      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
16411      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
16412      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
16413      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
16414      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
16415      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
16416      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
16417      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
16418      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
16419      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
16420      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
16421      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
16422      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
16423      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
16424      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
16425      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
16426      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
16427      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
16428      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
16429      745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,    17,
16430       18,    19,    20,    21,   759,   760,    -1,    25,    -1,    -1,
16431      765,    29,    30,    -1,    32,   770,    -1,    -1,    -1,   774,
16432      775,    39,    40,   778,   779,    43,    44,    45,    46,    -1,
16433       48,    49,    -1,    51,    52,    -1,    -1,    -1,    -1,    57,
16434       -1,    -1,    -1,    61,    -1,    -1,    64,    -1,    -1,    -1,
16435       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16436       -1,    -1,    -1,    -1,    -1,    -1,    84,    85,    86,    -1,
16437       88,    89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16438       -1,    -1,   100,   101,   102,    -1,   104,   105,    -1,    -1,
16439       -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,    -1,
16440       -1,   119,    -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,
16441       -1,    -1,    -1,    -1,   132,    -1,   134,    -1,    -1,    -1,
16442       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16443      148,    -1,    -1,    -1,    -1,   153,   154,    -1,   156,    -1,
16444       -1,    -1,    -1,    -1,   162,    -1,   164,    -1,    -1,   167,
16445       -1,    -1,   170,   171,   172,    -1,   174,   175,   176,    -1,
16446      178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16447       -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,   197,
16448      198,   199,    -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,
16449      208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16450       -1,   219,   220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16451      228,    -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,
16452       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16453       -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,   257,
16454      258,    -1,   260,   261,   262,    -1,    -1,    -1,   266,    -1,
16455       -1,    -1,    -1,    -1,   272,    -1,   274,   275,   276,   277,
16456       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,
16457      288,   289,    -1,    -1,    -1,    -1,    -1,   295,    -1,   297,
16458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16459       -1,   309,   310,   311,   312,   313,   314,   315,   316,   317,
16460      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
16461      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
16462      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
16463      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
16464      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
16465      368,   369,   370,    -1,   372,   373,   374,   375,   376,   377,
16466      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
16467      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
16468      398,   399,   400,   401,   402,   403,    -1,   405,   406,   407,
16469      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
16470      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
16471      428,   429,   430,   431,   432,    -1,    -1,   435,   436,   437,
16472      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
16473       -1,   449,   450,   451,   452,   453,   454,   455,   456,   457,
16474      458,   459,   460,   461,   462,   463,   464,    -1,   466,   467,
16475      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
16476      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
16477      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
16478      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
16479      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
16480      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
16481      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
16482      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
16483      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
16484      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
16485      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
16486      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
16487      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
16488      598,   599,   600,   601,   602,   603,   604,   605,   606,   607,
16489      608,   609,   610,   611,   612,   613,   614,   615,   616,   617,
16490      618,   619,   620,   621,   622,   623,   624,   625,   626,   627,
16491      628,   629,   630,   631,   632,   633,   634,   635,   636,   637,
16492      638,   639,   640,   641,   642,   643,   644,   645,   646,   647,
16493      648,   649,   650,   651,   652,   653,   654,   655,   656,   657,
16494      658,   659,   660,   661,   662,   663,   664,   665,   666,   667,
16495      668,   669,   670,   671,   672,    -1,   674,   675,   676,   677,
16496      678,   679,   680,   681,   682,   683,   684,   685,   686,   687,
16497      688,   689,   690,   691,   692,   693,   694,   695,   696,   697,
16498      698,   699,   700,   701,   702,   703,   704,   705,   706,   707,
16499      708,   709,   710,   711,   712,   713,   714,   715,   716,   717,
16500      718,   719,   720,   721,   722,   723,   724,   725,   726,   727,
16501      728,   729,   730,   731,   732,   733,   734,   735,   736,   737,
16502      738,   739,   740,   741,   742,   743,   744,   745,    -1,   747,
16503      748,   749,   750,    -1,    -1,    -1,    17,    18,    19,    20,
16504       21,   759,   760,    -1,    -1,    -1,    -1,   765,    29,    30,
16505       -1,    32,   770,    -1,    -1,    -1,   774,   775,    39,    40,
16506      778,   779,    43,    44,    45,    46,    -1,    48,    49,    -1,
16507       51,    52,    -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,
16508       61,    -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,
16509       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16510       -1,    -1,    -1,    84,    85,    86,    -1,    88,    89,    -1,
16511       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,
16512      101,   102,    -1,   104,   105,    -1,    -1,    -1,   109,   110,
16513      111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
16514      121,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16515       -1,    -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,
16516       -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,
16517       -1,    -1,   153,   154,    -1,   156,    -1,    -1,    -1,    -1,
16518       -1,   162,    -1,   164,    -1,    -1,   167,    -1,    -1,   170,
16519      171,   172,    -1,   174,   175,   176,    -1,   178,    -1,    -1,
16520       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16521       -1,    -1,   193,    -1,    -1,    -1,   197,   198,   199,    -1,
16522      201,    -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,
16523       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,   220,
16524       -1,    -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,
16525      231,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16526       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16527      251,    -1,    -1,    -1,    -1,    -1,   257,   258,    -1,   260,
16528      261,   262,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,
16529       -1,    -1,    -1,   274,   275,   276,   277,    -1,    -1,    -1,
16530       -1,    -1,    -1,    -1,    -1,    -1,   287,   288,   289,    -1,
16531       -1,    -1,    -1,    -1,   295,    -1,   297,   298,    -1,    -1,
16532       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
16533      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
16534      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
16535      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
16536      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
16537      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
16538      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
16539       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
16540      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
16541      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
16542      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
16543      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
16544      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
16545      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
16546      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
16547      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
16548      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
16549      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
16550      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
16551      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
16552      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
16553      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
16554      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
16555      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
16556      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
16557      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
16558      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
16559      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
16560      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
16561      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
16562      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
16563      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
16564      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
16565      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
16566      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
16567      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
16568      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
16569      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
16570      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
16571      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
16572      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
16573      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
16574      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
16575      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
16576      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
16577       -1,    -1,    -1,    17,    18,    19,    20,    21,   759,   760,
16578       -1,    -1,    -1,    -1,   765,    29,    30,    -1,    32,   770,
16579       -1,    -1,    -1,   774,   775,    39,    40,   778,   779,    43,
16580       44,    45,    46,    -1,    48,    49,    -1,    51,    52,    -1,
16581       -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    -1,    -1,
16582       64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16583       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16584       84,    85,    86,    -1,    88,    89,    -1,    -1,    -1,    -1,
16585       -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,    -1,
16586      104,   105,    -1,    -1,    -1,   109,   110,   111,    -1,   113,
16587       -1,    -1,    -1,    -1,    -1,   119,    -1,   121,    -1,    -1,
16588       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16589      134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16590       -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,   153,
16591      154,    -1,   156,    -1,    -1,    -1,    -1,    -1,   162,    -1,
16592      164,    -1,    -1,   167,    -1,    -1,   170,   171,   172,    -1,
16593      174,   175,   176,    -1,   178,    -1,    -1,    -1,    -1,    -1,
16594       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,
16595       -1,    -1,    -1,   197,   198,   199,    -1,   201,    -1,    -1,
16596       -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,
16597       -1,    -1,    -1,    -1,    -1,   219,   220,    -1,    -1,    -1,
16598       -1,    -1,    -1,    -1,   228,    -1,    -1,   231,    -1,    -1,
16599       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16600       -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,
16601       -1,    -1,    -1,   257,   258,    -1,   260,   261,   262,    -1,
16602       -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16603      274,   275,   276,   277,    -1,    -1,    -1,    -1,    -1,    -1,
16604       -1,    -1,    -1,   287,   288,   289,    -1,    -1,    -1,    -1,
16605       -1,   295,    -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,
16606       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
16607      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
16608      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
16609      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
16610      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
16611      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
16612      364,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
16613      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
16614      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
16615      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
16616       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
16617      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
16618      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
16619       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
16620      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
16621      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
16622      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
16623      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
16624      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
16625      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
16626      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
16627      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
16628      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
16629      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
16630      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
16631      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
16632      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
16633      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
16634      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
16635      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
16636      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
16637      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
16638      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
16639      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
16640      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
16641      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
16642      664,   665,   666,   667,   668,   669,   670,   671,   672,    -1,
16643      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
16644      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
16645      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
16646      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
16647      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
16648      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
16649      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
16650      744,   745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,
16651       17,    18,    19,    20,    21,   759,   760,    -1,    -1,    -1,
16652       -1,   765,    29,    30,    -1,    32,   770,    -1,    -1,    -1,
16653      774,   775,    39,    40,   778,   779,    43,    44,    45,    46,
16654       -1,    48,    49,    -1,    51,    52,    -1,    -1,    -1,    -1,
16655       57,    -1,    -1,    -1,    61,    -1,    -1,    64,    -1,    -1,
16656       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16657       -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,    85,    86,
16658       -1,    88,    89,    -1,    -1,    -1,    -1,    94,    -1,    -1,
16659       -1,    -1,    -1,   100,   101,   102,    -1,   104,   105,    -1,
16660       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
16661       -1,    -1,   119,    -1,   121,    -1,    -1,    -1,    -1,    -1,
16662       -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,    -1,    -1,
16663       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16664       -1,   148,    -1,    -1,    -1,    -1,   153,   154,    -1,   156,
16665       -1,    -1,    -1,    -1,    -1,   162,    -1,   164,    -1,    -1,
16666      167,    -1,    -1,   170,   171,   172,    -1,   174,   175,   176,
16667       -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16668       -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,
16669      197,   198,   199,    -1,   201,    -1,    -1,    -1,    -1,    -1,
16670       -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16671       -1,    -1,   219,   220,    -1,    -1,    -1,    -1,    -1,    -1,
16672       -1,   228,    -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,
16673       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16674       -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,
16675      257,   258,    -1,   260,   261,   262,    -1,    -1,    -1,   266,
16676       -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,   275,   276,
16677      277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16678      287,   288,   289,    -1,    -1,    -1,    -1,    -1,   295,    -1,
16679      297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16680       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
16681      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
16682      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
16683      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
16684      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
16685      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
16686      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
16687      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
16688      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
16689      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
16690      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
16691      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
16692      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
16693      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
16694      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
16695      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
16696      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
16697      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
16698      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
16699      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
16700      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
16701      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
16702      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
16703      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
16704      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
16705      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
16706      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
16707      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
16708      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
16709      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
16710      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
16711      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
16712      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
16713      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
16714      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
16715      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
16716      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
16717      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
16718      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
16719      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
16720      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
16721      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
16722      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
16723      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
16724      747,   748,   749,   750,    -1,    -1,    -1,    17,    18,    19,
16725       20,    21,   759,   760,    -1,    -1,    -1,    -1,   765,    29,
16726       30,    -1,    32,   770,    -1,    -1,    -1,   774,   775,    39,
16727       40,   778,   779,    43,    44,    45,    46,    -1,    48,    49,
16728       -1,    51,    52,    -1,    -1,    -1,    -1,    57,    -1,    -1,
16729       -1,    61,    -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,
16730       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16731       -1,    -1,    -1,    -1,    84,    85,    86,    -1,    88,    89,
16732       -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,
16733      100,   101,   102,    -1,   104,   105,    -1,    -1,    -1,   109,
16734      110,   111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
16735       -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16736       -1,    -1,    -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,
16737       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,
16738       -1,    -1,    -1,   153,   154,    -1,   156,    -1,    -1,    -1,
16739       -1,    -1,   162,    -1,   164,    -1,    -1,   167,    -1,    -1,
16740      170,   171,   172,    -1,   174,   175,   176,    -1,   178,    -1,
16741       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16742       -1,    -1,    -1,   193,    -1,    -1,    -1,   197,   198,   199,
16743       -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,
16744       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,
16745      220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,
16746       -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16747       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16748       -1,   251,    -1,    -1,    -1,    -1,    -1,   257,   258,    -1,
16749      260,   261,   262,    -1,    -1,    -1,   266,    -1,    -1,    -1,
16750       -1,    -1,    -1,    -1,   274,   275,   276,   277,    -1,    -1,
16751       -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,   288,   289,
16752       -1,    -1,    -1,    -1,    -1,   295,    -1,   297,    -1,    -1,
16753       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,
16754      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
16755      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
16756      330,   331,   332,   333,   334,   335,   336,   337,   338,    -1,
16757      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
16758      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
16759      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
16760      370,    -1,   372,   373,   374,   375,   376,   377,   378,   379,
16761      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
16762      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
16763      400,   401,   402,   403,    -1,   405,   406,   407,   408,   409,
16764      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
16765      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
16766      430,   431,   432,    -1,    -1,   435,   436,   437,   438,   439,
16767      440,   441,   442,   443,   444,   445,   446,   447,    -1,   449,
16768      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
16769      460,   461,   462,   463,   464,    -1,   466,   467,   468,   469,
16770      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
16771      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
16772      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
16773      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
16774      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
16775      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
16776      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
16777      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
16778      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
16779      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
16780      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
16781      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
16782      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
16783      600,   601,   602,   603,   604,   605,   606,   607,   608,   609,
16784      610,   611,   612,   613,   614,   615,   616,   617,   618,   619,
16785      620,   621,   622,   623,   624,   625,   626,   627,   628,   629,
16786      630,   631,   632,   633,   634,   635,   636,   637,   638,   639,
16787      640,   641,   642,   643,   644,   645,   646,   647,   648,   649,
16788      650,   651,   652,   653,   654,   655,   656,   657,   658,   659,
16789      660,   661,   662,   663,   664,   665,   666,   667,   668,   669,
16790      670,   671,   672,    -1,   674,   675,   676,   677,   678,   679,
16791      680,   681,   682,   683,   684,   685,   686,   687,   688,   689,
16792      690,   691,   692,   693,   694,   695,   696,   697,   698,   699,
16793      700,   701,   702,   703,   704,   705,   706,   707,   708,   709,
16794      710,   711,   712,   713,   714,   715,   716,   717,   718,   719,
16795      720,   721,   722,   723,   724,   725,   726,   727,   728,   729,
16796      730,   731,   732,   733,   734,   735,   736,   737,   738,   739,
16797      740,   741,   742,   743,   744,   745,    -1,   747,   748,   749,
16798      750,    -1,    -1,    -1,    17,    18,    19,    20,    21,   759,
16799      760,    -1,    -1,    -1,    -1,   765,    29,    30,    -1,    32,
16800      770,    -1,    -1,    -1,   774,   775,    39,    40,   778,   779,
16801       43,    44,    45,    46,    -1,    48,    49,    -1,    51,    52,
16802       -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    -1,
16803       -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16804       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16805       -1,    84,    85,    86,    -1,    88,    89,    -1,    -1,    -1,
16806       -1,    94,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
16807       -1,   104,   105,    -1,    -1,    -1,   109,   110,   111,    -1,
16808       -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,   121,    -1,
16809       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16810       -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16811       -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,
16812      153,   154,    -1,   156,    -1,    -1,    -1,    -1,    -1,   162,
16813       -1,   164,    -1,    -1,   167,    -1,    -1,   170,   171,   172,
16814       -1,   174,   175,   176,    -1,   178,    -1,    -1,    -1,    -1,
16815       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16816      193,    -1,    -1,    -1,   197,   198,   199,    -1,   201,    -1,
16817       -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,
16818       -1,    -1,    -1,    -1,    -1,    -1,   219,   220,    -1,    -1,
16819       -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,   231,    -1,
16820       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16821       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,
16822       -1,    -1,    -1,    -1,   257,   258,    -1,   260,   261,   262,
16823       -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,
16824       -1,   274,   275,   276,   277,    -1,    -1,    -1,    -1,    -1,
16825       -1,    -1,    -1,    -1,   287,   288,   289,    -1,    -1,    -1,
16826       -1,    -1,   295,    -1,   297,    -1,    -1,    -1,    -1,    -1,
16827       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
16828      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
16829      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
16830      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
16831      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
16832      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
16833      363,   364,   365,   366,   367,   368,   369,   370,    -1,   372,
16834      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
16835      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
16836      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
16837      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
16838      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
16839      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
16840       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
16841      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
16842      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
16843      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
16844      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
16845      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
16846      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
16847      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
16848      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
16849      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
16850      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
16851      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
16852      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
16853      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
16854      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
16855      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
16856      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
16857      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
16858      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
16859      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
16860      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
16861      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
16862      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
16863      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
16864       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
16865      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
16866      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
16867      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
16868      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
16869      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
16870      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
16871      743,   744,   745,    -1,   747,   748,   749,   750,    -1,    -1,
16872       -1,    17,    18,    19,    20,    21,   759,   760,    -1,    -1,
16873       -1,    -1,   765,    29,    30,    -1,    32,   770,    -1,    -1,
16874       -1,   774,   775,    39,    40,   778,   779,    43,    44,    45,
16875       46,    -1,    48,    49,    -1,    51,    52,    -1,    -1,    -1,
16876       -1,    57,    -1,    -1,    -1,    61,    -1,    -1,    64,    -1,
16877       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16878       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,    85,
16879       86,    -1,    88,    89,    -1,    -1,    -1,    -1,    -1,    -1,
16880       -1,    -1,    -1,    -1,   100,   101,   102,    -1,   104,   105,
16881       -1,    -1,    -1,   109,   110,   111,    -1,   113,    -1,    -1,
16882       -1,    -1,    -1,   119,    -1,   121,    -1,    -1,    -1,    -1,
16883       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,    -1,
16884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16885       -1,    -1,   148,    -1,    -1,    -1,    -1,   153,   154,    -1,
16886      156,    -1,    -1,    -1,    -1,    -1,   162,    -1,   164,    -1,
16887       -1,   167,    -1,    -1,   170,   171,   172,    -1,   174,   175,
16888      176,    -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16889       -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,
16890       -1,   197,   198,   199,    -1,   201,    -1,    -1,    -1,    -1,
16891       -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16892       -1,    -1,    -1,   219,   220,    -1,    -1,    -1,    -1,    -1,
16893       -1,    -1,   228,    -1,    -1,   231,    -1,    -1,    -1,    -1,
16894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16895       -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,
16896       -1,   257,   258,    -1,   260,   261,   262,    -1,    -1,    -1,
16897      266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,   275,
16898      276,   277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16899       -1,   287,   288,   289,    -1,    -1,    -1,    -1,    -1,   295,
16900       -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16901       -1,    -1,    -1,   309,   310,   311,   312,   313,   314,   315,
16902      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
16903      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
16904      336,   337,   338,    -1,   340,   341,   342,   343,   344,   345,
16905      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
16906      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
16907      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
16908      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
16909      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
16910      396,   397,   398,   399,   400,   401,   402,   403,    -1,   405,
16911      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
16912      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
16913      426,   427,   428,   429,   430,   431,   432,    -1,    -1,   435,
16914      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
16915      446,   447,    -1,   449,   450,   451,   452,   453,   454,   455,
16916      456,   457,   458,   459,   460,   461,   462,   463,   464,    -1,
16917      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
16918      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
16919      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
16920      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
16921      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
16922      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
16923      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
16924      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
16925      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
16926      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
16927      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
16928      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
16929      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
16930      596,   597,   598,   599,   600,   601,   602,   603,   604,   605,
16931      606,   607,   608,   609,   610,   611,   612,   613,   614,   615,
16932      616,   617,   618,   619,   620,   621,   622,   623,   624,   625,
16933      626,   627,   628,   629,   630,   631,   632,   633,   634,   635,
16934      636,   637,   638,   639,   640,   641,   642,   643,   644,   645,
16935      646,   647,   648,   649,   650,   651,   652,   653,   654,   655,
16936      656,   657,   658,   659,   660,   661,   662,   663,   664,   665,
16937      666,   667,   668,   669,   670,   671,   672,    -1,   674,   675,
16938      676,   677,   678,   679,   680,   681,   682,   683,   684,   685,
16939      686,   687,   688,   689,   690,   691,   692,   693,   694,   695,
16940      696,   697,   698,   699,   700,   701,   702,   703,   704,   705,
16941      706,   707,   708,   709,   710,   711,   712,   713,   714,   715,
16942      716,   717,   718,   719,   720,   721,   722,   723,   724,   725,
16943      726,   727,   728,   729,   730,   731,   732,   733,   734,   735,
16944      736,   737,   738,   739,   740,   741,   742,   743,   744,   745,
16945       -1,   747,   748,   749,   750,    -1,    -1,    -1,    17,    18,
16946       19,    20,    21,   759,   760,    -1,    -1,    -1,    -1,   765,
16947       29,    30,    -1,    32,   770,    -1,    -1,    -1,   774,   775,
16948       39,    40,   778,   779,    43,    44,    45,    46,    -1,    48,
16949       49,    -1,    51,    52,    -1,    -1,    -1,    -1,    57,    -1,
16950       -1,    -1,    61,    -1,    -1,    64,    -1,    -1,    -1,    -1,
16951       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16952       -1,    -1,    -1,    -1,    -1,    84,    85,    86,    -1,    88,
16953       89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16954       -1,   100,   101,   102,    -1,   104,   105,    -1,    -1,    -1,
16955      109,   110,   111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16956      119,    -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16957       -1,    -1,    -1,    -1,    -1,   134,    -1,    -1,    -1,    -1,
16958       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,
16959       -1,    -1,    -1,    -1,   153,   154,    -1,   156,    -1,    -1,
16960       -1,    -1,    -1,   162,    -1,   164,    -1,    -1,   167,    -1,
16961       -1,   170,   171,   172,    -1,   174,   175,   176,    -1,   178,
16962       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16963       -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,   197,   198,
16964      199,    -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,   208,
16965       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16966      219,   220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   228,
16967       -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16968       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16969       -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,   257,   258,
16970       -1,   260,   261,   262,    -1,    -1,    -1,   266,    -1,    -1,
16971       -1,    -1,    -1,    -1,    -1,   274,   275,   276,   277,    -1,
16972       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,   288,
16973      289,    -1,    -1,    -1,    -1,    -1,   295,    -1,   297,    -1,
16974       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16975      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
16976      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
16977      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
16978       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
16979      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
16980      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
16981      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
16982      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
16983      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
16984      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
16985      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
16986      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
16987      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
16988      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
16989      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
16990      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
16991      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
16992      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
16993      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
16994      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
16995      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
16996      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
16997      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
16998      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
16999      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
17000      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
17001      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
17002      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
17003      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
17004      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
17005      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
17006      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
17007      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
17008      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
17009      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
17010      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
17011      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
17012      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
17013      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
17014      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
17015      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
17016      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
17017      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
17018      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
17019      749,   750,    -1,    -1,    -1,    17,    18,    19,    20,    21,
17020      759,   760,    -1,    -1,    -1,    -1,   765,    29,    30,    -1,
17021       32,   770,    -1,    -1,    -1,   774,   775,    39,    40,   778,
17022      779,    43,    44,    45,    46,    -1,    48,    49,    -1,    51,
17023       52,    -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,
17024       -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17025       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17026       -1,    -1,    84,    85,    86,    -1,    88,    89,    -1,    -1,
17027       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,
17028      102,    -1,   104,   105,    -1,    -1,    -1,   109,   110,   111,
17029       -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,   121,
17030       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17031       -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17032       -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,
17033       -1,   153,   154,    -1,   156,    -1,    -1,    -1,    -1,    -1,
17034      162,    -1,   164,    -1,    -1,   167,    -1,    -1,   170,   171,
17035      172,    -1,   174,   175,   176,    -1,   178,    -1,    -1,    -1,
17036       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17037       -1,   193,    -1,    -1,    -1,   197,   198,   199,    -1,   201,
17038       -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,
17039       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,   220,    -1,
17040       -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,   231,
17041       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17042       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,
17043       -1,    -1,    -1,    -1,    -1,   257,   258,    -1,   260,   261,
17044      262,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,
17045       -1,    -1,   274,   275,   276,   277,    -1,    -1,    -1,    -1,
17046       -1,    -1,    -1,    -1,    -1,   287,   288,   289,    -1,    -1,
17047       -1,    -1,    -1,   295,    -1,   297,    -1,    -1,    -1,    -1,
17048       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
17049      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
17050      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
17051      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
17052      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
17053      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
17054      362,   363,   364,   365,   366,   367,   368,   369,   370,    -1,
17055      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
17056      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17057      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
17058      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
17059      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
17060      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
17061      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
17062      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
17063      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
17064      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
17065      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
17066      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
17067      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
17068      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
17069      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
17070      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
17071      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
17072      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
17073      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
17074      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
17075      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
17076      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
17077      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
17078      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
17079      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
17080      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
17081      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
17082      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
17083      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
17084      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
17085      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
17086      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
17087      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
17088      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
17089      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
17090      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
17091      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
17092      742,   743,   744,   745,    -1,   747,   748,   749,   750,    -1,
17093       -1,    -1,    17,    18,    19,    20,    21,   759,   760,    -1,
17094       -1,    -1,    -1,   765,    29,    30,    -1,    32,   770,    -1,
17095       -1,    -1,   774,   775,    39,    40,   778,   779,    43,    44,
17096       45,    46,    -1,    48,    49,    -1,    51,    52,    -1,    -1,
17097       -1,    -1,    57,    -1,    -1,    -1,    61,    -1,    -1,    64,
17098       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,
17100       85,    86,    -1,    88,    89,    -1,    -1,    -1,    -1,    -1,
17101       -1,    -1,    -1,    -1,    -1,   100,   101,   102,    -1,   104,
17102      105,    -1,    -1,    -1,   109,   110,   111,    -1,    -1,    -1,
17103       -1,    -1,    -1,    -1,   119,    -1,   121,    -1,    -1,    -1,
17104       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,
17105       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17106       -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,   153,   154,
17107       -1,   156,    -1,    -1,    -1,    -1,    -1,   162,    -1,   164,
17108       -1,    -1,   167,    -1,    -1,   170,   171,   172,    -1,   174,
17109      175,   176,    -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,
17110       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,
17111       -1,    -1,   197,   198,   199,    -1,   201,    -1,    -1,    -1,
17112       -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,
17113       -1,    -1,    -1,    -1,   219,   220,    -1,    -1,    -1,    -1,
17114       -1,    -1,    -1,   228,    -1,    -1,   231,    -1,    -1,    -1,
17115       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17116       -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,
17117       -1,    -1,   257,   258,    -1,   260,   261,   262,    -1,    -1,
17118       -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,
17119      275,   276,   277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17120       -1,    -1,   287,   288,   289,    -1,    -1,    -1,    -1,    -1,
17121      295,    -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17122       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
17123      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
17124      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
17125      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
17126      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
17127      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
17128      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
17129      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
17130      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
17131      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
17132      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
17133      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
17134      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
17135      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
17136      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
17137      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
17138       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
17139      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
17140      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
17141      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
17142      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
17143      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
17144      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
17145      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
17146      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
17147      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
17148      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
17149      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
17150      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
17151      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
17152      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
17153      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
17154      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
17155      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
17156      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
17157      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
17158      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
17159      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
17160      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
17161      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
17162      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
17163      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
17164      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
17165      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
17166      745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,    17,
17167       18,    19,    20,    21,   759,   760,    -1,    -1,    -1,    -1,
17168      765,    29,    30,    -1,    32,   770,    -1,    -1,    -1,   774,
17169      775,    39,    40,   778,   779,    43,    44,    45,    46,    -1,
17170       48,    49,    -1,    51,    52,    -1,    -1,    -1,    -1,    57,
17171       -1,    -1,    -1,    61,    -1,    -1,    64,    -1,    -1,    -1,
17172       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17173       -1,    -1,    -1,    -1,    -1,    -1,    84,    85,    86,    -1,
17174       88,    89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17175       -1,    -1,   100,   101,   102,    -1,   104,   105,    -1,    -1,
17176       -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,    -1,
17177       -1,   119,    -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,
17178       -1,    -1,    -1,    -1,    -1,    -1,   134,    -1,    -1,    -1,
17179       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17180      148,    -1,    -1,    -1,    -1,   153,   154,    -1,   156,    -1,
17181       -1,    -1,    -1,    -1,   162,    -1,   164,    -1,    -1,   167,
17182       -1,    -1,   170,   171,   172,    -1,   174,   175,   176,    -1,
17183      178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17184       -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,   197,
17185      198,   199,    -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,
17186      208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17187       -1,   219,   220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17188      228,    -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,
17189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17190       -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,   257,
17191      258,    -1,   260,   261,   262,    -1,    -1,    -1,   266,    -1,
17192       -1,    -1,    -1,    -1,    -1,    -1,   274,   275,   276,   277,
17193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,
17194      288,   289,    -1,    -1,    -1,    -1,    -1,   295,    -1,   297,
17195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17196       -1,   309,   310,   311,   312,   313,   314,   315,   316,   317,
17197      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
17198      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
17199      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
17200      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
17201      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
17202      368,   369,   370,    -1,   372,   373,   374,   375,   376,   377,
17203      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
17204      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
17205      398,   399,   400,   401,   402,   403,    -1,   405,   406,   407,
17206      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
17207      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
17208      428,   429,   430,   431,   432,    -1,    -1,   435,   436,   437,
17209      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
17210       -1,   449,   450,   451,   452,   453,   454,   455,   456,   457,
17211      458,   459,   460,   461,   462,   463,   464,    -1,   466,   467,
17212      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
17213      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
17214      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
17215      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
17216      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
17217      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
17218      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
17219      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
17220      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
17221      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
17222      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
17223      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
17224      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
17225      598,   599,   600,   601,   602,   603,   604,   605,   606,   607,
17226      608,   609,   610,   611,   612,   613,   614,   615,   616,   617,
17227      618,   619,   620,   621,   622,   623,   624,   625,   626,   627,
17228      628,   629,   630,   631,   632,   633,   634,   635,   636,   637,
17229      638,   639,   640,   641,   642,   643,   644,   645,   646,   647,
17230      648,   649,   650,   651,   652,   653,   654,   655,   656,   657,
17231      658,   659,   660,   661,   662,   663,   664,   665,   666,   667,
17232      668,   669,   670,   671,   672,    -1,   674,   675,   676,   677,
17233      678,   679,   680,   681,   682,   683,   684,   685,   686,   687,
17234      688,   689,   690,   691,   692,   693,   694,   695,   696,   697,
17235      698,   699,   700,   701,   702,   703,   704,   705,   706,   707,
17236      708,   709,   710,   711,   712,   713,   714,   715,   716,   717,
17237      718,   719,   720,   721,   722,   723,   724,   725,   726,   727,
17238      728,   729,   730,   731,   732,   733,   734,   735,   736,   737,
17239      738,   739,   740,   741,   742,   743,   744,   745,    -1,   747,
17240      748,   749,   750,    -1,    -1,    -1,    17,    18,    19,    20,
17241       21,   759,   760,    -1,    -1,    -1,    -1,   765,    29,    30,
17242       -1,    32,   770,    -1,    -1,    -1,   774,   775,    39,    40,
17243      778,   779,    43,    44,    45,    46,    -1,    48,    49,    -1,
17244       51,    52,    -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,
17245       61,    -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,
17246       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17247       -1,    -1,    -1,    84,    85,    86,    -1,    88,    89,    -1,
17248       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,
17249      101,   102,    -1,   104,   105,    -1,    -1,    -1,   109,   110,
17250      111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
17251      121,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17252       -1,    -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,
17253       -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,
17254       -1,    -1,   153,   154,    -1,   156,    -1,    -1,    -1,    -1,
17255       -1,   162,    -1,   164,    -1,    -1,   167,    -1,    -1,   170,
17256      171,   172,    -1,   174,   175,   176,    -1,   178,    -1,    -1,
17257       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17258       -1,    -1,   193,    -1,    -1,    -1,   197,   198,   199,    -1,
17259      201,    -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,
17260       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,   220,
17261       -1,    -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,
17262      231,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17263       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17264      251,    -1,    -1,    -1,    -1,    -1,   257,   258,    -1,   260,
17265      261,   262,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,
17266       -1,    -1,    -1,   274,   275,   276,   277,    -1,    -1,    -1,
17267       -1,    -1,    -1,    -1,    -1,    -1,   287,   288,   289,    -1,
17268       -1,    -1,    -1,    -1,   295,    -1,   297,    -1,    -1,    -1,
17269       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
17270      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
17271      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
17272      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
17273      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
17274      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
17275      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
17276       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
17277      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
17278      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
17279      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
17280      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
17281      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
17282      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
17283      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
17284      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
17285      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
17286      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
17287      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
17288      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
17289      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
17290      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
17291      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
17292      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
17293      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
17294      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
17295      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
17296      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
17297      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
17298      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
17299      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
17300      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
17301      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
17302      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
17303      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
17304      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
17305      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
17306      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
17307      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
17308      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
17309      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
17310      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
17311      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
17312      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
17313      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
17314       -1,    -1,    -1,    17,    18,    19,    20,    21,   759,   760,
17315       -1,    -1,    -1,    -1,   765,    29,    30,    -1,    32,   770,
17316       -1,    -1,    -1,   774,   775,    39,    40,   778,   779,    43,
17317       44,    45,    46,    -1,    48,    49,    -1,    51,    52,    -1,
17318       -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    -1,    -1,
17319       64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17320       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17321       84,    85,    86,    -1,    88,    89,    -1,    -1,    -1,    -1,
17322       -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,    -1,
17323      104,   105,    -1,    -1,    -1,   109,   110,   111,    -1,    -1,
17324       -1,    -1,    -1,    -1,    -1,   119,    -1,   121,    -1,    -1,
17325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17326      134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17327       -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,   153,
17328      154,    -1,   156,    -1,    -1,    -1,    -1,    -1,   162,    -1,
17329      164,    -1,    -1,   167,    -1,    -1,   170,   171,   172,    -1,
17330      174,   175,   176,    -1,   178,    -1,    -1,    -1,    -1,    -1,
17331       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,
17332       -1,    -1,    -1,   197,   198,   199,    -1,   201,    -1,    -1,
17333       -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,
17334       -1,    -1,    -1,    -1,    -1,   219,   220,    -1,    -1,    -1,
17335       -1,    -1,    -1,    -1,   228,    -1,    -1,   231,    -1,    -1,
17336       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17337       -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,
17338       -1,    -1,    -1,   257,   258,    -1,   260,   261,   262,    -1,
17339       -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17340      274,   275,   276,   277,    -1,    -1,    -1,    -1,    -1,    -1,
17341       -1,    -1,    -1,   287,   288,   289,    -1,    -1,    -1,    -1,
17342       -1,   295,    -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,
17343       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
17344      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
17345      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
17346      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
17347      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
17348      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
17349      364,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
17350      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
17351      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
17352      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
17353       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
17354      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
17355      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
17356       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
17357      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
17358      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
17359      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
17360      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
17361      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
17362      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
17363      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
17364      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
17365      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
17366      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
17367      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
17368      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
17369      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
17370      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
17371      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
17372      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
17373      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
17374      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
17375      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
17376      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
17377      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
17378      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
17379      664,   665,   666,   667,   668,   669,   670,   671,   672,    -1,
17380      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
17381      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
17382      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
17383      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
17384      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
17385      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
17386      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
17387      744,   745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,
17388       17,    18,    19,    20,    21,   759,   760,    -1,    -1,    -1,
17389       -1,   765,    29,    30,    -1,    32,   770,    -1,    -1,    -1,
17390      774,   775,    39,    40,   778,   779,    43,    44,    45,    46,
17391       -1,    48,    49,    -1,    51,    52,    -1,    -1,    -1,    -1,
17392       57,    -1,    -1,    -1,    61,    -1,    -1,    64,    -1,    -1,
17393       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,    85,    86,
17395       -1,    88,    89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17396       -1,    -1,    -1,   100,   101,   102,    -1,   104,   105,    -1,
17397       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
17398       -1,    -1,   119,    -1,   121,    -1,    -1,    -1,    -1,    -1,
17399       -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,    -1,    -1,
17400       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17401       -1,   148,    -1,    -1,    -1,    -1,   153,   154,   155,   156,
17402       -1,    -1,    -1,    -1,    -1,   162,    -1,   164,    -1,    -1,
17403      167,    -1,    -1,   170,    -1,   172,    -1,   174,   175,   176,
17404       -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17405       -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,
17406      197,   198,   199,    -1,   201,    -1,    -1,    -1,    -1,    -1,
17407       -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17408       -1,    -1,   219,   220,    -1,    -1,    -1,    -1,    -1,    -1,
17409       -1,   228,    -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,
17410       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17411       -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,
17412      257,   258,    -1,   260,   261,   262,    -1,    -1,    -1,   266,
17413       -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,   275,   276,
17414      277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17415      287,   288,   289,    -1,    -1,    -1,    -1,    -1,   295,    -1,
17416      297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17417       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
17418      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
17419      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
17420      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
17421      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
17422      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
17423      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
17424      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
17425      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
17426      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
17427      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
17428      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
17429      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
17430      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
17431      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
17432      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
17433      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
17434      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
17435      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
17436      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
17437      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
17438      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
17439      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
17440      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
17441      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
17442      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
17443      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
17444      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
17445      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
17446      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
17447      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
17448      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
17449      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
17450      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
17451      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
17452      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
17453      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
17454      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
17455      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
17456      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
17457      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
17458      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
17459      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
17460      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
17461      747,   748,   749,   750,    -1,    -1,    -1,    17,    18,    19,
17462       20,    21,   759,   760,    -1,    -1,    -1,    -1,   765,    29,
17463       30,    -1,    32,   770,    -1,    -1,    -1,   774,   775,    39,
17464       40,   778,   779,    43,    44,    45,    46,    -1,    48,    49,
17465       -1,    51,    52,    -1,    -1,    -1,    -1,    57,    -1,    -1,
17466       -1,    61,    -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,
17467       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17468       -1,    -1,    -1,    -1,    84,    85,    86,    -1,    88,    89,
17469       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17470      100,   101,   102,    -1,   104,   105,    -1,    -1,    -1,   109,
17471      110,   111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
17472       -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17473       -1,    -1,    -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,
17474       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,
17475       -1,    -1,    -1,   153,   154,    -1,   156,    -1,    -1,    -1,
17476       -1,    -1,   162,    -1,   164,    -1,    -1,   167,    -1,    -1,
17477      170,    -1,   172,    -1,   174,   175,   176,    -1,   178,    -1,
17478       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17479       -1,    -1,    -1,   193,    -1,    -1,    -1,   197,   198,   199,
17480       -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,
17481       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,
17482      220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,
17483       -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17484       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17485       -1,   251,    -1,    -1,    -1,    -1,    -1,   257,   258,    -1,
17486      260,   261,   262,    -1,    -1,    -1,   266,    -1,    -1,    -1,
17487       -1,    -1,    -1,    -1,   274,   275,   276,   277,    -1,    -1,
17488       -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,   288,   289,
17489       -1,    -1,    -1,    -1,    -1,   295,    -1,   297,    -1,    -1,
17490       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,
17491      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
17492      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
17493      330,   331,   332,   333,   334,   335,   336,   337,   338,    -1,
17494      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
17495      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17496      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
17497      370,    -1,   372,   373,   374,   375,   376,   377,   378,   379,
17498      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17499      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
17500      400,   401,   402,   403,    -1,   405,   406,   407,   408,   409,
17501      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
17502      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
17503      430,   431,   432,    -1,    -1,   435,   436,   437,   438,   439,
17504      440,   441,   442,   443,   444,   445,   446,   447,    -1,   449,
17505      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
17506      460,   461,   462,   463,   464,    -1,   466,   467,   468,   469,
17507      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
17508      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
17509      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
17510      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
17511      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
17512      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
17513      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
17514      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
17515      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
17516      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
17517      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
17518      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
17519      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
17520      600,   601,   602,   603,   604,   605,   606,   607,   608,   609,
17521      610,   611,   612,   613,   614,   615,   616,   617,   618,   619,
17522      620,   621,   622,   623,   624,   625,   626,   627,   628,   629,
17523      630,   631,   632,   633,   634,   635,   636,   637,   638,   639,
17524      640,   641,   642,   643,   644,   645,   646,   647,   648,   649,
17525      650,   651,   652,   653,   654,   655,   656,   657,   658,   659,
17526      660,   661,   662,   663,   664,   665,   666,   667,   668,   669,
17527      670,   671,   672,    -1,   674,   675,   676,   677,   678,   679,
17528      680,   681,   682,   683,   684,   685,   686,   687,   688,   689,
17529      690,   691,   692,   693,   694,   695,   696,   697,   698,   699,
17530      700,   701,   702,   703,   704,   705,   706,   707,   708,   709,
17531      710,   711,   712,   713,   714,   715,   716,   717,   718,   719,
17532      720,   721,   722,   723,   724,   725,   726,   727,   728,   729,
17533      730,   731,   732,   733,   734,   735,   736,   737,   738,   739,
17534      740,   741,   742,   743,   744,   745,    -1,   747,   748,   749,
17535      750,    -1,    -1,    -1,    17,    18,    19,    20,    21,   759,
17536      760,    -1,    -1,    -1,    -1,   765,    29,    30,    -1,    32,
17537      770,    -1,    -1,    -1,   774,   775,    39,    40,   778,   779,
17538       43,    44,    45,    46,    -1,    48,    49,    -1,    51,    52,
17539       -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    -1,
17540       -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17542       -1,    84,    85,    86,    -1,    88,    89,    -1,    -1,    -1,
17543       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
17544       -1,   104,   105,    -1,    -1,    -1,   109,   110,   111,    -1,
17545       -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,   121,    -1,
17546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17547       -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17548       -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,
17549      153,   154,    -1,   156,    -1,    -1,    -1,    -1,    -1,   162,
17550       -1,   164,    -1,    -1,   167,    -1,    -1,   170,    -1,   172,
17551       -1,   174,   175,   176,    -1,   178,    -1,    -1,    -1,    -1,
17552       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17553      193,    -1,    -1,    -1,   197,   198,   199,    -1,   201,    -1,
17554       -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,
17555       -1,    -1,    -1,    -1,    -1,    -1,   219,   220,    -1,    -1,
17556       -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,   231,    -1,
17557       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17558       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,
17559       -1,    -1,    -1,    -1,   257,   258,    -1,   260,   261,   262,
17560       -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,
17561       -1,   274,   275,   276,   277,    -1,    -1,    -1,    -1,    -1,
17562       -1,    -1,    -1,    -1,   287,   288,   289,    -1,    -1,    -1,
17563       -1,    -1,   295,    -1,   297,    -1,    -1,    -1,    -1,    -1,
17564       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
17565      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
17566      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
17567      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
17568      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
17569      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
17570      363,   364,   365,   366,   367,   368,   369,   370,    -1,   372,
17571      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
17572      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
17573      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
17574      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
17575      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
17576      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
17577       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
17578      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
17579      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
17580      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
17581      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
17582      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
17583      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
17584      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
17585      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
17586      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
17587      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
17588      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
17589      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
17590      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
17591      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
17592      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
17593      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
17594      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
17595      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
17596      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
17597      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
17598      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
17599      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
17600      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
17601       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
17602      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
17603      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
17604      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
17605      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
17606      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
17607      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
17608      743,   744,   745,    -1,   747,   748,   749,   750,    -1,    -1,
17609       -1,    17,    18,    19,    20,    21,   759,   760,    -1,    -1,
17610       -1,    -1,   765,    29,    30,    -1,    32,   770,    -1,    -1,
17611       -1,   774,   775,    39,    40,   778,   779,    43,    44,    45,
17612       46,    -1,    48,    49,    -1,    51,    52,    -1,    -1,    -1,
17613       -1,    57,    -1,    -1,    -1,    61,    -1,    -1,    64,    -1,
17614       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17615       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,    85,
17616       86,    -1,    88,    89,    -1,    -1,    -1,    -1,    -1,    -1,
17617       -1,    -1,    -1,    -1,   100,   101,   102,    -1,   104,   105,
17618       -1,    -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,
17619       -1,    -1,    -1,   119,    -1,   121,    -1,    -1,    -1,    -1,
17620       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,    -1,
17621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17622       -1,    -1,   148,    -1,    -1,    -1,    -1,   153,   154,    -1,
17623      156,    -1,    -1,    -1,    -1,    -1,   162,    -1,   164,    -1,
17624       -1,   167,    -1,    -1,   170,    -1,   172,    -1,   174,   175,
17625      176,    -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17626       -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,
17627       -1,   197,   198,   199,    -1,   201,    -1,    -1,    -1,    -1,
17628       -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17629       -1,    -1,    -1,   219,   220,    -1,    -1,    -1,    -1,    -1,
17630       -1,    -1,   228,    -1,    -1,   231,    -1,    -1,    -1,    -1,
17631       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17632       -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,
17633       -1,   257,   258,    -1,   260,   261,   262,    -1,    -1,    -1,
17634      266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,   275,
17635      276,   277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17636       -1,   287,   288,   289,    -1,    -1,    -1,    -1,    -1,   295,
17637       -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17638       -1,    -1,    -1,   309,   310,   311,   312,   313,   314,   315,
17639      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17640      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
17641      336,   337,   338,    -1,   340,   341,   342,   343,   344,   345,
17642      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17643      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
17644      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
17645      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17646      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
17647      396,   397,   398,   399,   400,   401,   402,   403,    -1,   405,
17648      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
17649      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
17650      426,   427,   428,   429,   430,   431,   432,    -1,    -1,   435,
17651      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
17652      446,   447,    -1,   449,   450,   451,   452,   453,   454,   455,
17653      456,   457,   458,   459,   460,   461,   462,   463,   464,    -1,
17654      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
17655      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
17656      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
17657      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
17658      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
17659      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
17660      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
17661      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
17662      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
17663      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
17664      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
17665      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
17666      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
17667      596,   597,   598,   599,   600,   601,   602,   603,   604,   605,
17668      606,   607,   608,   609,   610,   611,   612,   613,   614,   615,
17669      616,   617,   618,   619,   620,   621,   622,   623,   624,   625,
17670      626,   627,   628,   629,   630,   631,   632,   633,   634,   635,
17671      636,   637,   638,   639,   640,   641,   642,   643,   644,   645,
17672      646,   647,   648,   649,   650,   651,   652,   653,   654,   655,
17673      656,   657,   658,   659,   660,   661,   662,   663,   664,   665,
17674      666,   667,   668,   669,   670,   671,   672,    -1,   674,   675,
17675      676,   677,   678,   679,   680,   681,   682,   683,   684,   685,
17676      686,   687,   688,   689,   690,   691,   692,   693,   694,   695,
17677      696,   697,   698,   699,   700,   701,   702,   703,   704,   705,
17678      706,   707,   708,   709,   710,   711,   712,   713,   714,   715,
17679      716,   717,   718,   719,   720,   721,   722,   723,   724,   725,
17680      726,   727,   728,   729,   730,   731,   732,   733,   734,   735,
17681      736,   737,   738,   739,   740,   741,   742,   743,   744,   745,
17682       -1,   747,   748,   749,   750,    -1,    -1,    -1,    17,    18,
17683       19,    20,    21,   759,   760,    -1,    -1,    -1,    -1,   765,
17684       29,    30,    -1,    32,   770,    -1,    -1,    -1,   774,   775,
17685       39,    40,   778,   779,    43,    44,    45,    46,    -1,    48,
17686       49,    -1,    51,    52,    -1,    -1,    -1,    -1,    57,    -1,
17687       -1,    -1,    61,    -1,    -1,    64,    -1,    -1,    -1,    -1,
17688       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17689       -1,    -1,    -1,    -1,    -1,    84,    85,    86,    -1,    88,
17690       89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17691       -1,   100,   101,   102,    -1,   104,   105,    -1,    -1,    -1,
17692      109,   110,   111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17693      119,    -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17694       -1,    -1,    -1,    -1,    -1,   134,    -1,    -1,    -1,    -1,
17695       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,
17696       -1,    -1,    -1,    -1,   153,   154,    -1,   156,    -1,    -1,
17697       -1,    -1,    -1,   162,    -1,   164,    -1,    -1,   167,    -1,
17698       -1,   170,    -1,   172,    -1,   174,   175,   176,    -1,   178,
17699       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17700       -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,   197,   198,
17701      199,    -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,   208,
17702       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17703      219,   220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   228,
17704       -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17705       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17706       -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,   257,   258,
17707       -1,   260,   261,   262,    -1,    -1,    -1,   266,    -1,    -1,
17708       -1,    -1,    -1,    -1,    -1,   274,   275,   276,   277,    -1,
17709       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,   288,
17710      289,    -1,    -1,    -1,    -1,    -1,   295,    -1,   297,    -1,
17711       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17712      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
17713      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
17714      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
17715       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
17716      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
17717      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
17718      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
17719      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
17720      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
17721      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
17722      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
17723      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
17724      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
17725      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
17726      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
17727      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
17728      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
17729      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
17730      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
17731      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
17732      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
17733      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
17734      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
17735      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
17736      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
17737      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
17738      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
17739      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
17740      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
17741      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
17742      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
17743      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
17744      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
17745      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
17746      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
17747      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
17748      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
17749      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
17750      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
17751      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
17752      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
17753      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
17754      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
17755      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
17756      749,   750,    -1,    -1,    -1,    17,    18,    19,    20,    21,
17757      759,   760,    -1,    -1,    -1,    -1,   765,    29,    30,    -1,
17758       32,   770,    -1,    -1,    -1,   774,   775,    39,    40,   778,
17759      779,    43,    44,    45,    46,    -1,    48,    49,    -1,    51,
17760       52,    -1,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,
17761       -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17762       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17763       -1,    -1,    84,    85,    86,    -1,    88,    89,    -1,    -1,
17764       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,
17765      102,    -1,   104,   105,    -1,    -1,    -1,   109,   110,   111,
17766       -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,   121,
17767       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17768       -1,    -1,   134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17769       -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,
17770       -1,   153,   154,    -1,   156,    -1,    -1,    -1,    -1,    -1,
17771      162,    -1,   164,    -1,    -1,   167,    -1,    -1,   170,    -1,
17772      172,    -1,   174,   175,   176,    -1,   178,    -1,    -1,    -1,
17773       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17774       -1,   193,    -1,    -1,    -1,   197,   198,   199,    -1,   201,
17775       -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,    -1,
17776       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,   220,    -1,
17777       -1,    -1,    -1,    -1,    -1,    -1,   228,    -1,    -1,   231,
17778       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17779       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   251,
17780       -1,    -1,    -1,    -1,    -1,   257,   258,    -1,   260,   261,
17781      262,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,
17782       -1,    -1,   274,   275,   276,   277,    -1,    -1,    -1,    -1,
17783       -1,    -1,    -1,    -1,    -1,   287,   288,   289,    -1,    -1,
17784       -1,    -1,    -1,   295,    -1,   297,    -1,    -1,    -1,    -1,
17785       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
17786      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
17787      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
17788      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
17789      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
17790      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
17791      362,   363,   364,   365,   366,   367,   368,   369,   370,    -1,
17792      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
17793      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17794      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
17795      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
17796      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
17797      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
17798      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
17799      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
17800      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
17801      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
17802      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
17803      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
17804      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
17805      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
17806      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
17807      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
17808      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
17809      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
17810      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
17811      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
17812      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
17813      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
17814      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
17815      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
17816      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
17817      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
17818      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
17819      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
17820      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
17821      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
17822      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
17823      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
17824      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
17825      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
17826      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
17827      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
17828      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
17829      742,   743,   744,   745,    -1,   747,   748,   749,   750,    -1,
17830       -1,    -1,    17,    18,    19,    20,    21,   759,   760,    -1,
17831       -1,    -1,    -1,   765,    29,    30,    -1,    32,   770,    -1,
17832       -1,    -1,   774,   775,    39,    40,   778,   779,    43,    44,
17833       45,    46,    -1,    48,    49,    -1,    51,    52,    -1,    -1,
17834       -1,    -1,    57,    -1,    -1,    -1,    61,    -1,    -1,    64,
17835       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17836       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,
17837       85,    86,    -1,    88,    89,    -1,    -1,    -1,    -1,    -1,
17838       -1,    -1,    -1,    -1,    -1,   100,   101,   102,    -1,   104,
17839      105,    -1,    -1,    -1,   109,   110,   111,    -1,    -1,    -1,
17840       -1,    -1,    -1,    -1,   119,    -1,   121,    -1,    -1,    -1,
17841       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,
17842       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17843       -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,   153,   154,
17844       -1,   156,    -1,    -1,    -1,    -1,    -1,   162,    -1,   164,
17845       -1,    -1,   167,    -1,    -1,   170,    -1,   172,    -1,   174,
17846      175,   176,    -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,
17847       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,
17848       -1,    -1,   197,   198,   199,    -1,   201,    -1,    -1,    -1,
17849       -1,    -1,    -1,   208,    -1,    -1,    -1,    -1,    -1,    -1,
17850       -1,    -1,    -1,    -1,   219,   220,    -1,    -1,    -1,    -1,
17851       -1,    -1,    -1,   228,    -1,    -1,   231,    -1,    -1,    -1,
17852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17853       -1,    -1,    -1,    -1,    -1,    -1,   251,    -1,    -1,    -1,
17854       -1,    -1,   257,   258,    -1,   260,   261,   262,    -1,    -1,
17855       -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,
17856      275,   276,   277,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17857       -1,    -1,   287,   288,   289,    -1,    -1,    -1,    -1,    -1,
17858      295,    -1,   297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17859       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
17860      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
17861      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
17862      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
17863      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
17864      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
17865      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
17866      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
17867      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
17868      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
17869      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
17870      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
17871      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
17872      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
17873      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
17874      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
17875       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
17876      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
17877      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
17878      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
17879      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
17880      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
17881      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
17882      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
17883      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
17884      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
17885      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
17886      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
17887      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
17888      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
17889      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
17890      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
17891      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
17892      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
17893      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
17894      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
17895      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
17896      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
17897      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
17898      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
17899      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
17900      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
17901      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
17902      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
17903      745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,    -1,
17904       18,    19,    20,    21,   759,   760,    -1,    -1,    -1,    -1,
17905      765,    29,    30,    -1,    32,   770,    -1,    -1,    -1,   774,
17906      775,    39,    40,   778,   779,    43,    44,    45,    46,    -1,
17907       48,    49,    -1,    51,    52,    -1,    -1,    -1,    -1,    57,
17908       -1,    -1,    -1,    61,    -1,    -1,    64,    -1,    -1,    -1,
17909       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17910       -1,    -1,    -1,    -1,    -1,    -1,    84,    85,    86,    -1,
17911       88,    89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17912       -1,    -1,   100,   101,   102,    -1,   104,   105,    -1,    -1,
17913       -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,    -1,
17914       -1,   119,    -1,   121,    -1,    -1,    -1,    -1,    -1,    -1,
17915       -1,    -1,    -1,    -1,    -1,    -1,   134,    -1,    -1,    -1,
17916       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17917      148,    -1,    -1,    -1,    -1,   153,   154,    -1,   156,    -1,
17918       -1,    -1,    -1,    -1,   162,    -1,   164,    -1,    -1,   167,
17919       -1,    -1,    -1,    -1,   172,    -1,   174,   175,   176,    -1,
17920      178,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17921       -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,   197,
17922      198,   199,    -1,   201,    -1,    -1,    -1,    -1,    -1,    -1,
17923      208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17924       -1,   219,   220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17925      228,    -1,    -1,   231,    -1,    -1,    -1,    -1,    -1,    -1,
17926       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17927       -1,    -1,    -1,   251,    -1,    -1,    -1,    -1,    -1,   257,
17928      258,    -1,   260,   261,   262,    -1,    -1,    -1,   266,    -1,
17929       -1,    -1,    -1,    -1,    -1,    -1,   274,   275,   276,   277,
17930       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   287,
17931      288,   289,    -1,    -1,    -1,    -1,    -1,   295,    -1,   297,
17932       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17933       -1,   309,   310,   311,   312,   313,   314,   315,   316,   317,
17934      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
17935      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
17936      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
17937      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
17938      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
17939      368,   369,   370,    -1,   372,   373,   374,   375,   376,   377,
17940      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
17941      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
17942      398,   399,   400,   401,   402,   403,    -1,   405,   406,   407,
17943      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
17944      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
17945      428,   429,   430,   431,   432,    -1,    -1,   435,   436,   437,
17946      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
17947       -1,   449,   450,   451,   452,   453,   454,   455,   456,   457,
17948      458,   459,   460,   461,   462,   463,   464,    -1,   466,   467,
17949      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
17950      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
17951      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
17952      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
17953      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
17954      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
17955      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
17956      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
17957      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
17958      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
17959      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
17960      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
17961      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
17962      598,   599,   600,   601,   602,   603,   604,   605,   606,   607,
17963      608,   609,   610,   611,   612,   613,   614,   615,   616,   617,
17964      618,   619,   620,   621,   622,   623,   624,   625,   626,   627,
17965      628,   629,   630,   631,   632,   633,   634,   635,   636,   637,
17966      638,   639,   640,   641,   642,   643,   644,   645,   646,   647,
17967      648,   649,   650,   651,   652,   653,   654,   655,   656,   657,
17968      658,   659,   660,   661,   662,   663,   664,   665,   666,   667,
17969      668,   669,   670,   671,   672,    -1,   674,   675,   676,   677,
17970      678,   679,   680,   681,   682,   683,   684,   685,   686,   687,
17971      688,   689,   690,   691,   692,   693,   694,   695,   696,   697,
17972      698,   699,   700,   701,   702,   703,   704,   705,   706,   707,
17973      708,   709,   710,   711,   712,   713,   714,   715,   716,   717,
17974      718,   719,   720,   721,   722,   723,   724,   725,   726,   727,
17975      728,   729,   730,   731,   732,   733,   734,   735,   736,   737,
17976      738,   739,   740,   741,   742,   743,   744,   745,    18,   747,
17977      748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17978       -1,   759,   760,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17979       -1,    -1,   770,    -1,    -1,    -1,    -1,   775,    -1,    -1,
17980      778,   779,    -1,    -1,    -1,    -1,    -1,    57,    -1,    -1,
17981       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17982       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17983       -1,    -1,    -1,    -1,    -1,    -1,    86,    -1,    -1,    89,
17984       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17985       -1,    -1,    -1,    -1,   104,   105,    -1,    -1,    -1,   109,
17986      110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17987       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17988       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17989       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,
17990       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17991       -1,    -1,    -1,    -1,    -1,    -1,    -1,   167,    -1,    -1,
17992       -1,    -1,    -1,    -1,    -1,   175,   176,    -1,    -1,    -1,
17993       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17994       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17995       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17996       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17997       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17998       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17999       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18000       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18001       -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,
18002       -1,    -1,    -1,    -1,    -1,   275,   276,   277,    -1,    -1,
18003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18004       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18005       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,
18006      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
18007      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
18008      330,   331,   332,   333,   334,   335,   336,   337,   338,    -1,
18009      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
18010      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
18011      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
18012      370,    -1,   372,   373,   374,   375,   376,   377,   378,   379,
18013      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
18014      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
18015      400,   401,   402,   403,    -1,   405,   406,   407,   408,   409,
18016      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
18017      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
18018      430,   431,   432,    -1,    -1,   435,   436,   437,   438,   439,
18019      440,   441,   442,   443,   444,   445,   446,   447,    -1,   449,
18020      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
18021      460,   461,   462,   463,   464,    -1,   466,   467,   468,   469,
18022      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
18023      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
18024      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
18025      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
18026      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
18027      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
18028      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
18029      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
18030      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
18031      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
18032      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
18033      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
18034      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
18035      600,   601,   602,   603,   604,   605,   606,   607,   608,   609,
18036      610,   611,   612,   613,   614,   615,   616,   617,   618,   619,
18037      620,   621,   622,   623,   624,   625,   626,   627,   628,   629,
18038      630,   631,   632,   633,   634,   635,   636,   637,   638,   639,
18039      640,   641,   642,   643,   644,   645,   646,   647,   648,   649,
18040      650,   651,   652,   653,   654,   655,   656,   657,   658,   659,
18041      660,   661,   662,   663,   664,   665,   666,   667,   668,   669,
18042      670,   671,   672,    24,   674,   675,   676,   677,   678,   679,
18043      680,   681,   682,   683,   684,   685,   686,   687,   688,   689,
18044      690,   691,   692,   693,   694,   695,   696,   697,   698,   699,
18045      700,   701,   702,   703,   704,   705,   706,   707,   708,   709,
18046      710,   711,   712,   713,   714,   715,   716,   717,   718,   719,
18047      720,   721,   722,   723,   724,   725,   726,   727,   728,   729,
18048      730,   731,   732,   733,   734,   735,   736,   737,   738,   739,
18049      740,   741,   742,   743,   744,   745,    -1,   747,   748,   749,
18050      750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,
18051       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18052       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   778,   779,
18053       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18054       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18055       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18056       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18057       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18058       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18060       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18061       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18062       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18063       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18065       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18066       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18068       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18069       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18070       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
18071      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
18072      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
18073      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
18074      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
18075      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
18076      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
18077       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
18078      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
18079      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
18080      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
18081      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
18082      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
18083      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
18084      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
18085      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
18086      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
18087      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
18088      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
18089      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
18090      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
18091      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
18092      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
18093      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
18094      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
18095      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
18096      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
18097      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
18098      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
18099      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
18100      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
18101      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
18102      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
18103      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
18104      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
18105      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
18106      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
18107      671,   672,    24,   674,   675,   676,   677,   678,   679,   680,
18108      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
18109      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
18110      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
18111      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
18112      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
18113      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
18114      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
18115       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,
18116      761,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18117       -1,    -1,    -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,
18118       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18119       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18120       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18121       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18122       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18123       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18124       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18125       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18126       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18127       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18128       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18129       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18131       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18132       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18133       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18134       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18135       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
18136      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
18137      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
18138      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
18139      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
18140      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
18141      362,   363,    -1,   365,   366,   367,   368,   369,   370,    -1,
18142      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
18143      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
18144      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
18145      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
18146      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
18147      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
18148      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
18149      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
18150      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
18151      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
18152      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
18153      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
18154      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
18155      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
18156      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
18157      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
18158      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
18159      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
18160      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
18161      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
18162      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
18163      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
18164      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
18165      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
18166      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
18167      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
18168      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
18169      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
18170      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
18171      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
18172      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
18173      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
18174      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
18175      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
18176      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
18177      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
18178      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
18179      742,   743,   744,   745,    32,   747,   748,   749,   750,    -1,
18180       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   761,
18181       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18182       -1,    -1,    -1,    61,    -1,    -1,   778,    -1,    -1,    -1,
18183       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18184       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18185       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18186       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18187       -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18188       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18190       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18191       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18192       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18196       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18198       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18199       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18200       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18201       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18202       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18203       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18204       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18205       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18206       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18207       -1,   309,   310,   311,   312,   313,   314,   315,   316,   317,
18208      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
18209      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18210      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
18211      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18212      358,   359,   360,   361,   362,   363,    -1,   365,   366,   367,
18213      368,   369,   370,    -1,   372,   373,   374,   375,   376,   377,
18214      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18215      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
18216      398,   399,   400,   401,   402,   403,    -1,   405,   406,   407,
18217      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
18218      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
18219      428,   429,   430,   431,   432,    -1,    -1,   435,   436,   437,
18220      438,   439,   440,   441,   442,   443,   444,   445,   446,   447,
18221       -1,   449,   450,   451,   452,   453,   454,   455,   456,   457,
18222      458,   459,   460,   461,   462,   463,   464,    -1,   466,   467,
18223      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
18224      478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
18225      488,   489,   490,   491,   492,   493,   494,   495,   496,   497,
18226      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
18227      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
18228      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
18229      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
18230      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
18231      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
18232      558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
18233      568,   569,   570,   571,   572,   573,   574,   575,   576,   577,
18234      578,   579,   580,   581,   582,   583,   584,   585,   586,   587,
18235      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
18236      598,   599,   600,   601,   602,   603,   604,   605,   606,   607,
18237      608,   609,   610,   611,   612,   613,   614,   615,   616,   617,
18238      618,   619,   620,   621,   622,   623,   624,   625,   626,   627,
18239      628,   629,   630,   631,   632,   633,   634,   635,   636,   637,
18240      638,   639,   640,   641,   642,   643,   644,   645,   646,   647,
18241      648,   649,   650,   651,   652,   653,   654,   655,   656,   657,
18242      658,   659,   660,   661,   662,   663,   664,   665,   666,   667,
18243      668,   669,   670,   671,   672,    -1,   674,   675,   676,   677,
18244      678,   679,   680,   681,   682,   683,   684,   685,   686,   687,
18245      688,   689,   690,   691,   692,   693,   694,   695,   696,   697,
18246      698,   699,   700,   701,   702,   703,   704,   705,   706,   707,
18247      708,   709,   710,   711,   712,   713,   714,   715,   716,   717,
18248      718,   719,   720,   721,   722,   723,   724,   725,   726,   727,
18249      728,   729,   730,   731,   732,   733,   734,   735,   736,   737,
18250      738,   739,   740,   741,   742,   743,   744,   745,    32,   747,
18251      748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18252       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18253       -1,    -1,    -1,    -1,    -1,    -1,    -1,    61,    -1,    -1,
18254       -1,   779,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18255       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18256       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18257       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18258       -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
18259       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18260       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18261       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18262       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18263       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18264       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18266       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18267       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18268       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18269       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18270       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18271       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18272       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18273       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18274       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18275       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18276       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18277       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18278       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
18279      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18280      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
18281      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
18282      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18283      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
18284       -1,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
18285      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
18286      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
18287      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
18288       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
18289      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
18290      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
18291       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
18292      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
18293      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18294      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
18295      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
18296      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
18297      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
18298      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
18299      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
18300      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
18301      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
18302      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
18303      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
18304      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
18305      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
18306      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
18307      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
18308      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
18309      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
18310      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
18311      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
18312      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
18313      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
18314      664,   665,   666,   667,   668,   669,   670,   671,   672,    -1,
18315      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
18316      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
18317      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
18318      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
18319      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
18320      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
18321      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
18322      744,   745,    -1,   747,   748,   749,   750,     6,     7,    -1,
18323       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18324       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18325       -1,    -1,    -1,    -1,    -1,   779,    -1,    -1,    -1,    -1,
18326       -1,    -1,    41,    -1,    -1,    -1,    -1,    46,    -1,    -1,
18327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18328       -1,    -1,    -1,    -1,    63,    -1,    -1,    -1,    -1,    -1,
18329       -1,    -1,    -1,    -1,    73,    -1,    -1,    -1,    -1,    -1,
18330       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18331       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,
18332       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18333      109,   110,    -1,    -1,    -1,   114,    -1,    -1,    -1,    -1,
18334      119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18335       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   138,
18336       -1,    -1,    -1,    -1,    -1,    -1,   145,    -1,    -1,    -1,
18337       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18338       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18339       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18340       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18341       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18342       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18343       -1,    -1,    -1,    -1,    -1,    -1,   215,    -1,    -1,    -1,
18344       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18345       -1,    -1,    -1,    -1,   233,    -1,    -1,    -1,    -1,    -1,
18346       -1,    -1,   241,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18347       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18348       -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,
18349       -1,    -1,    -1,    -1,   273,    -1,    -1,    -1,    -1,    -1,
18350       -1,    -1,    -1,    -1,   283,   284,    -1,    -1,    -1,    -1,
18351       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18352       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18353      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
18354      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
18355      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
18356       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
18357      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
18358      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
18359      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
18360      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
18361      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
18362      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
18363      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
18364      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
18365      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
18366      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
18367      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
18368      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
18369      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
18370      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
18371      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
18372      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
18373      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
18374      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
18375      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
18376      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
18377      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
18378      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
18379      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
18380      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
18381      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
18382      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
18383      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
18384      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
18385      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
18386      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
18387      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
18388      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
18389      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
18390      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
18391      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
18392      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
18393      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
18394      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
18395      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
18396      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
18397      749,   750,     6,     7,    -1,    -1,    -1,    -1,    -1,    -1,
18398       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18399       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18400       -1,    -1,    -1,    -1,    -1,    -1,    -1,    41,    -1,    -1,
18401       -1,    -1,    46,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18402       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    63,
18403       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
18404       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18405       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18406       -1,    -1,    -1,    -1,    98,    -1,    -1,    -1,    -1,    -1,
18407       -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
18408      114,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
18409       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18410       -1,    -1,    -1,    -1,   138,    -1,    -1,    -1,    -1,    -1,
18411       -1,   145,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18412       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18413       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18414       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18415       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18416       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18417       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18418       -1,   215,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18419       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   233,
18420       -1,    -1,    -1,    -1,    -1,    -1,    -1,   241,    -1,    -1,
18421       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18422       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18423       -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,   273,
18424       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   283,
18425      284,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18426       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18427       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
18428      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18429      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
18430      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
18431      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18432      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
18433       -1,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
18434      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
18435      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
18436      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
18437       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
18438      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
18439      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
18440       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
18441      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
18442      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18443      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
18444      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
18445      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
18446      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
18447      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
18448      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
18449      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
18450      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
18451      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
18452      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
18453      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
18454      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
18455      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
18456      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
18457      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
18458      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
18459      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
18460      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
18461      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
18462      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
18463      664,   665,   666,   667,   668,   669,   670,   671,   672,     6,
18464      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
18465      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
18466      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
18467      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
18468      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
18469      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
18470      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
18471      744,   745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,
18472       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18473       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18474       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
18475       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18476       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18477       -1,   138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18478       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18479       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18480       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18481       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18482       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18483       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18484       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18485       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18486       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18487       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18488       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18489       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
18490       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18491       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18492       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18493       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18494       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
18495      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
18496      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
18497      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
18498      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
18499      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
18500      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
18501      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
18502      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
18503      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
18504      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
18505      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
18506      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
18507      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
18508      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
18509      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
18510      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
18511      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
18512      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
18513      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
18514      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
18515      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
18516      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
18517      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
18518      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
18519      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
18520      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
18521      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
18522      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
18523      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
18524      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
18525      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
18526      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
18527      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
18528      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
18529      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
18530      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
18531      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
18532      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
18533      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
18534      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
18535      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
18536      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
18537      737,   738,   739,   740,   741,   742,   743,   744,   745,    35,
18538      747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
18539       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18540       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18542       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18543       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18544       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18545       -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
18546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18547       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18548       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18549       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18550       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18551       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18552       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18553       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18554       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18555       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18556       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18557       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18558       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18559       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18560       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18561       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18562       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18563       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18564       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18565       -1,    -1,    -1,   309,   310,   311,   312,   313,   314,   315,
18566      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
18567      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
18568      336,   337,   338,    -1,   340,   341,   342,   343,   344,   345,
18569      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
18570      356,   357,   358,   359,   360,   361,   362,   363,    -1,   365,
18571      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
18572      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
18573      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
18574      396,   397,   398,   399,   400,   401,   402,   403,    -1,   405,
18575      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
18576      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
18577      426,   427,   428,   429,   430,   431,   432,    -1,    -1,   435,
18578      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
18579      446,   447,    -1,   449,   450,   451,   452,   453,   454,   455,
18580      456,   457,   458,   459,   460,   461,   462,   463,   464,    -1,
18581      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
18582      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
18583      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
18584      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
18585      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
18586      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
18587      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
18588      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
18589      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
18590      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
18591      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
18592      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
18593      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
18594      596,   597,   598,   599,   600,   601,   602,   603,   604,   605,
18595      606,   607,   608,   609,   610,   611,   612,   613,   614,   615,
18596      616,   617,   618,   619,   620,   621,   622,   623,   624,   625,
18597      626,   627,   628,   629,   630,   631,   632,   633,   634,   635,
18598      636,   637,   638,   639,   640,   641,   642,   643,   644,   645,
18599      646,   647,   648,   649,   650,   651,   652,   653,   654,   655,
18600      656,   657,   658,   659,   660,   661,   662,   663,   664,   665,
18601      666,   667,   668,   669,   670,   671,   672,     6,   674,   675,
18602      676,   677,   678,   679,   680,   681,   682,   683,   684,   685,
18603      686,   687,   688,   689,   690,   691,   692,   693,   694,   695,
18604      696,   697,   698,   699,   700,   701,   702,   703,   704,   705,
18605      706,   707,   708,   709,   710,   711,   712,   713,   714,   715,
18606      716,   717,   718,   719,   720,   721,   722,   723,   724,   725,
18607      726,   727,   728,   729,   730,   731,   732,   733,   734,   735,
18608      736,   737,   738,   739,   740,   741,   742,   743,   744,   745,
18609       -1,   747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,
18610       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18611       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18612      109,   110,    -1,   779,    -1,    -1,    -1,    -1,    -1,    -1,
18613       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18614       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18615       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18618       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18619       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18620       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18622       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18623       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18624       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18625       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18626       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18627       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18628       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18629       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18630       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18631       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18632      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
18633      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
18634      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
18635       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
18636      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
18637      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
18638      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
18639      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
18640      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
18641      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
18642      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
18643      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
18644      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
18645      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
18646      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
18647      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
18648      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
18649      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
18650      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
18651      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
18652      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
18653      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
18654      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
18655      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
18656      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
18657      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
18658      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
18659      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
18660      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
18661      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
18662      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
18663      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
18664      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
18665      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
18666      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
18667      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
18668      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
18669      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
18670      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
18671      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
18672      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
18673      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
18674      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
18675      739,   740,   741,   742,   743,   744,   745,    29,   747,   748,
18676      749,   750,    -1,    -1,    -1,    -1,    38,    -1,    -1,    -1,
18677       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18678       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18679       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18680       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18681       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
18682       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
18683       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
18684       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18685       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
18686       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18687       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
18688       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18689       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18690       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18691       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18692       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18693       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18694       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
18695       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
18696       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18697       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18698       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18699       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18700       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18701       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18702       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
18703       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
18704       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
18705      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
18706      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
18707      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
18708       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
18709      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
18710      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
18711      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
18712      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
18713      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
18714       -1,   413,   414,   415,   416,    -1,   418,   419,   420,   421,
18715      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
18716      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
18717      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
18718      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
18719      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
18720      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
18721      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
18722      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
18723      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
18724      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
18725      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
18726      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
18727      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
18728      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
18729      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
18730      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
18731      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
18732      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
18733      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
18734      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
18735      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
18736      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
18737      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
18738      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
18739       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
18740      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
18741      682,    36,   684,   685,   686,   687,   688,   689,   690,   691,
18742      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
18743      702,   703,    -1,   705,   706,   707,   708,   709,   710,   711,
18744      712,    -1,   714,   715,   716,    -1,   718,   719,   720,   721,
18745       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
18746      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
18747       95,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
18748       -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,   114,
18749       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18750       -1,   773,    -1,    -1,   129,    -1,    -1,    -1,    -1,    -1,
18751       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18752       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18753       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18754       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18755       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18756       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18757       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18758       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18759       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18760       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18761       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   244,
18762       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18763       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18764       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18765       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18766       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18767       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18768       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
18769      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
18770      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
18771      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
18772      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
18773      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
18774      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
18775      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
18776      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
18777      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
18778      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
18779      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
18780      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
18781      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
18782      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
18783      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
18784       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
18785      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
18786      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
18787      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
18788      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
18789      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
18790      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
18791      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
18792      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
18793      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
18794      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
18795      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
18796      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
18797      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
18798      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
18799      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
18800      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
18801      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
18802      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
18803      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
18804      665,   666,   667,   668,   669,   670,   671,   672,    11,   674,
18805      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
18806      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
18807      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
18808      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
18809      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
18810      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
18811      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
18812      745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,    -1,
18813       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18814       -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,
18815       -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,    -1,    -1,
18816       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18817       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18818       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18819       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18820       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18821       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18822       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18823       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18824       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18825       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18826       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18827       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18828       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18829       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18830       -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,
18831       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18832       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18833       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18834       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
18835      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
18836      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
18837      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
18838      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
18839      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
18840      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
18841      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
18842      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
18843      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
18844      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
18845      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
18846      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
18847       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
18848      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
18849      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
18850      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
18851      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
18852      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
18853      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
18854      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
18855      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
18856      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
18857      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
18858      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
18859      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
18860      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
18861      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
18862      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
18863      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
18864      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
18865      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
18866      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
18867      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
18868      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
18869      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
18870      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
18871       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
18872      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
18873      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
18874      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
18875      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
18876      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
18877      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
18878      743,   744,   745,    17,   747,   748,   749,   750,    -1,    -1,
18879       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18880       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18881       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18882       -1,    -1,    -1,    -1,    -1,    -1,    -1,    61,    -1,    -1,
18883       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18885       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18886       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18887       -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
18888       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18889       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18890       -1,    -1,    -1,    -1,   138,    -1,    -1,    -1,    -1,    -1,
18891       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18892       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18893       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18895       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18896       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18897       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18898       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18899       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18900       -1,    -1,    -1,    -1,   238,    -1,    -1,    -1,    -1,    -1,
18901       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18902       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18903       -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18904       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18905       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18906       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18907       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
18908      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18909      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
18910      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
18911      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18912      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
18913       -1,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
18914      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
18915      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
18916      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
18917       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
18918      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
18919      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
18920       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
18921      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
18922      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18923      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
18924      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
18925      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
18926      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
18927      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
18928      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
18929      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
18930      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
18931      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
18932      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
18933      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
18934      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
18935      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
18936      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
18937      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
18938      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
18939      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
18940      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
18941      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
18942      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
18943      664,   665,   666,   667,   668,   669,   670,   671,   672,    -1,
18944      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
18945      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
18946      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
18947      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
18948      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
18949      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
18950      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
18951      744,   745,    -1,   747,   748,   749,   750,    16,    17,    -1,
18952      754,    -1,    -1,    22,    23,    -1,    -1,    -1,    -1,    -1,
18953       -1,    -1,    -1,    32,    -1,    -1,    -1,    -1,    -1,    -1,
18954       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18955       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    58,
18956       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18957       -1,    70,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18958       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18959       -1,    90,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18960       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18961      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18962       -1,    -1,    -1,    -1,   123,    -1,    -1,    -1,    -1,    -1,
18963       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18964       -1,    -1,    -1,    -1,    -1,    -1,    -1,   146,   147,    -1,
18965      149,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   157,   158,
18966      159,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18967       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
18968       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18969       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18970       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18971       -1,    -1,    -1,   212,    -1,    -1,    -1,    -1,    -1,    -1,
18972       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18973       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   237,    -1,
18974       -1,    -1,    -1,    -1,   243,    -1,    -1,    -1,    -1,    -1,
18975       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18976       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   268,
18977      269,   270,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18978       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18979       -1,    -1,    -1,    -1,   293,   294,    -1,    -1,    -1,    -1,
18980       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18981      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
18982      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
18983      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
18984       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
18985      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
18986      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
18987      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
18988      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
18989      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
18990      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
18991      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
18992      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
18993      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
18994      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
18995      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
18996      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
18997      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
18998      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
18999      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
19000      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
19001      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
19002      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
19003      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
19004      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
19005      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
19006      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
19007      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
19008      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
19009      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
19010      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
19011      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
19012      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
19013      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
19014      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
19015      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
19016      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
19017      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
19018      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
19019      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
19020      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
19021      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
19022      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
19023      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
19024      739,   740,   741,   742,   743,   744,   745,    17,   747,   748,
19025      749,   750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19026       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19027       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19028       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19029       -1,    61,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19030       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19031       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19032       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19033       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,
19034      110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19035       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19036       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   138,    -1,
19037       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19038       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19039       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19040       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19041       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19042       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19043       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19044       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19045       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19046       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19047       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19048       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19049       -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,
19050       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19051       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19052       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19053       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,
19054      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
19055      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
19056      330,   331,   332,   333,   334,   335,   336,   337,   338,    -1,
19057      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
19058      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
19059      360,   361,   362,   363,    -1,   365,   366,   367,   368,   369,
19060      370,    -1,   372,   373,   374,   375,   376,   377,   378,   379,
19061      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
19062      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
19063      400,   401,   402,   403,    -1,   405,   406,   407,   408,   409,
19064      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
19065      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
19066      430,   431,   432,    -1,    -1,   435,   436,   437,   438,   439,
19067      440,   441,   442,   443,   444,   445,   446,   447,    -1,   449,
19068      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
19069      460,   461,   462,   463,   464,    -1,   466,   467,   468,   469,
19070      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
19071      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
19072      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
19073      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
19074      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
19075      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
19076      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
19077      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
19078      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
19079      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
19080      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
19081      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
19082      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
19083      600,   601,   602,   603,   604,   605,   606,   607,   608,   609,
19084      610,   611,   612,   613,   614,   615,   616,   617,   618,   619,
19085      620,   621,   622,   623,   624,   625,   626,   627,   628,   629,
19086      630,   631,   632,   633,   634,   635,   636,   637,   638,   639,
19087      640,   641,   642,   643,   644,   645,   646,   647,   648,   649,
19088      650,   651,   652,   653,   654,   655,   656,   657,   658,   659,
19089      660,   661,   662,   663,   664,   665,   666,   667,   668,   669,
19090      670,   671,   672,    -1,   674,   675,   676,   677,   678,   679,
19091      680,   681,   682,   683,   684,   685,   686,   687,   688,   689,
19092      690,   691,   692,   693,   694,   695,   696,   697,   698,   699,
19093      700,   701,   702,   703,   704,   705,   706,   707,   708,   709,
19094      710,   711,   712,   713,   714,   715,   716,   717,   718,   719,
19095      720,   721,   722,   723,   724,   725,   726,   727,   728,   729,
19096      730,   731,   732,   733,   734,   735,   736,   737,   738,   739,
19097      740,   741,   742,   743,   744,   745,    17,   747,   748,   749,
19098      750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19100       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19102       61,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19103       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19104       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19105       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19106       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,
19107       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19108       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19109       -1,    -1,    -1,    -1,    -1,    -1,    -1,   138,    -1,    -1,
19110       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19111       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19112       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19113       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19114       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19115       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19116       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19117       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19118       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19119       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19120       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19121       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19122       -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,
19123       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19124       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19125       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19126       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
19127      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
19128      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
19129      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
19130      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
19131      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
19132      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
19133       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
19134      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
19135      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
19136      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
19137      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
19138      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
19139      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
19140      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
19141      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
19142      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
19143      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
19144      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
19145      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
19146      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
19147      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
19148      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
19149      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
19150      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
19151      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
19152      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
19153      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
19154      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
19155      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
19156      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
19157      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
19158      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
19159      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
19160      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
19161      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
19162      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
19163      671,   672,    17,   674,   675,   676,   677,   678,   679,   680,
19164      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
19165      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
19166      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
19167      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
19168      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
19169      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
19170      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
19171       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19172       -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
19173       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19174       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19175       -1,    -1,    -1,   138,    -1,    -1,    -1,    -1,    -1,    -1,
19176       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19177       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19178       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19179       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19180       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19181       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19182       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19183       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19184       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19185       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19186       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19187       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19188       -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19190       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19191       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19192       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
19193      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
19194      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
19195      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
19196      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
19197      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
19198      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
19199      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
19200      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
19201      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
19202      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
19203      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
19204      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
19205      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
19206      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
19207      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
19208       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
19209      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
19210      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
19211      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
19212      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
19213      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
19214      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
19215      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
19216      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
19217      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
19218      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
19219      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
19220      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
19221      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
19222      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
19223      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
19224      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
19225      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
19226      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
19227      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
19228      665,   666,   667,   668,   669,   670,   671,   672,    18,   674,
19229      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
19230      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
19231      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
19232      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
19233      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
19234      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
19235      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
19236      745,    -1,   747,   748,   749,   750,    -1,    -1,    -1,    -1,
19237       -1,    -1,    -1,    -1,   104,   105,    -1,    -1,    -1,   109,
19238      110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19239       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19240       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19241       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19242       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19243       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19244       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19245       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19246       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19247       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19248       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19249       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19250       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19251       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19252       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19253       -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,
19254       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19255       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19256       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19257       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,
19258      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
19259      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
19260      330,   331,   332,   333,   334,   335,   336,   337,   338,    -1,
19261      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
19262      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
19263      360,   361,   362,   363,    -1,   365,   366,   367,   368,   369,
19264      370,    -1,   372,   373,   374,   375,   376,   377,   378,   379,
19265      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
19266      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
19267      400,   401,   402,   403,    -1,   405,   406,   407,   408,   409,
19268      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
19269      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
19270      430,   431,   432,    -1,    -1,   435,   436,   437,   438,   439,
19271      440,   441,   442,   443,   444,   445,   446,   447,    -1,   449,
19272      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
19273      460,   461,   462,   463,   464,    -1,   466,   467,   468,   469,
19274      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
19275      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
19276      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
19277      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
19278      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
19279      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
19280      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
19281      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
19282      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
19283      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
19284      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
19285      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
19286      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
19287      600,   601,   602,   603,   604,   605,   606,   607,   608,   609,
19288      610,   611,   612,   613,   614,   615,   616,   617,   618,   619,
19289      620,   621,   622,   623,   624,   625,   626,   627,   628,   629,
19290      630,   631,   632,   633,   634,   635,   636,   637,   638,   639,
19291      640,   641,   642,   643,   644,   645,   646,   647,   648,   649,
19292      650,   651,   652,   653,   654,   655,   656,   657,   658,   659,
19293      660,   661,   662,   663,   664,   665,   666,   667,   668,   669,
19294      670,   671,   672,    -1,   674,   675,   676,   677,   678,   679,
19295      680,   681,   682,   683,   684,   685,   686,   687,   688,   689,
19296      690,   691,   692,   693,   694,   695,   696,   697,   698,   699,
19297      700,   701,   702,   703,   704,   705,   706,   707,   708,   709,
19298      710,   711,   712,   713,   714,   715,   716,   717,   718,   719,
19299      720,   721,   722,   723,   724,   725,   726,   727,   728,   729,
19300      730,   731,   732,   733,   734,   735,   736,   737,   738,   739,
19301      740,   741,   742,   743,   744,   745,    45,   747,   748,   749,
19302      750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19303       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19304       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19305       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19306       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19307       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19308      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19309       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19310       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   138,
19311       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19312       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19313       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19314       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19315       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19316       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19317       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19318       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19319       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19320       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19321       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19322       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19323       -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,
19324       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19326       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19328      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
19329      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
19330      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
19331       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
19332      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
19333      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
19334      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
19335      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
19336      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
19337      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
19338      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
19339      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
19340      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
19341      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
19342      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
19343      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
19344      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
19345      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
19346      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
19347      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
19348      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
19349      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
19350      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
19351      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
19352      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
19353      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
19354      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
19355      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
19356      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
19357      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
19358      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
19359      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
19360      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
19361      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
19362      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
19363      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
19364       -1,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
19365      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
19366      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
19367      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
19368      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
19369      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
19370      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
19371      739,   740,   741,   742,   743,   744,   745,    29,   747,   748,
19372      749,   750,    -1,    -1,    -1,    -1,    38,    -1,    -1,    -1,
19373       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19374       -1,   770,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19375       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19376       -1,    -1,    -1,    -1,    76,    77,    -1,    -1,    -1,    -1,
19377       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
19378       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
19379       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
19380       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19381       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
19382       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19383       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
19384       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19385       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19386       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19387       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19388       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19389       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19390       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
19391       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
19392       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19393       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19395       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19396       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19397       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19398       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
19399       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
19400       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
19401      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
19402      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
19403      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
19404       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
19405      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
19406      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
19407      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
19408      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
19409      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
19410       -1,   413,   414,   415,   416,   417,   418,   419,   420,   421,
19411      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
19412      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
19413      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
19414      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
19415      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
19416      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
19417      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
19418      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
19419      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
19420      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
19421      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
19422      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
19423      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
19424      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
19425      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
19426      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
19427      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
19428      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
19429      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
19430      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
19431      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
19432      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
19433      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
19434      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
19435       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
19436      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
19437      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
19438      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
19439      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
19440      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
19441       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
19442      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
19443       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    76,
19444       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19445       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
19446       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19447       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
19448       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
19449       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
19450       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19451       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
19452       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19453       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19454       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19455       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19456       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19457       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19458       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
19459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19460       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19461       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19462       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19463       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19464       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19465       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19466       -1,   298,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
19467       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
19468      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19469      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
19470       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
19471       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
19472      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
19473       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
19474      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
19475      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
19476      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
19477      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
19478      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
19479      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
19480      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
19481       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
19482      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
19483       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
19484      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
19485      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
19486      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
19487      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
19488      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
19489      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
19490      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
19491      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
19492      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
19493      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
19494       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
19495      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
19496      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
19497      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
19498      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
19499      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
19500      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
19501      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
19502      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
19503      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
19504      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
19505      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
19506      697,   698,   699,   700,   701,   702,   703,    29,   705,   706,
19507      707,   708,   709,   710,   711,   712,    38,   714,   715,   716,
19508       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
19509      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
19510      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
19511      747,    -1,   749,   750,    76,    -1,    -1,    -1,    -1,    -1,
19512       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
19513       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
19514       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
19515       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19516       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
19517       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19518       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
19519       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19520       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19521       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19522       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19523       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19524       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19525       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
19526       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
19527       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19528       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19529       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19530       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19531       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19532       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19533       -1,    -1,    -1,    -1,    -1,    -1,   298,    -1,   300,    -1,
19534       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
19535       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
19536      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
19537      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
19538      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
19539       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
19540      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
19541      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
19542      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
19543      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
19544      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
19545       -1,   413,   414,   415,   416,   417,   418,   419,   420,   421,
19546      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
19547      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
19548      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
19549      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
19550      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
19551      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
19552      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
19553      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
19554      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
19555      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
19556      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
19557      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
19558      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
19559      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
19560      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
19561      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
19562      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
19563      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
19564      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
19565      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
19566      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
19567      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
19568      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
19569      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
19570       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
19571      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
19572      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
19573      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
19574      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
19575      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
19576       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
19577      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
19578       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
19579       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19580       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
19581       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19582       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
19583       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
19584       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
19585       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19586       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
19587       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19588       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19589       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19590       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19591       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19592       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19593       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
19594       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19595       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19596       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19597       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19598       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19599       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19600       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19601       -1,    -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
19602       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
19603      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19604      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
19605       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
19606       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
19607      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
19608       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
19609      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
19610      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
19611      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
19612      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
19613      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
19614      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
19615      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
19616       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
19617      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
19618       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
19619      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
19620      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
19621      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
19622      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
19623      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
19624      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
19625      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
19626      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
19627      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
19628      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
19629       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
19630      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
19631      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
19632      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
19633      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
19634      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
19635      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
19636      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
19637      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
19638      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
19639      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
19640      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
19641      697,   698,   699,   700,   701,   702,   703,    29,   705,   706,
19642      707,   708,   709,   710,   711,   712,    38,   714,   715,   716,
19643       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
19644      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
19645      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
19646      747,    -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
19647       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
19648       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
19649       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
19650       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19651       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
19652       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19653       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
19654       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19655       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19656       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19657       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19658       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19659       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19660       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
19661       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
19662       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19663       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19664       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19665       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19666       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19667       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19668       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
19669       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
19670       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
19671      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
19672      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
19673      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
19674       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
19675      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
19676      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
19677      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
19678      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
19679      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
19680       -1,   413,   414,   415,   416,   417,   418,   419,   420,   421,
19681      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
19682      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
19683      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
19684      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
19685      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
19686      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
19687      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
19688      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
19689      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
19690      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
19691      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
19692      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
19693      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
19694      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
19695      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
19696      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
19697      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
19698      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
19699      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
19700      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
19701      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
19702      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
19703      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
19704      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
19705       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
19706      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
19707      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
19708      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
19709      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
19710      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
19711       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
19712      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
19713       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
19714       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19715       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
19716       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19717       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
19718       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
19719       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
19720       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19721       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
19722       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19723       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19724       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19725       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19726       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19727       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19728       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
19729       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19730       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19731       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19732       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19733       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19734       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19735       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19736       -1,    -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
19737       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
19738      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19739      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
19740       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
19741       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
19742      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
19743       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
19744      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
19745      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
19746      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
19747      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
19748      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
19749      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
19750      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
19751       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
19752      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
19753       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
19754      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
19755      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
19756      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
19757      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
19758      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
19759      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
19760      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
19761      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
19762      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
19763      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
19764       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
19765      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
19766      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
19767      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
19768      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
19769      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
19770      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
19771      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
19772      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
19773      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
19774      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
19775      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
19776      697,   698,   699,   700,   701,   702,   703,    29,   705,   706,
19777      707,   708,   709,   710,   711,   712,    38,   714,   715,   716,
19778       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
19779      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
19780      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
19781      747,    -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
19782       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
19783       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
19784       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
19785       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19786       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
19787       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19788       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
19789       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19790       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19791       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19792       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19793       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19794       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19795       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
19796       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
19797       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19798       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19799       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19800       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19801       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19802       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19803       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
19804       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
19805       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
19806      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
19807      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
19808      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
19809       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
19810      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
19811      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
19812      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
19813      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
19814      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
19815       -1,   413,   414,   415,   416,   417,   418,   419,   420,   421,
19816      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
19817      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
19818      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
19819      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
19820      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
19821      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
19822      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
19823      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
19824      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
19825      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
19826      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
19827      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
19828      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
19829      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
19830      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
19831      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
19832      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
19833      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
19834      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
19835      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
19836      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
19837      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
19838      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
19839      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
19840       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
19841      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
19842      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
19843      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
19844      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
19845      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
19846       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
19847      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
19848       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
19849       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19850       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
19851       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19852       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
19853       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
19854       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
19855       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19856       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
19857       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19858       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19859       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19860       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19861       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19862       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19863       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
19864       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19865       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19866       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19867       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19868       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19869       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19870       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19871       -1,    -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
19872       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
19873      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19874      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
19875       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
19876       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
19877      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
19878       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
19879      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
19880      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
19881      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
19882      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
19883      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
19884      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
19885      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
19886       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
19887      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
19888       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
19889      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
19890      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
19891      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
19892      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
19893      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
19894      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
19895      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
19896      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
19897      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
19898      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
19899       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
19900      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
19901      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
19902      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
19903      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
19904      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
19905      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
19906      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
19907      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
19908      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
19909      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
19910      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
19911      697,   698,   699,   700,   701,   702,   703,    29,   705,   706,
19912      707,   708,   709,   710,   711,   712,    38,   714,   715,   716,
19913       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
19914      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
19915      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
19916      747,    -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
19917       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
19918       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
19919       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
19920       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19921       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
19922       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19923       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
19924       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19925       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19926       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19927       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19928       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19929       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19930       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
19931       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
19932       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19933       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19934       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19935       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19936       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19937       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19938       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
19939       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
19940       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
19941      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
19942      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
19943      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
19944       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
19945      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
19946      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
19947      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
19948      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
19949      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
19950       -1,   413,   414,   415,   416,   417,   418,   419,   420,   421,
19951      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
19952      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
19953      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
19954      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
19955      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
19956      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
19957      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
19958      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
19959      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
19960      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
19961      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
19962      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
19963      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
19964      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
19965      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
19966      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
19967      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
19968      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
19969      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
19970      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
19971      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
19972      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
19973      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
19974      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
19975       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
19976      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
19977      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
19978      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
19979      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
19980      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
19981       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
19982      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
19983       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
19984       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19985       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
19986       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19987       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
19988       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
19989       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
19990       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19991       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
19992       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19993       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19994       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19995       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19996       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19997       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19998       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
19999       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20000       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20001       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20002       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20004       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20005       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20006       -1,    -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
20007       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
20008      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20009      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
20010       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
20011       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
20012      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
20013       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
20014      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
20015      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
20016      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
20017      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
20018      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
20019      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
20020      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
20021       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
20022      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
20023       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
20024      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
20025      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
20026      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
20027      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
20028      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
20029      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
20030      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
20031      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
20032      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
20033      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
20034       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
20035      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
20036      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
20037      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
20038      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
20039      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
20040      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
20041      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
20042      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
20043      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
20044      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
20045      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
20046      697,   698,   699,   700,   701,   702,   703,    29,   705,   706,
20047      707,   708,   709,   710,   711,   712,    38,   714,   715,   716,
20048       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
20049      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
20050      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
20051      747,    -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
20052       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
20053       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
20054       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
20055       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20056       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
20057       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20058       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
20059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20060       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20061       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20062       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20063       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20065       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
20066       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
20067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20068       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20069       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20070       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20071       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20072       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20073       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
20074       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
20075       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
20076      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
20077      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
20078      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
20079       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
20080      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
20081      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
20082      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
20083      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
20084      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
20085       -1,   413,   414,   415,   416,   417,   418,   419,   420,   421,
20086      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
20087      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
20088      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
20089      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
20090      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
20091      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
20092      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
20093      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
20094      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
20095      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
20096      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
20097      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
20098      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
20099      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
20100      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
20101      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
20102      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
20103      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
20104      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
20105      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
20106      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
20107      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
20108      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
20109      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
20110       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
20111      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
20112      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
20113      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
20114      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
20115      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
20116       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
20117      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
20118       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
20119       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20120       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
20121       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20122       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
20123       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
20124       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
20125       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20126       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
20127       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20128       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20129       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20131       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20132       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20133       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
20134       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20135       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20136       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20137       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20138       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20139       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20140       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20141       -1,    -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
20142       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
20143      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20144      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
20145       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
20146       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
20147      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
20148       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
20149      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
20150      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
20151      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
20152      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
20153      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
20154      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
20155      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
20156       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
20157      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
20158       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
20159      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
20160      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
20161      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
20162      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
20163      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
20164      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
20165      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
20166      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
20167      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
20168      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
20169       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
20170      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
20171      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
20172      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
20173      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
20174      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
20175      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
20176      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
20177      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
20178      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
20179      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
20180      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
20181      697,   698,   699,   700,   701,   702,   703,    29,   705,   706,
20182      707,   708,   709,   710,   711,   712,    38,   714,   715,   716,
20183       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
20184      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
20185      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
20186      747,    -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
20187       -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,
20188       92,    -1,    -1,    -1,    -1,    97,    -1,    -1,    -1,    -1,
20189       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,   111,
20190       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20191       -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
20192       -1,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    -1,
20194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20196       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20198       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20199       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20200       -1,    -1,    -1,    -1,    -1,    -1,    -1,   219,    -1,    -1,
20201       -1,    -1,    -1,   225,   226,    -1,    -1,    -1,    -1,    -1,
20202       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20203       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20204       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20205       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20206       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20207       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20208       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   300,    -1,
20209       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
20210       -1,   313,    -1,   315,   316,   317,   318,   319,   320,   321,
20211      322,   323,   324,   325,   326,   327,    -1,   329,   330,   331,
20212      332,   333,   334,   335,   336,    -1,   338,    -1,    -1,   341,
20213      342,   343,   344,   345,    -1,    -1,   348,   349,   350,   351,
20214       -1,    -1,    -1,   355,   356,   357,   358,   359,   360,   361,
20215      362,   363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,
20216      372,    -1,   374,    -1,   376,   377,    -1,   379,   380,   381,
20217      382,   383,   384,    -1,   386,   387,   388,   389,   390,   391,
20218      392,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
20219      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
20220       -1,   413,   414,   415,   416,    -1,   418,   419,   420,   421,
20221      422,   423,   424,   425,   426,   427,   428,    -1,    -1,    -1,
20222      432,    -1,   434,   435,   436,   437,   438,   439,   440,   441,
20223      442,   443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,
20224      452,   453,   454,   455,   456,   457,    -1,   459,   460,    -1,
20225      462,   463,    -1,    -1,   466,    -1,   468,   469,   470,   471,
20226      472,   473,   474,   475,   476,   477,   478,    -1,   480,   481,
20227      482,   483,   484,   485,   486,   487,   488,    -1,   490,   491,
20228      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
20229      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
20230      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
20231      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
20232      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
20233      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
20234      552,   553,   554,   555,   556,   557,   558,   559,   560,    -1,
20235      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
20236      572,   573,   574,   575,    -1,    -1,    -1,   579,   580,    -1,
20237      582,   583,   584,   585,    -1,   587,   588,   589,   590,   591,
20238      592,    -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,
20239      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
20240      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
20241      622,    -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,
20242      632,   633,   634,   635,   636,   637,    -1,   639,   640,   641,
20243      642,   643,   644,   645,    -1,   647,   648,   649,    -1,   651,
20244      652,   653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,
20245       -1,   663,   664,   665,    -1,   667,    -1,   669,   670,   671,
20246      672,    -1,   674,   675,   676,   677,    -1,   679,   680,    -1,
20247      682,    -1,   684,   685,   686,   687,   688,   689,   690,   691,
20248      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
20249      702,   703,    29,   705,   706,   707,   708,   709,   710,   711,
20250      712,    38,   714,   715,   716,    -1,   718,   719,   720,   721,
20251       -1,    -1,   724,   725,    -1,   727,   728,   729,   730,   731,
20252      732,   733,   734,   735,   736,   737,   738,   739,   740,    -1,
20253       -1,   743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,
20254       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20255       87,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
20256       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20257       -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
20258       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,
20259       -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,    -1,
20260       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20261       -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
20262       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20263       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20264       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20266       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20267       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20268       -1,    -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,
20269       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20270       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20271       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20272       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20273       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20274       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20275       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20276       -1,    -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,
20277       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
20278      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20279      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
20280       -1,   338,    -1,    -1,   341,   342,   343,   344,   345,    -1,
20281       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
20282      357,   358,   359,   360,   361,   362,   363,    -1,   365,    -1,
20283       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
20284      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
20285      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
20286      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
20287      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
20288       -1,   418,   419,   420,   421,   422,   423,   424,   425,   426,
20289      427,   428,    -1,    -1,    -1,   432,    -1,   434,   435,   436,
20290      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
20291       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
20292      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
20293       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
20294      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
20295      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
20296      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
20297      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
20298      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
20299      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
20300      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
20301      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
20302      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
20303      567,   568,   569,   570,   571,   572,   573,   574,   575,    -1,
20304       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
20305      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
20306      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
20307      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
20308      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
20309      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
20310      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
20311      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
20312      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
20313      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
20314      677,    29,   679,   680,    -1,   682,    -1,   684,   685,   686,
20315      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
20316      697,   698,   699,   700,   701,   702,   703,    -1,   705,   706,
20317      707,   708,   709,   710,   711,   712,    -1,   714,   715,   716,
20318       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
20319      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
20320      737,   738,   739,   740,    92,    -1,   743,   744,    -1,    -1,
20321      747,    -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
20322       -1,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,    -1,
20323       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20324       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20326       -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20328       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20329       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20330       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20331       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20332       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20333       -1,   219,    -1,    -1,    -1,    -1,    -1,   225,   226,    -1,
20334       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20335       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20336       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20337       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20338       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20339       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20340       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20341       -1,    -1,   300,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20342       -1,   309,   310,   311,    -1,   313,    -1,   315,   316,   317,
20343      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
20344       -1,   329,   330,   331,   332,   333,   334,   335,   336,    -1,
20345      338,    -1,    -1,   341,   342,   343,   344,   345,    -1,    -1,
20346      348,   349,   350,   351,    -1,    -1,    -1,   355,   356,   357,
20347      358,   359,    -1,   361,   362,   363,    -1,   365,    -1,    -1,
20348       -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,   377,
20349       -1,   379,   380,   381,   382,   383,   384,    -1,   386,   387,
20350      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
20351      398,   399,    -1,   401,   402,   403,    -1,   405,   406,   407,
20352      408,   409,   410,   411,    -1,   413,   414,   415,   416,    -1,
20353      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
20354      428,    -1,    -1,    -1,   432,    -1,    -1,   435,   436,   437,
20355      438,   439,   440,   441,   442,   443,   444,    -1,    -1,    -1,
20356       -1,    -1,   450,   451,   452,   453,   454,   455,   456,   457,
20357       -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,    -1,
20358      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
20359      478,    -1,   480,   481,   482,   483,   484,   485,   486,   487,
20360      488,    -1,   490,   491,   492,   493,   494,   495,   496,   497,
20361      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
20362      508,   509,   510,   511,   512,   513,   514,   515,   516,   517,
20363      518,   519,   520,   521,   522,   523,   524,   525,   526,   527,
20364      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
20365      538,   539,   540,   541,   542,   543,   544,   545,   546,   547,
20366      548,   549,   550,   551,   552,   553,   554,   555,   556,   557,
20367      558,   559,   560,    -1,   562,   563,   564,   565,   566,   567,
20368      568,   569,   570,   571,   572,   573,   574,    -1,    -1,    -1,
20369       -1,   579,   580,    -1,   582,   583,   584,   585,    -1,   587,
20370      588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,   597,
20371      598,   599,   600,   601,   602,   603,   604,   605,   606,   607,
20372      608,   609,   610,   611,   612,   613,   614,   615,   616,   617,
20373      618,   619,   620,   621,   622,    -1,   624,    -1,   626,   627,
20374       -1,   629,   630,    -1,   632,   633,   634,   635,   636,   637,
20375       -1,   639,   640,   641,   642,   643,   644,   645,    -1,   647,
20376      648,   649,    -1,   651,   652,   653,   654,    -1,   656,   657,
20377       -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,   667,
20378       -1,   669,   670,   671,   672,    -1,   674,   675,   676,   677,
20379       -1,   679,   680,    -1,   682,    -1,   684,   685,   686,   687,
20380      688,   689,   690,   691,   692,   693,   694,   695,   696,   697,
20381      698,   699,   700,   701,   702,   703,    -1,   705,   706,   707,
20382      708,   709,   710,   711,   712,    -1,   714,   715,   716,    -1,
20383      718,   719,   720,   721,    37,    38,   724,   725,    -1,   727,
20384      728,   729,   730,   731,   732,   733,   734,   735,   736,   737,
20385      738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,   747,
20386       -1,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20387       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20388       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20389       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20390       -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,
20391       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20392       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20393       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20395       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20396       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20397       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20398       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20399       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20400       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20401       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20402       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20403       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20404       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20405       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20406       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20407       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20408       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20409       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20410       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
20411      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
20412      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20413      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20414      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
20415      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20416      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
20417      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
20418      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
20419      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
20420      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
20421      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
20422      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20423      433,   434,   435,   436,   437,   438,   439,   440,   441,   442,
20424      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
20425      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
20426      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
20427      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
20428      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
20429      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
20430      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
20431      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
20432      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
20433      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
20434      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
20435      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
20436      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
20437      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
20438      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
20439      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
20440      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
20441      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
20442      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
20443      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
20444      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
20445      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
20446      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
20447       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
20448      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
20449      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
20450      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
20451      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
20452      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
20453      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
20454      743,   744,   745,    -1,   747,   748,   749,   750,    45,    46,
20455       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20456       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20457       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20460       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20461       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
20462       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20463       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20464       -1,   138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20465       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20466       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20467       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20468       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20469       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20470       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20471       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20472       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20473       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20474       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20475       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20476       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
20477       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20478       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20479       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20480       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20481       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
20482      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20483      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
20484      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
20485      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
20486      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
20487      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
20488      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
20489      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
20490      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
20491      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
20492      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
20493      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
20494      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
20495      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
20496      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
20497      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
20498      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
20499      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
20500      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
20501      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
20502      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
20503      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
20504      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
20505      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
20506      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
20507      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
20508      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
20509      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
20510      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
20511      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
20512      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
20513      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
20514      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
20515      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
20516      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
20517      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
20518      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
20519      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
20520      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
20521      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
20522      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
20523      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
20524      737,   738,   739,   740,   741,   742,   743,   744,   745,    45,
20525      747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
20526       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20527       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20528       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20529       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20530       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20531       -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
20532       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20533       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20534       -1,    -1,   138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20535       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20536       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20537       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20538       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20539       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20540       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20542       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20543       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20544       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20545       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20547      266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20548       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20549       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20550       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20551       -1,    -1,    -1,   309,   310,   311,   312,   313,   314,   315,
20552      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
20553      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
20554      336,   337,   338,    -1,   340,   341,   342,   343,   344,   345,
20555      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
20556      356,   357,   358,   359,   360,   361,   362,   363,    -1,   365,
20557      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
20558      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
20559      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
20560      396,   397,   398,   399,   400,   401,   402,   403,    -1,   405,
20561      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
20562      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
20563      426,   427,   428,   429,   430,   431,   432,    -1,    -1,   435,
20564      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
20565      446,   447,    -1,   449,   450,   451,   452,   453,   454,   455,
20566      456,   457,   458,   459,   460,   461,   462,   463,   464,    -1,
20567      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
20568      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
20569      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
20570      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
20571      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
20572      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
20573      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
20574      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
20575      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
20576      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
20577      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
20578      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
20579      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
20580      596,   597,   598,   599,   600,   601,   602,   603,   604,   605,
20581      606,   607,   608,   609,   610,   611,   612,   613,   614,   615,
20582      616,   617,   618,   619,   620,   621,   622,   623,   624,   625,
20583      626,   627,   628,   629,   630,   631,   632,   633,   634,   635,
20584      636,   637,   638,   639,   640,   641,   642,   643,   644,   645,
20585      646,   647,   648,   649,   650,   651,   652,   653,   654,   655,
20586      656,   657,   658,   659,   660,   661,   662,   663,   664,   665,
20587      666,   667,   668,   669,   670,   671,   672,    -1,   674,   675,
20588      676,   677,   678,   679,   680,   681,   682,   683,   684,   685,
20589      686,   687,   688,   689,   690,   691,   692,   693,   694,   695,
20590      696,   697,   698,   699,   700,   701,   702,   703,   704,   705,
20591      706,   707,   708,   709,   710,   711,   712,   713,   714,   715,
20592      716,   717,   718,   719,   720,   721,   722,   723,   724,   725,
20593      726,   727,   728,   729,   730,   731,   732,   733,   734,   735,
20594      736,   737,   738,   739,   740,   741,   742,   743,   744,   745,
20595       74,   747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,
20596       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20597       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20598       -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
20599       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20600       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20601       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20602       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20603       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20604       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20605       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20606       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20607       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20608       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20609       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20610       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20611       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20612       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20613       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20614       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20615       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20618       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
20619      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
20620      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
20621      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
20622      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
20623      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
20624       -1,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
20625      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
20626      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
20627      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
20628       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
20629      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
20630      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
20631       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
20632      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
20633      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
20634      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
20635      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
20636      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
20637      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
20638      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
20639      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
20640      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
20641      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
20642      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
20643      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
20644      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
20645      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
20646      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
20647      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
20648      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
20649      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
20650      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
20651      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
20652      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
20653      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
20654      664,   665,   666,   667,   668,   669,   670,   671,   672,    -1,
20655      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
20656      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
20657      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
20658      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
20659      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
20660      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
20661      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
20662      744,   745,    46,   747,   748,   749,   750,    -1,    -1,    -1,
20663       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20664       -1,    -1,    -1,    -1,    -1,    -1,   770,    -1,    -1,    -1,
20665       -1,   775,    -1,    -1,   778,    -1,    -1,    -1,    -1,    -1,
20666       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20667       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20668       -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
20669       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20670       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20671       -1,    -1,    -1,    -1,   138,    -1,    -1,    -1,    -1,    -1,
20672       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20673       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20674       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20675       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20676       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20677       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20678       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20679       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20680       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20681       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20682       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20683       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20684       -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20685       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20686       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20687       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20688       -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,
20689      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
20690      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
20691      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
20692      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
20693      354,   355,   356,   357,   358,   359,   360,   361,   362,   363,
20694       -1,   365,   366,   367,   368,   369,   370,    -1,   372,   373,
20695      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
20696      384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
20697      394,   395,   396,   397,   398,   399,   400,   401,   402,   403,
20698       -1,   405,   406,   407,   408,   409,   410,   411,   412,   413,
20699      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
20700      424,   425,   426,   427,   428,   429,   430,   431,   432,    -1,
20701       -1,   435,   436,   437,   438,   439,   440,   441,   442,   443,
20702      444,   445,   446,   447,    -1,   449,   450,   451,   452,   453,
20703      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
20704      464,    -1,   466,   467,   468,   469,   470,   471,   472,   473,
20705      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
20706      484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
20707      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
20708      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
20709      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
20710      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
20711      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
20712      544,   545,   546,   547,   548,   549,   550,   551,   552,   553,
20713      554,   555,   556,   557,   558,   559,   560,   561,   562,   563,
20714      564,   565,   566,   567,   568,   569,   570,   571,   572,   573,
20715      574,   575,   576,   577,   578,   579,   580,   581,   582,   583,
20716      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
20717      594,   595,   596,   597,   598,   599,   600,   601,   602,   603,
20718      604,   605,   606,   607,   608,   609,   610,   611,   612,   613,
20719      614,   615,   616,   617,   618,   619,   620,   621,   622,   623,
20720      624,   625,   626,   627,   628,   629,   630,   631,   632,   633,
20721      634,   635,   636,   637,   638,   639,   640,   641,   642,   643,
20722      644,   645,   646,   647,   648,   649,   650,   651,   652,   653,
20723      654,   655,   656,   657,   658,   659,   660,   661,   662,   663,
20724      664,   665,   666,   667,   668,   669,   670,   671,   672,    -1,
20725      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
20726      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
20727      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
20728      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
20729      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
20730      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
20731      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
20732      744,   745,    -1,   747,   748,   749,   750,    57,    -1,    -1,
20733       -1,    61,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20734       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20735       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    89,
20736       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20737       -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,   109,
20738      110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20739       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20740       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20741       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,
20742       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20743       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20744       -1,    -1,    -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,
20745       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20746       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20747       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20748       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20749       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20750       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20751       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20752       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20753       -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,
20754       -1,    -1,    -1,    -1,    -1,    -1,   276,    -1,    -1,    -1,
20755       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20756       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20757       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,
20758      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
20759      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
20760      330,   331,   332,   333,   334,   335,   336,   337,   338,    -1,
20761      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
20762      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
20763      360,   361,   362,   363,    -1,   365,   366,   367,   368,   369,
20764      370,    -1,   372,   373,   374,   375,   376,   377,   378,   379,
20765      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
20766      390,   391,   392,   393,   394,   395,   396,   397,   398,   399,
20767      400,   401,   402,   403,    -1,   405,   406,   407,   408,   409,
20768      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
20769      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
20770      430,   431,   432,    -1,    -1,   435,   436,   437,   438,   439,
20771      440,   441,   442,   443,   444,   445,   446,   447,    -1,   449,
20772      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
20773      460,   461,   462,   463,   464,    -1,   466,   467,   468,   469,
20774      470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
20775      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
20776      490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
20777      500,   501,   502,   503,   504,   505,   506,   507,   508,   509,
20778      510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
20779      520,   521,   522,   523,   524,   525,   526,   527,   528,   529,
20780      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
20781      540,   541,   542,   543,   544,   545,   546,   547,   548,   549,
20782      550,   551,   552,   553,   554,   555,   556,   557,   558,   559,
20783      560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
20784      570,   571,   572,   573,   574,   575,   576,   577,   578,   579,
20785      580,   581,   582,   583,   584,   585,   586,   587,   588,   589,
20786      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
20787      600,   601,   602,   603,   604,   605,   606,   607,   608,   609,
20788      610,   611,   612,   613,   614,   615,   616,   617,   618,   619,
20789      620,   621,   622,   623,   624,   625,   626,   627,   628,   629,
20790      630,   631,   632,   633,   634,   635,   636,   637,   638,   639,
20791      640,   641,   642,   643,   644,   645,   646,   647,   648,   649,
20792      650,   651,   652,   653,   654,   655,   656,   657,   658,   659,
20793      660,   661,   662,   663,   664,   665,   666,   667,   668,   669,
20794      670,   671,   672,    -1,   674,   675,   676,   677,   678,   679,
20795      680,   681,   682,   683,   684,   685,   686,   687,   688,   689,
20796      690,   691,   692,   693,   694,   695,   696,   697,   698,   699,
20797      700,   701,   702,   703,   704,   705,   706,   707,   708,   709,
20798      710,   711,   712,   713,   714,   715,   716,   717,   718,   719,
20799      720,   721,   722,   723,   724,   725,   726,   727,   728,   729,
20800      730,   731,   732,   733,   734,   735,   736,   737,   738,   739,
20801      740,   741,   742,   743,   744,   745,    -1,   747,   748,   749,
20802      750,    57,    -1,    -1,    -1,    61,    -1,    -1,    -1,    -1,
20803       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20804       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20805       -1,    -1,    -1,    89,    -1,    -1,    -1,    -1,    -1,    -1,
20806       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,    -1,
20807       -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
20808       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20809       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20810       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20811       -1,    -1,   148,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20812       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20813       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20814      176,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20815       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20816       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20817       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20818       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20819       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20820       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20821       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20822       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20823      266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20824      276,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20825       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20826       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20827       -1,    -1,    -1,   309,   310,   311,   312,   313,   314,   315,
20828      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
20829      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
20830      336,   337,   338,    -1,   340,   341,   342,   343,   344,   345,
20831      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
20832      356,   357,   358,   359,   360,   361,   362,   363,    -1,   365,
20833      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
20834      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
20835      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
20836      396,   397,   398,   399,   400,   401,   402,   403,    -1,   405,
20837      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
20838      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
20839      426,   427,   428,   429,   430,   431,   432,    -1,    -1,   435,
20840      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
20841      446,   447,    -1,   449,   450,   451,   452,   453,   454,   455,
20842      456,   457,   458,   459,   460,   461,   462,   463,   464,    -1,
20843      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
20844      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
20845      486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
20846      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
20847      506,   507,   508,   509,   510,   511,   512,   513,   514,   515,
20848      516,   517,   518,   519,   520,   521,   522,   523,   524,   525,
20849      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
20850      536,   537,   538,   539,   540,   541,   542,   543,   544,   545,
20851      546,   547,   548,   549,   550,   551,   552,   553,   554,   555,
20852      556,   557,   558,   559,   560,   561,   562,   563,   564,   565,
20853      566,   567,   568,   569,   570,   571,   572,   573,   574,   575,
20854      576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
20855      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
20856      596,   597,   598,   599,   600,   601,   602,   603,   604,   605,
20857      606,   607,   608,   609,   610,   611,   612,   613,   614,   615,
20858      616,   617,   618,   619,   620,   621,   622,   623,   624,   625,
20859      626,   627,   628,   629,   630,   631,   632,   633,   634,   635,
20860      636,   637,   638,   639,   640,   641,   642,   643,   644,   645,
20861      646,   647,   648,   649,   650,   651,   652,   653,   654,   655,
20862      656,   657,   658,   659,   660,   661,   662,   663,   664,   665,
20863      666,   667,   668,   669,   670,   671,   672,    -1,   674,   675,
20864      676,   677,   678,   679,   680,   681,   682,   683,   684,   685,
20865      686,   687,   688,   689,   690,   691,   692,   693,   694,   695,
20866      696,   697,   698,   699,   700,   701,   702,   703,   704,   705,
20867      706,   707,   708,   709,   710,   711,   712,   713,   714,   715,
20868      716,   717,   718,   719,   720,   721,   722,   723,   724,   725,
20869      726,   727,   728,   729,   730,   731,   732,   733,   734,   735,
20870      736,   737,   738,   739,   740,   741,   742,   743,   744,   745,
20871       -1,   747,   748,   749,   750,    57,    -1,    -1,    -1,    61,
20872       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20873       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20874       -1,    -1,    -1,    -1,    -1,    -1,    -1,    89,    -1,    -1,
20875       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20876       -1,    -1,   104,    -1,    -1,    -1,    -1,   109,   110,    -1,
20877       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20878       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20879       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20880       -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,
20881       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20882       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20883       -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    -1,    -1,
20884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20885       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20886       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20887       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20888       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20889       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20890       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20891       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20892       -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,
20893       -1,    -1,    -1,    -1,   276,    -1,    -1,    -1,    -1,    -1,
20894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20895       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20896       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
20897      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
20898      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
20899      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
20900      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
20901      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
20902      362,   363,    -1,   365,   366,   367,   368,   369,   370,    -1,
20903      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
20904      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
20905      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
20906      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
20907      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
20908      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
20909      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
20910      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
20911      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
20912      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
20913      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
20914      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
20915      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
20916      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
20917      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
20918      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
20919      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
20920      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
20921      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
20922      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
20923      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
20924      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
20925      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
20926      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
20927      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
20928      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
20929      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
20930      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
20931      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
20932      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
20933      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
20934      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
20935      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
20936      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
20937      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
20938      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
20939      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
20940      742,   743,   744,   745,    61,   747,   748,   749,   750,    -1,
20941       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20942       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20943       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20944       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20945       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
20946       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20947       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20948       -1,   138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20949       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20950       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20951       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20952       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20953       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20954       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20955       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20956       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20957       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20958       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20959       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20960       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
20961       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20962       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20963       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20964       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20965       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
20966      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20967      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
20968      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
20969      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
20970      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
20971      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
20972      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
20973      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
20974      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
20975      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
20976      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
20977      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
20978      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
20979      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
20980      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
20981      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
20982      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
20983      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
20984      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
20985      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
20986      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
20987      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
20988      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
20989      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
20990      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
20991      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
20992      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
20993      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
20994      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
20995      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
20996      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
20997      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
20998      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
20999      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
21000      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
21001      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
21002      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
21003      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
21004      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
21005      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
21006      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
21007      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
21008      737,   738,   739,   740,   741,   742,   743,   744,   745,    61,
21009      747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
21010       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21011       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21012       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21013       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,
21014       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21015       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21016       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21017       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21018       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21019       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21020       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21021       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21022       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21023       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21024       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21025       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21026       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21027       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21028       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21029       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21030       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21031       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21032       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21033       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
21034      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
21035      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
21036      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
21037      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
21038      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
21039      362,   363,    -1,   365,   366,   367,   368,   369,   370,    -1,
21040      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
21041      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
21042      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
21043      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
21044      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
21045      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
21046      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
21047      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
21048      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
21049      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
21050      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
21051      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
21052      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
21053      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
21054      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
21055      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
21056      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
21057      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
21058      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
21059      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
21060      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
21061      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
21062      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
21063      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
21064      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
21065      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
21066      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
21067      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
21068      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
21069      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
21070      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
21071      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
21072      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
21073      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
21074      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
21075      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
21076      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
21077      742,   743,   744,   745,    61,   747,   748,   749,   750,    -1,
21078       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21079       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21080       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21081       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21082       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
21083       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21084       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21085       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21086       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21087       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21088       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21089       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21090       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21091       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21092       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21093       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21094       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21095       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21096       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21097       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21098       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21100       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21102       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
21103      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21104      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21105      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
21106      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21107      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
21108      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
21109      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21110      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
21111      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
21112      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
21113      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
21114      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
21115      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
21116      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
21117      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
21118      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
21119      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
21120      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
21121      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
21122      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
21123      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
21124      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
21125      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
21126      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
21127      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
21128      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
21129      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
21130      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
21131      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
21132      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
21133      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
21134      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
21135      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
21136      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
21137      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
21138      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
21139      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
21140      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
21141      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
21142      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
21143      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
21144      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
21145      737,   738,   739,   740,   741,   742,   743,   744,   745,    61,
21146      747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
21147       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21148       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21149       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21150       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,
21151       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21152       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21153       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21154       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21155       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21156       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21157       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21158       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21159       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21160       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21161       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21162       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21163       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21164       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21165       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21166       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21167       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21168       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21169       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21170       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
21171      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
21172      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
21173      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
21174      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
21175      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
21176      362,   363,    -1,   365,   366,   367,   368,   369,   370,    -1,
21177      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
21178      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
21179      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
21180      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
21181      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
21182      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
21183      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
21184      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
21185      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
21186      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
21187      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
21188      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
21189      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
21190      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
21191      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
21192      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
21193      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
21194      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
21195      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
21196      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
21197      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
21198      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
21199      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
21200      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
21201      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
21202      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
21203      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
21204      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
21205      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
21206      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
21207      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
21208      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
21209      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
21210      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
21211      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
21212      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
21213      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
21214      742,   743,   744,   745,    61,   747,   748,   749,   750,    -1,
21215       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21216       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21217       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21218       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21219       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
21220       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21221       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21222       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21223       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21224       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21225       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21226       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21227       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21228       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21229       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21230       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21231       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21232       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21233       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21234       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21235       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21236       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21237       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21238       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21239       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
21240      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21241      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21242      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
21243      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21244      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
21245      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
21246      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21247      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
21248      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
21249      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
21250      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
21251      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
21252      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
21253      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
21254      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
21255      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
21256      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
21257      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
21258      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
21259      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
21260      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
21261      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
21262      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
21263      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
21264      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
21265      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
21266      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
21267      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
21268      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
21269      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
21270      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
21271      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
21272      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
21273      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
21274      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
21275      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
21276      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
21277      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
21278      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
21279      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
21280      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
21281      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
21282      737,   738,   739,   740,   741,   742,   743,   744,   745,    61,
21283      747,   748,   749,   750,    -1,    -1,    -1,    -1,    -1,    -1,
21284       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21285       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21286       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21287       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,
21288       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21289       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21291       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21292       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21293       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21294       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21295       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21296       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21297       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21298       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21299       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21300       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21301       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21302       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21303       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21304       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21305       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21306       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21307       -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,
21308      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
21309      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
21310      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
21311      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
21312      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
21313      362,   363,    -1,   365,   366,   367,   368,   369,   370,    -1,
21314      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
21315      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
21316      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
21317      402,   403,    -1,   405,   406,   407,   408,   409,   410,   411,
21318      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
21319      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
21320      432,    -1,    -1,   435,   436,   437,   438,   439,   440,   441,
21321      442,   443,   444,   445,   446,   447,    -1,   449,   450,   451,
21322      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
21323      462,   463,   464,    -1,   466,   467,   468,   469,   470,   471,
21324      472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
21325      482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
21326      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
21327      502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
21328      512,   513,   514,   515,   516,   517,   518,   519,   520,   521,
21329      522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
21330      532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
21331      542,   543,   544,   545,   546,   547,   548,   549,   550,   551,
21332      552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
21333      562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
21334      572,   573,   574,   575,   576,   577,   578,   579,   580,   581,
21335      582,   583,   584,   585,   586,   587,   588,   589,   590,   591,
21336      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
21337      602,   603,   604,   605,   606,   607,   608,   609,   610,   611,
21338      612,   613,   614,   615,   616,   617,   618,   619,   620,   621,
21339      622,   623,   624,   625,   626,   627,   628,   629,   630,   631,
21340      632,   633,   634,   635,   636,   637,   638,   639,   640,   641,
21341      642,   643,   644,   645,   646,   647,   648,   649,   650,   651,
21342      652,   653,   654,   655,   656,   657,   658,   659,   660,   661,
21343      662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
21344      672,    -1,   674,   675,   676,   677,   678,   679,   680,   681,
21345      682,   683,   684,   685,   686,   687,   688,   689,   690,   691,
21346      692,   693,   694,   695,   696,   697,   698,   699,   700,   701,
21347      702,   703,   704,   705,   706,   707,   708,   709,   710,   711,
21348      712,   713,   714,   715,   716,   717,   718,   719,   720,   721,
21349      722,   723,   724,   725,   726,   727,   728,   729,   730,   731,
21350      732,   733,   734,   735,   736,   737,   738,   739,   740,   741,
21351      742,   743,   744,   745,    61,   747,   748,   749,   750,    -1,
21352       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21353       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21355       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21356       -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
21357       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21358       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21359       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21360       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21361       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21362       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21363       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21364       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21365       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21366       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21367       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21368       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21369       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21370       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21371       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
21372       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21373       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21374       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21375       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21376       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
21377      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21378      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21379      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
21380      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21381      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
21382      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
21383      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21384      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
21385      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
21386      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
21387      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
21388      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
21389      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
21390      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
21391      457,   458,    -1,   460,   461,   462,   463,   464,    -1,   466,
21392      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
21393      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
21394      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
21395      497,    -1,   499,   500,   501,   502,   503,   504,   505,   506,
21396      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
21397      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
21398      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
21399      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
21400      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
21401      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
21402      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
21403      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
21404      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
21405      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
21406      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
21407      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
21408      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
21409      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
21410      647,   648,   649,   650,   651,   652,   653,    -1,   655,   656,
21411      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
21412      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
21413      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
21414      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
21415      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
21416      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
21417      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
21418      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
21419      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
21420      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
21421       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21422       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21423       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21424       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21425       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21426       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21427       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21428       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21429       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21430       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21431       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21432       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21433       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21434       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21435       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21436       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21437       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21438       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21439       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21440       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
21441      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21442      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
21443      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
21444      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21445      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
21446      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21447      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
21448      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
21449      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
21450      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
21451      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
21452      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
21453      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
21454      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
21455      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21456       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
21457      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
21458      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
21459      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
21460      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
21461      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
21462      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
21463      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
21464      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
21465      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
21466      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
21467      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
21468      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
21469      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
21470      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
21471      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
21472      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
21473      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
21474      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
21475      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
21476      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
21477      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
21478      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
21479      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
21480      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
21481      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
21482      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
21483      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
21484      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
21485       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21486       -1,    -1,    -1,    -1,    -1,    -1,   771,    -1,    -1,    -1,
21487       -1,    -1,    -1,   778,   779,   138,    -1,    -1,    -1,    -1,
21488       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21489       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21490       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21491       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21492       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21493       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21494       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21495       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21496       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21497       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21498       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21499       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21500       -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,
21501       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21502       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21503       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21504       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
21505      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
21506      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21507      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21508      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
21509      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21510      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
21511      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
21512      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
21513      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
21514      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
21515      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
21516      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21517       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
21518      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
21519      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21520      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
21521      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
21522      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
21523      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
21524      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
21525      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
21526      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
21527      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
21528      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
21529      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
21530      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
21531      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
21532      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
21533      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
21534      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
21535      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
21536      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
21537      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
21538      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
21539      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
21540      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
21541       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
21542      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
21543      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
21544      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
21545      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
21546      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
21547      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
21548      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
21549       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21550       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21551       -1,    -1,    -1,    -1,    -1,    -1,   779,   138,    -1,    -1,
21552       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21553       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21554       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21555       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21556       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21557       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21558       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21559       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21560       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21561       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21562       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21563       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21564       -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,
21565       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21566       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21567       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21568       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
21569      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
21570      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
21571      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
21572      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
21573      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
21574      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
21575       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
21576      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
21577      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
21578      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
21579      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
21580      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
21581      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
21582      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
21583      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
21584      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
21585      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
21586      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
21587      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
21588      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
21589      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
21590      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
21591      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
21592      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
21593      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
21594      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
21595      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
21596      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
21597      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
21598      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
21599      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
21600      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
21601      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
21602      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
21603      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
21604      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
21605      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
21606      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
21607      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
21608      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
21609      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
21610      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
21611      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
21612      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
21613      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21614       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21615       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   779,   138,
21616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21618       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21619       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21620       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21622       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21623       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21624       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21625       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21626       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21627       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21628       -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,
21629       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21630       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21631       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21632       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21633      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
21634      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
21635      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
21636       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
21637      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
21638      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
21639      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
21640      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
21641      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
21642      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
21643      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
21644      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
21645      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
21646      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
21647      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
21648      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
21649      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
21650      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
21651      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
21652      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
21653      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
21654      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
21655      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
21656      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
21657      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
21658      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
21659      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
21660      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
21661      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
21662      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
21663      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
21664      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
21665      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
21666      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
21667      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
21668      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
21669      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
21670      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
21671      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
21672      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
21673      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
21674      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
21675      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
21676      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
21677      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
21678       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21679       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21680      779,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21681       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21682       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21683       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21684       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21685       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21686       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21687       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21688       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21689       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21690       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21691       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21692       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21693       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21694       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21695       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21696       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21697       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
21698      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21699      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21700      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
21701      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21702      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
21703      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
21704      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21705      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
21706      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
21707      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
21708      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
21709      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
21710      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
21711      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
21712      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
21713      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
21714      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
21715      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
21716      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
21717      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
21718      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
21719      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
21720      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
21721      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
21722      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
21723      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
21724      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
21725      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
21726      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
21727      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
21728      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
21729      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
21730      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
21731      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
21732      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
21733      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
21734      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
21735      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
21736      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
21737      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
21738      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
21739      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
21740      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
21741      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
21742       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21743       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21744       -1,   778,   779,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21745       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21746       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21747       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21748       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21749       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21750       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21751       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21752       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21753       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21754       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21755       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21756       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21757       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21758       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21759       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21760       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21761       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
21762      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21763      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
21764      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
21765      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21766      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
21767      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21768      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
21769      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
21770      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
21771      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
21772      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
21773      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
21774      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
21775      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
21776      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21777       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
21778      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
21779      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
21780      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
21781      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
21782      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
21783      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
21784      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
21785      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
21786      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
21787      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
21788      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
21789      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
21790      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
21791      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
21792      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
21793      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
21794      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
21795      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
21796      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
21797      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
21798      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
21799      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
21800      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
21801      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
21802      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
21803      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
21804      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
21805      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
21806       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21807       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21808       -1,    -1,    -1,    -1,   779,    -1,    -1,    -1,    -1,    -1,
21809       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21810       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21811       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21812       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21813       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21814       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21815       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21816       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21817       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21818      233,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21819       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21820       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21821       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21822       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21823       -1,    -1,    -1,    -1,    -1,    -1,    -1,   290,    -1,    -1,
21824       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   301,    -1,
21825       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
21826      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
21827      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21828      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21829      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
21830      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21831      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
21832      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
21833      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
21834      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
21835      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
21836      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
21837      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21838       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
21839      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
21840      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21841      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
21842      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
21843      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
21844      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
21845      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
21846      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
21847      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
21848      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
21849      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
21850      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
21851      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
21852      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
21853      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
21854      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
21855      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
21856      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
21857      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
21858      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
21859      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
21860      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
21861      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
21862       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
21863      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
21864      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
21865      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
21866      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
21867      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
21868      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
21869      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
21870       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21871       -1,    -1,    -1,    -1,    -1,    -1,    -1,   770,    -1,    -1,
21872       -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,
21873       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21874       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21875       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21876       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21877       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21878       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21879       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21880       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21881       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21882       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21883       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21885       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21886       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21887       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21888       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21889       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
21890      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
21891      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
21892      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
21893      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
21894      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
21895      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
21896       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
21897      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
21898      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
21899      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
21900      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
21901      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
21902      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
21903      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
21904      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
21905      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
21906      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
21907      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
21908      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
21909      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
21910      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
21911      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
21912      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
21913      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
21914      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
21915      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
21916      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
21917      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
21918      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
21919      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
21920      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
21921      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
21922      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
21923      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
21924      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
21925      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
21926      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
21927      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
21928      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
21929      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
21930      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
21931      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
21932      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
21933      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
21934      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21935       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   770,
21936       -1,    -1,    -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,
21937       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21938       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21939       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21940       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21941       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21942       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21943       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21944       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21945       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21946       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21947       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21948       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21949       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21950       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21951       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21952       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21953       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21954      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
21955      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
21956      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
21957       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
21958      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
21959      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
21960      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
21961      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
21962      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
21963      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
21964      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
21965      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
21966      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
21967      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
21968      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
21969      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
21970      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
21971      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
21972      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
21973      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
21974      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
21975      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
21976      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
21977      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
21978      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
21979      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
21980      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
21981      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
21982      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
21983      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
21984      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
21985      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
21986      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
21987      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
21988      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
21989      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
21990      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
21991      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
21992      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
21993      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
21994      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
21995      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
21996      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
21997      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
21998      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
21999       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22000       -1,   770,    -1,    -1,    -1,    -1,   775,    -1,    -1,   778,
22001       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22002       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22004       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22005       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22006       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22007       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22008       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22010       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22011       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22012       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22013       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22014       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22015       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22016       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22017       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22018       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
22019      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22020      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22021      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
22022      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22023      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
22024      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
22025      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22026      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
22027      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
22028      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
22029      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
22030      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
22031      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
22032      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
22033      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
22034      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
22035      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
22036      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
22037      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
22038      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
22039      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
22040      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
22041      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
22042      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
22043      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
22044      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
22045      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
22046      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
22047      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
22048      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
22049      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
22050      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
22051      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
22052      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
22053      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
22054      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
22055      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
22056      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
22057      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
22058      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
22059      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
22060      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
22061      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
22062      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
22063       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22065       -1,   778,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22066       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22068       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22069       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22070       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22071       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22072       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22073       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22074       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22075       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22076       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22077       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22078       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22079       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22080       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22081       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22082       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
22083      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22084      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
22085      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
22086      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22087      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
22088      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22089      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
22090      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
22091      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
22092      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
22093      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
22094      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
22095      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
22096      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
22097      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22098       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
22099      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
22100      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
22101      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
22102      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
22103      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
22104      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
22105      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
22106      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
22107      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
22108      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
22109      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
22110      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
22111      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
22112      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
22113      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
22114      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
22115      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
22116      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
22117      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
22118      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
22119      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
22120      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
22121      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
22122      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
22123      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
22124      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
22125      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
22126      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
22127       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22128       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22129       -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,    -1,    -1,
22130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22131       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22132       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22133       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22134       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22135       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22136       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22137       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22138       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22139       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22140       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22141       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22142       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22143       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22144       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22145       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22146       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
22147      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22148      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22149      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22150      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22151      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22152      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
22153      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
22154      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
22155      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
22156      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
22157      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
22158      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22159       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
22160      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
22161      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22162      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
22163      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
22164      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
22165      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
22166      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
22167      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
22168      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
22169      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
22170      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
22171      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
22172      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
22173      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
22174      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
22175      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
22176      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
22177      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
22178      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
22179      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
22180      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
22181      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
22182      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
22183       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
22184      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
22185      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
22186      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
22187      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
22188      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
22189      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
22190      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
22191       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22192       -1,    -1,    -1,    -1,    -1,    -1,    -1,   770,    -1,    -1,
22193       -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,
22194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22196       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22198       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22199       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22200       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22201       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22202       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22203       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22204       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22205       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22206       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22207       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22208       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22209       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22210       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
22211      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22212      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
22213      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
22214      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
22215      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
22216      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
22217       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
22218      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22219      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
22220      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
22221      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
22222      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
22223      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
22224      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
22225      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22226      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
22227      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
22228      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
22229      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
22230      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
22231      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
22232      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
22233      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
22234      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
22235      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
22236      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
22237      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
22238      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
22239      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
22240      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
22241      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
22242      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
22243      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
22244      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
22245      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
22246      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
22247      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
22248      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
22249      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
22250      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
22251      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
22252      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
22253      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
22254      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
22255      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22256      761,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22257       -1,    -1,    -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,
22258       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22259       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22260       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22261       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22262       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22263       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22264       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22266       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22267       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22268       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22269       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22270       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22271       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22272       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22273       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22274       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22275      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
22276      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
22277      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22278       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
22279      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22280      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
22281      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
22282      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22283      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
22284      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
22285      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
22286      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
22287      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
22288      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
22289      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
22290      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
22291      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
22292      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
22293      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
22294      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
22295      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
22296      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
22297      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
22298      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
22299      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
22300      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
22301      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
22302      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
22303      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
22304      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
22305      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
22306      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
22307      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
22308      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
22309      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
22310      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
22311      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
22312      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
22313      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
22314      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
22315      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
22316      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
22317      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
22318      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
22319      749,   750,   109,   110,   111,    -1,    -1,    -1,    -1,    -1,
22320       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22321       -1,   770,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   778,
22322       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22323       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22324       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22326       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22328       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22329       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22330       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22331       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22332       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22333       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22334       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22335       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22336       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22337       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22338       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22339       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
22340      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22341      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22342      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
22343      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22344      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
22345      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
22346      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22347      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
22348      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
22349      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
22350      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
22351      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
22352      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
22353      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
22354      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
22355      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
22356      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
22357      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
22358      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
22359      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
22360      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
22361      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
22362      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
22363      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
22364      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
22365      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
22366      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
22367      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
22368      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
22369      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
22370      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
22371      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
22372      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
22373      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
22374      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
22375      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
22376      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
22377      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
22378      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
22379      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
22380      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
22381      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
22382      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
22383      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
22384       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22385       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22386       -1,   778,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22387       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22388       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22389       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22390       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22391       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22392       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22393       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22395       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22396       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22397       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22398       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22399       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22400       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22401       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22402       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22403       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
22404      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22405      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
22406      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
22407      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22408      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
22409      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22410      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
22411      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
22412      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
22413      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
22414      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
22415      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
22416      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
22417      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
22418      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22419       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
22420      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
22421      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
22422      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
22423      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
22424      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
22425      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
22426      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
22427      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
22428      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
22429      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
22430      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
22431      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
22432      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
22433      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
22434      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
22435      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
22436      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
22437      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
22438      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
22439      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
22440      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
22441      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
22442      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
22443      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
22444      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
22445      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
22446      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
22447      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
22448       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22449       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22450       -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,    -1,    -1,
22451       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22452       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22453       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22454       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22455       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22456       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22457       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22460       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22461       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22462       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22463       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22464       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22465       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22466       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22467       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
22468      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22469      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22470      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22471      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22472      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22473      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
22474      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
22475      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
22476      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
22477      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
22478      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
22479      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22480       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
22481      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
22482      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22483      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
22484      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
22485      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
22486      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
22487      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
22488      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
22489      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
22490      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
22491      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
22492      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
22493      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
22494      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
22495      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
22496      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
22497      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
22498      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
22499      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
22500      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
22501      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
22502      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
22503      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
22504       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
22505      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
22506      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
22507      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
22508      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
22509      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
22510      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
22511      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
22512       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22513       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22514       -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,
22515       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22516       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22517       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22518       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22519       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22520       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22521       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22522       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22523       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22524       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22525       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22526       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22527       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22528       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22529       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22530       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22531       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
22532      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22533      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
22534      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
22535      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
22536      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
22537      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
22538       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
22539      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22540      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
22541      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
22542      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
22543      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
22544      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
22545      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
22546      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22547      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
22548      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
22549      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
22550      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
22551      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
22552      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
22553      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
22554      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
22555      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
22556      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
22557      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
22558      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
22559      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
22560      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
22561      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
22562      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
22563      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
22564      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
22565      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
22566      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
22567      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
22568      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
22569      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
22570      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
22571      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
22572      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
22573      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
22574      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
22575      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
22576      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22577       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22578       -1,    -1,    -1,    -1,    -1,    -1,    -1,   778,    -1,    -1,
22579       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22580       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22581       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22582       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22583       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22584       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22585       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22586       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22587       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22588       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22589       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22590       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22591       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22592       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22593       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22594       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22595       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22596      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
22597      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
22598      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22599       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
22600      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22601      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
22602      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
22603      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22604      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
22605      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
22606      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
22607      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
22608      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
22609      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
22610      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
22611      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
22612      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
22613      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
22614      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
22615      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
22616      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
22617      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
22618      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
22619      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
22620      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
22621      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
22622      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
22623      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
22624      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
22625      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
22626      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
22627      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
22628      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
22629      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
22630      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
22631      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
22632      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
22633      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
22634      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
22635      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
22636      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
22637      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
22638      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
22639      739,   740,   741,   742,   743,   744,   745,   104,   747,   748,
22640      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
22641       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22642       -1,   770,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22643       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22644       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22645       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22646       -1,    -1,    -1,   170,   171,    -1,    -1,    -1,    -1,    -1,
22647       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   186,
22648       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22649       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22650       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22651       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22652       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22653       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   246,
22654      247,   248,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22655       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22656       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22657       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22658       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22659       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22660       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
22661      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22662      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22663      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
22664      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22665      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
22666      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
22667      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22668      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
22669      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
22670      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
22671      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
22672      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
22673      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
22674      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
22675      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
22676      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
22677      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
22678      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
22679      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
22680      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
22681      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
22682      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
22683      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
22684      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
22685      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
22686      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
22687      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
22688      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
22689      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
22690      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
22691      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
22692      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
22693      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
22694      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
22695      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
22696      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
22697      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
22698      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
22699      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
22700      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
22701      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
22702      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
22703      737,   738,   739,   740,   741,   742,   743,   744,   745,    94,
22704      747,   748,   749,   750,    99,    -1,    -1,    -1,    -1,    -1,
22705       -1,    -1,    -1,   760,   109,   110,    -1,    -1,    -1,    -1,
22706       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22707       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22708       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22709       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22710       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22711       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22712       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22713       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22714       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22715       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22716       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22717       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22718       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22719       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22720       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22721       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22722       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22723       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22724       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22725       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
22726      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22727      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
22728      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
22729      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22730      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
22731      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22732      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
22733      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
22734      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
22735      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
22736      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
22737      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
22738      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
22739      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
22740      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22741       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
22742      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
22743      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
22744      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
22745      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
22746      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
22747      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
22748      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
22749      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
22750      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
22751      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
22752      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
22753      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
22754      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
22755      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
22756      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
22757      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
22758      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
22759      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
22760      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
22761      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
22762      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
22763      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
22764      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
22765      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
22766      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
22767      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
22768      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
22769      745,    94,   747,   748,   749,   750,    -1,    -1,    -1,    -1,
22770       -1,    -1,    -1,    -1,    -1,    -1,   109,   110,    -1,    -1,
22771       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22772       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22773       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22774       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22775       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22776       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22777       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22778       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22779       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22780       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22781       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22782       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22783       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22784       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22785       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22786       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22787       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22788       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22789       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22790       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
22791      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22792      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22793      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22794      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22795      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22796      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
22797      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
22798      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
22799      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
22800      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
22801      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
22802      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22803       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
22804      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
22805      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22806      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
22807      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
22808      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
22809      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
22810      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
22811      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
22812      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
22813      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
22814      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
22815      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
22816      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
22817      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
22818      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
22819      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
22820      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
22821      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
22822      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
22823      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
22824      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
22825      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
22826      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
22827       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
22828      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
22829      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
22830      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
22831      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
22832      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
22833      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
22834      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
22835       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22836       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22837       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22838       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22839       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22840       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22841       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22842       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22843       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22844       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22845       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22846       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22847       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22848       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22849       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22850       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22851       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22853       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22854       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
22855      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22856      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
22857      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
22858      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
22859      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
22860      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
22861       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
22862      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22863      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
22864      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
22865      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
22866      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
22867      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
22868      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
22869      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22870      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
22871      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
22872      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
22873      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
22874      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
22875      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
22876      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
22877      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
22878      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
22879      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
22880      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
22881      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
22882      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
22883      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
22884      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
22885      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
22886      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
22887      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
22888      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
22889      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
22890      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
22891      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
22892      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
22893      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
22894      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
22895      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
22896      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
22897      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
22898      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
22899      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22900      761,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22901       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22902       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22903       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22904       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22905       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22906       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22907       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22908       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22909       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22910       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22911       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22912       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22913       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22914       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22915       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22916       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22917       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22918       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22919      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
22920      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
22921      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22922       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
22923      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22924      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
22925      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
22926      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22927      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
22928      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
22929      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
22930      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
22931      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
22932      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
22933      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
22934      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
22935      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
22936      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
22937      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
22938      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
22939      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
22940      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
22941      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
22942      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
22943      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
22944      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
22945      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
22946      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
22947      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
22948      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
22949      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
22950      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
22951      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
22952      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
22953      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
22954      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
22955      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
22956      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
22957      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
22958      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
22959      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
22960      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
22961      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
22962      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
22963      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
22964       -1,    -1,   761,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22965       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22966       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22967       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22968       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22969       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22970       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22971       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22972       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22973       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22974       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22975       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22976       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22977       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22978       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22979       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22980       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22981       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22982       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22983       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
22984      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22985      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22986      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
22987      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22988      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
22989      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
22990      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22991      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
22992      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
22993      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
22994      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
22995      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
22996      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
22997      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
22998      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
22999      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
23000      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
23001      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
23002      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
23003      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
23004      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
23005      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
23006      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
23007      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
23008      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
23009      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
23010      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
23011      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
23012      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
23013      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
23014      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
23015      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
23016      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
23017      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
23018      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
23019      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
23020      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
23021      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
23022      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
23023      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
23024      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
23025      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
23026      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
23027      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
23028       -1,    -1,    -1,    -1,   761,    -1,    -1,    -1,    -1,    -1,
23029       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23030       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23031       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23032       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23033       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23034       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23035       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23036       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23037       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23038       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23039       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23040       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23041       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23042       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23043       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23044       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23045       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23046       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23047       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
23048      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23049      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
23050      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
23051      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23052      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
23053      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23054      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
23055      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
23056      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
23057      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
23058      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
23059      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
23060      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
23061      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
23062      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23063       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
23064      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
23065      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
23066      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
23067      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
23068      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
23069      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
23070      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
23071      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
23072      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
23073      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
23074      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
23075      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
23076      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
23077      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
23078      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
23079      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
23080      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
23081      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
23082      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
23083      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
23084      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
23085      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
23086      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
23087      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
23088      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
23089      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
23090      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
23091      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
23092       -1,    -1,    -1,    -1,    -1,    -1,   761,    -1,    -1,    -1,
23093       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23094       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23095       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23096       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23097       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23098       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23100       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23102       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23103       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23104       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23105       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23106       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23107       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23108       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23109       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23110       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23111       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
23112      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23113      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
23114      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
23115      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23116      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
23117      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
23118      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
23119      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
23120      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
23121      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
23122      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
23123      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
23124       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
23125      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
23126      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23127      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
23128      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
23129      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
23130      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
23131      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
23132      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
23133      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
23134      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
23135      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
23136      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
23137      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
23138      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
23139      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
23140      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
23141      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
23142      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
23143      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
23144      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
23145      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
23146      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
23147      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
23148       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
23149      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
23150      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
23151      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
23152      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
23153      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
23154      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
23155      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
23156       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   761,    -1,
23157       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23158       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23159       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23160       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23161       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23162       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23163       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23164       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23165       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23166       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23167       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23168       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23169       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23170       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23171       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23172       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23173       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23174       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23175       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
23176      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23177      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
23178      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
23179      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
23180      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
23181      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
23182       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
23183      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23184      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
23185      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
23186      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
23187      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
23188      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
23189      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
23190      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23191      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
23192      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
23193      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
23194      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
23195      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
23196      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
23197      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
23198      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
23199      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
23200      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
23201      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
23202      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
23203      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
23204      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
23205      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
23206      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
23207      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
23208      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
23209      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
23210      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
23211      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
23212      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
23213      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
23214      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
23215      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
23216      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
23217      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
23218      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
23219      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
23220      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23221      761,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23222       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   138,
23223       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23224       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23225       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23226       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23227       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23228       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23229       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23230       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23231       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23232       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   238,
23233       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23234       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23235       -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,
23236       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23237       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23238       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23239       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23240      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
23241      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
23242      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23243       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
23244      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23245      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
23246      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
23247      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23248      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
23249      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
23250      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
23251      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
23252      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
23253      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
23254      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
23255      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
23256      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
23257      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
23258      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
23259      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
23260      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
23261      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
23262      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
23263      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
23264      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
23265      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
23266      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
23267      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
23268      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
23269      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
23270      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
23271      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
23272      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
23273      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
23274      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
23275      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
23276      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
23277      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
23278      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
23279      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
23280      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
23281      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
23282      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
23283      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
23284      749,   750,   109,   110,    -1,   754,    -1,    -1,    -1,    -1,
23285       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23286       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23287       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23288       -1,   148,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23289       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
23291       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23292       -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,    -1,    -1,
23293       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23294       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23295       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23296       -1,    -1,   229,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23297       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23298       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23299       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23300       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   276,
23301       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23302       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23303       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23304       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
23305      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23306      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23307      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
23308      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23309      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
23310      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
23311      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23312      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
23313      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
23314      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
23315      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
23316      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
23317      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
23318      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
23319      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
23320      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
23321      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
23322      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
23323      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
23324      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
23325      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
23326      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
23327      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
23328      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
23329      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
23330      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
23331      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
23332      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
23333      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
23334      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
23335      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
23336      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
23337      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
23338      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
23339      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
23340      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
23341      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
23342      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
23343      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
23344      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
23345      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
23346      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
23347      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
23348      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
23349       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23350       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23351       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23352       -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,    -1,    -1,
23353       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23355       -1,   176,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23356       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,
23357       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23358       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23359       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23360       -1,    -1,    -1,    -1,   229,    -1,    -1,    -1,    -1,    -1,
23361       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23362       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23363       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23364       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23365       -1,   276,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23366       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23367       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23368       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
23369      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23370      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
23371      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
23372      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23373      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
23374      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23375      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
23376      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
23377      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
23378      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
23379      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
23380      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
23381      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
23382      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
23383      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23384       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
23385      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
23386      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
23387      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
23388      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
23389      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
23390      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
23391      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
23392      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
23393      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
23394      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
23395      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
23396      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
23397      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
23398      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
23399      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
23400      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
23401      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
23402      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
23403      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
23404      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
23405      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
23406      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
23407      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
23408      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
23409      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
23410      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
23411      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
23412      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
23413       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23414       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23415       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23416       -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,
23417       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23418       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23419       -1,    -1,    -1,   176,    -1,    -1,    -1,    -1,    -1,    -1,
23420       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23421      193,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23422       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23423       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23424       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23425       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23426       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23427       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23428       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23429       -1,    -1,    -1,   276,    -1,    -1,    -1,    -1,    -1,    -1,
23430       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23431       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23432       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
23433      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23434      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
23435      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
23436      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23437      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
23438      363,   364,   365,   366,   367,   368,   369,   370,    -1,   372,
23439      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
23440      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
23441      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
23442      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
23443      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
23444      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
23445       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
23446      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
23447      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23448      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
23449      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
23450      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
23451      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
23452      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
23453      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
23454      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
23455      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
23456      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
23457      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
23458      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
23459      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
23460      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
23461      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
23462      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
23463      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
23464      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
23465      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
23466      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
23467      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
23468      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
23469       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
23470      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
23471      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
23472      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
23473      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
23474      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
23475      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
23476      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
23477       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23478       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23479       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23480       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23481       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23482       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23483       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23484       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23485       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23486       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23487       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23488       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23489       -1,    -1,    -1,    -1,    -1,    -1,   237,    -1,    -1,    -1,
23490       -1,    -1,    -1,    -1,    -1,    -1,   247,    -1,    -1,    -1,
23491       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23492       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23493       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23494       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23495       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23496       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
23497      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23498      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
23499      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
23500      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
23501      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
23502      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
23503       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
23504      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23505      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
23506      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
23507      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
23508      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
23509      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
23510      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
23511      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23512      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
23513      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
23514      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
23515      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
23516      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
23517      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
23518      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
23519      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
23520      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
23521      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
23522      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
23523      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
23524      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
23525      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
23526      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
23527      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
23528      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
23529      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
23530      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
23531      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
23532      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
23533      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
23534      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
23535      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
23536      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
23537      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
23538      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
23539      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
23540      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
23541      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23542       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23543       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   138,
23544       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23545       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23547       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23548       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23549       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23550       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23551       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23552       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23553       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23554       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23555       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23556       -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,
23557       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23558       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23559       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23560       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23561      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
23562      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
23563      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23564       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
23565      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23566      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
23567      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
23568      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23569      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
23570      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
23571      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
23572      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
23573      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
23574      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
23575      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
23576      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
23577      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
23578      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
23579      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
23580      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
23581      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
23582      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
23583      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
23584      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
23585      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
23586      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
23587      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
23588      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
23589      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
23590      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
23591      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
23592      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
23593      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
23594      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
23595      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
23596      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
23597      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
23598      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
23599      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
23600      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
23601      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
23602      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
23603      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
23604      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
23605      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
23606       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23607       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23608       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23609       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23610       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23611       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23612       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23613       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23614       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23615       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23618       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23619      247,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23620       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23622       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23623       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23624       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23625       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
23626      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23627      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23628      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
23629      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23630      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
23631      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
23632      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23633      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
23634      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
23635      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
23636      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
23637      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
23638      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
23639      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
23640      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
23641      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
23642      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
23643      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
23644      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
23645      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
23646      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
23647      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
23648      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
23649      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
23650      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
23651      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
23652      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
23653      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
23654      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
23655      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
23656      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
23657      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
23658      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
23659      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
23660      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
23661      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
23662      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
23663      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
23664      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
23665      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
23666      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
23667      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
23668      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
23669      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
23670       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23671       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23672       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23673       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23674       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23675       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23676       -1,   176,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23677       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23678       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23679       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23680       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23681       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23682       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23683       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23684       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23685       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23686       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23687       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23688       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23689       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
23690      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23691      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
23692      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
23693      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23694      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
23695      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23696      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
23697      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
23698      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
23699      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
23700      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
23701      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
23702      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
23703      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
23704      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23705       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
23706      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
23707      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
23708      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
23709      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
23710      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
23711      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
23712      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
23713      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
23714      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
23715      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
23716      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
23717      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
23718      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
23719      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
23720      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
23721      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
23722      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
23723      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
23724      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
23725      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
23726      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
23727      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
23728      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
23729      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
23730      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
23731      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
23732      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
23733      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
23734       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23735       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23736       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23737       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23738       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23739       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23740       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23741       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23742       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23743      203,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23744       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23745       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23746       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23747       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23748       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23749       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23750       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23751       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23752       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23753       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
23754      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23755      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
23756      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
23757      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23758      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
23759      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
23760      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
23761      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
23762      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
23763      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
23764      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
23765      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
23766       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
23767      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
23768      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23769      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
23770      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
23771      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
23772      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
23773      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
23774      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
23775      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
23776      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
23777      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
23778      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
23779      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
23780      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
23781      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
23782      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
23783      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
23784      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
23785      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
23786      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
23787      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
23788      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
23789      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
23790       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
23791      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
23792      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
23793      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
23794      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
23795      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
23796      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
23797      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
23798       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23799       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23800       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23801       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23802       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23803       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23804       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23805       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23806       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23807       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23808       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23809       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23810       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23811       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23812       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23813       -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,
23814       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23815       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23816       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23817       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
23818      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23819      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
23820      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
23821      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
23822      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
23823      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
23824       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
23825      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23826      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
23827      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
23828      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
23829      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
23830      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
23831      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
23832      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23833      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
23834      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
23835      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
23836      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
23837      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
23838      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
23839      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
23840      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
23841      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
23842      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
23843      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
23844      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
23845      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
23846      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
23847      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
23848      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
23849      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
23850      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
23851      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
23852      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
23853      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
23854      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
23855      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
23856      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
23857      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
23858      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
23859      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
23860      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
23861      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
23862      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23863       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23864       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23865       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23866       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23867       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23868       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23869       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23870       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23871       -1,    -1,    -1,    -1,   203,    -1,    -1,    -1,    -1,    -1,
23872       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23873       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23874       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23875       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23876       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23877       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23878       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23879       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23880       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23881       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23882      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
23883      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
23884      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23885       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
23886      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23887      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
23888      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
23889      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23890      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
23891      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
23892      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
23893      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
23894      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
23895      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
23896      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
23897      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
23898      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
23899      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
23900      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
23901      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
23902      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
23903      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
23904      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
23905      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
23906      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
23907      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
23908      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
23909      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
23910      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
23911      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
23912      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
23913      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
23914      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
23915      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
23916      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
23917      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
23918      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
23919      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
23920      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
23921      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
23922      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
23923      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
23924      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
23925      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
23926      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
23927       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23928       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23929       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23930       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23931       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23932       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23933       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23934       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23935       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23936       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23937       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23938       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23939       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23940       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23941       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23942       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23943       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23944       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23945       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23946       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
23947      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23948      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23949      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
23950      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23951      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
23952      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
23953      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23954      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
23955      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
23956      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
23957      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
23958      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
23959      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
23960      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
23961      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
23962      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
23963      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
23964      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
23965      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
23966      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
23967      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
23968      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
23969      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
23970      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
23971      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
23972      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
23973      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
23974      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
23975      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
23976      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
23977      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
23978      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
23979      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
23980      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
23981      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
23982      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
23983      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
23984      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
23985      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
23986      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
23987      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
23988      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
23989      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
23990      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
23991       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23992       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23993       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23994       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23995       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23996       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23997       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23998       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23999       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24000       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24001       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24002       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24004       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24005       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24006       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24007       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24008       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24010       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
24011      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
24012      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
24013      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
24014      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
24015      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
24016      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
24017      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
24018      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
24019      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
24020      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
24021      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
24022      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
24023      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
24024      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
24025      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
24026       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
24027      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
24028      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
24029      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
24030      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
24031      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
24032      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
24033      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
24034      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
24035      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
24036      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
24037      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
24038      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
24039      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
24040      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
24041      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
24042      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
24043      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
24044      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
24045      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
24046      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
24047      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
24048      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
24049      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
24050      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
24051      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
24052      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
24053      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
24054      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
24055       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24056       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24057       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24058       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24060       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24061       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24062       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24063       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24065       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24066       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24068       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24069       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24070       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24071       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24072       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24073       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24074       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
24075      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
24076      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
24077      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
24078      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
24079      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
24080      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
24081      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
24082      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
24083      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
24084      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
24085      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
24086      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
24087       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
24088      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
24089      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
24090      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
24091      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
24092      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
24093      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
24094      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
24095      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
24096      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
24097      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
24098      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
24099      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
24100      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
24101      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
24102      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
24103      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
24104      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
24105      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
24106      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
24107      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
24108      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
24109      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
24110      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
24111       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
24112      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
24113      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
24114      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
24115      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
24116      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
24117      733,   734,   735,   736,   737,   738,   739,   740,   741,   742,
24118      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
24119       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24120       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24121       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24122       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24123       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24124       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24125       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24126       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24127       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24128       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24129       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24131       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24132       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24133       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24134       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24135       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24136       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24137       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24138       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
24139      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
24140      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
24141      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
24142      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
24143      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
24144      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
24145       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
24146      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
24147      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
24148      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
24149      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
24150      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
24151      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
24152      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
24153      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
24154      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
24155      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
24156      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
24157      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
24158      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
24159      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
24160      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
24161      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
24162      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
24163      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
24164      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
24165      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
24166      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
24167      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
24168      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
24169      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
24170      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
24171      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
24172      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
24173      651,   652,   653,   654,   655,   656,   657,   658,   659,   660,
24174      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
24175      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
24176      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
24177      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
24178      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
24179      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
24180      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
24181      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
24182      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
24183      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24184       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24185       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24186       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24187       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24188       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24190       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24191       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24192       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24196       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24198       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24199       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24200       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24201       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24202       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24203      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
24204      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
24205      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
24206       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
24207      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
24208      359,   360,   361,   362,   363,    -1,   365,   366,   367,   368,
24209      369,   370,    -1,   372,   373,   374,   375,   376,   377,   378,
24210      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
24211      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
24212      399,   400,   401,   402,   403,    -1,   405,   406,   407,   408,
24213      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
24214      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
24215      429,   430,   431,   432,    -1,    -1,   435,   436,   437,   438,
24216      439,   440,   441,   442,   443,   444,   445,   446,   447,    -1,
24217      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
24218      459,   460,   461,   462,   463,   464,    -1,   466,   467,   468,
24219      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
24220      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
24221      489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
24222      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
24223      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
24224      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
24225      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
24226      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
24227      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
24228      559,   560,   561,   562,   563,   564,   565,   566,   567,   568,
24229      569,   570,   571,   572,   573,   574,   575,   576,   577,   578,
24230      579,   580,   581,   582,   583,   584,   585,   586,   587,   588,
24231      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
24232      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
24233      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
24234      619,   620,   621,   622,   623,   624,   625,   626,   627,   628,
24235      629,   630,   631,   632,   633,   634,   635,   636,   637,   638,
24236      639,   640,   641,   642,   643,   644,   645,   646,   647,   648,
24237      649,   650,   651,   652,   653,   654,   655,   656,   657,   658,
24238      659,   660,   661,   662,   663,   664,   665,   666,   667,   668,
24239      669,   670,   671,   672,    -1,   674,   675,   676,   677,   678,
24240      679,   680,   681,   682,   683,   684,   685,   686,   687,   688,
24241      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
24242      699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
24243      709,   710,   711,   712,   713,   714,   715,   716,   717,   718,
24244      719,   720,   721,   722,   723,   724,   725,   726,   727,   728,
24245      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
24246      739,   740,   741,   742,   743,   744,   745,    -1,   747,   748,
24247      749,   750,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
24248       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24249       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24250       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24251       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24252       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24253       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24254       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24255       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24256       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24257       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24258       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24259       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24260       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24261       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24262       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24263       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24264       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24266       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24267       -1,    -1,   309,   310,   311,   312,   313,   314,   315,   316,
24268      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
24269      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
24270      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
24271      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
24272      357,   358,   359,   360,   361,   362,   363,    -1,   365,   366,
24273      367,   368,   369,   370,    -1,   372,   373,   374,   375,   376,
24274      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
24275      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
24276      397,   398,   399,   400,   401,   402,   403,    -1,   405,   406,
24277      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
24278      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
24279      427,   428,   429,   430,   431,   432,    -1,    -1,   435,   436,
24280      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
24281      447,    -1,   449,   450,   451,   452,   453,   454,   455,   456,
24282      457,   458,   459,   460,   461,   462,   463,   464,    -1,   466,
24283      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
24284      477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
24285      487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
24286      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
24287      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
24288      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
24289      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
24290      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
24291      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
24292      557,   558,   559,   560,   561,   562,   563,   564,   565,   566,
24293      567,   568,   569,   570,   571,   572,   573,   574,   575,   576,
24294      577,   578,   579,   580,   581,   582,   583,   584,   585,   586,
24295      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
24296      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
24297      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
24298      617,   618,   619,   620,   621,   622,   623,   624,   625,   626,
24299      627,   628,   629,   630,   631,   632,   633,   634,   635,   636,
24300      637,   638,   639,   640,   641,   642,   643,   644,   645,   646,
24301      647,   648,   649,   650,   651,   652,   653,   654,   655,   656,
24302      657,   658,   659,   660,   661,   662,   663,   664,   665,   666,
24303      667,   668,   669,   670,   671,   672,    -1,   674,   675,   676,
24304      677,   678,   679,   680,   681,   682,   683,   684,   685,   686,
24305      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
24306      697,   698,   699,   700,   701,   702,   703,   704,   705,   706,
24307      707,   708,   709,   710,   711,   712,   713,   714,   715,   716,
24308      717,   718,   719,   720,   721,   722,   723,   724,   725,   726,
24309      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
24310      737,   738,   739,   740,   741,   742,   743,   744,   745,    -1,
24311      747,   748,   749,   750,   109,   110,    -1,    -1,    -1,    -1,
24312       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24313       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24314       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24315       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24316       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24317       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24318       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24319       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24320       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24321       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24322       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24323       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24324       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24326       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24328       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24329       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24330       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24331       -1,    -1,    -1,    -1,   309,   310,   311,   312,   313,   314,
24332      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
24333      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
24334      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
24335      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
24336      355,   356,   357,   358,   359,   360,   361,   362,   363,    -1,
24337      365,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
24338      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
24339      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
24340      395,   396,   397,   398,   399,   400,   401,   402,   403,    -1,
24341      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
24342      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
24343      425,   426,   427,   428,   429,   430,   431,   432,    -1,    -1,
24344      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
24345      445,   446,   447,    -1,   449,   450,   451,   452,   453,   454,
24346      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
24347       -1,   466,   467,   468,   469,   470,   471,   472,   473,   474,
24348      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
24349      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
24350      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
24351      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
24352      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
24353      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
24354      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
24355      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
24356      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
24357      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
24358      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
24359      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
24360      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
24361      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
24362      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
24363      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
24364      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
24365      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
24366      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
24367      665,   666,   667,   668,   669,   670,   671,   672,    -1,   674,
24368      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
24369      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
24370      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
24371      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
24372      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
24373      725,   726,   727,   728,   729,   730,   731,   732,   733,   734,
24374      735,   736,   737,   738,   739,   740,   741,   742,   743,   744,
24375      745,    -1,   747,   748,   749,   750,   109,   110,    -1,    -1,
24376       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24377       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24378       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24379       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24380       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24381       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24382       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24383       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24384       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24385       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24386       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24387       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24388       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24389       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24390       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24391       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24392       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24393       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24395       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,   312,
24396      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
24397      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
24398      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
24399      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
24400      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
24401      363,    -1,   365,   366,   367,   368,   369,   370,    -1,   372,
24402      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
24403      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
24404      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
24405      403,    -1,   405,   406,   407,   408,   409,   410,   411,   412,
24406      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
24407      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
24408       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
24409      443,   444,   445,   446,   447,    -1,   449,   450,   451,   452,
24410      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
24411      463,   464,    -1,   466,   467,   468,   469,   470,   471,   472,
24412      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
24413      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
24414      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
24415      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
24416      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
24417      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
24418      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
24419      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
24420      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
24421      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
24422      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
24423      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
24424      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
24425      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
24426      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
24427      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
24428      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
24429      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
24430      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
24431      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
24432       -1,   674,   675,   676,   677,   678,   679,   680,   681,   682,
24433      683,   684,   685,   686,   687,   688,   689,   690,   691,   692,
24434      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
24435      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,
24436      713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
24437      723,   724,   725,   726,   727,   728,   729,   730,   731,   732,
24438      733,   734,   735,   736,   737,   738,   739,   740,    -1,   742,
24439      743,   744,   745,    -1,   747,   748,   749,   750,   109,   110,
24440       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24441       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24442       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24443       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24444       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24445       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24446       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24447       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24448       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24449       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24450       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24451       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24452       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24453       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24454       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24455       -1,    -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,
24456       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24457       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   309,   310,
24460      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
24461      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
24462      331,   332,   333,   334,   335,   336,   337,   338,    -1,   340,
24463      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
24464      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
24465      361,   362,   363,    -1,   365,   366,   367,   368,   369,   370,
24466       -1,   372,   373,   374,   375,   376,   377,   378,   379,   380,
24467      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
24468      391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
24469      401,   402,   403,    -1,   405,   406,   407,   408,   409,   410,
24470      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
24471      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
24472      431,   432,    -1,    -1,   435,   436,   437,   438,   439,   440,
24473      441,   442,   443,   444,   445,   446,   447,    -1,   449,   450,
24474      451,   452,   453,   454,   455,   456,   457,   458,    -1,   460,
24475      461,   462,   463,   464,    -1,   466,   467,   468,   469,   470,
24476      471,   472,   473,   474,   475,   476,   477,   478,   479,   480,
24477      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
24478      491,   492,   493,   494,   495,   496,   497,    -1,   499,   500,
24479      501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
24480      511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
24481      521,   522,   523,   524,   525,   526,   527,   528,   529,   530,
24482      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
24483      541,   542,   543,   544,   545,   546,   547,   548,   549,   550,
24484      551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
24485      561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
24486      571,   572,   573,   574,   575,   576,   577,   578,   579,   580,
24487      581,   582,   583,   584,   585,   586,   587,   588,   589,   590,
24488      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
24489      601,   602,   603,   604,   605,   606,   607,   608,   609,   610,
24490      611,   612,   613,   614,   615,   616,   617,   618,   619,   620,
24491      621,   622,   623,   624,   625,   626,   627,   628,   629,   630,
24492      631,   632,   633,   634,   635,   636,   637,   638,   639,   640,
24493      641,   642,   643,   644,   645,   646,   647,   648,   649,   650,
24494      651,   652,   653,    -1,   655,   656,   657,   658,   659,   660,
24495      661,   662,   663,   664,   665,   666,   667,   668,   669,   670,
24496      671,   672,    -1,   674,   675,   676,   677,   678,   679,   680,
24497      681,   682,   683,   684,   685,   686,   687,   688,   689,   690,
24498      691,   692,   693,   694,   695,   696,   697,   698,   699,   700,
24499      701,   702,   703,   704,   705,   706,   707,   708,   709,   710,
24500      711,   712,   713,   714,   715,   716,   717,   718,   719,   720,
24501      721,   722,   723,   724,   725,   726,   727,   728,   729,   730,
24502      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
24503      741,   742,   743,   744,   745,    -1,   747,   748,   749,   750,
24504      109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24505       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24506       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24507       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24508       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24509       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24510       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24511       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24512       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24513       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24514       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24515       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24516       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24517       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24518       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24519       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24520       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24521       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24522       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   298,
24523       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24524      309,   310,   311,    -1,   313,    -1,   315,   316,   317,   318,
24525      319,   320,   321,   322,   323,   324,   325,   326,   327,    -1,
24526      329,   330,   331,   332,   333,   334,   335,   336,    -1,    -1,
24527       -1,    -1,   341,   342,   343,   344,   345,    -1,    -1,   348,
24528      349,   350,   351,    -1,    -1,    -1,   355,   356,   357,   358,
24529      359,    -1,   361,   362,   363,    -1,   365,    -1,    -1,    -1,
24530       -1,    -1,    -1,   372,    -1,   374,    -1,   376,   377,    -1,
24531      379,   380,   381,   382,   383,   384,    -1,   386,   387,   388,
24532      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
24533      399,    -1,   401,   402,   403,    -1,   405,   406,   407,   408,
24534      409,   410,   411,    -1,   413,   414,   415,   416,    -1,   418,
24535      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
24536       -1,    -1,    -1,   432,    -1,    -1,   435,   436,   437,   438,
24537      439,   440,   441,   442,   443,   444,    -1,    -1,    -1,    -1,
24538       -1,   450,   451,   452,   453,   454,   455,   456,   457,    -1,
24539      459,   460,    -1,   462,   463,    -1,    -1,   466,    -1,   468,
24540      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
24541       -1,   480,   481,   482,   483,   484,   485,   486,   487,   488,
24542       -1,   490,   491,   492,   493,   494,   495,   496,   497,   498,
24543      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
24544      509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
24545      519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
24546      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
24547      539,   540,   541,   542,   543,   544,   545,   546,   547,   548,
24548      549,   550,   551,   552,   553,   554,   555,   556,   557,   558,
24549      559,   560,    -1,   562,   563,   564,   565,   566,   567,   568,
24550      569,   570,   571,   572,   573,   574,   109,   110,    -1,    -1,
24551      579,   580,    -1,   582,   583,   584,   585,    -1,   587,   588,
24552      589,   590,   591,   592,    -1,    -1,    -1,    -1,   597,   598,
24553      599,   600,   601,   602,   603,   604,   605,   606,   607,   608,
24554      609,   610,   611,   612,   613,   614,   615,   616,   617,   618,
24555      619,   620,   621,   622,    -1,   624,    -1,   626,   627,    -1,
24556      629,   630,    -1,   632,   633,   634,   635,   636,   637,    -1,
24557      639,   640,   641,   642,   643,   644,   645,    -1,   647,   648,
24558      649,    -1,   651,   652,   653,   654,    -1,   656,   657,    -1,
24559       -1,   660,    -1,    -1,   663,   664,   665,    -1,   667,    -1,
24560      669,   670,   671,   672,    -1,   674,   675,   676,   677,    -1,
24561      679,   680,    -1,   682,    -1,   684,   685,   686,   687,   688,
24562      689,   690,   691,   692,   693,   694,   695,   696,   697,   698,
24563      699,   700,   701,   702,   703,    -1,   705,   706,   707,   708,
24564      709,   710,   711,   712,    -1,   714,   715,   716,    -1,   718,
24565      719,   720,   721,    -1,    -1,   724,   725,    -1,   727,   728,
24566      729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
24567      739,   740,    -1,    -1,   743,   744,    -1,    -1,   747,    -1,
24568      749,   750,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24569       -1,    -1,    -1,    -1,    -1,   298,    -1,    -1,    -1,    -1,
24570       -1,    -1,    -1,    -1,    -1,    -1,   309,   310,   311,    -1,
24571      313,    -1,   315,   316,   317,   318,   319,   320,   321,   322,
24572      323,   324,   325,   326,   327,    -1,   329,   330,   331,   332,
24573      333,   334,   335,   336,    -1,    -1,    -1,    -1,   341,   342,
24574      343,   344,   345,    -1,    -1,   348,   349,   350,   351,    -1,
24575       -1,    -1,   355,   356,   357,   358,   359,    -1,   361,   362,
24576      363,    -1,   365,    -1,    -1,    -1,    -1,    -1,    -1,   372,
24577       -1,   374,    -1,   376,   377,    -1,   379,   380,   381,   382,
24578      383,   384,    -1,   386,   387,   388,   389,   390,   391,   392,
24579      393,   394,   395,   396,   397,   398,   399,    -1,   401,   402,
24580      403,    -1,   405,   406,   407,   408,   409,   410,   411,    -1,
24581      413,   414,   415,   416,    -1,   418,   419,   420,   421,   422,
24582      423,   424,   425,   426,   427,   428,    -1,    -1,    -1,   432,
24583       -1,    -1,   435,   436,   437,   438,   439,   440,   441,   442,
24584      443,   444,    -1,    -1,    -1,    -1,    -1,   450,   451,   452,
24585      453,   454,   455,   456,   457,    -1,   459,   460,    -1,   462,
24586      463,    -1,    -1,   466,    -1,   468,   469,   470,   471,   472,
24587      473,   474,   475,   476,   477,   478,    -1,   480,   481,   482,
24588      483,   484,   485,   486,   487,   488,    -1,   490,   491,   492,
24589      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
24590      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
24591      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
24592      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
24593      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
24594      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
24595      553,   554,   555,   556,   557,   558,   559,   560,    -1,   562,
24596      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
24597      573,   574,   109,   110,    -1,    -1,   579,   580,    -1,   582,
24598      583,   584,   585,    -1,   587,   588,   589,   590,   591,   592,
24599       -1,    -1,    -1,    -1,   597,   598,   599,   600,   601,   602,
24600      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
24601      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
24602       -1,   624,    -1,   626,   627,    -1,   629,   630,    -1,   632,
24603      633,   634,   635,   636,   637,    -1,   639,   640,   641,   642,
24604      643,   644,   645,    -1,   647,   648,   649,    -1,   651,   652,
24605      653,   654,    -1,   656,   657,    -1,    -1,   660,    -1,    -1,
24606      663,   664,   665,    -1,   667,    -1,   669,   670,   671,   672,
24607       -1,   674,   675,   676,   677,    -1,   679,   680,    -1,   682,
24608       -1,   684,   685,   686,   687,   688,   689,   690,   691,   692,
24609      693,   694,   695,   696,   697,   698,   699,   700,   701,   702,
24610      703,    -1,   705,   706,   707,   708,   709,   710,   711,   712,
24611       -1,   714,   715,   716,    -1,   718,   719,   720,   721,    -1,
24612       -1,   724,   725,    -1,   727,   728,   729,   730,   731,   732,
24613      733,   734,   735,   736,   737,   738,   739,   740,    -1,    -1,
24614      743,   744,    -1,    -1,   747,    -1,   749,   750,    -1,    -1,
24615       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24617       -1,    -1,   309,   310,   311,    -1,   313,    -1,   315,   316,
24618      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
24619      327,    -1,   329,   330,   331,   332,   333,   334,   335,   336,
24620       -1,    -1,    -1,    -1,   341,   342,   343,   344,   345,    -1,
24621       -1,   348,   349,   350,   351,    -1,    -1,    -1,   355,   356,
24622      357,   358,   359,    -1,   361,   362,   363,    -1,   365,    -1,
24623       -1,    -1,    -1,    -1,    -1,   372,    -1,   374,    -1,   376,
24624      377,    -1,   379,   380,   381,   382,   383,   384,    -1,   386,
24625      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
24626      397,   398,   399,    -1,   401,   402,   403,    -1,   405,   406,
24627      407,   408,   409,   410,   411,    -1,   413,   414,   415,   416,
24628       -1,   418,   419,   420,   421,   422,   423,   424,   425,   426,
24629      427,   428,    -1,    -1,    -1,   432,    -1,    -1,   435,   436,
24630      437,   438,   439,   440,   441,   442,   443,   444,    -1,    -1,
24631       -1,    -1,    -1,   450,   451,   452,   453,   454,   455,   456,
24632      457,    -1,   459,   460,    -1,   462,   463,    -1,    -1,   466,
24633       -1,   468,   469,   470,   471,   472,   473,   474,   475,   476,
24634      477,   478,    -1,   480,   481,   482,   483,   484,   485,   486,
24635      487,   488,    -1,   490,   491,   492,   493,   494,   495,   496,
24636      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
24637      507,   508,   509,   510,   511,   512,   513,   514,   515,   516,
24638      517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
24639      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
24640      537,   538,   539,   540,   541,   542,   543,   544,   545,   546,
24641      547,   548,   549,   550,   551,   552,   553,   554,   555,   556,
24642      557,   558,   559,   560,    -1,   562,   563,   564,   565,   566,
24643      567,   568,   569,   570,   571,   572,   573,   574,    -1,    -1,
24644       -1,    -1,   579,   580,    -1,   582,   583,   584,   585,    -1,
24645      587,   588,   589,   590,   591,   592,    -1,    -1,    -1,    -1,
24646      597,   598,   599,   600,   601,   602,   603,   604,   605,   606,
24647      607,   608,   609,   610,   611,   612,   613,   614,   615,   616,
24648      617,   618,   619,   620,   621,   622,    -1,   624,    -1,   626,
24649      627,    -1,   629,   630,    -1,   632,   633,   634,   635,   636,
24650      637,    -1,   639,   640,   641,   642,   643,   644,   645,    -1,
24651      647,   648,   649,    -1,   651,   652,   653,   654,    -1,   656,
24652      657,    -1,    -1,   660,    -1,    -1,   663,   664,   665,    -1,
24653      667,    -1,   669,   670,   671,   672,    -1,   674,   675,   676,
24654      677,    -1,   679,   680,    -1,   682,    -1,   684,   685,   686,
24655      687,   688,   689,   690,   691,   692,   693,   694,   695,   696,
24656      697,   698,   699,   700,   701,   702,   703,    -1,   705,   706,
24657      707,   708,   709,   710,   711,   712,    -1,   714,   715,   716,
24658       -1,   718,   719,   720,   721,    -1,    -1,   724,   725,    -1,
24659      727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
24660      737,   738,   739,   740,    -1,    -1,   743,   744,    -1,    -1,
24661      747,    -1,   749,   750
24662 };
24663 
24664   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
24665      symbol of state STATE-NUM.  */
24666 static const yytype_uint16 yystos[] =
24667 {
24668        0,     7,     8,    27,    29,    31,    33,    41,    63,    65,
24669       66,    73,    80,    92,    98,   111,   119,   130,   143,   145,
24670      150,   180,   194,   195,   205,   206,   217,   218,   219,   220,
24671      222,   227,   233,   237,   241,   242,   281,   283,   285,   290,
24672      300,   301,   308,   337,   338,   340,   347,   354,   375,   400,
24673      412,   431,   445,   458,   461,   464,   479,   596,   625,   628,
24674      638,   646,   658,   678,   681,   713,   723,   748,   770,   782,
24675      785,   786,   787,   788,   789,   791,   797,   799,   812,   858,
24676      900,   901,   908,   909,   925,   926,   957,   978,   997,  1057,
24677     1113,  1165,  1263,  1313,  1316,  1326,  1331,  1337,  1350,  1353,
24678     1359,  1362,  1367,  1374,  1386,  1389,  1392,  1393,  1395,  1398,
24679     1399,  1401,  1402,  1405,  1406,  1409,  1625,  1627,  1640,  1643,
24680     1678,  1686,  1701,  1708,  1722,  1726,  1727,  1731,  1741,  1748,
24681     1756,  1758,  1764,  1767,  1768,  1800,  1848,  1878,  1885,  1887,
24682     1896,  1899,  1939,  1941,  1946,  1947,  1948,  1949,  1979,  1988,
24683     1989,  1990,    49,   204,   325,   403,   452,   500,   651,   655,
24684      697,   727,  1264,  1953,  1954,  1955,  1956,   173,   449,   498,
24685     1361,  1729,   109,   110,   309,   310,   311,   312,   313,   314,
24686      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
24687      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
24688      335,   336,   337,   338,   340,   341,   342,   343,   344,   345,
24689      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
24690      356,   357,   358,   359,   360,   361,   362,   363,   365,   366,
24691      367,   368,   369,   370,   372,   373,   374,   375,   376,   377,
24692      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
24693      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
24694      398,   399,   400,   401,   402,   403,   405,   406,   407,   408,
24695      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
24696      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
24697      429,   430,   431,   432,   435,   436,   437,   438,   439,   440,
24698      441,   442,   443,   444,   445,   446,   447,   449,   450,   451,
24699      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
24700      462,   463,   464,   466,   467,   468,   469,   470,   471,   472,
24701      473,   474,   475,   476,   477,   478,   479,   480,   481,   482,
24702      483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
24703      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
24704      503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
24705      513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
24706      523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
24707      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
24708      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,
24709      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,
24710      563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
24711      573,   574,   575,   576,   577,   578,   579,   580,   581,   582,
24712      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
24713      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
24714      603,   604,   605,   606,   607,   608,   609,   610,   611,   612,
24715      613,   614,   615,   616,   617,   618,   619,   620,   621,   622,
24716      623,   624,   625,   626,   627,   628,   629,   630,   631,   632,
24717      633,   634,   635,   636,   637,   638,   639,   640,   641,   642,
24718      643,   644,   645,   646,   647,   648,   649,   650,   651,   652,
24719      653,   654,   655,   656,   657,   658,   659,   660,   661,   662,
24720      663,   664,   665,   666,   667,   668,   669,   670,   671,   672,
24721      674,   675,   676,   677,   678,   679,   680,   681,   682,   683,
24722      684,   685,   686,   687,   688,   689,   690,   691,   692,   693,
24723      694,   695,   696,   697,   698,   699,   700,   701,   702,   703,
24724      704,   705,   706,   707,   708,   709,   710,   711,   712,   713,
24725      714,   715,   716,   717,   718,   719,   720,   721,   722,   723,
24726      724,   725,   726,   727,   728,   729,   730,   731,   732,   733,
24727      734,   735,   736,   737,   738,   739,   740,   741,   742,   743,
24728      744,   745,   747,   748,   749,   750,   852,  1819,  1821,  1828,
24729     1835,  1840,  1841,  1842,  1843,  1844,  1845,  1846,  1847,   958,
24730      519,  1354,   185,   500,   697,  1687,    49,   114,   204,   273,
24731      426,   452,   500,   637,   655,   697,   700,   727,   735,  1639,
24732     1000,   850,   927,  1641,  1759,   114,   395,   749,  1773,   264,
24733      696,  1881,   998,  1361,  1166,  1058,    17,   519,  1714,   237,
24734      247,   897,   902,   904,  1828,   646,   727,  1881,  1002,  1644,
24735      902,   903,   850,  1396,   679,  1849,  1709,   902,  1886,  1679,
24736     1828,  1394,   999,   213,  1802,   145,   281,   676,  1742,   170,
24737      171,  1441,  1940,   266,   779,  1822,   114,  1881,   744,  1943,
24738     1626,   473,  1828,  1361,   390,   910,  1888,   798,   590,   668,
24739     1828,  1361,  1749,  1943,  1828,  1765,     6,   661,   709,     6,
24740      661,  1702,   590,   668,   338,   339,   375,   417,   596,   613,
24741      638,   678,  1982,  1395,  1402,  1405,     0,    80,   783,   596,
24742       49,    95,   244,   280,   637,   727,   830,  1242,  1243,  1244,
24743     1639,  1953,  1954,  1955,  1956,    94,   122,  1412,  1413,  1621,
24744     1390,  1387,    83,   120,   279,  1404,  1950,  1403,  1950,   438,
24745      449,   583,   778,  1728,  1729,  1816,  1828,  1399,  1401,  1281,
24746     1828,   852,   754,   754,   852,    99,   111,  1638,   138,  1822,
24747     1828,  1830,  1005,  1006,  1009,  1032,  1828,  1638,  1305,  1306,
24748      251,  1430,  1957,  1958,  1953,   754,  1881,  1386,  1389,  1640,
24749     1643,  1678,  1686,  1725,   859,   778,   298,   959,   960,   963,
24750      967,   810,   811,  1822,   735,  1351,  1881,   220,    99,  1007,
24751     1032,   113,   151,   466,   608,  1689,  1699,  1700,  1638,  1629,
24752     1638,  1638,  1638,  1638,    99,  1638,  1638,  1032,  1638,  1638,
24753      651,  1881,   981,  1828,     6,     7,    41,    46,    63,    73,
24754       98,   114,   119,   145,   215,   233,   241,   273,   283,   284,
24755      426,   431,   442,   601,   605,   622,   627,   658,   690,  1830,
24756     1900,  1904,  1905,  1907,  1909,  1910,   952,   953,   151,   404,
24757      465,  1646,   462,   667,  1760,   122,  1769,  1879,    38,    87,
24758       97,   126,   133,   225,   226,   338,   360,   434,   575,   875,
24759      923,   924,   925,   928,   929,   930,   931,   935,   936,   937,
24760      938,   939,   947,   948,   949,   950,   971,   973,   974,   976,
24761      984,   990,  1821,  1829,  1836,  1843,  1845,  1846,  1847,  1881,
24762       17,    18,    19,    20,    21,    29,    30,    32,    39,    40,
24763       43,    44,    45,    46,    48,    49,    51,    52,    57,    61,
24764       64,    84,    85,    86,    88,    89,   100,   101,   102,   104,
24765      105,   109,   110,   111,   119,   121,   134,   148,   153,   154,
24766      156,   162,   164,   167,   170,   171,   172,   174,   175,   176,
24767      178,   193,   197,   198,   199,   201,   208,   219,   220,   228,
24768      231,   251,   257,   258,   260,   261,   262,   266,   274,   275,
24769      276,   277,   287,   288,   289,   295,   297,   321,   328,   336,
24770      352,   361,   363,   364,   366,   367,   368,   369,   370,   385,
24771      397,   398,   399,   401,   402,   449,   455,   457,   469,   491,
24772      492,   496,   534,   536,   541,   542,   543,   544,   554,   555,
24773      571,   585,   591,   592,   599,   606,   636,   642,   643,   649,
24774      656,   686,   705,   706,   707,   708,   712,   713,   727,   729,
24775      739,   740,   742,   750,   759,   760,   765,   770,   774,   775,
24776      778,   779,  1405,  1411,  1436,  1437,  1438,  1442,  1454,  1456,
24777     1457,  1458,  1459,  1460,  1461,  1462,  1463,  1464,  1465,  1466,
24778     1474,  1478,  1479,  1480,  1481,  1482,  1484,  1487,  1792,  1795,
24779     1797,  1798,  1799,  1813,  1820,  1821,  1828,  1835,    26,  1059,
24780      501,   349,   356,   372,   382,   383,   384,   392,   533,   547,
24781      648,   685,   699,   905,   907,   729,   898,   904,  1828,   850,
24782     1363,   875,   987,   151,   404,  1647,  1685,   904,     6,   320,
24783      605,  1897,  1898,  1905,  1907,     6,    68,   249,   250,   259,
24784      465,   671,   672,   673,   674,  1415,  1422,  1423,  1952,  1850,
24785       32,    61,   352,   459,   498,   548,   585,   637,   654,   709,
24786      741,   779,  1205,  1821,  1826,  1828,  1839,  1840,  1841,  1842,
24787     1844,  1845,  1846,  1847,  1853,  1865,  1869,     6,    40,    41,
24788       50,   114,   128,   204,   264,   315,   331,   340,   352,   363,
24789      387,   420,   423,   425,   451,   452,   459,   460,   476,   498,
24790      519,   575,   589,   600,   603,   604,   618,   654,   661,   682,
24791      738,  1205,  1241,  1710,  1714,  1715,  1717,  1726,  1821,  1866,
24792      904,  1881,  1685,   770,  1657,  1666,   985,  1436,  1801,  1743,
24793     1828,   330,  1943,  1830,  1368,  1327,    10,  1944,  1436,  1507,
24794      792,   286,   794,  1732,   407,  1816,  1818,  1828,  1889,  1830,
24795      111,  1112,  1822,    94,  1332,   519,   607,   661,  1750,  1751,
24796      271,  1944,   737,  1766,   662,   810,   210,   301,  1317,  1318,
24797     1319,   662,   810,   264,  1703,  1638,  1638,    18,   104,   105,
24798      266,  1793,  1794,  1823,  1981,  1981,  1981,   449,  1980,  1981,
24799     1981,   771,   771,   777,  1828,  1112,  1112,  1112,   655,   834,
24800      114,   114,   114,   264,   651,   204,   273,   426,  1957,   324,
24801      851,   851,  1953,    74,   770,   775,  1411,  1414,  1513,  1514,
24802     1515,  1516,  1517,  1528,  1529,  1530,  1531,  1533,  1534,  1535,
24803     1816,   188,   413,  1616,  1617,  1622,   299,  1558,  1412,    92,
24804      140,   145,   184,  1424,  1583,  1588,  1594,  1595,  1599,   204,
24805     1598,  1611,  1621,     6,    68,  1951,  1594,  1596,  1405,  1408,
24806     1409,  1595,  1597,  1407,     6,  1828,  1724,  1723,   778,  1391,
24807     1388,  1266,   726,  1267,   532,   701,   719,    45,  1830,  1831,
24808     1832,  1904,  1268,  1011,  1033,  1828,    84,  1273,  1272,     5,
24809       31,    73,   171,   211,   611,  1034,   850,   264,   113,   574,
24810     1307,  1308,  1309,   650,   426,   735,  1957,  1830,  1338,   770,
24811      860,  1828,   968,    76,   970,  1436,   967,   271,  1352,  1632,
24812     1633,  1816,  1010,  1033,     5,    94,  1690,    94,  1690,  1691,
24813     1692,  1696,  1697,  1828,  1699,  1828,   111,  1637,   852,   852,
24814      852,  1828,  1033,   850,  1830,  1043,  1715,   850,  1630,  1638,
24815     1638,  1001,   982,   600,  1908,   640,   640,   697,   700,   727,
24816      735,   770,  1435,   466,   577,  1912,   696,  1914,  1911,    50,
24817      735,  1913,   179,   357,   661,   271,   179,   773,   417,  1436,
24818      113,  1304,   380,   607,  1761,  1762,   347,   151,   379,  1775,
24819     1816,  1882,  1883,   298,  1829,    94,    99,   554,  1828,  1829,
24820     1829,  1829,   977,  1828,   298,  1829,  1828,   417,   924,   777,
24821      786,   932,   951,  1828,    92,   150,   219,   300,   338,   780,
24822     1360,   121,   759,   760,  1459,   770,   770,   770,   298,  1436,
24823     1510,  1511,   770,   770,   770,   770,   770,  1435,  1435,  1435,
24824      770,  1434,   770,   770,   770,   770,   770,   770,   770,   770,
24825      770,   770,   770,   770,   770,   770,  1436,   770,   109,   110,
24826      364,   770,  1508,  1509,  1813,  1820,  1835,   770,   770,   770,
24827      770,  1436,  1434,   770,   770,   770,   770,   770,   770,   770,
24828      770,   770,   770,   770,   196,   770,   770,   770,   770,  1434,
24829      770,   266,  1794,  1435,  1434,  1434,   770,   770,   770,   770,
24830      770,   770,   770,   770,   176,  1820,   770,   770,   770,   770,
24831      770,   770,   770,   266,   770,   770,   770,   770,   770,   770,
24832      770,   770,   770,   770,   770,   770,   770,   770,   770,   770,
24833      770,   729,   770,   770,   770,   770,   770,   729,   770,   770,
24834      770,   770,   770,   770,   770,   266,   770,   770,   770,   266,
24835      770,   770,   770,   770,   770,   770,   770,   770,   770,   121,
24836     1459,   121,  1459,  1459,  1167,  1405,  1436,  1800,  1828,  1820,
24837     1488,     9,    10,    81,    96,   125,   131,   168,   183,   185,
24838      305,   754,   755,   756,  1439,  1440,  1443,    15,   124,   139,
24839      216,   669,  1441,    69,   164,   182,   239,   240,   757,   758,
24840      759,   760,   761,   762,   763,   764,  1459,    34,   165,   190,
24841      190,   742,  1823,   778,   770,   196,  1060,    14,   271,   773,
24842      754,  1823,  1364,  1831,  1833,  1365,  1366,  1816,   725,   122,
24843     1648,  1649,  1650,  1908,   577,   179,    94,   179,  1397,  1423,
24844       61,  1828,  1852,  1868,   237,   637,   778,    17,    61,   238,
24845      754,  1206,  1207,  1660,  1830,    92,  1660,  1875,  1660,  1830,
24846     1855,   779,  1830,    17,    61,  1209,  1210,  1830,  1660,   778,
24847     1856,  1854,   662,   770,    49,   204,   264,   273,   315,   426,
24848      452,   651,   727,   735,   139,   299,  1721,   362,   680,   680,
24849      309,   680,   425,  1721,     6,  1124,  1830,  1587,  1588,  1589,
24850       94,   124,  1716,  1718,   362,   680,    92,   680,   696,   668,
24851        6,   342,   386,   388,   482,   531,   580,   670,   692,  1704,
24852     1705,  1706,   810,   468,   680,   811,  1589,  1721,  1718,   501,
24853      419,   365,   602,   696,   711,    92,  1429,   680,   732,  1304,
24854     1667,   773,   412,  1803,  1804,  1808,  1828,  1816,   979,   773,
24855     1369,  1370,  1371,  1372,  1816,  1632,   350,   561,   217,   561,
24856     1945,   773,  1436,   795,    17,   252,   406,   420,   422,   453,
24857      468,   501,   519,   600,   607,   617,   630,   661,   664,   680,
24858     1733,  1738,  1739,  1821,  1881,    35,   779,   911,   912,   913,
24859      914,  1820,   575,   210,   360,  1441,  1828,   790,   735,  1329,
24860     1881,  1753,   347,  1752,   773,   646,  1828,  1945,    92,  1320,
24861     1321,  1320,   573,   746,   381,   773,  1320,  1320,  1633,  1828,
24862     1822,   773,   572,  1984,   691,  1985,   754,   127,   632,  1983,
24863       80,   784,  1828,   850,   850,  1112,  1112,   818,   820,  1112,
24864     1112,  1112,   825,   827,   735,   452,   452,  1957,  1513,  1517,
24865     1529,  1530,  1531,  1532,  1533,  1828,    93,  1420,    42,   116,
24866      127,   134,   166,   228,   259,  1524,  1525,   773,   195,  1526,
24867     1527,   266,  1824,  1824,   779,  1618,  1619,  1620,  1828,  1830,
24868     1559,    99,  1562,  1558,   283,   148,   176,   229,   276,   364,
24869     1590,  1591,  1795,  1820,   124,    26,  1587,  1424,  1828,  1424,
24870     1425,  1425,  1408,  1725,  1730,  1793,  1828,  1828,  1595,  1598,
24871       61,  1109,  1110,  1121,  1122,  1214,   395,   853,  1435,   779,
24872      853,     5,  1012,  1816,   576,   394,  1029,  1029,  1029,     4,
24873     1831,  1832,  1833,  1920,  1924,  1816,  1309,   403,   480,   852,
24874     1816,   735,  1339,  1340,  1633,   861,   862,  1436,  1436,   875,
24875      417,   961,   800,  1632,    92,   351,   438,   440,   530,   608,
24876      773,  1355,  1356,  1357,  1012,  1029,  1816,    14,  1688,  1635,
24877     1636,  1817,  1828,    92,  1418,  1419,  1558,   773,  1693,   778,
24878     1698,    84,  1828,   778,  1043,  1903,  1905,   564,   737,  1044,
24879     1045,   420,  1833,  1919,  1632,  1631,  1628,   412,   124,   983,
24880      696,   771,   770,  1928,  1928,  1928,  1928,  1833,  1920,   191,
24881      204,   264,   452,  1906,   426,   431,   442,   601,   622,   627,
24882      658,   690,  1910,   111,   267,  1648,   470,   727,  1436,  1763,
24883     1763,  1375,   498,  1774,    11,   754,  1554,  1555,  1556,   565,
24884      737,   773,  1880,   933,   934,   298,  1828,   554,    94,   122,
24885      876,   933,   298,   770,   946,   150,   777,  1436,   773,   993,
24886      991,   996,   992,   975,  1632,   770,     6,  1498,  1557,  1498,
24887     1498,  1436,  1511,    76,   298,   417,  1436,  1507,  1436,    68,
24888     1498,  1557,   771,    57,    89,   104,   148,   176,   276,   771,
24889     1603,  1607,  1608,   771,  1436,  1436,  1813,   771,  1400,  1401,
24890     1410,  1800,    53,    54,    55,    56,   106,   107,   108,   160,
24891      161,   232,   306,   399,   469,   534,   536,   541,   606,   649,
24892      739,   750,  1551,  1552,  1436,    68,  1490,  1436,  1436,  1436,
24893     1436,  1436,  1551,  1436,  1820,  1509,   323,   773,   778,    68,
24894     1498,  1436,    68,  1498,  1436,  1436,  1436,   771,  1436,  1436,
24895     1438,   771,  1436,  1436,  1436,   771,   641,  1498,  1498,  1436,
24896       68,  1498,    25,   132,   272,  1436,  1455,  1498,  1498,  1436,
24897     1436,    68,  1498,  1436,  1507,  1436,   778,  1436,  1436,  1436,
24898     1451,  1452,  1436,  1436,  1436,  1436,  1436,  1436,  1436,  1436,
24899     1436,  1507,   396,   398,   705,   708,  1553,  1436,  1436,  1507,
24900     1816,  1507,  1436,  1436,  1436,  1507,  1507,  1507,    92,  1816,
24901     1436,  1436,  1436,  1507,    92,  1436,  1436,  1436,   771,  1436,
24902     1816,  1436,  1436,  1552,  1552,  1436,  1455,  1436,   771,   364,
24903      778,  1814,  1828,  1436,  1436,  1436,  1436,  1436,  1436,   771,
24904      773,  1401,  1436,   778,   779,  1489,  1830,  1437,    86,   175,
24905      275,   724,  1441,  1436,  1436,  1436,     6,   327,  1437,  1444,
24906     1437,   770,  1411,  1437,  1437,   139,    15,   124,   139,   216,
24907     1438,  1438,  1438,  1438,  1438,  1438,  1438,   121,  1438,   121,
24908     1438,  1438,  1438,  1438,  1438,  1211,  1830,  1459,   770,  1486,
24909     1568,  1828,   770,    99,  1820,  1467,   450,   484,   560,   641,
24910     1453,   141,   207,   497,   695,  1061,  1065,  1757,  1822,   907,
24911      398,   705,   708,   906,  1487,  1797,  1813,   773,   271,   773,
24912     1880,   988,  1649,  1645,  1634,  1816,   773,    92,  1833,  1832,
24913     1921,   191,   204,   452,  1906,   761,  1427,  1428,  1430,   778,
24914      778,  1660,   773,  1851,  1905,  1828,    34,  1212,  1436,  1833,
24915      266,   571,   585,  1876,     6,    17,    61,   179,  1436,  1877,
24916      210,   483,  1870,  1871,  1872,  1873,   459,   498,   654,  1867,
24917     1660,  1877,  1828,   709,  1857,  1868,   773,  1859,   680,   761,
24918     1112,   852,  1816,   852,   309,   852,   852,   852,  1816,  1833,
24919     1816,  1429,  1429,   852,  1721,  1716,   362,   680,  1721,   124,
24920     1719,   501,   545,   680,  1713,  1713,  1721,  1828,   852,  1721,
24921     1832,  1716,  1721,  1822,   481,   693,   441,    92,  1707,   773,
24922      425,   680,  1816,  1718,  1716,  1716,  1436,  1721,  1721,  1721,
24923     1514,  1677,  1816,  1430,  1669,  1671,   770,  1664,   986,   773,
24924      770,  1806,   876,   779,   124,   773,   195,  1380,  1382,  1383,
24925      438,   608,  1328,   350,   217,  1436,   793,    61,   113,   796,
24926     1436,  1672,  1673,   501,   501,   501,   501,   347,   501,   810,
24927      501,   773,  1429,  1734,   906,   916,  1830,   773,   754,  1555,
24928     1890,    84,   668,  1436,  1330,  1632,   271,  1755,   810,  1751,
24929     1828,     6,  1315,   621,   675,  1322,  1323,  1314,   665,  1319,
24930     1880,  1793,   588,  1986,  1830,   822,  1903,  1920,  1830,   816,
24931     1112,  1112,   813,  1816,   826,  1430,  1966,   838,  1430,  1112,
24932     1112,  1112,   735,   773,   771,   771,   771,   771,   771,   773,
24933      771,  1513,     6,    11,    15,    94,  1421,  1556,   127,   127,
24934      187,  1536,   134,   228,  1524,  1536,  1513,  1515,   770,  1420,
24935     1623,  1830,   773,   778,  1436,    26,   103,  1560,  1562,   565,
24936      737,  1426,   429,  1820,   229,   570,   773,   778,   657,  1584,
24937     1612,  1110,    34,  1205,   408,   163,   209,   251,   373,   385,
24938      489,   561,   855,   857,  1830,   614,   720,  1030,  1031,   477,
24939     1026,  1027,  1028,  1035,  1043,  1045,  1274,   770,  1822,   332,
24940      526,  1020,  1021,  1022,  1035,  1036,  1037,  1043,  1045,  1013,
24941     1014,  1020,   471,   221,   773,  1931,  1880,  1271,  1270,  1816,
24942      773,   587,  1341,   771,   773,   969,    29,   298,   962,   964,
24943       71,   112,   152,   472,   502,   503,   505,   506,   507,   508,
24944      509,   511,   512,   513,   514,   515,   516,   517,   518,   520,
24945      521,   522,   619,   620,   801,   802,   809,    92,  1358,   726,
24946     1633,  1356,   373,   558,   615,   721,  1023,  1024,  1025,  1035,
24947     1039,  1040,  1041,  1042,  1043,  1045,   285,  1008,  1526,   695,
24948      773,  1694,   778,  1698,   200,  1582,  1583,  1697,    94,   761,
24949     1828,   179,  1828,  1044,   773,  1660,  1661,   773,    28,   223,
24950     1310,  1632,  1632,   875,   636,   980,  1828,  1929,  1930,   271,
24951      301,  1902,    24,   761,  1816,  1828,  1918,  1918,  1918,  1918,
24952      954,  1642,  1436,  1833,  1376,  1377,  1378,  1379,  1816,   115,
24953     1821,  1825,  1834,  1840,  1841,  1842,  1843,  1844,  1845,  1846,
24954     1847,   151,   210,   746,  1884,   104,   760,  1600,  1602,  1883,
24955     1436,   933,   122,   642,  1828,    59,   874,   877,   933,   940,
24956      941,   945,  1828,   981,   984,   987,   985,   876,  1880,  1436,
24957      771,  1499,   771,   771,   267,   417,  1436,  1436,    11,   286,
24958      771,   286,   773,  1475,   771,   761,   771,   773,   773,   771,
24959      771,  1401,    94,   771,  1477,   771,   773,   771,   773,   773,
24960      773,   773,   760,   773,   771,   770,  1813,  1820,  1498,   771,
24961      771,  1498,   771,   773,   771,   773,   771,   771,   124,   773,
24962      773,   773,   771,   771,    94,   773,  1498,   771,    94,  1436,
24963       94,  1436,    94,  1436,    94,   771,   771,   771,   773,   771,
24964     1498,   771,   771,   771,   771,  1820,   773,   771,   773,   771,
24965      773,   773,   773,   773,   773,   771,   771,   773,   773,   773,
24966      771,   773,   771,   771,   773,   771,   771,   771,   771,   771,
24967      771,   771,   771,  1816,   771,   771,   771,   773,   771,  1816,
24968      771,   771,   773,   771,   773,   773,   771,   773,   773,   773,
24969      771,   771,   773,  1820,  1828,   771,   778,   771,   773,    11,
24970      495,   773,  1230,   773,   771,  1551,  1551,  1507,   771,   776,
24971     1820,  1867,   238,    86,   175,   275,   724,   770,    10,  1436,
24972      424,  1437,  1437,   770,  1411,  1437,  1437,  1436,  1436,  1569,
24973      195,  1571,   770,   770,   778,  1430,  1471,  1472,  1473,   365,
24974      770,  1070,  1071,  1063,  1070,  1064,   583,  1073,   129,   463,
24975     1436,   754,  1833,  1833,  1366,   271,  1436,   135,   136,   237,
24976     1051,  1400,  1651,  1653,  1656,  1526,    98,  1905,    94,   773,
24977       24,  1918,  1918,  1918,  1918,   773,  1436,  1811,  1820,  1828,
24978     1828,  1877,  1868,    92,    92,  1660,    61,  1211,  1213,  1660,
24979      770,   770,   573,   746,   495,   773,   773,   778,   778,   778,
24980       61,   741,  1821,  1822,  1827,  1837,  1840,  1841,  1842,  1843,
24981     1844,  1846,  1847,  1436,  1660,  1870,  1858,  1860,  1861,   771,
24982     1828,   852,  1822,  1436,  1721,   852,  1721,  1822,    94,  1720,
24983      850,  1721,   607,  1589,  1706,  1719,  1716,  1816,  1721,  1721,
24984      237,  1526,  1673,   771,   773,  1665,   875,  1804,  1807,  1828,
24985     1805,   874,  1830,    61,  1373,  1828,  1371,  1816,  1056,  1382,
24986      114,   129,  1239,  1384,   794,   773,    62,  1744,   810,  1739,
24987     1632,  1740,   914,   917,   918,   913,   566,   567,   643,   915,
24988      443,   554,  1828,  1891,  1892,  1822,  1632,   438,   608,   728,
24989     1333,  1334,  1335,  1602,     6,  1754,   662,   773,   725,  1324,
24990      773,    92,  1987,  1108,  1109,   301,  1901,  1931,   835,  1828,
24991     1828,  1828,  1816,   815,   852,  1976,  1112,  1112,  1816,   852,
24992     1828,   852,  1112,  1513,  1513,   776,   569,   705,   709,  1416,
24993     1417,  1461,  1417,   127,  1536,  1536,  1528,   127,   179,   286,
24994     1550,  1828,  1555,  1205,  1208,  1619,  1828,  1436,  1563,  1812,
24995     1561,   741,  1565,  1560,  1602,  1591,  1592,   429,  1591,  1591,
24996     1820,   539,  1585,  1812,   770,  1661,  1661,   549,   251,   251,
24997      650,  1822,   251,   251,   251,  1822,  1822,  1661,   773,  1028,
24998      155,   347,   393,   475,   537,   556,   557,   561,   562,   563,
24999      629,   678,   832,   833,    49,   467,   578,   585,   593,   666,
25000      727,   836,   837,  1661,  1661,   773,  1022,  1015,  1016,  1035,
25001     1036,  1037,    26,   301,   734,  1922,   252,   355,   485,   559,
25002      687,   747,  1916,  1917,  1924,   301,  1934,  1265,   179,   846,
25003     1278,   770,  1959,  1269,  1340,    92,  1436,   267,   965,   964,
25004      754,   754,   754,   754,   754,   754,   754,   754,   754,   754,
25005      754,   754,   754,   754,   754,   754,   754,   754,   754,   754,
25006      754,   754,   754,   754,   773,   726,  1661,  1661,  1661,  1661,
25007      773,  1025,   500,   439,  1017,  1018,  1019,  1035,  1036,  1037,
25008     1038,  1041,  1042,  1043,  1045,  1417,  1636,  1828,   286,  1828,
25009      569,   140,  1593,  1514,   778,  1698,  1816,  1905,  1123,  1830,
25010     1833,  1880,   417,   770,   940,   943,   771,   773,  1920,   320,
25011     1918,   778,   778,   271,   271,   271,   271,   875,  1651,   773,
25012     1380,  1382,  1824,   746,   498,   379,    57,    89,   148,   176,
25013      276,   122,    37,    38,   433,   434,   741,   883,   884,   885,
25014      887,   893,   920,   921,  1821,  1838,  1840,  1841,  1842,  1843,
25015     1844,  1845,  1846,  1847,   417,   924,   777,   942,   771,   773,
25016      994,   972,   989,  1829,   989,   989,   874,   773,  1436,  1436,
25017      267,    17,    32,    58,    70,    90,   121,   123,   282,   294,
25018      396,   398,   551,   659,   708,   731,  1500,  1504,  1505,  1206,
25019     1206,  1500,  1507,   771,   121,   121,  1436,  1507,  1436,  1436,
25020     1436,  1436,  1436,  1436,  1436,  1438,   771,   771,  1436,  1436,
25021     1436,  1436,  1436,  1436,  1436,  1436,   771,  1436,    94,  1436,
25022       94,  1436,    94,  1436,   121,  1436,   771,  1452,  1436,  1451,
25023     1507,  1436,  1436,  1436,  1436,  1436,  1512,  1436,  1436,  1436,
25024     1436,  1507,   148,   759,  1600,  1604,   121,  1436,  1436,  1436,
25025     1436,  1436,   778,   778,  1828,  1436,    17,    32,  1225,  1226,
25026     1227,  1228,  1229,  1603,  1602,   771,  1436,   760,   760,  1827,
25027     1436,  1410,  1437,   771,   773,  1437,    10,  1436,   424,  1551,
25028     1551,  1570,  1828,    26,   771,  1483,  1506,  1507,  1820,  1436,
25029      771,   773,   770,  1079,  1438,  1071,   121,   140,  1105,  1603,
25030      689,  1074,   325,  1066,  1062,   906,   271,  1816,   417,  1654,
25031     1655,  1809,  1810,  1814,  1828,  1800,  1652,  1656,   577,  1919,
25032     1832,  1918,    94,    94,    94,    94,  1428,  1431,  1431,   778,
25033     1660,  1660,   785,  1833,  1877,   266,   266,   210,   626,   652,
25034     1874,  1872,  1871,   778,   778,  1660,  1877,  1859,   773,  1863,
25035     1865,  1869,   423,   738,  1600,  1605,  1711,   176,  1720,  1558,
25036     1716,  1681,  1682,  1814,  1418,  1431,  1430,  1668,  1670,  1673,
25037      417,   771,   773,    11,   417,  1381,   770,  1673,   754,    92,
25038      301,  1735,  1736,   754,   773,    96,   131,   443,   490,   554,
25039      598,   754,   755,   756,  1893,  1895,  1558,    94,  1336,  1334,
25040     1323,   504,   809,  1325,  1602,   535,   320,  1934,    91,   286,
25041      715,  1252,   179,   179,   814,   831,   832,  1977,  1967,   852,
25042      823,   770,   634,   770,  1816,  1417,   266,  1438,    10,   271,
25043     1513,  1528,   127,   127,  1513,  1528,  1518,  1519,   771,   773,
25044     1545,  1546,  1207,  1624,   302,   303,   773,  1564,    12,    65,
25045     1586,  1436,  1486,  1566,  1567,  1565,  1592,  1426,   773,  1586,
25046     1430,  1613,  1614,  1615,  1213,  1207,   395,   395,   403,   480,
25047      104,   148,   176,   276,  1046,  1606,  1607,  1821,  1028,  1661,
25048     1661,    26,  1661,  1663,  1661,   155,   537,   301,  1661,  1662,
25049     1662,   833,  1822,  1822,  1822,  1822,  1602,  1822,  1822,   771,
25050      773,  1046,  1046,  1022,   773,  1016,   266,   585,  1830,  1925,
25051     1926,   266,   266,   266,    10,  1915,   523,   524,   527,   528,
25052      529,  1932,  1933,   318,   585,  1277,     5,     7,     8,    31,
25053       33,    39,    73,   114,   145,   180,   184,   192,   195,   218,
25054      254,   255,   256,   279,   304,   325,   333,   335,   354,   361,
25055      373,   380,   395,   405,   409,   410,   416,   420,   428,   448,
25056      474,   478,   488,   525,   538,   540,   579,   585,   612,   623,
25057      624,   625,   644,   651,   682,   697,   698,   710,   713,  1054,
25058     1115,  1117,  1120,  1121,  1122,  1282,  1286,  1288,  1291,  1297,
25059     1298,  1299,  1301,  1302,  1579,  1821,   377,   647,   218,  1279,
25060     1828,  1960,    11,  1959,     6,   365,  1342,   875,  1436,   770,
25061      770,  1602,   770,  1602,  1602,  1822,  1822,  1605,  1822,  1602,
25062     1822,  1822,  1822,  1822,  1822,  1822,  1822,  1602,  1822,   391,
25063      561,   663,  1798,  1822,  1602,   802,  1822,  1603,  1046,  1046,
25064     1025,    99,  1661,   773,  1019,   778,  1514,  1698,  1429,   229,
25065     1591,   224,  1695,  1558,  1880,  1310,    92,   890,   891,   944,
25066       72,  1930,   301,  1936,   577,   271,   761,   761,  1920,  1920,
25067     1920,  1920,   955,   179,  1674,  1378,  1816,  1382,   113,  1385,
25068     1770,    16,    17,    22,    23,    32,    58,    70,    90,   123,
25069      146,   147,   149,   157,   158,   159,   177,   212,   237,   243,
25070      268,   269,   270,   293,   294,   341,   343,   344,   359,   396,
25071      398,   421,   444,   455,   456,   487,   496,   542,   543,   544,
25072      550,   551,   567,   568,   591,   592,   610,   642,   702,   705,
25073      708,   715,   731,   750,  1171,  1173,  1174,  1176,  1177,  1178,
25074     1179,  1180,  1181,  1182,  1183,  1184,  1185,  1186,   461,    35,
25075       47,   773,   777,  1436,   941,   412,   417,  1436,  1436,   770,
25076     1191,  1192,  1192,   770,  1188,  1189,  1191,   770,  1189,  1194,
25077       56,   123,  1191,  1192,  1192,   123,  1192,  1191,   771,   771,
25078      771,   771,  1476,  1436,  1436,   771,   184,  1492,   771,   771,
25079      773,   773,   771,   773,   771,   124,  1468,  1469,   771,   771,
25080      771,   771,   773,   771,    92,   771,   771,   773,  1436,  1436,
25081     1436,  1436,   771,   771,    11,  1445,   771,    11,   771,   771,
25082      773,   771,   773,   771,   773,   771,   773,   771,   771,   771,
25083      771,   148,   176,   176,   771,   773,  1436,   771,   771,   773,
25084      773,   771,  1820,  1828,   778,   771,   770,  1220,  1220,    12,
25085       65,   636,   759,  1222,  1223,  1224,   773,   773,   771,  1436,
25086     1436,   778,   771,  1507,  1437,   771,   773,  1437,  1571,  1563,
25087      184,  1485,   771,  1431,  1473,  1067,  1068,  1069,  1828,   771,
25088     1436,  1605,    26,   770,  1081,   754,   770,  1071,  1833,   219,
25089      771,   773,   778,  1401,  1658,  1659,  1814,    94,    94,  1921,
25090     1921,  1921,  1921,    11,  1432,  1822,  1828,   761,  1820,  1877,
25091     1877,   771,   771,   374,   718,   210,  1828,  1828,  1877,  1862,
25092     1864,    57,    89,   148,   176,   276,  1589,  1712,  1721,   773,
25093     1680,  1660,  1555,  1673,   771,   773,   300,  1828,   770,   770,
25094      203,  1547,  1548,  1549,  1828,   770,  1737,   210,   349,   356,
25095      372,   382,   383,   384,   392,   533,   547,   633,   648,   685,
25096      699,   919,   918,  1894,  1589,   546,   754,   773,  1832,  1277,
25097      395,   345,   463,   645,  1258,  1258,   179,  1816,  1816,   135,
25098      137,   139,  1047,  1049,  1114,  1116,  1117,  1129,  1114,   770,
25099      872,   852,   839,  1959,   829,    58,   123,   212,   684,  1127,
25100      828,   824,  1417,  1417,   179,  1521,  1528,  1528,   179,  1523,
25101     1436,   770,  1056,  1828,  1543,  1544,   365,  1777,  1812,    11,
25102      773,  1812,  1436,   771,   773,  1604,  1604,  1604,  1604,  1604,
25103     1604,   837,  1016,   266,    11,   286,  1923,  1927,   185,  1916,
25104     1602,  1602,  1602,  1798,   759,  1600,  1601,  1932,   145,   281,
25105     1275,   436,    36,   195,   371,   586,   694,  1133,  1141,  1142,
25106     1147,  1148,  1239,  1243,  1244,  1303,  1303,   195,  1303,   195,
25107      271,    36,    91,   195,   586,   694,  1146,  1239,  1303,   408,
25108     1661,   195,    26,  1661,  1056,    11,   271,   754,  1312,  1661,
25109     1661,  1661,  1661,   733,  1661,  1661,  1661,  1661,   195,  1661,
25110     1661,   408,  1661,   128,   697,   128,  1661,   195,   697,  1661,
25111     1661,  1661,  1661,  1303,  1661,  1661,   195,   584,   195,   195,
25112     1661,  1661,   411,   531,  1828,  1661,  1661,   195,  1115,   773,
25113     1053,  1054,  1286,   770,   778,  1132,  1149,  1815,  1828,  1660,
25114     1441,  1942,   329,   427,   840,   271,   409,   416,   842,   771,
25115      773,  1961,  1962,    11,     6,   770,  1343,   966,   805,   806,
25116     1602,   807,   808,  1602,   803,   804,  1602,  1828,  1046,  1019,
25117     1828,  1558,  1828,   429,   229,  1427,   892,   771,  1436,   943,
25118       98,  1920,  1931,  1931,  1931,  1931,    76,    77,   956,   414,
25119     1385,   493,   113,   220,  1776,  1191,  1193,  1192,   378,  1191,
25120     1198,  1199,  1188,   202,  1188,  1198,    17,    34,   328,   346,
25121      722,  1175,  1199,  1205,  1215,  1216,  1218,    32,   293,  1175,
25122     1181,  1183,  1198,  1175,  1188,   770,  1198,  1175,  1191,  1193,
25123     1175,  1192,   770,  1188,  1198,    32,   294,   294,   296,  1188,
25124     1191,   715,   770,   882,  1192,  1192,  1192,   569,  1191,  1192,
25125       61,   922,  1188,   296,  1193,  1193,  1191,  1191,  1192,  1194,
25126       92,    92,   886,  1828,   875,   972,    57,   148,   176,   276,
25127     1501,   176,   176,  1191,  1502,  1503,   771,  1551,  1551,    26,
25128      235,  1491,  1436,  1436,  1507,   166,   344,   771,   301,  1470,
25129     1436,  1436,  1436,  1551,    58,    70,    90,   123,   212,   282,
25130      396,   398,   550,   551,   708,  1181,  1182,  1446,  1447,  1448,
25131     1449,  1500,  1436,  1436,  1436,  1436,    86,   275,  1602,  1610,
25132     1551,  1436,  1436,  1828,  1603,   771,  1230,  1225,  1223,  1225,
25133     1226,  1602,  1828,   771,  1507,   184,  1572,    26,   771,  1432,
25134      771,   773,  1551,  1065,   195,  1082,  1083,  1603,  1067,  1809,
25135      761,  1828,   771,   773,  1660,  1921,  1921,  1822,  1828,   778,
25136     1660,  1660,  1863,  1868,  1589,  1682,  1558,    61,  1672,  1545,
25137     1431,  1673,  1400,     6,  1287,  1295,  1296,  1828,   771,   773,
25138     1605,  1745,  1746,   437,   145,   770,  1822,   809,   745,  1816,
25139      819,   821,    36,   586,  1130,  1131,  1132,  1133,  1141,  1142,
25140      139,  1816,  1052,  1053,   773,  1116,  1048,   873,   854,    14,
25141      322,  1003,   179,    11,   863,   864,   668,   863,  1959,  1520,
25142      286,  1522,   286,  1550,   113,   285,   448,  1538,  1539,  1542,
25143       79,    82,   181,   265,  1778,  1779,   142,  1780,  1586,  1568,
25144     1567,  1586,  1431,  1615,   585,  1822,  1925,   176,   176,   585,
25145       61,   121,   552,  1276,   111,  1261,  1815,  1112,    93,   111,
25146     1111,   733,    33,    91,   203,   280,  1145,  1238,  1112,  1239,
25147     1240,  1240,  1111,  1637,  1361,  1637,  1287,  1205,  1637,   129,
25148     1638,    93,  1637,   733,   203,  1637,  1637,  1661,    61,  1828,
25149     1361,  1580,  1581,  1814,    61,  1602,  1609,  1055,  1816,    61,
25150     1602,    61,  1602,    61,  1602,  1118,    61,  1828,  1605,  1602,
25151     1602,  1361,  1822,  1822,  1661,  1602,  1830,  1296,   443,   490,
25152      561,  1126,  1602,  1605,  1605,  1637,    61,  1602,  1822,  1361,
25153     1361,  1361,    61,   376,   378,   415,   444,   580,   616,  1125,
25154     1609,  1602,  1609,  1287,     5,    73,  1299,  1128,  1130,  1828,
25155      322,   443,  1311,   215,  1232,  1150,   778,    61,  1606,  1822,
25156     1828,   597,  1436,  1436,   179,   846,   852,   179,   373,   847,
25157     1828,  1400,  1961,  1344,   476,   267,   771,   773,   771,   773,
25158      771,   773,    94,   429,  1386,  1800,   577,  1931,   301,  1935,
25159     1935,  1935,  1935,   875,   952,  1675,   122,  1198,  1197,  1660,
25160     1198,   282,   307,   659,  1190,  1190,  1215,  1213,  1217,  1218,
25161     1206,    17,  1216,  1219,   378,  1200,  1198,  1175,  1190,  1262,
25162     1793,  1198,  1262,  1190,   296,  1190,  1198,   569,   879,   880,
25163      881,  1828,   922,  1175,   878,   920,  1175,  1190,  1436,   214,
25164     1187,  1217,  1219,  1175,  1198,  1190,  1190,   888,   896,   897,
25165     1602,   770,   889,   417,   771,   771,   771,   771,  1217,   773,
25166     1217,  1217,   771,   771,  1493,  1812,  1793,   140,  1494,  1495,
25167     1496,   771,   773,   771,   489,   539,   607,   771,   771,   771,
25168      771,  1188,   123,  1192,    32,  1192,  1450,   771,   771,   771,
25169      771,   773,   771,   771,   771,  1221,   771,   773,   771,    26,
25170      207,   229,  1573,  1574,  1812,  1069,   677,  1106,   129,   463,
25171     1084,   771,   773,   771,   778,  1659,  1673,   761,  1877,  1877,
25172     1582,   771,   771,   773,  1548,   771,   773,    10,  1747,  1670,
25173     1830,   817,   770,   770,    92,  1143,   771,   773,  1816,  1050,
25174     1776,  1116,  1114,   117,   124,   189,   868,   869,   870,   871,
25175      855,   856,  1942,  1978,    63,   119,   283,  1004,   647,  1961,
25176      771,   865,   866,   867,  1828,  1822,   771,    11,  1436,   770,
25177     1436,   770,   771,  1239,  1239,  1539,    26,    26,    79,    26,
25178     1779,   253,   265,  1781,  1782,   770,   436,   176,   318,  1441,
25179     1361,   770,  1441,  1143,   770,   129,   129,  1240,  1112,  1261,
25180     1828,  1112,  1112,  1815,  1287,  1815,  1284,  1207,  1815,  1637,
25181     1295,    92,   129,  1815,  1815,  1822,  1287,   773,  1586,  1059,
25182      770,  1603,  1822,   301,  1149,  1287,  1292,  1287,   771,  1828,
25183     1816,   341,   343,   344,   359,   396,   398,   421,   444,   455,
25184      456,   487,   496,   542,   543,   544,   550,   551,   567,   568,
25185      591,   592,   610,   653,   702,   705,   708,   731,   750,   920,
25186     1151,  1172,  1173,  1828,  1551,   661,  1822,   412,  1280,   301,
25187     1963,  1347,  1828,     6,   770,  1345,   875,   806,   808,   804,
25188     1438,  1935,    98,  1932,  1937,  1938,   129,   264,  1828,   307,
25189      282,  1197,   771,   773,   771,   878,  1171,   771,   773,   922,
25190      778,   754,  1219,   186,   246,   248,   894,   895,   896,   899,
25191     1441,  1828,   865,    92,    92,   176,   773,  1586,   771,  1497,
25192     1591,  1436,   539,   435,  1217,  1605,   771,  1602,  1585,   771,
25193       15,   390,   398,   705,   708,   717,  1575,  1576,  1797,  1586,
25194     1602,  1066,   770,  1072,  1085,  1828,  1083,   761,  1593,  1296,
25195     1746,   409,   771,   576,   770,  1259,  1260,  1828,  1259,  1828,
25196     1131,   771,    11,  1107,  1052,   771,   773,   867,    67,   924,
25197      179,   840,   634,  1972,   773,   642,   715,  1171,  1972,  1961,
25198     1550,  1550,    92,  1537,  1537,  1793,  1793,    26,  1793,    26,
25199       26,  1782,   266,  1276,   399,  1275,    84,  1289,  1828,    84,
25200     1436,  1112,  1261,  1828,   286,  1251,   715,  1261,  1261,    73,
25201      237,  1149,  1355,  1212,  1815,  1828,  1310,  1283,  1581,  1740,
25202      264,  1311,  1293,  1295,  1285,   770,  1233,  1153,   778,  1144,
25203     1145,  1152,   778,   841,   848,   849,    33,   348,   498,   771,
25204      773,  1346,   271,   577,  1938,   283,  1816,  1217,  1793,  1217,
25205      922,   880,  1828,   176,   773,   924,   450,   771,   891,   995,
25206      771,  1812,   570,   773,   771,   771,   771,   717,  1576,  1577,
25207     1797,   642,   595,   430,  1578,   595,   770,  1079,  1075,    61,
25208      291,   292,   390,   466,  1086,   353,   770,  1259,   771,   773,
25209     1586,   770,   771,   770,  1051,  1050,   870,  1430,   845,   846,
25210     1973,   854,  1974,   867,   715,   882,   569,  1974,   771,   771,
25211       99,   127,   184,  1541,  1540,  1793,  1793,  1793,   771,  1815,
25212      583,   770,  1290,   773,   771,  1261,  1251,   715,  1258,  1134,
25213     1258,  1136,  1137,    61,    61,  1311,  1361,   771,  1816,  1294,
25214     1333,  1234,  1828,   153,  1235,   203,   280,   304,   373,   486,
25215      743,  1154,  1155,  1164,  1202,  1203,  1204,  1231,  1441,  1821,
25216     1173,    34,    61,   175,   179,   333,   454,   653,  1158,  1160,
25217     1195,  1196,  1203,  1828,   677,   843,   924,   577,    33,    33,
25218     1828,   203,  1348,  1349,  1828,  1438,  1676,  1526,   778,   895,
25219      989,  1586,  1591,  1591,   447,    10,   447,    99,   390,   561,
25220      704,  1077,  1078,  1828,   771,   688,  1080,  1088,   703,   114,
25221      373,   380,   395,   525,   538,   558,   697,  1102,  1103,  1104,
25222     1715,   836,   771,  1880,  1260,   176,  1880,  1828,  1119,  1120,
25223     1968,   842,  1171,  1975,   569,  1828,    26,    26,   770,   770,
25224     1145,  1603,  1082,  1828,  1140,  1138,  1258,   770,  1135,   770,
25225      770,   759,   760,   770,  1168,  1169,  1170,  1411,  1456,  1796,
25226     1821,  1056,   122,   771,   773,   451,   582,   660,   179,  1236,
25227      129,  1822,   694,  1203,   733,   129,   175,  1660,  1211,  1170,
25228      283,   326,    61,    11,   378,  1196,  1201,  1436,   418,   844,
25229      577,   577,   771,   773,  1683,  1684,  1814,  1771,  1828,  1577,
25230      642,   186,   314,   771,   773,  1603,   770,  1090,  1092,  1087,
25231      408,  1661,  1661,   408,  1661,  1661,  1661,  1661,   770,  1097,
25232     1104,   420,   771,  1880,   301,   373,   488,  1246,  1250,  1254,
25233     1257,  1821,  1586,   771,  1247,  1249,  1254,  1256,   773,  1816,
25234      847,   923,  1828,   778,  1547,  1549,   771,   771,   770,   770,
25235     1139,  1259,   770,  1259,  1259,  1798,  1798,  1167,   770,  1828,
25236       63,   283,    61,  1606,  1822,  1828,   172,   729,   642,  1168,
25237     1197,  1195,  1436,  1349,   773,  1660,  1208,  1076,  1078,   770,
25238     1091,  1092,  1093,   155,  1089,  1092,  1661,  1822,  1822,  1661,
25239     1606,  1606,  1603,  1830,   689,  1098,  1099,  1661,   286,   715,
25240     1245,  1248,  1253,  1254,  1255,   581,  1822,  1661,  1300,  1301,
25241     1302,  1257,  1660,  1300,  1256,  1828,    92,   412,   778,  1828,
25242      771,   771,  1259,  1259,   770,   771,  1259,   771,   771,   771,
25243     1082,    28,   223,   237,   561,  1237,  1237,   770,  1433,   417,
25244      678,  1159,  1684,  1673,  1772,  1080,   771,   773,   155,  1095,
25245     1096,  1438,  1822,  1822,  1100,   771,   773,  1123,  1258,  1258,
25246     1300,  1255,  1821,  1602,  1302,  1301,    61,  1606,  1822,  1828,
25247      771,  1430,   848,  1828,   778,   771,   771,  1259,  1245,   771,
25248     1246,  1247,   771,    61,   175,   319,   179,   179,   771,  1603,
25249     1156,  1157,  1202,  1156,   587,   683,   736,  1161,   229,  1783,
25250     1092,   773,  1094,  1101,  1830,  1099,  1969,  1828,  1232,  1245,
25251      771,  1245,   283,    63,   771,  1202,  1162,  1163,  1164,   471,
25252     1777,  1096,   771,  1102,    75,  1245,  1237,  1237,  1164,    26,
25253     1780,   642,  1793,   113,  1784,  1970,   176,   770,  1786,   446,
25254      594,  1964,  1965,   142,   229,  1785,   771,   779,  1787,  1788,
25255     1814,   237,  1789,  1830,  1971,  1830,   771,   773,  1790,  1791,
25256     1814,   924,  1788,   773,  1660,  1791,  1430,  1673,  1431
25257 };
25258 
25259   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
25260 static const yytype_uint16 yyr1[] =
25261 {
25262        0,   781,   782,   783,   782,   782,   784,   784,   785,   785,
25263      785,   786,   786,   786,   786,   786,   786,   786,   786,   786,
25264      786,   786,   786,   786,   786,   786,   786,   786,   786,   786,
25265      786,   786,   786,   786,   786,   786,   786,   786,   786,   786,
25266      786,   786,   786,   786,   786,   786,   786,   786,   786,   786,
25267      786,   786,   786,   786,   786,   786,   786,   786,   786,   786,
25268      786,   786,   786,   786,   786,   786,   786,   786,   786,   786,
25269      787,   788,   788,   790,   789,   791,   792,   793,   791,   794,
25270      795,   794,   796,   796,   798,   797,   800,   799,   801,   801,
25271      802,   802,   802,   802,   802,   802,   802,   802,   802,   802,
25272      802,   802,   802,   802,   802,   802,   802,   802,   802,   802,
25273      803,   803,   803,   804,   805,   805,   805,   806,   807,   807,
25274      807,   808,   809,   809,   809,   809,   809,   809,   809,   810,
25275      810,   811,   813,   814,   812,   815,   812,   816,   817,   812,
25276      818,   819,   812,   820,   821,   812,   822,   812,   823,   812,
25277      824,   812,   825,   812,   826,   812,   827,   812,   828,   812,
25278      829,   812,   812,   812,   812,   812,   812,   830,   812,   831,
25279      831,   832,   832,   833,   833,   833,   833,   833,   833,   833,
25280      833,   833,   833,   833,   833,   833,   833,   835,   834,   836,
25281      836,   837,   837,   837,   837,   837,   837,   837,   839,   838,
25282      841,   840,   840,   842,   842,   842,   842,   843,   843,   844,
25283      844,   845,   845,   846,   847,   847,   849,   848,   850,   851,
25284      851,   852,   852,   853,   853,   854,   854,   855,   855,   855,
25285      855,   855,   855,   855,   856,   856,   857,   857,   859,   858,
25286      860,   860,   861,   861,   862,   862,   863,   864,   863,   865,
25287      865,   866,   867,   867,   867,   867,   867,   867,   868,   868,
25288      869,   869,   870,   871,   871,   871,   871,   873,   872,   874,
25289      874,   875,   875,   876,   876,   877,   878,   878,   878,   879,
25290      880,   881,   881,   882,   883,   884,   884,   884,   884,   885,
25291      885,   885,   886,   885,   888,   887,   889,   889,   890,   892,
25292      891,   893,   893,   893,   893,   894,   894,   895,   896,   896,
25293      897,   898,   898,   899,   899,   899,   899,   899,   899,   900,
25294      900,   901,   902,   902,   903,   903,   904,   904,   905,   905,
25295      906,   906,   906,   907,   907,   907,   907,   907,   907,   907,
25296      907,   907,   907,   907,   907,   908,   909,   910,   910,   911,
25297      911,   912,   912,   913,   914,   914,   915,   915,   915,   916,
25298      917,   917,   918,   919,   919,   919,   919,   919,   919,   919,
25299      919,   919,   919,   919,   919,   919,   920,   920,   921,   921,
25300      922,   922,   923,   923,   923,   923,   923,   924,   924,   924,
25301      924,   924,   924,   924,   924,   924,   924,   925,   925,   925,
25302      925,   927,   926,   929,   928,   930,   930,   932,   931,   931,
25303      934,   933,   935,   935,   935,   935,   936,   936,   936,   936,
25304      937,   938,   939,   940,   942,   941,   944,   943,   945,   945,
25305      946,   946,   947,   948,   948,   948,   949,   949,   950,   951,
25306      951,   953,   954,   955,   952,   956,   956,   956,   958,   957,
25307      960,   961,   959,   959,   962,   962,   963,   963,   965,   966,
25308      964,   968,   969,   967,   970,   970,   971,   972,   972,   973,
25309      975,   974,   977,   976,   979,   978,   980,   980,   982,   981,
25310      983,   983,   983,   984,   986,   985,   988,   987,   989,   991,
25311      990,   992,   990,   993,   994,   995,   990,   996,   990,   998,
25312      997,   999,   997,  1000,  1001,   997,  1002,   997,  1003,  1003,
25313     1004,  1004,  1004,  1005,  1006,  1007,  1008,  1008,  1009,  1009,
25314     1010,  1011,  1012,  1012,  1014,  1013,  1015,  1015,  1015,  1016,
25315     1016,  1016,  1017,  1018,  1018,  1018,  1019,  1019,  1019,  1019,
25316     1019,  1019,  1019,  1019,  1020,  1021,  1021,  1021,  1022,  1022,
25317     1022,  1022,  1022,  1023,  1024,  1024,  1024,  1025,  1025,  1025,
25318     1025,  1025,  1025,  1025,  1026,  1027,  1027,  1027,  1028,  1028,
25319     1028,  1029,  1030,  1031,  1032,  1033,  1034,  1034,  1034,  1035,
25320     1036,  1037,  1038,  1039,  1040,  1041,  1042,  1043,  1044,  1044,
25321     1045,  1045,  1046,  1046,  1048,  1047,  1047,  1047,  1049,  1049,
25322     1050,  1050,  1051,  1051,  1052,  1053,  1053,  1055,  1054,  1056,
25323     1058,  1057,  1060,  1059,  1061,  1062,  1061,  1061,  1061,  1063,
25324     1061,  1061,  1064,  1061,  1065,  1065,  1066,  1066,  1067,  1067,
25325     1068,  1068,  1069,  1070,  1071,  1072,  1073,  1073,  1074,  1075,
25326     1074,  1076,  1074,  1077,  1077,  1078,  1079,  1080,  1080,  1081,
25327     1081,  1082,  1082,  1084,  1083,  1085,  1086,  1087,  1086,  1088,
25328     1086,  1086,  1086,  1086,  1089,  1089,  1090,  1090,  1091,  1091,
25329     1093,  1094,  1092,  1095,  1095,  1096,  1096,  1097,  1097,  1098,
25330     1098,  1100,  1099,  1101,  1102,  1102,  1103,  1103,  1104,  1104,
25331     1104,  1104,  1104,  1104,  1104,  1104,  1104,  1105,  1105,  1105,
25332     1106,  1106,  1107,  1107,  1108,  1108,  1109,  1109,  1110,  1110,
25333     1111,  1111,  1112,  1112,  1113,  1113,  1114,  1114,  1115,  1115,
25334     1116,  1116,  1116,  1117,  1117,  1117,  1117,  1117,  1117,  1117,
25335     1117,  1117,  1117,  1117,  1117,  1117,  1117,  1117,  1117,  1117,
25336     1117,  1117,  1117,  1118,  1117,  1117,  1117,  1117,  1117,  1117,
25337     1117,  1117,  1117,  1117,  1117,  1117,  1117,  1117,  1117,  1117,
25338     1117,  1117,  1119,  1119,  1120,  1121,  1122,  1123,  1124,  1125,
25339     1125,  1125,  1125,  1125,  1125,  1125,  1126,  1126,  1126,  1127,
25340     1127,  1127,  1127,  1128,  1129,  1130,  1130,  1131,  1131,  1131,
25341     1131,  1131,  1132,  1132,  1134,  1133,  1135,  1133,  1136,  1133,
25342     1137,  1133,  1138,  1133,  1139,  1133,  1140,  1133,  1141,  1142,
25343     1143,  1144,  1144,  1145,  1146,  1146,  1147,  1147,  1148,  1150,
25344     1149,  1152,  1151,  1153,  1151,  1154,  1154,  1155,  1155,  1156,
25345     1156,  1157,  1157,  1158,  1158,  1158,  1158,  1159,  1158,  1158,
25346     1158,  1160,  1160,  1161,  1161,  1161,  1161,  1162,  1162,  1163,
25347     1163,  1164,  1164,  1164,  1164,  1166,  1165,  1167,  1167,  1168,
25348     1168,  1169,  1169,  1170,  1170,  1171,  1172,  1172,  1173,  1173,
25349     1173,  1173,  1173,  1174,  1174,  1174,  1174,  1174,  1174,  1174,
25350     1174,  1174,  1174,  1175,  1175,  1175,  1175,  1176,  1176,  1176,
25351     1176,  1176,  1176,  1176,  1176,  1177,  1177,  1177,  1177,  1177,
25352     1178,  1178,  1178,  1178,  1178,  1178,  1178,  1178,  1178,  1178,
25353     1178,  1178,  1178,  1178,  1178,  1178,  1179,  1179,  1180,  1180,
25354     1180,  1180,  1180,  1180,  1180,  1180,  1181,  1182,  1182,  1183,
25355     1183,  1184,  1184,  1184,  1184,  1184,  1185,  1185,  1185,  1185,
25356     1185,  1186,  1186,  1186,  1187,  1187,  1188,  1188,  1188,  1189,
25357     1190,  1190,  1190,  1190,  1190,  1190,  1191,  1191,  1191,  1191,
25358     1192,  1192,  1193,  1193,  1194,  1194,  1195,  1195,  1196,  1196,
25359     1196,  1196,  1196,  1196,  1196,  1197,  1197,  1198,  1198,  1199,
25360     1200,  1201,  1202,  1202,  1202,  1203,  1203,  1203,  1203,  1203,
25361     1203,  1204,  1204,  1205,  1205,  1206,  1206,  1207,  1207,  1208,
25362     1208,  1209,  1209,  1210,  1210,  1211,  1212,  1212,  1213,  1213,
25363     1214,  1214,  1215,  1215,  1215,  1216,  1217,  1217,  1218,  1218,
25364     1218,  1218,  1218,  1218,  1219,  1219,  1221,  1220,  1222,  1222,
25365     1223,  1224,  1224,  1224,  1224,  1225,  1226,  1227,  1227,  1228,
25366     1229,  1229,  1230,  1230,  1231,  1231,  1232,  1233,  1233,  1234,
25367     1234,  1235,  1235,  1235,  1235,  1236,  1236,  1236,  1236,  1236,
25368     1237,  1237,  1237,  1237,  1237,  1238,  1238,  1239,  1239,  1240,
25369     1240,  1241,  1241,  1241,  1242,  1242,  1243,  1244,  1245,  1245,
25370     1246,  1246,  1247,  1247,  1248,  1248,  1249,  1249,  1250,  1250,
25371     1251,  1251,  1252,  1252,  1252,  1253,  1253,  1254,  1254,  1254,
25372     1254,  1254,  1254,  1255,  1255,  1256,  1257,  1257,  1258,  1258,
25373     1258,  1259,  1259,  1260,  1260,  1261,  1261,  1262,  1262,  1264,
25374     1265,  1263,  1266,  1263,  1263,  1267,  1263,  1268,  1263,  1269,
25375     1263,  1270,  1263,  1271,  1263,  1263,  1263,  1263,  1263,  1272,
25376     1263,  1263,  1273,  1274,  1263,  1275,  1275,  1276,  1276,  1276,
25377     1276,  1277,  1277,  1277,  1277,  1277,  1278,  1278,  1278,  1278,
25378     1279,  1279,  1280,  1280,  1281,  1281,  1282,  1282,  1282,  1282,
25379     1282,  1282,  1282,  1282,  1282,  1282,  1283,  1282,  1282,  1284,
25380     1282,  1285,  1282,  1282,  1282,  1282,  1282,  1286,  1287,  1287,
25381     1289,  1288,  1290,  1290,  1290,  1292,  1291,  1293,  1294,  1293,
25382     1295,  1295,  1296,  1297,  1297,  1298,  1299,  1299,  1299,  1299,
25383     1299,  1299,  1299,  1299,  1299,  1299,  1299,  1299,  1299,  1299,
25384     1299,  1299,  1299,  1299,  1299,  1299,  1299,  1299,  1299,  1299,
25385     1299,  1299,  1299,  1299,  1299,  1300,  1300,  1300,  1300,  1300,
25386     1301,  1301,  1302,  1302,  1303,  1303,  1304,  1304,  1306,  1305,
25387     1307,  1307,  1308,  1308,  1309,  1309,  1310,  1310,  1310,  1311,
25388     1311,  1311,  1312,  1312,  1312,  1312,  1314,  1313,  1315,  1313,
25389     1313,  1313,  1316,  1317,  1317,  1318,  1318,  1319,  1319,  1319,
25390     1321,  1320,  1322,  1322,  1323,  1323,  1323,  1324,  1324,  1324,
25391     1325,  1325,  1327,  1326,  1328,  1328,  1328,  1329,  1330,  1329,
25392     1332,  1331,  1333,  1333,  1334,  1334,  1335,  1335,  1335,  1336,
25393     1336,  1338,  1337,  1339,  1339,  1340,  1341,  1341,  1342,  1342,
25394     1343,  1344,  1343,  1345,  1346,  1345,  1347,  1347,  1347,  1348,
25395     1348,  1348,  1349,  1349,  1350,  1350,  1351,  1352,  1351,  1354,
25396     1353,  1355,  1355,  1356,  1356,  1357,  1357,  1357,  1357,  1357,
25397     1357,  1358,  1358,  1360,  1359,  1361,  1361,  1361,  1363,  1362,
25398     1362,  1364,  1364,  1365,  1365,  1366,  1368,  1367,  1369,  1369,
25399     1370,  1370,  1371,  1372,  1373,  1373,  1375,  1374,  1376,  1376,
25400     1377,  1377,  1378,  1379,  1381,  1380,  1383,  1382,  1384,  1384,
25401     1385,  1385,  1387,  1386,  1388,  1386,  1390,  1389,  1391,  1389,
25402     1392,  1392,  1394,  1393,  1396,  1397,  1395,  1398,  1399,  1400,
25403     1400,  1401,  1401,  1403,  1402,  1404,  1402,  1405,  1405,  1406,
25404     1407,  1406,  1406,  1408,  1408,  1409,  1410,  1411,  1411,  1412,
25405     1412,  1413,  1414,  1414,  1415,  1415,  1416,  1416,  1416,  1417,
25406     1417,  1417,  1418,  1419,  1419,  1420,  1420,  1421,  1421,  1421,
25407     1421,  1422,  1422,  1423,  1423,  1423,  1424,  1424,  1425,  1425,
25408     1426,  1426,  1426,  1427,  1427,  1427,  1428,  1428,  1429,  1430,
25409     1431,  1432,  1432,  1432,  1432,  1432,  1433,  1433,  1433,  1434,
25410     1434,  1434,  1435,  1435,  1436,  1436,  1436,  1436,  1436,  1436,
25411     1436,  1436,  1436,  1436,  1436,  1436,  1436,  1436,  1436,  1436,
25412     1437,  1437,  1437,  1437,  1437,  1437,  1437,  1437,  1437,  1437,
25413     1437,  1437,  1437,  1437,  1437,  1437,  1438,  1438,  1438,  1438,
25414     1438,  1438,  1438,  1438,  1438,  1438,  1438,  1438,  1438,  1438,
25415     1438,  1438,  1438,  1438,  1438,  1439,  1439,  1440,  1440,  1441,
25416     1441,  1442,  1442,  1443,  1443,  1443,  1443,  1443,  1443,  1444,
25417     1444,  1445,  1445,  1446,  1446,  1446,  1447,  1447,  1447,  1447,
25418     1447,  1447,  1448,  1448,  1448,  1450,  1449,  1449,  1451,  1452,
25419     1452,  1453,  1453,  1453,  1453,  1454,  1455,  1455,  1455,  1455,
25420     1455,  1455,  1455,  1455,  1456,  1456,  1456,  1456,  1456,  1456,
25421     1456,  1456,  1456,  1456,  1456,  1456,  1456,  1456,  1456,  1456,
25422     1456,  1456,  1456,  1456,  1456,  1456,  1456,  1456,  1456,  1456,
25423     1456,  1456,  1456,  1457,  1457,  1457,  1457,  1458,  1458,  1459,
25424     1459,  1459,  1459,  1459,  1459,  1460,  1460,  1461,  1461,  1462,
25425     1462,  1462,  1462,  1462,  1462,  1462,  1462,  1462,  1462,  1462,
25426     1462,  1462,  1462,  1462,  1462,  1462,  1462,  1462,  1462,  1462,
25427     1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,
25428     1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,
25429     1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,  1463,
25430     1463,  1463,  1464,  1464,  1464,  1464,  1464,  1464,  1464,  1464,
25431     1464,  1464,  1464,  1464,  1464,  1464,  1464,  1464,  1464,  1464,
25432     1464,  1464,  1464,  1464,  1464,  1464,  1464,  1464,  1464,  1465,
25433     1465,  1465,  1465,  1465,  1465,  1465,  1465,  1465,  1467,  1466,
25434     1466,  1468,  1468,  1469,  1469,  1470,  1470,  1471,  1471,  1472,
25435     1472,  1473,  1474,  1474,  1474,  1474,  1474,  1474,  1474,  1475,
25436     1476,  1474,  1474,  1474,  1474,  1474,  1474,  1474,  1474,  1474,
25437     1474,  1474,  1477,  1474,  1478,  1478,  1479,  1479,  1479,  1480,
25438     1480,  1480,  1480,  1480,  1480,  1480,  1480,  1480,  1480,  1480,
25439     1480,  1480,  1481,  1483,  1482,  1482,  1484,  1484,  1485,  1486,
25440     1488,  1487,  1489,  1489,  1489,  1489,  1490,  1490,  1491,  1491,
25441     1492,  1492,  1493,  1493,  1494,  1494,  1495,  1496,  1497,  1497,
25442     1497,  1499,  1498,  1500,  1501,  1500,  1502,  1500,  1503,  1500,
25443     1500,  1500,  1500,  1504,  1504,  1504,  1504,  1504,  1504,  1504,
25444     1504,  1505,  1505,  1505,  1505,  1506,  1506,  1507,  1507,  1508,
25445     1508,  1509,  1509,  1510,  1510,  1511,  1511,  1512,  1512,  1513,
25446     1513,  1514,  1515,  1515,  1516,  1516,  1517,  1518,  1517,  1519,
25447     1517,  1517,  1520,  1517,  1521,  1517,  1517,  1522,  1517,  1523,
25448     1517,  1517,  1524,  1524,  1524,  1525,  1525,  1526,  1526,  1527,
25449     1528,  1528,  1528,  1528,  1529,  1529,  1530,  1530,  1531,  1531,
25450     1532,  1532,  1533,  1533,  1534,  1535,  1536,  1536,  1537,  1537,
25451     1537,  1537,  1538,  1538,  1540,  1539,  1541,  1539,  1542,  1542,
25452     1543,  1544,  1543,  1546,  1545,  1547,  1547,  1548,  1548,  1549,
25453     1549,  1550,  1550,  1551,  1551,  1551,  1551,  1551,  1551,  1551,
25454     1551,  1551,  1551,  1551,  1551,  1552,  1552,  1552,  1552,  1552,
25455     1552,  1552,  1552,  1552,  1553,  1553,  1553,  1553,  1554,  1554,
25456     1554,  1555,  1555,  1556,  1557,  1557,  1558,  1559,  1558,  1560,
25457     1561,  1560,  1562,  1562,  1563,  1563,  1564,  1564,  1564,  1565,
25458     1565,  1566,  1566,  1567,  1569,  1568,  1570,  1570,  1571,  1571,
25459     1572,  1572,  1573,  1573,  1574,  1574,  1575,  1575,  1576,  1576,
25460     1576,  1577,  1577,  1577,  1578,  1578,  1578,  1578,  1578,  1578,
25461     1579,  1580,  1580,  1581,  1582,  1582,  1584,  1583,  1585,  1585,
25462     1586,  1586,  1586,  1587,  1587,  1588,  1588,  1588,  1589,  1590,
25463     1590,  1590,  1591,  1591,  1591,  1591,  1591,  1591,  1592,  1593,
25464     1593,  1593,  1593,  1594,  1594,  1594,  1595,  1595,  1596,  1597,
25465     1598,  1598,  1598,  1599,  1599,  1600,  1600,  1601,  1601,  1602,
25466     1602,  1602,  1602,  1602,  1602,  1603,  1603,  1603,  1603,  1603,
25467     1604,  1604,  1604,  1604,  1605,  1605,  1605,  1605,  1605,  1606,
25468     1606,  1606,  1606,  1606,  1607,  1608,  1608,  1609,  1609,  1610,
25469     1610,  1610,  1612,  1611,  1613,  1613,  1614,  1614,  1615,  1617,
25470     1616,  1618,  1618,  1619,  1620,  1620,  1620,  1621,  1623,  1624,
25471     1622,  1622,  1622,  1626,  1625,  1628,  1627,  1629,  1627,  1627,
25472     1627,  1627,  1627,  1627,  1627,  1630,  1627,  1627,  1627,  1627,
25473     1627,  1627,  1631,  1627,  1632,  1632,  1633,  1634,  1635,  1635,
25474     1636,  1637,  1637,  1638,  1638,  1639,  1639,  1641,  1642,  1640,
25475     1644,  1645,  1643,  1646,  1646,  1646,  1646,  1647,  1647,  1648,
25476     1648,  1650,  1649,  1651,  1651,  1652,  1651,  1653,  1654,  1654,
25477     1655,  1655,  1656,  1657,  1657,  1658,  1658,  1659,  1660,  1660,
25478     1661,  1661,  1662,  1662,  1663,  1663,  1665,  1664,  1667,  1666,
25479     1668,  1668,  1669,  1669,  1670,  1670,  1671,  1671,  1672,  1672,
25480     1673,  1673,  1674,  1675,  1676,  1674,  1677,  1677,  1679,  1680,
25481     1678,  1681,  1681,  1682,  1682,  1683,  1683,  1684,  1685,  1685,
25482     1687,  1686,  1688,  1688,  1689,  1689,  1690,  1691,  1692,  1693,
25483     1692,  1694,  1692,  1695,  1695,  1696,  1696,  1697,  1697,  1698,
25484     1698,  1699,  1699,  1700,  1700,  1700,  1702,  1701,  1703,  1703,
25485     1704,  1704,  1705,  1705,  1706,  1706,  1706,  1706,  1706,  1706,
25486     1706,  1706,  1706,  1707,  1707,  1709,  1708,  1710,  1710,  1710,
25487     1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,
25488     1710,  1711,  1710,  1712,  1710,  1710,  1710,  1710,  1710,  1710,
25489     1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,
25490     1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,
25491     1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,
25492     1710,  1710,  1710,  1710,  1710,  1710,  1710,  1710,  1713,  1713,
25493     1713,  1714,  1714,  1715,  1715,  1716,  1716,  1717,  1717,  1718,
25494     1718,  1719,  1719,  1720,  1720,  1721,  1721,  1721,  1723,  1722,
25495     1724,  1722,  1725,  1725,  1725,  1725,  1725,  1725,  1726,  1726,
25496     1727,  1728,  1728,  1728,  1728,  1729,  1729,  1730,  1730,  1730,
25497     1732,  1731,  1734,  1733,  1733,  1735,  1735,  1736,  1737,  1736,
25498     1738,  1738,  1739,  1739,  1739,  1739,  1739,  1739,  1739,  1739,
25499     1739,  1739,  1739,  1739,  1739,  1739,  1739,  1739,  1739,  1740,
25500     1740,  1741,  1742,  1743,  1742,  1742,  1744,  1744,  1745,  1745,
25501     1745,  1746,  1747,  1747,  1749,  1748,  1750,  1750,  1752,  1751,
25502     1753,  1751,  1751,  1754,  1754,  1755,  1755,  1756,  1757,  1756,
25503     1759,  1758,  1760,  1760,  1760,  1761,  1761,  1761,  1762,  1762,
25504     1763,  1763,  1765,  1764,  1766,  1766,  1767,  1769,  1770,  1771,
25505     1772,  1768,  1773,  1773,  1774,  1774,  1775,  1775,  1775,  1776,
25506     1776,  1776,  1777,  1777,  1778,  1778,  1779,  1779,  1779,  1779,
25507     1780,  1780,  1781,  1781,  1782,  1782,  1783,  1783,  1784,  1784,
25508     1785,  1785,  1786,  1786,  1786,  1787,  1787,  1788,  1788,  1789,
25509     1789,  1790,  1790,  1791,  1792,  1792,  1792,  1792,  1793,  1793,
25510     1794,  1794,  1794,  1795,  1795,  1795,  1796,  1796,  1797,  1797,
25511     1797,  1797,  1797,  1797,  1797,  1797,  1797,  1797,  1798,  1798,
25512     1798,  1798,  1798,  1799,  1799,  1799,  1801,  1800,  1802,  1802,
25513     1803,  1803,  1805,  1804,  1806,  1806,  1807,  1807,  1808,  1809,
25514     1809,  1810,  1810,  1811,  1811,  1812,  1813,  1813,  1813,  1813,
25515     1813,  1814,  1814,  1814,  1814,  1814,  1815,  1815,  1815,  1815,
25516     1816,  1816,  1816,  1817,  1817,  1818,  1819,  1819,  1820,  1820,
25517     1820,  1821,  1822,  1823,  1824,  1825,  1825,  1826,  1826,  1827,
25518     1827,  1827,  1828,  1828,  1829,  1829,  1830,  1830,  1830,  1831,
25519     1831,  1831,  1832,  1832,  1833,  1834,  1834,  1834,  1834,  1834,
25520     1834,  1834,  1834,  1835,  1835,  1835,  1835,  1835,  1835,  1835,
25521     1835,  1835,  1836,  1836,  1836,  1836,  1837,  1837,  1837,  1837,
25522     1837,  1837,  1837,  1837,  1838,  1838,  1838,  1838,  1838,  1838,
25523     1838,  1838,  1838,  1839,  1839,  1839,  1839,  1839,  1839,  1839,
25524     1839,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,
25525     1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,
25526     1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,
25527     1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,
25528     1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,  1840,
25529     1840,  1840,  1840,  1840,  1840,  1840,  1841,  1841,  1841,  1841,
25530     1841,  1841,  1842,  1842,  1842,  1842,  1842,  1842,  1842,  1842,
25531     1842,  1842,  1843,  1843,  1843,  1844,  1844,  1844,  1845,  1845,
25532     1845,  1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,
25533     1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,
25534     1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,  1846,
25535     1846,  1846,  1846,  1846,  1846,  1847,  1847,  1847,  1847,  1847,
25536     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25537     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25538     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25539     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25540     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25541     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25542     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25543     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25544     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25545     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25546     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25547     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25548     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25549     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25550     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25551     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25552     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25553     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25554     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25555     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25556     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25557     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25558     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25559     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25560     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25561     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25562     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25563     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25564     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25565     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25566     1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,  1847,
25567     1847,  1847,  1849,  1848,  1850,  1851,  1848,  1852,  1852,  1854,
25568     1853,  1855,  1853,  1856,  1853,  1858,  1857,  1857,  1859,  1859,
25569     1861,  1860,  1862,  1860,  1864,  1863,  1863,  1865,  1865,  1865,
25570     1866,  1866,  1866,  1866,  1867,  1867,  1867,  1867,  1868,  1868,
25571     1868,  1869,  1869,  1869,  1869,  1869,  1869,  1869,  1869,  1869,
25572     1869,  1869,  1869,  1869,  1869,  1869,  1870,  1870,  1870,  1870,
25573     1871,  1872,  1873,  1873,  1874,  1874,  1874,  1874,  1875,  1875,
25574     1876,  1876,  1876,  1877,  1877,  1877,  1877,  1877,  1879,  1878,
25575     1880,  1880,  1880,  1881,  1881,  1882,  1882,  1883,  1884,  1884,
25576     1884,  1884,  1884,  1886,  1885,  1888,  1887,  1889,  1889,  1890,
25577     1889,  1891,  1891,  1892,  1892,  1893,  1893,  1893,  1893,  1894,
25578     1893,  1895,  1895,  1895,  1895,  1895,  1896,  1897,  1897,  1897,
25579     1897,  1897,  1897,  1897,  1897,  1898,  1898,  1899,  1900,  1900,
25580     1900,  1900,  1900,  1900,  1900,  1901,  1901,  1902,  1902,  1903,
25581     1903,  1904,  1905,  1905,  1906,  1906,  1907,  1907,  1908,  1908,
25582     1909,  1909,  1911,  1910,  1912,  1910,  1913,  1910,  1914,  1910,
25583     1910,  1910,  1910,  1910,  1910,  1910,  1910,  1910,  1910,  1910,
25584     1910,  1910,  1910,  1910,  1910,  1910,  1910,  1910,  1910,  1910,
25585     1910,  1910,  1910,  1910,  1910,  1910,  1910,  1915,  1915,  1916,
25586     1916,  1917,  1917,  1917,  1918,  1918,  1918,  1918,  1919,  1919,
25587     1920,  1920,  1921,  1921,  1922,  1922,  1923,  1923,  1924,  1924,
25588     1924,  1924,  1925,  1925,  1926,  1927,  1927,  1927,  1928,  1928,
25589     1929,  1929,  1930,  1931,  1931,  1931,  1931,  1931,  1932,  1932,
25590     1932,  1932,  1932,  1933,  1933,  1934,  1934,  1935,  1935,  1936,
25591     1936,  1937,  1937,  1938,  1938,  1940,  1939,  1941,  1942,  1942,
25592     1943,  1943,  1944,  1944,  1944,  1945,  1945,  1945,  1946,  1947,
25593     1947,  1947,  1948,  1949,  1950,  1950,  1950,  1951,  1951,  1951,
25594     1952,  1952,  1952,  1952,  1952,  1952,  1952,  1952,  1953,  1953,
25595     1954,  1955,  1956,  1956,  1956,  1957,  1957,  1958,  1958,  1959,
25596     1959,  1960,  1960,  1962,  1961,  1963,  1963,  1963,  1963,  1964,
25597     1964,  1965,  1965,  1967,  1968,  1969,  1970,  1971,  1966,  1973,
25598     1972,  1975,  1974,  1977,  1978,  1976,  1979,  1979,  1979,  1979,
25599     1979,  1979,  1980,  1980,  1981,  1981,  1981,  1982,  1982,  1982,
25600     1983,  1983,  1983,  1984,  1984,  1985,  1986,  1985,  1987,  1987,
25601     1988,  1988,  1989,  1989,  1990
25602 };
25603 
25604   /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
25605 static const yytype_uint8 yyr2[] =
25606 {
25607        0,     2,     1,     0,     4,     2,     0,     1,     1,     1,
25608        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25609        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25610        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25611        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25612        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25613        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25614        3,     1,     1,     0,     5,     3,     0,     0,     6,     0,
25615        0,     3,     1,     3,     0,     3,     0,     6,     1,     3,
25616        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
25617        3,     3,     3,     3,     3,     3,     5,     5,     5,     1,
25618        0,     1,     3,     1,     0,     1,     3,     1,     0,     1,
25619        3,     1,     3,     3,     3,     3,     3,     3,     3,     0,
25620        1,     1,     0,     0,     8,     0,     8,     0,     0,    16,
25621        0,     0,    15,     0,     0,    15,     0,     6,     0,    10,
25622        0,    11,     0,     5,     0,     6,     0,     5,     0,    12,
25623        0,    12,    10,     8,     6,     4,     3,     0,     3,     0,
25624        1,     1,     2,     3,     2,     1,     3,     2,     1,     3,
25625        3,     3,     1,     1,     1,     1,     3,     0,    12,     1,
25626        3,     2,     2,     2,     2,     2,     2,     2,     0,    12,
25627        0,     6,     2,     0,     1,     3,     1,     0,     2,     0,
25628        2,     0,     1,     4,     0,     2,     0,     2,     0,     0,
25629        1,     3,     1,     0,     2,     0,     2,     2,     2,     2,
25630        2,     3,     3,     1,     1,     2,     3,     3,     0,     4,
25631        0,     3,     0,     1,     3,     1,     0,     0,     2,     3,
25632        1,     1,     2,     6,     8,     5,     7,     3,     0,     1,
25633        3,     1,     2,     0,     1,     1,     1,     0,     4,     0,
25634        3,     2,     3,     0,     3,     2,     1,     3,     5,     1,
25635        2,     1,     3,     3,     1,     3,     5,     6,     4,     1,
25636        4,     1,     0,     6,     0,     6,     0,     3,     0,     0,
25637        3,     1,     1,     1,     1,     1,     3,     1,     1,     1,
25638        3,     0,     1,     1,     1,     1,     2,     1,     1,     2,
25639        3,     3,     1,     1,     0,     1,     0,     2,     3,     5,
25640        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25641        1,     1,     1,     1,     1,     3,     4,     0,     1,     1,
25642        3,     1,     3,     3,     1,     2,     1,     1,     1,     1,
25643        1,     3,     3,     1,     1,     1,     1,     1,     1,     1,
25644        1,     1,     1,     1,     1,     1,     1,     1,     1,     3,
25645        0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
25646        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25647        1,     0,     5,     0,     2,     1,     1,     0,     3,     1,
25648        0,     2,     1,     2,     3,     4,     1,     2,     3,     4,
25649        2,     2,     2,     0,     0,     3,     0,     3,     1,     3,
25650        0,     3,     3,     3,     4,     5,     2,     4,     2,     1,
25651        3,     0,     0,     0,     7,     0,     2,     2,     0,     6,
25652        0,     0,     4,     1,     1,     2,     1,     2,     0,     0,
25653        6,     0,     0,     6,     0,     2,     2,     0,     1,     1,
25654        0,     7,     0,     5,     0,     7,     0,     1,     0,     3,
25655        5,     3,     5,     3,     0,     6,     0,     6,     1,     0,
25656        5,     0,     5,     0,     0,     0,    11,     0,     5,     0,
25657        3,     0,     3,     0,     0,     8,     0,     3,     1,     1,
25658        1,     1,     1,     2,     4,     5,     0,     4,     4,     4,
25659        3,     3,     2,     2,     0,     2,     1,     2,     3,     1,
25660        1,     1,     1,     1,     2,     3,     1,     1,     1,     1,
25661        1,     1,     1,     1,     1,     1,     2,     3,     1,     1,
25662        1,     1,     1,     1,     1,     2,     3,     1,     1,     1,
25663        1,     1,     1,     1,     1,     1,     2,     3,     1,     1,
25664        1,     2,     2,     2,     1,     1,     1,     1,     2,     3,
25665        3,     3,     3,     3,     3,     3,     3,     4,     0,     1,
25666        1,     1,     1,     1,     0,     5,     3,     1,     2,     4,
25667        0,     4,     1,     4,     1,     0,     1,     0,     4,     0,
25668        0,     3,     0,     6,     6,     0,     4,     2,     2,     0,
25669        3,     2,     0,     3,     0,     1,     0,     3,     0,     1,
25670        1,     3,     1,     4,     3,     3,     0,     2,     0,     0,
25671        7,     0,    10,     1,     3,     1,     1,     0,     2,     0,
25672        3,     1,     3,     0,     6,     1,     0,     0,     4,     0,
25673        3,     1,     1,     1,     1,     1,     1,     3,     1,     3,
25674        0,     0,     5,     1,     3,     1,     1,     0,     3,     1,
25675        3,     0,     4,     1,     0,     1,     2,     1,     3,     4,
25676        3,     3,     3,     3,     4,     4,     3,     0,     4,     2,
25677        0,     2,     0,     1,     0,     1,     1,     2,     1,     1,
25678        0,     3,     0,     3,     1,     3,     0,     1,     1,     2,
25679        1,     2,     3,     3,     3,     3,     3,     3,     3,     3,
25680        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
25681        3,     3,     3,     0,     6,     1,     1,     3,     4,     4,
25682        2,     2,     2,     3,     3,     3,     3,     3,     3,     3,
25683        3,     1,     0,     1,     2,     4,     4,     1,     1,     1,
25684        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25685        1,     1,     1,     1,     3,     1,     3,     1,     1,     1,
25686        1,     2,     1,     2,     0,     9,     0,    10,     0,     9,
25687        0,     9,     0,    10,     0,    11,     0,    10,     2,     7,
25688        7,     0,     1,     4,     0,     1,     0,     1,     2,     0,
25689        4,     0,     3,     0,     3,     0,     1,     2,     1,     0,
25690        1,     2,     1,     0,     1,     2,     3,     0,     6,     5,
25691        5,     0,     2,     0,     1,     1,     1,     0,     1,     2,
25692        1,     1,     2,     2,     1,     0,     3,     1,     3,     3,
25693        1,     1,     1,     1,     1,     1,     1,     3,     1,     1,
25694        1,     1,     1,     3,     3,     3,     2,     1,     1,     3,
25695        3,     3,     3,     0,     1,     2,     2,     3,     3,     2,
25696        3,     3,     4,     3,     3,     3,     1,     2,     2,     2,
25697        2,     3,     3,     2,     3,     2,     2,     3,     3,     2,
25698        3,     2,     2,     2,     2,     2,     5,     5,     1,     1,
25699        1,     1,     1,     1,     1,     1,     1,     1,     2,     2,
25700        1,     2,     1,     2,     3,     2,     1,     1,     1,     1,
25701        1,     1,     1,     2,     0,     3,     0,     1,     1,     5,
25702        0,     1,     1,     1,     2,     2,     3,     3,     3,     3,
25703        0,     1,     0,     1,     0,     1,     2,     1,     1,     2,
25704        4,     1,     3,     2,     1,     0,     2,     0,     1,     2,
25705        2,     2,     2,     2,     1,     1,     3,     3,     3,     3,
25706        2,     1,     2,     2,     1,     1,     1,     1,     1,     0,
25707        2,     1,     1,     1,     1,     1,     0,     2,     1,     1,
25708        0,     1,     2,     1,     1,     2,     0,     1,     1,     2,
25709        1,     2,     2,     1,     0,     1,     0,     4,     1,     1,
25710        1,     0,     1,     2,     1,     1,     2,     1,     3,     3,
25711        1,     1,     0,     2,     0,     1,     5,     0,     3,     3,
25712        1,     0,     2,     2,     2,     0,     3,     3,     6,     6,
25713        1,     1,     2,     2,     2,     2,     2,     1,     1,     0,
25714        1,     1,     1,     1,     0,     1,     1,     1,     0,     1,
25715        0,     1,     0,     1,     1,     2,     1,     2,     1,     2,
25716        0,     2,     0,     2,     2,     2,     2,     3,     2,     3,
25717        3,     3,     3,     1,     1,     1,     1,     3,     1,     1,
25718        1,     4,     2,     1,     4,     0,     1,     1,     3,     0,
25719        0,     8,     0,     5,     7,     0,     5,     0,     5,     0,
25720       10,     0,     9,     0,    11,     3,     4,     3,     3,     0,
25721        8,     8,     0,     0,     7,     1,     1,     0,     1,     1,
25722        3,     0,     2,     3,     5,     5,     0,     3,     1,     4,
25723        0,     3,     0,     2,     0,     1,     0,     2,     2,     2,
25724        2,     1,     1,     1,     4,     4,     0,     6,     4,     0,
25725        5,     0,     6,     4,     3,     1,     7,     2,     1,     1,
25726        0,     6,     0,     3,     2,     0,     5,     0,     0,     6,
25727        1,     3,     1,     1,     3,     3,     3,     2,     2,     4,
25728        4,     2,     7,     6,     5,     5,     4,     5,     4,     4,
25729        2,     2,     7,     6,     3,     5,     1,     1,     1,     1,
25730        1,     3,     3,     3,     5,     0,     1,     1,     2,     2,
25731        3,     3,     3,     3,     0,     1,     0,     1,     0,     2,
25732        0,     1,     2,     1,     1,     1,     0,     1,     1,     0,
25733        2,     1,     0,     1,     1,     1,     0,     6,     0,     5,
25734        4,     4,     3,     0,     1,     1,     3,     3,     2,     2,
25735        0,     2,     1,     3,     0,     1,     1,     0,     2,     4,
25736        1,     3,     0,     5,     0,     1,     1,     3,     0,     4,
25737        0,     4,     0,     1,     1,     2,     1,     1,     1,     0,
25738        2,     0,     5,     1,     3,     2,     0,     3,     1,     4,
25739        1,     0,     4,     1,     0,     4,     0,     1,     3,     0,
25740        1,     3,     1,     1,     2,     6,     3,     0,     4,     0,
25741        3,     0,     1,     1,     2,     1,     1,     1,     1,     1,
25742        2,     0,     2,     0,     6,     0,     1,     1,     0,     4,
25743        4,     3,     5,     1,     3,     4,     0,     6,     1,     1,
25744        1,     3,     2,     3,     1,     1,     0,     6,     1,     1,
25745        1,     3,     3,     4,     0,     6,     0,     2,     0,     4,
25746        0,     2,     0,     3,     0,     4,     0,     3,     0,     4,
25747        1,     1,     0,     3,     0,     0,     5,     6,     7,     1,
25748        2,     1,     1,     0,     3,     0,     3,     3,     3,     1,
25749        0,     4,     3,     1,     1,     1,     1,     1,     4,     0,
25750        1,     2,     1,     1,     0,     1,     0,     1,     1,     2,
25751        1,     2,     9,     0,     1,     0,     2,     3,     1,     4,
25752        4,     2,     1,     1,     1,     1,     3,     5,     0,     1,
25753        0,     2,     1,     3,     1,     1,     3,     4,     0,     0,
25754        0,     0,     2,     2,     1,     1,     0,     2,     3,     0,
25755        2,     3,     0,     2,     3,     3,     3,     2,     3,     4,
25756        3,     4,     3,     4,     3,     4,     3,     3,     6,     1,
25757        3,     4,     5,     7,     6,     8,     5,     6,     4,     3,
25758        5,     4,     6,     3,     4,     1,     3,     3,     3,     3,
25759        3,     3,     3,     5,     5,     5,     6,     6,     3,     3,
25760        3,     3,     3,     3,     1,     1,     1,     1,     1,     1,
25761        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25762        1,     0,     2,     1,     1,     1,     1,     2,     1,     1,
25763        1,     2,     1,     2,     2,     0,     3,     1,     4,     1,
25764        3,     1,     1,     1,     1,     3,     1,     4,     4,     4,
25765        3,     3,     3,     3,     1,     1,     1,     1,     1,     1,
25766        1,     1,     1,     1,     1,     6,     4,     4,     7,     6,
25767        3,     4,     6,     6,     4,     4,     4,     4,     4,     4,
25768        6,     8,    10,     1,     1,     3,     1,     1,     3,     1,
25769        2,     2,     2,     2,     2,     1,     3,     4,     6,     4,
25770        6,     2,     2,     4,     4,     4,    10,     6,     8,     6,
25771        4,     4,     6,     4,     3,     4,     1,     4,     3,     4,
25772        6,     8,     2,     2,     8,     8,     6,     8,     6,     6,
25773        6,     6,     2,     6,     6,     8,     8,     6,     8,     6,
25774        2,     8,     8,     4,     2,     2,     2,     6,     6,     4,
25775        4,     8,     4,     4,     4,     4,     3,     8,     6,     8,
25776        4,     6,     4,     6,     4,     4,     4,     6,     8,     4,
25777        3,     6,     4,     6,     5,     8,     7,    10,     1,     6,
25778        4,     4,     4,     4,     4,     6,     4,     6,     0,     5,
25779        6,     2,     3,     0,     4,     0,     3,     0,     1,     1,
25780        3,     4,     4,     5,     4,     4,     4,     5,     4,     0,
25781        0,     7,     4,     5,     4,     5,     4,     4,     4,     4,
25782        4,     5,     0,     9,     3,     3,     1,     1,     1,     3,
25783        3,     3,     3,     3,     4,     4,     4,     6,     4,     6,
25784        4,     6,     5,     0,     7,     4,     4,     4,     4,     1,
25785        0,     3,     3,     1,     3,     5,     0,     1,     0,     2,
25786        0,     3,     4,     2,     0,     1,     1,     2,     1,     3,
25787        3,     0,     3,     2,     0,     4,     0,     4,     0,     4,
25788        2,     1,     1,     1,     1,     2,     1,     2,     2,     1,
25789        2,     1,     2,     2,     3,     0,     1,     1,     3,     1,
25790        3,     1,     3,     4,     5,     1,     3,     3,     3,     1,
25791        1,     1,     1,     4,     1,     3,     3,     0,     6,     0,
25792        8,     4,     0,     8,     0,    10,     6,     0,     8,     0,
25793       10,     6,     1,     2,     1,     1,     2,     0,     1,     5,
25794        1,     1,     1,     1,     1,     3,     1,     3,     3,     3,
25795        3,     3,     3,     3,     5,     3,     0,     1,     0,     2,
25796        3,     3,     1,     1,     0,     7,     0,     7,     1,     2,
25797        0,     0,     2,     0,     2,     0,     1,     1,     1,     1,
25798        3,     1,     3,     1,     1,     1,     1,     1,     1,     1,
25799        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25800        1,     1,     1,     1,     1,     1,     1,     1,     0,     1,
25801        1,     0,     1,     2,     0,     1,     0,     0,     3,     0,
25802        0,     3,     0,     4,     4,     2,     0,     1,     1,     0,
25803        2,     3,     1,     3,     0,     7,     0,     1,     0,     3,
25804        0,     3,     0,     3,     1,     1,     1,     4,     2,     2,
25805        2,     1,     2,     2,     0,     3,     2,     2,     3,     3,
25806        3,     3,     1,     2,     0,     1,     0,     4,     4,     2,
25807        0,     1,     1,     0,     1,     2,     5,     4,     1,     1,
25808        3,     3,     1,     3,     1,     1,     1,     1,     1,     0,
25809        2,     3,     4,     1,     2,     1,     0,     1,     1,     1,
25810        0,     2,     2,     2,     1,     0,     1,     2,     2,     2,
25811        1,     2,     2,     2,     2,     1,     1,     1,     1,     1,
25812        2,     1,     2,     2,     2,     2,     2,     2,     2,     1,
25813        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25814        1,     1,     0,     6,     0,     1,     3,     1,     3,     0,
25815        2,     3,     1,     1,     2,     1,     3,     2,     0,     0,
25816        7,     2,     1,     0,     3,     0,     8,     0,     8,     4,
25817        6,     4,     4,     5,     5,     0,     6,     4,     4,     5,
25818        6,     4,     0,     6,     1,     3,     1,     2,     1,     3,
25819        1,     0,     2,     0,     2,     0,     1,     0,     0,     8,
25820        0,     0,     6,     0,     1,     1,     1,     1,     1,     2,
25821        1,     0,     2,     1,     2,     0,     3,     3,     0,     1,
25822        3,     1,     1,     3,     1,     3,     1,     3,     1,     1,
25823        0,     1,     1,     1,     1,     1,     0,     4,     0,     4,
25824        0,     1,     0,     1,     3,     1,     5,     3,     1,     1,
25825        1,     1,     0,     0,     0,     7,     5,     1,     0,     0,
25826       11,     3,     1,     3,     3,     3,     1,     3,     0,     1,
25827        0,     3,     0,     3,     2,     3,     3,     2,     5,     0,
25828        5,     0,     6,     0,     2,     1,     3,     2,     4,     0,
25829        2,     0,     2,     1,     1,     1,     0,     5,     0,     1,
25830        0,     1,     1,     3,     1,     1,     2,     2,     2,     1,
25831        1,     1,     1,     0,     3,     0,     3,     2,     4,     4,
25832        3,     4,     4,     1,     3,     3,     3,     3,     6,     2,
25833        2,     0,     6,     0,     7,     5,     2,     1,     1,     1,
25834        5,     5,     2,     2,     1,     4,     3,     2,     3,     2,
25835        2,     1,     4,     4,     3,     3,     3,     2,     3,     2,
25836        3,     3,     3,     3,     4,     3,     2,     3,     3,     3,
25837        3,     4,     3,     3,     4,     3,     3,     3,     1,     1,
25838        1,     1,     1,     0,     1,     0,     2,     0,     1,     1,
25839        1,     0,     2,     0,     2,     0,     3,     3,     0,     4,
25840        0,     4,     1,     1,     1,     1,     1,     1,     1,     1,
25841        3,     1,     2,     1,     1,     0,     3,     0,     1,     1,
25842        0,     4,     0,     4,     1,     0,     1,     4,     0,     3,
25843        3,     1,     2,     2,     2,     2,     3,     3,     2,     1,
25844        1,     1,     1,     2,     1,     1,     1,     1,     2,     0,
25845        1,     2,     2,     0,     3,     1,     0,     5,     0,     1,
25846        3,     1,     0,     3,     0,     3,     3,     1,     0,     4,
25847        0,     3,     2,     0,     1,     0,     2,     5,     0,     6,
25848        0,     4,     0,     1,     1,     2,     2,     3,     0,     1,
25849        1,     2,     0,     3,     0,     4,     2,     0,     0,     0,
25850        0,    22,     1,     1,     0,     1,     0,     1,     1,     0,
25851        1,     1,     0,     2,     2,     1,     3,     4,     3,     3,
25852        0,     2,     2,     1,     3,     3,     0,     4,     0,     3,
25853        1,     1,     0,     3,     2,     3,     1,     1,     2,     0,
25854        2,     3,     1,     5,     1,     1,     2,     2,     1,     1,
25855        1,     1,     1,     1,     2,     2,     2,     2,     1,     1,
25856        1,     1,     1,     1,     1,     1,     1,     2,     1,     1,
25857        1,     1,     1,     2,     2,     2,     0,     4,     0,     1,
25858        1,     3,     0,     7,     0,     3,     1,     3,     1,     1,
25859        1,     3,     5,     3,     5,     1,     1,     3,     4,     5,
25860        4,     1,     3,     4,     4,     5,     1,     5,     3,     2,
25861        1,     3,     2,     2,     4,     1,     1,     1,     1,     1,
25862        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25863        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25864        3,     2,     1,     1,     1,     1,     1,     1,     1,     1,
25865        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25866        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25867        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25868        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25869        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25870        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25871        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25872        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25873        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25874        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25875        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25876        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25877        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25878        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25879        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25880        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25881        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25882        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25883        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25884        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25885        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25886        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25887        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25888        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25889        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25890        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25891        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25892        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25893        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25894        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25895        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25896        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25897        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25898        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25899        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25900        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25901        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25902        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25903        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25904        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25905        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25906        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25907        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25908        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25909        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25910        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25911        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25912        1,     1,     0,     3,     0,     0,     7,     1,     3,     0,
25913        3,     0,     3,     0,     3,     0,     3,     2,     0,     2,
25914        0,     2,     0,     4,     0,     3,     1,     1,     1,     1,
25915        0,     1,     1,     1,     0,     2,     2,     2,     3,     5,
25916        5,     3,     5,     5,     4,     6,     8,     8,     2,     3,
25917        3,     3,     5,     2,     3,     3,     1,     1,     3,     3,
25918        1,     3,     2,     2,     2,     2,     2,     1,     1,     3,
25919        1,     4,     4,     1,     1,     1,     1,     1,     0,     5,
25920        0,     2,     1,     1,     1,     1,     3,     3,     1,     1,
25921        2,     2,     2,     0,     3,     0,     3,     3,     2,     0,
25922        6,     1,     2,     1,     1,     1,     1,     1,     1,     0,
25923        5,     1,     1,     1,     1,     1,     3,     6,     6,     6,
25924        6,     7,     7,     5,     3,     4,     1,     3,     8,     8,
25925        8,     8,     9,     6,     4,     0,     3,     0,     3,     1,
25926        3,     2,     1,     1,     0,     1,     1,     2,     0,     1,
25927        1,     3,     0,     3,     0,     3,     0,     3,     0,     3,
25928        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25929        1,     2,     2,     1,     3,     2,     2,     2,     2,     2,
25930        2,     2,     2,     1,     1,     2,     2,     0,     1,     3,
25931        1,     2,     2,     2,     1,     3,     3,     1,     1,     3,
25932        1,     3,     1,     3,     1,     1,     1,     1,     4,     5,
25933        4,     1,     3,     1,     2,     0,     2,     5,     0,     3,
25934        3,     1,     1,     0,     2,     2,     2,     2,     2,     2,
25935        2,     2,     2,     2,     1,     0,     2,     0,     2,     0,
25936        3,     2,     1,     2,     1,     0,     3,     1,     0,     1,
25937        0,     1,     0,     3,     2,     0,     1,     2,     4,     4,
25938        5,     4,     2,     3,     2,     1,     1,     0,     1,     1,
25939        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25940        0,     3,     3,     3,     3,     0,     1,     3,     3,     0,
25941        3,     1,     3,     0,     3,     0,     3,     4,     4,     1,
25942        1,     0,     2,     0,     0,     0,     0,     0,    19,     0,
25943        3,     0,     3,     0,     0,     6,     4,     4,     3,     4,
25944        3,     3,     0,     3,     1,     3,     5,     1,     1,     1,
25945        0,     1,     1,     0,     2,     0,     0,     3,     0,     2,
25946        6,     3,     4,     4,     1
25947 };
25948 
25949 
25950 #define yyerrok         (yyerrstatus = 0)
25951 #define yyclearin       (yychar = YYEMPTY)
25952 #define YYEMPTY         (-2)
25953 #define YYEOF           0
25954 
25955 #define YYACCEPT        goto yyacceptlab
25956 #define YYABORT         goto yyabortlab
25957 #define YYERROR         goto yyerrorlab
25958 
25959 
25960 #define YYRECOVERING()  (!!yyerrstatus)
25961 
25962 #define YYBACKUP(Token, Value)                                  \
25963 do                                                              \
25964   if (yychar == YYEMPTY)                                        \
25965     {                                                           \
25966       yychar = (Token);                                         \
25967       yylval = (Value);                                         \
25968       YYPOPSTACK (yylen);                                       \
25969       yystate = *yyssp;                                         \
25970       goto yybackup;                                            \
25971     }                                                           \
25972   else                                                          \
25973     {                                                           \
25974       yyerror (thd, YY_("syntax error: cannot back up")); \
25975       YYERROR;                                                  \
25976     }                                                           \
25977 while (0)
25978 
25979 /* Error token number */
25980 #define YYTERROR        1
25981 #define YYERRCODE       256
25982 
25983 
25984 
25985 /* Enable debugging if requested.  */
25986 #if YYDEBUG
25987 
25988 # ifndef YYFPRINTF
25989 #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
25990 #  define YYFPRINTF fprintf
25991 # endif
25992 
25993 # define YYDPRINTF(Args)                        \
25994 do {                                            \
25995   if (yydebug)                                  \
25996     YYFPRINTF Args;                             \
25997 } while (0)
25998 
25999 /* This macro is provided for backward compatibility. */
26000 #ifndef YY_LOCATION_PRINT
26001 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
26002 #endif
26003 
26004 
26005 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
26006 do {                                                                      \
26007   if (yydebug)                                                            \
26008     {                                                                     \
26009       YYFPRINTF (stderr, "%s ", Title);                                   \
26010       yy_symbol_print (stderr,                                            \
26011                   Type, Value, thd); \
26012       YYFPRINTF (stderr, "\n");                                           \
26013     }                                                                     \
26014 } while (0)
26015 
26016 
26017 /*----------------------------------------.
26018 | Print this symbol's value on YYOUTPUT.  |
26019 `----------------------------------------*/
26020 
26021 static void
yy_symbol_value_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,THD * thd)26022 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, THD *thd)
26023 {
26024   FILE *yyo = yyoutput;
26025   YYUSE (yyo);
26026   YYUSE (thd);
26027   if (!yyvaluep)
26028     return;
26029 # ifdef YYPRINT
26030   if (yytype < YYNTOKENS)
26031     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
26032 # endif
26033   YYUSE (yytype);
26034 }
26035 
26036 
26037 /*--------------------------------.
26038 | Print this symbol on YYOUTPUT.  |
26039 `--------------------------------*/
26040 
26041 static void
yy_symbol_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,THD * thd)26042 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, THD *thd)
26043 {
26044   YYFPRINTF (yyoutput, "%s %s (",
26045              yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
26046 
26047   yy_symbol_value_print (yyoutput, yytype, yyvaluep, thd);
26048   YYFPRINTF (yyoutput, ")");
26049 }
26050 
26051 /*------------------------------------------------------------------.
26052 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
26053 | TOP (included).                                                   |
26054 `------------------------------------------------------------------*/
26055 
26056 static void
yy_stack_print(yytype_int16 * yybottom,yytype_int16 * yytop)26057 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
26058 {
26059   YYFPRINTF (stderr, "Stack now");
26060   for (; yybottom <= yytop; yybottom++)
26061     {
26062       int yybot = *yybottom;
26063       YYFPRINTF (stderr, " %d", yybot);
26064     }
26065   YYFPRINTF (stderr, "\n");
26066 }
26067 
26068 # define YY_STACK_PRINT(Bottom, Top)                            \
26069 do {                                                            \
26070   if (yydebug)                                                  \
26071     yy_stack_print ((Bottom), (Top));                           \
26072 } while (0)
26073 
26074 
26075 /*------------------------------------------------.
26076 | Report that the YYRULE is going to be reduced.  |
26077 `------------------------------------------------*/
26078 
26079 static void
yy_reduce_print(yytype_int16 * yyssp,YYSTYPE * yyvsp,int yyrule,THD * thd)26080 yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule, THD *thd)
26081 {
26082   unsigned long int yylno = yyrline[yyrule];
26083   int yynrhs = yyr2[yyrule];
26084   int yyi;
26085   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
26086              yyrule - 1, yylno);
26087   /* The symbols being reduced.  */
26088   for (yyi = 0; yyi < yynrhs; yyi++)
26089     {
26090       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
26091       yy_symbol_print (stderr,
26092                        yystos[yyssp[yyi + 1 - yynrhs]],
26093                        &(yyvsp[(yyi + 1) - (yynrhs)])
26094                                               , thd);
26095       YYFPRINTF (stderr, "\n");
26096     }
26097 }
26098 
26099 # define YY_REDUCE_PRINT(Rule)          \
26100 do {                                    \
26101   if (yydebug)                          \
26102     yy_reduce_print (yyssp, yyvsp, Rule, thd); \
26103 } while (0)
26104 
26105 /* Nonzero means print parse trace.  It is left uninitialized so that
26106    multiple parsers can coexist.  */
26107 int yydebug;
26108 #else /* !YYDEBUG */
26109 # define YYDPRINTF(Args)
26110 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
26111 # define YY_STACK_PRINT(Bottom, Top)
26112 # define YY_REDUCE_PRINT(Rule)
26113 #endif /* !YYDEBUG */
26114 
26115 
26116 /* YYINITDEPTH -- initial size of the parser's stacks.  */
26117 #ifndef YYINITDEPTH
26118 # define YYINITDEPTH 200
26119 #endif
26120 
26121 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
26122    if the built-in stack extension method is used).
26123 
26124    Do not make this value too large; the results are undefined if
26125    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
26126    evaluated with infinite-precision integer arithmetic.  */
26127 
26128 #ifndef YYMAXDEPTH
26129 # define YYMAXDEPTH 10000
26130 #endif
26131 
26132 
26133 #if YYERROR_VERBOSE
26134 
26135 # ifndef yystrlen
26136 #  if defined __GLIBC__ && defined _STRING_H
26137 #   define yystrlen strlen
26138 #  else
26139 /* Return the length of YYSTR.  */
26140 static YYSIZE_T
yystrlen(const char * yystr)26141 yystrlen (const char *yystr)
26142 {
26143   YYSIZE_T yylen;
26144   for (yylen = 0; yystr[yylen]; yylen++)
26145     continue;
26146   return yylen;
26147 }
26148 #  endif
26149 # endif
26150 
26151 # ifndef yystpcpy
26152 #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
26153 #   define yystpcpy stpcpy
26154 #  else
26155 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
26156    YYDEST.  */
26157 static char *
yystpcpy(char * yydest,const char * yysrc)26158 yystpcpy (char *yydest, const char *yysrc)
26159 {
26160   char *yyd = yydest;
26161   const char *yys = yysrc;
26162 
26163   while ((*yyd++ = *yys++) != '\0')
26164     continue;
26165 
26166   return yyd - 1;
26167 }
26168 #  endif
26169 # endif
26170 
26171 # ifndef yytnamerr
26172 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
26173    quotes and backslashes, so that it's suitable for yyerror.  The
26174    heuristic is that double-quoting is unnecessary unless the string
26175    contains an apostrophe, a comma, or backslash (other than
26176    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
26177    null, do not copy; instead, return the length of what the result
26178    would have been.  */
26179 static YYSIZE_T
yytnamerr(char * yyres,const char * yystr)26180 yytnamerr (char *yyres, const char *yystr)
26181 {
26182   if (*yystr == '"')
26183     {
26184       YYSIZE_T yyn = 0;
26185       char const *yyp = yystr;
26186 
26187       for (;;)
26188         switch (*++yyp)
26189           {
26190           case '\'':
26191           case ',':
26192             goto do_not_strip_quotes;
26193 
26194           case '\\':
26195             if (*++yyp != '\\')
26196               goto do_not_strip_quotes;
26197             /* Fall through.  */
26198           default:
26199             if (yyres)
26200               yyres[yyn] = *yyp;
26201             yyn++;
26202             break;
26203 
26204           case '"':
26205             if (yyres)
26206               yyres[yyn] = '\0';
26207             return yyn;
26208           }
26209     do_not_strip_quotes: ;
26210     }
26211 
26212   if (! yyres)
26213     return yystrlen (yystr);
26214 
26215   return yystpcpy (yyres, yystr) - yyres;
26216 }
26217 # endif
26218 
26219 /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
26220    about the unexpected token YYTOKEN for the state stack whose top is
26221    YYSSP.
26222 
26223    Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
26224    not large enough to hold the message.  In that case, also set
26225    *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
26226    required number of bytes is too large to store.  */
26227 static int
yysyntax_error(YYSIZE_T * yymsg_alloc,char ** yymsg,yytype_int16 * yyssp,int yytoken)26228 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
26229                 yytype_int16 *yyssp, int yytoken)
26230 {
26231   YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
26232   YYSIZE_T yysize = yysize0;
26233   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
26234   /* Internationalized format string. */
26235   const char *yyformat = YY_NULLPTR;
26236   /* Arguments of yyformat. */
26237   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
26238   /* Number of reported tokens (one for the "unexpected", one per
26239      "expected"). */
26240   int yycount = 0;
26241 
26242   /* There are many possibilities here to consider:
26243      - If this state is a consistent state with a default action, then
26244        the only way this function was invoked is if the default action
26245        is an error action.  In that case, don't check for expected
26246        tokens because there are none.
26247      - The only way there can be no lookahead present (in yychar) is if
26248        this state is a consistent state with a default action.  Thus,
26249        detecting the absence of a lookahead is sufficient to determine
26250        that there is no unexpected or expected token to report.  In that
26251        case, just report a simple "syntax error".
26252      - Don't assume there isn't a lookahead just because this state is a
26253        consistent state with a default action.  There might have been a
26254        previous inconsistent state, consistent state with a non-default
26255        action, or user semantic action that manipulated yychar.
26256      - Of course, the expected token list depends on states to have
26257        correct lookahead information, and it depends on the parser not
26258        to perform extra reductions after fetching a lookahead from the
26259        scanner and before detecting a syntax error.  Thus, state merging
26260        (from LALR or IELR) and default reductions corrupt the expected
26261        token list.  However, the list is correct for canonical LR with
26262        one exception: it will still contain any token that will not be
26263        accepted due to an error action in a later state.
26264   */
26265   if (yytoken != YYEMPTY)
26266     {
26267       int yyn = yypact[*yyssp];
26268       yyarg[yycount++] = yytname[yytoken];
26269       if (!yypact_value_is_default (yyn))
26270         {
26271           /* Start YYX at -YYN if negative to avoid negative indexes in
26272              YYCHECK.  In other words, skip the first -YYN actions for
26273              this state because they are default actions.  */
26274           int yyxbegin = yyn < 0 ? -yyn : 0;
26275           /* Stay within bounds of both yycheck and yytname.  */
26276           int yychecklim = YYLAST - yyn + 1;
26277           int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
26278           int yyx;
26279 
26280           for (yyx = yyxbegin; yyx < yyxend; ++yyx)
26281             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
26282                 && !yytable_value_is_error (yytable[yyx + yyn]))
26283               {
26284                 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
26285                   {
26286                     yycount = 1;
26287                     yysize = yysize0;
26288                     break;
26289                   }
26290                 yyarg[yycount++] = yytname[yyx];
26291                 {
26292                   YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
26293                   if (! (yysize <= yysize1
26294                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
26295                     return 2;
26296                   yysize = yysize1;
26297                 }
26298               }
26299         }
26300     }
26301 
26302   switch (yycount)
26303     {
26304 # define YYCASE_(N, S)                      \
26305       case N:                               \
26306         yyformat = S;                       \
26307       break
26308       YYCASE_(0, YY_("syntax error"));
26309       YYCASE_(1, YY_("syntax error, unexpected %s"));
26310       YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
26311       YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
26312       YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
26313       YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
26314 # undef YYCASE_
26315     }
26316 
26317   {
26318     YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
26319     if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
26320       return 2;
26321     yysize = yysize1;
26322   }
26323 
26324   if (*yymsg_alloc < yysize)
26325     {
26326       *yymsg_alloc = 2 * yysize;
26327       if (! (yysize <= *yymsg_alloc
26328              && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
26329         *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
26330       return 1;
26331     }
26332 
26333   /* Avoid sprintf, as that infringes on the user's name space.
26334      Don't have undefined behavior even if the translation
26335      produced a string with the wrong number of "%s"s.  */
26336   {
26337     char *yyp = *yymsg;
26338     int yyi = 0;
26339     while ((*yyp = *yyformat) != '\0')
26340       if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
26341         {
26342           yyp += yytnamerr (yyp, yyarg[yyi++]);
26343           yyformat += 2;
26344         }
26345       else
26346         {
26347           yyp++;
26348           yyformat++;
26349         }
26350   }
26351   return 0;
26352 }
26353 #endif /* YYERROR_VERBOSE */
26354 
26355 /*-----------------------------------------------.
26356 | Release the memory associated to this symbol.  |
26357 `-----------------------------------------------*/
26358 
26359 static void
yydestruct(const char * yymsg,int yytype,YYSTYPE * yyvaluep,THD * thd)26360 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, THD *thd)
26361 {
26362   YYUSE (yyvaluep);
26363   YYUSE (thd);
26364   if (!yymsg)
26365     yymsg = "Deleting";
26366   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
26367 
26368   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
26369   YYUSE (yytype);
26370   YY_IGNORE_MAYBE_UNINITIALIZED_END
26371 }
26372 
26373 
26374 
26375 
26376 /*----------.
26377 | yyparse.  |
26378 `----------*/
26379 
26380 int
yyparse(THD * thd)26381 yyparse (THD *thd)
26382 {
26383 /* The lookahead symbol.  */
26384 int yychar;
26385 
26386 
26387 /* The semantic value of the lookahead symbol.  */
26388 /* Default value used for initialization, for pacifying older GCCs
26389    or non-GCC compilers.  */
26390 YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
26391 YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
26392 
26393     /* Number of syntax errors so far.  */
26394     int yynerrs;
26395 
26396     int yystate;
26397     /* Number of tokens to shift before error messages enabled.  */
26398     int yyerrstatus;
26399 
26400     /* The stacks and their tools:
26401        'yyss': related to states.
26402        'yyvs': related to semantic values.
26403 
26404        Refer to the stacks through separate pointers, to allow yyoverflow
26405        to reallocate them elsewhere.  */
26406 
26407     /* The state stack.  */
26408     yytype_int16 yyssa[YYINITDEPTH];
26409     yytype_int16 *yyss;
26410     yytype_int16 *yyssp;
26411 
26412     /* The semantic value stack.  */
26413     YYSTYPE yyvsa[YYINITDEPTH];
26414     YYSTYPE *yyvs;
26415     YYSTYPE *yyvsp;
26416 
26417     YYSIZE_T yystacksize;
26418 
26419   int yyn;
26420   int yyresult;
26421   /* Lookahead token as an internal (translated) token number.  */
26422   int yytoken = 0;
26423   /* The variables used to return semantic value and location from the
26424      action routines.  */
26425   YYSTYPE yyval;
26426 
26427 #if YYERROR_VERBOSE
26428   /* Buffer for error messages, and its allocated size.  */
26429   char yymsgbuf[128];
26430   char *yymsg = yymsgbuf;
26431   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
26432 #endif
26433 
26434 #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
26435 
26436   /* The number of symbols on the RHS of the reduced rule.
26437      Keep to zero when no symbol should be popped.  */
26438   int yylen = 0;
26439 
26440   yyssp = yyss = yyssa;
26441   yyvsp = yyvs = yyvsa;
26442   yystacksize = YYINITDEPTH;
26443 
26444   YYDPRINTF ((stderr, "Starting parse\n"));
26445 
26446   yystate = 0;
26447   yyerrstatus = 0;
26448   yynerrs = 0;
26449   yychar = YYEMPTY; /* Cause a token to be read.  */
26450   goto yysetstate;
26451 
26452 /*------------------------------------------------------------.
26453 | yynewstate -- Push a new state, which is found in yystate.  |
26454 `------------------------------------------------------------*/
26455  yynewstate:
26456   /* In all cases, when you get here, the value and location stacks
26457      have just been pushed.  So pushing a state here evens the stacks.  */
26458   yyssp++;
26459 
26460  yysetstate:
26461   *yyssp = yystate;
26462 
26463   if (yyss + yystacksize - 1 <= yyssp)
26464     {
26465       /* Get the current used size of the three stacks, in elements.  */
26466       YYSIZE_T yysize = yyssp - yyss + 1;
26467 
26468 #ifdef yyoverflow
26469       {
26470         /* Give user a chance to reallocate the stack.  Use copies of
26471            these so that the &'s don't force the real ones into
26472            memory.  */
26473         YYSTYPE *yyvs1 = yyvs;
26474         yytype_int16 *yyss1 = yyss;
26475 
26476         /* Each stack pointer address is followed by the size of the
26477            data in use in that stack, in bytes.  This used to be a
26478            conditional around just the two extra args, but that might
26479            be undefined if yyoverflow is a macro.  */
26480         yyoverflow (YY_("memory exhausted"),
26481                     &yyss1, yysize * sizeof (*yyssp),
26482                     &yyvs1, yysize * sizeof (*yyvsp),
26483                     &yystacksize);
26484 
26485         yyss = yyss1;
26486         yyvs = yyvs1;
26487       }
26488 #else /* no yyoverflow */
26489 # ifndef YYSTACK_RELOCATE
26490       goto yyexhaustedlab;
26491 # else
26492       /* Extend the stack our own way.  */
26493       if (YYMAXDEPTH <= yystacksize)
26494         goto yyexhaustedlab;
26495       yystacksize *= 2;
26496       if (YYMAXDEPTH < yystacksize)
26497         yystacksize = YYMAXDEPTH;
26498 
26499       {
26500         yytype_int16 *yyss1 = yyss;
26501         union yyalloc *yyptr =
26502           (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
26503         if (! yyptr)
26504           goto yyexhaustedlab;
26505         YYSTACK_RELOCATE (yyss_alloc, yyss);
26506         YYSTACK_RELOCATE (yyvs_alloc, yyvs);
26507 #  undef YYSTACK_RELOCATE
26508         if (yyss1 != yyssa)
26509           YYSTACK_FREE (yyss1);
26510       }
26511 # endif
26512 #endif /* no yyoverflow */
26513 
26514       yyssp = yyss + yysize - 1;
26515       yyvsp = yyvs + yysize - 1;
26516 
26517       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
26518                   (unsigned long int) yystacksize));
26519 
26520       if (yyss + yystacksize - 1 <= yyssp)
26521         YYABORT;
26522     }
26523 
26524   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
26525 
26526   if (yystate == YYFINAL)
26527     YYACCEPT;
26528 
26529   goto yybackup;
26530 
26531 /*-----------.
26532 | yybackup.  |
26533 `-----------*/
26534 yybackup:
26535 
26536   /* Do appropriate processing given the current state.  Read a
26537      lookahead token if we need one and don't already have one.  */
26538 
26539   /* First try to decide what to do without reference to lookahead token.  */
26540   yyn = yypact[yystate];
26541   if (yypact_value_is_default (yyn))
26542     goto yydefault;
26543 
26544   /* Not known => get a lookahead token if don't already have one.  */
26545 
26546   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
26547   if (yychar == YYEMPTY)
26548     {
26549       YYDPRINTF ((stderr, "Reading a token: "));
26550       yychar = yylex (&yylval, thd);
26551     }
26552 
26553   if (yychar <= YYEOF)
26554     {
26555       yychar = yytoken = YYEOF;
26556       YYDPRINTF ((stderr, "Now at end of input.\n"));
26557     }
26558   else
26559     {
26560       yytoken = YYTRANSLATE (yychar);
26561       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
26562     }
26563 
26564   /* If the proper action on seeing token YYTOKEN is to reduce or to
26565      detect an error, take that action.  */
26566   yyn += yytoken;
26567   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
26568     goto yydefault;
26569   yyn = yytable[yyn];
26570   if (yyn <= 0)
26571     {
26572       if (yytable_value_is_error (yyn))
26573         goto yyerrlab;
26574       yyn = -yyn;
26575       goto yyreduce;
26576     }
26577 
26578   /* Count tokens shifted since error; after three, turn off error
26579      status.  */
26580   if (yyerrstatus)
26581     yyerrstatus--;
26582 
26583   /* Shift the lookahead token.  */
26584   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
26585 
26586   /* Discard the shifted token.  */
26587   yychar = YYEMPTY;
26588 
26589   yystate = yyn;
26590   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
26591   *++yyvsp = yylval;
26592   YY_IGNORE_MAYBE_UNINITIALIZED_END
26593 
26594   goto yynewstate;
26595 
26596 
26597 /*-----------------------------------------------------------.
26598 | yydefault -- do the default action for the current state.  |
26599 `-----------------------------------------------------------*/
26600 yydefault:
26601   yyn = yydefact[yystate];
26602   if (yyn == 0)
26603     goto yyerrlab;
26604   goto yyreduce;
26605 
26606 
26607 /*-----------------------------.
26608 | yyreduce -- Do a reduction.  |
26609 `-----------------------------*/
26610 yyreduce:
26611   /* yyn is the number of a rule to reduce with.  */
26612   yylen = yyr2[yyn];
26613 
26614   /* If YYLEN is nonzero, implement the default value of the action:
26615      '$$ = $1'.
26616 
26617      Otherwise, the following line sets YYVAL to garbage.
26618      This behavior is undocumented and Bison
26619      users should not rely upon it.  Assigning to YYVAL
26620      unconditionally makes the parser a bit smaller, and it avoids a
26621      GCC warning that YYVAL may be used uninitialized.  */
26622   yyval = yyvsp[1-yylen];
26623 
26624 
26625   YY_REDUCE_PRINT (yyn);
26626   switch (yyn)
26627     {
26628         case 2:
26629 #line 2229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26630     {
26631             if (!thd->bootstrap &&
26632               (!(thd->lex->lex_options & OPTION_LEX_FOUND_COMMENT)))
26633               my_yyabort_error((ER_EMPTY_QUERY, MYF(0)));
26634 
26635             thd->lex->sql_command= SQLCOM_EMPTY_QUERY;
26636             YYLIP->found_semicolon= NULL;
26637           }
26638 #line 26639 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26639     break;
26640 
26641   case 3:
26642 #line 2238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26643     {
26644             Lex_input_stream *lip = YYLIP;
26645 
26646             if ((thd->client_capabilities & CLIENT_MULTI_QUERIES) &&
26647                 lip->multi_statements &&
26648                 ! lip->eof())
26649             {
26650               /*
26651                 We found a well formed query, and multi queries are allowed:
26652                 - force the parser to stop after the ';'
26653                 - mark the start of the next query for the next invocation
26654                   of the parser.
26655               */
26656               lip->next_state= MY_LEX_END;
26657               lip->found_semicolon= lip->get_ptr();
26658             }
26659             else
26660             {
26661               /* Single query, terminated. */
26662               lip->found_semicolon= NULL;
26663             }
26664           }
26665 #line 26666 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26666     break;
26667 
26668   case 5:
26669 #line 2263 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26670     {
26671             /* Single query, not terminated. */
26672             YYLIP->found_semicolon= NULL;
26673           }
26674 #line 26675 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26675     break;
26676 
26677   case 70:
26678 #line 2345 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26679     {
26680             Lex->stmt_deallocate_prepare((yyvsp[0].ident_sys));
26681           }
26682 #line 26683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26683     break;
26684 
26685   case 73:
26686 #line 2357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26687     { Lex->clause_that_disallows_subselect= "PREPARE..FROM"; }
26688 #line 26689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26689     break;
26690 
26691   case 74:
26692 #line 2359 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26693     {
26694             Lex->clause_that_disallows_subselect= NULL;
26695             if (Lex->stmt_prepare((yyvsp[-3].ident_sys), (yyvsp[0].item)))
26696               MYSQL_YYABORT;
26697           }
26698 #line 26699 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26699     break;
26700 
26701   case 75:
26702 #line 2368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26703     {
26704             if (Lex->stmt_execute((yyvsp[-1].ident_sys), (yyvsp[0].item_list)))
26705               MYSQL_YYABORT;
26706           }
26707 #line 26708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26708     break;
26709 
26710   case 76:
26711 #line 2373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26712     { Lex->clause_that_disallows_subselect= "EXECUTE IMMEDIATE"; }
26713 #line 26714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26714     break;
26715 
26716   case 77:
26717 #line 2375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26718     { Lex->clause_that_disallows_subselect= NULL; }
26719 #line 26720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26720     break;
26721 
26722   case 78:
26723 #line 2377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26724     {
26725             if (Lex->stmt_execute_immediate((yyvsp[-2].item), (yyvsp[0].item_list)))
26726               MYSQL_YYABORT;
26727           }
26728 #line 26729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26729     break;
26730 
26731   case 79:
26732 #line 2384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26733     { (yyval.item_list)= NULL; }
26734 #line 26735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26735     break;
26736 
26737   case 80:
26738 #line 2386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26739     { Lex->clause_that_disallows_subselect= "EXECUTE..USING"; }
26740 #line 26741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26741     break;
26742 
26743   case 81:
26744 #line 2388 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26745     {
26746             (yyval.item_list)= (yyvsp[0].item_list);
26747             Lex->clause_that_disallows_subselect= NULL;
26748           }
26749 #line 26750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26750     break;
26751 
26752   case 82:
26753 #line 2396 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26754     {
26755             if (unlikely(!((yyval.item_list)= List<Item>::make(thd->mem_root, (yyvsp[0].item)))))
26756               MYSQL_YYABORT;
26757           }
26758 #line 26759 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26759     break;
26760 
26761   case 83:
26762 #line 2401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26763     {
26764             if (((yyval.item_list)= (yyvsp[-2].item_list))->push_back((yyvsp[0].item), thd->mem_root))
26765               MYSQL_YYABORT;
26766           }
26767 #line 26768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26768     break;
26769 
26770   case 84:
26771 #line 2412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26772     {
26773             if (unlikely(Lex->sphead))
26774               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HELP"));
26775           }
26776 #line 26777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26777     break;
26778 
26779   case 85:
26780 #line 2417 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26781     {
26782             LEX *lex= Lex;
26783             lex->sql_command= SQLCOM_HELP;
26784             lex->help_arg= (yyvsp[0].lex_str).str;
26785           }
26786 #line 26787 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26787     break;
26788 
26789   case 86:
26790 #line 2428 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26791     {
26792             Lex->sql_command = SQLCOM_CHANGE_MASTER;
26793           }
26794 #line 26795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26795     break;
26796 
26797   case 87:
26798 #line 2432 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26799     {}
26800 #line 26801 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26801     break;
26802 
26803   case 90:
26804 #line 2442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26805     {
26806             Lex->mi.host = (yyvsp[0].lex_str).str;
26807           }
26808 #line 26809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26809     break;
26810 
26811   case 91:
26812 #line 2446 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26813     {
26814             Lex->mi.user = (yyvsp[0].lex_str).str;
26815           }
26816 #line 26817 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26817     break;
26818 
26819   case 92:
26820 #line 2450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26821     {
26822             Lex->mi.password = (yyvsp[0].lex_str).str;
26823           }
26824 #line 26825 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26825     break;
26826 
26827   case 93:
26828 #line 2454 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26829     {
26830             Lex->mi.port = (yyvsp[0].ulong_num);
26831           }
26832 #line 26833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26833     break;
26834 
26835   case 94:
26836 #line 2458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26837     {
26838             Lex->mi.connect_retry = (yyvsp[0].ulong_num);
26839           }
26840 #line 26841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26841     break;
26842 
26843   case 95:
26844 #line 2462 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26845     {
26846             if ((yyvsp[0].ulong_num) > MASTER_DELAY_MAX)
26847             {
26848               my_error(ER_MASTER_DELAY_VALUE_OUT_OF_RANGE, MYF(0),
26849                        (ulong) (yyvsp[0].ulong_num), (ulong) MASTER_DELAY_MAX);
26850             }
26851             else
26852               Lex->mi.sql_delay = (yyvsp[0].ulong_num);
26853           }
26854 #line 26855 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26855     break;
26856 
26857   case 96:
26858 #line 2472 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26859     {
26860             Lex->mi.ssl= (yyvsp[0].ulong_num) ?
26861               LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
26862           }
26863 #line 26864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26864     break;
26865 
26866   case 97:
26867 #line 2477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26868     {
26869             Lex->mi.ssl_ca= (yyvsp[0].lex_str).str;
26870           }
26871 #line 26872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26872     break;
26873 
26874   case 98:
26875 #line 2481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26876     {
26877             Lex->mi.ssl_capath= (yyvsp[0].lex_str).str;
26878           }
26879 #line 26880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26880     break;
26881 
26882   case 99:
26883 #line 2485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26884     {
26885             Lex->mi.ssl_cert= (yyvsp[0].lex_str).str;
26886           }
26887 #line 26888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26888     break;
26889 
26890   case 100:
26891 #line 2489 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26892     {
26893             Lex->mi.ssl_cipher= (yyvsp[0].lex_str).str;
26894           }
26895 #line 26896 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26896     break;
26897 
26898   case 101:
26899 #line 2493 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26900     {
26901             Lex->mi.ssl_key= (yyvsp[0].lex_str).str;
26902           }
26903 #line 26904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26904     break;
26905 
26906   case 102:
26907 #line 2497 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26908     {
26909             Lex->mi.ssl_verify_server_cert= (yyvsp[0].ulong_num) ?
26910               LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
26911           }
26912 #line 26913 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26913     break;
26914 
26915   case 103:
26916 #line 2502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26917     {
26918             Lex->mi.ssl_crl= (yyvsp[0].lex_str).str;
26919           }
26920 #line 26921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26921     break;
26922 
26923   case 104:
26924 #line 2506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26925     {
26926             Lex->mi.ssl_crlpath= (yyvsp[0].lex_str).str;
26927           }
26928 #line 26929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26929     break;
26930 
26931   case 105:
26932 #line 2511 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26933     {
26934             Lex->mi.heartbeat_period= (float) (yyvsp[0].item_num)->val_real();
26935             if (unlikely(Lex->mi.heartbeat_period >
26936                          SLAVE_MAX_HEARTBEAT_PERIOD) ||
26937                 unlikely(Lex->mi.heartbeat_period < 0.0))
26938                my_yyabort_error((ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE, MYF(0),
26939                                  SLAVE_MAX_HEARTBEAT_PERIOD));
26940 
26941             if (unlikely(Lex->mi.heartbeat_period > slave_net_timeout))
26942             {
26943               push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
26944                                   ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX,
26945                                   ER_THD(thd, ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX));
26946             }
26947             if (unlikely(Lex->mi.heartbeat_period < 0.001))
26948             {
26949               if (unlikely(Lex->mi.heartbeat_period != 0.0))
26950               {
26951                 push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
26952                                     ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN,
26953                                     ER_THD(thd, ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN));
26954                 Lex->mi.heartbeat_period= 0.0;
26955               }
26956               Lex->mi.heartbeat_opt=  LEX_MASTER_INFO::LEX_MI_DISABLE;
26957             }
26958             Lex->mi.heartbeat_opt=  LEX_MASTER_INFO::LEX_MI_ENABLE;
26959           }
26960 #line 26961 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26961     break;
26962 
26963   case 106:
26964 #line 2539 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26965     {
26966             Lex->mi.repl_ignore_server_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
26967            }
26968 #line 26969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26969     break;
26970 
26971   case 107:
26972 #line 2543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26973     {
26974             Lex->mi.repl_do_domain_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
26975           }
26976 #line 26977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26977     break;
26978 
26979   case 108:
26980 #line 2547 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26981     {
26982             Lex->mi.repl_ignore_domain_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
26983           }
26984 #line 26985 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26985     break;
26986 
26987   case 113:
26988 #line 2562 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26989     {
26990             insert_dynamic(&Lex->mi.repl_ignore_server_ids, (uchar*) &((yyvsp[0].ulong_num)));
26991           }
26992 #line 26993 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
26993     break;
26994 
26995   case 117:
26996 #line 2575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
26997     {
26998             insert_dynamic(&Lex->mi.repl_do_domain_ids, (uchar*) &((yyvsp[0].ulong_num)));
26999           }
27000 #line 27001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27001     break;
27002 
27003   case 121:
27004 #line 2588 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27005     {
27006             insert_dynamic(&Lex->mi.repl_ignore_domain_ids, (uchar*) &((yyvsp[0].ulong_num)));
27007           }
27008 #line 27009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27009     break;
27010 
27011   case 122:
27012 #line 2595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27013     {
27014             Lex->mi.log_file_name = (yyvsp[0].lex_str).str;
27015           }
27016 #line 27017 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27017     break;
27018 
27019   case 123:
27020 #line 2599 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27021     {
27022             /*
27023                If the user specified a value < BIN_LOG_HEADER_SIZE, adjust it
27024                instead of causing subsequent errors.
27025                We need to do it in this file, because only there we know that
27026                MASTER_LOG_POS has been explicitly specified. On the contrary
27027                in change_master() (sql_repl.cc) we cannot distinguish between 0
27028                (MASTER_LOG_POS explicitly specified as 0) and 0 (unspecified),
27029                whereas we want to distinguish (specified 0 means "read the binlog
27030                from 0" (4 in fact), unspecified means "don't change the position
27031                (keep the preceding value)").
27032             */
27033             Lex->mi.pos= MY_MAX(BIN_LOG_HEADER_SIZE, (yyvsp[0].ulonglong_number));
27034           }
27035 #line 27036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27036     break;
27037 
27038   case 124:
27039 #line 2614 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27040     {
27041             Lex->mi.relay_log_name = (yyvsp[0].lex_str).str;
27042           }
27043 #line 27044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27044     break;
27045 
27046   case 125:
27047 #line 2618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27048     {
27049             Lex->mi.relay_log_pos = (yyvsp[0].ulong_num);
27050             /* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
27051             Lex->mi.relay_log_pos= MY_MAX(BIN_LOG_HEADER_SIZE, Lex->mi.relay_log_pos);
27052           }
27053 #line 27054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27054     break;
27055 
27056   case 126:
27057 #line 2624 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27058     {
27059             if (unlikely(Lex->mi.use_gtid_opt != LEX_MASTER_INFO::LEX_GTID_UNCHANGED))
27060               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
27061             Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_CURRENT_POS;
27062           }
27063 #line 27064 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27064     break;
27065 
27066   case 127:
27067 #line 2630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27068     {
27069             if (unlikely(Lex->mi.use_gtid_opt != LEX_MASTER_INFO::LEX_GTID_UNCHANGED))
27070               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
27071             Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_SLAVE_POS;
27072           }
27073 #line 27074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27074     break;
27075 
27076   case 128:
27077 #line 2636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27078     {
27079             if (unlikely(Lex->mi.use_gtid_opt != LEX_MASTER_INFO::LEX_GTID_UNCHANGED))
27080               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
27081             Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_NO;
27082           }
27083 #line 27084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27084     break;
27085 
27086   case 129:
27087 #line 2645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27088     {
27089             LEX *lex= thd->lex;
27090             lex->mi.connection_name= null_clex_str;
27091           }
27092 #line 27093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27093     break;
27094 
27095   case 131:
27096 #line 2654 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27097     {
27098            Lex->mi.connection_name= (yyvsp[0].lex_str);
27099 #ifdef HAVE_REPLICATION
27100            if (unlikely(check_master_connection_name(&(yyvsp[0].lex_str))))
27101               my_yyabort_error((ER_WRONG_ARGUMENTS, MYF(0), "MASTER_CONNECTION_NAME"));
27102 #endif
27103          }
27104 #line 27105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27105     break;
27106 
27107   case 132:
27108 #line 2667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27109     {
27110             LEX *lex= thd->lex;
27111             if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_create_table()))
27112               MYSQL_YYABORT;
27113             lex->create_info.init();
27114             if (lex->main_select_push())
27115               MYSQL_YYABORT;
27116             lex->current_select->parsing_place= BEFORE_OPT_LIST;
27117             if (lex->set_command_with_check(SQLCOM_CREATE_TABLE, (yyvsp[-2].num), (yyvsp[-3].object_ddl_options) | (yyvsp[0].object_ddl_options)))
27118                MYSQL_YYABORT;
27119           }
27120 #line 27121 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27121     break;
27122 
27123   case 133:
27124 #line 2679 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27125     {
27126             LEX *lex= thd->lex;
27127             if (!lex->first_select_lex()->
27128                   add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING,
27129                                     TL_WRITE, MDL_SHARED_UPGRADABLE))
27130               MYSQL_YYABORT;
27131             lex->alter_info.reset();
27132             /*
27133               For CREATE TABLE we should not open the table even if it exists.
27134               If the table exists, we should either not create it or replace it
27135             */
27136             lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB;
27137             lex->create_info.default_table_charset= NULL;
27138             lex->name= null_clex_str;
27139             lex->create_last_non_select_table= lex->last_table();
27140           }
27141 #line 27142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27142     break;
27143 
27144   case 134:
27145 #line 2696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27146     {
27147             LEX *lex= thd->lex;
27148             create_table_set_open_action_and_adjust_tables(lex);
27149             Lex->pop_select(); //main select
27150           }
27151 #line 27152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27152     break;
27153 
27154   case 135:
27155 #line 2702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27156     {
27157            LEX *lex= thd->lex;
27158            if (lex->main_select_push())
27159              MYSQL_YYABORT;
27160            if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_create_sequence()))
27161               MYSQL_YYABORT;
27162            lex->create_info.init();
27163            if (unlikely(lex->set_command_with_check(SQLCOM_CREATE_SEQUENCE, (yyvsp[-3].num),
27164                         (yyvsp[-4].object_ddl_options) | (yyvsp[-1].object_ddl_options))))
27165               MYSQL_YYABORT;
27166 
27167            if (!lex->first_select_lex()->
27168                  add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING,
27169                                    TL_WRITE, MDL_EXCLUSIVE))
27170              MYSQL_YYABORT;
27171 
27172                /*
27173                  For CREATE TABLE, an non-existing table is not an error.
27174                  Instruct open_tables() to just take an MDL lock if the
27175                  table does not exist.
27176                */
27177              lex->alter_info.reset();
27178              lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB;
27179              lex->name= null_clex_str;
27180              lex->create_last_non_select_table= lex->last_table();
27181              if (unlikely(!(lex->create_info.seq_create_info=
27182                             new (thd->mem_root) sequence_definition())))
27183                MYSQL_YYABORT;
27184          }
27185 #line 27186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27186     break;
27187 
27188   case 136:
27189 #line 2732 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27190     {
27191             LEX *lex= thd->lex;
27192 
27193             if (unlikely(lex->create_info.seq_create_info->check_and_adjust(1)))
27194             {
27195               my_error(ER_SEQUENCE_INVALID_DATA, MYF(0),
27196                        lex->first_select_lex()->table_list.first->db.str,
27197                        lex->first_select_lex()->table_list.first->
27198                          table_name.str);
27199               MYSQL_YYABORT;
27200             }
27201 
27202             /* No fields specified, generate them */
27203             if (unlikely(prepare_sequence_fields(thd,
27204                          &lex->alter_info.create_list)))
27205                MYSQL_YYABORT;
27206 
27207             /* CREATE SEQUENCE always creates a sequence */
27208 	    Lex->create_info.used_fields|= HA_CREATE_USED_SEQUENCE;
27209             Lex->create_info.sequence= 1;
27210 
27211             create_table_set_open_action_and_adjust_tables(lex);
27212             Lex->pop_select(); //main select
27213           }
27214 #line 27215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27215     break;
27216 
27217   case 137:
27218 #line 2757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27219     {
27220             if (Lex->main_select_push())
27221               MYSQL_YYABORT;
27222           }
27223 #line 27224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27224     break;
27225 
27226   case 138:
27227 #line 2764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27228     {
27229             if (Lex->add_create_index_prepare((yyvsp[0].table)))
27230               MYSQL_YYABORT;
27231             if (Lex->add_create_index((yyvsp[-7].key_type), &(yyvsp[-3].ident_sys), (yyvsp[-2].key_alg), (yyvsp[-8].object_ddl_options) | (yyvsp[-5].object_ddl_options)))
27232               MYSQL_YYABORT;
27233           }
27234 #line 27235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27235     break;
27236 
27237   case 139:
27238 #line 2772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27239     {
27240             Lex->pop_select(); //main select
27241           }
27242 #line 27243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27243     break;
27244 
27245   case 140:
27246 #line 2776 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27247     {
27248             if (Lex->main_select_push())
27249               MYSQL_YYABORT;
27250           }
27251 #line 27252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27252     break;
27253 
27254   case 141:
27255 #line 2782 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27256     {
27257             if (Lex->add_create_index_prepare((yyvsp[0].table)))
27258               MYSQL_YYABORT;
27259             if (Lex->add_create_index((yyvsp[-6].key_type), &(yyvsp[-2].ident_sys), HA_KEY_ALG_UNDEF, (yyvsp[-7].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
27260               MYSQL_YYABORT;
27261           }
27262 #line 27263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27263     break;
27264 
27265   case 142:
27266 #line 2790 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27267     {
27268             Lex->pop_select(); //main select
27269           }
27270 #line 27271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27271     break;
27272 
27273   case 143:
27274 #line 2794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27275     {
27276             if (Lex->main_select_push())
27277               MYSQL_YYABORT;
27278           }
27279 #line 27280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27280     break;
27281 
27282   case 144:
27283 #line 2800 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27284     {
27285             if (Lex->add_create_index_prepare((yyvsp[0].table)))
27286               MYSQL_YYABORT;
27287             if (Lex->add_create_index((yyvsp[-6].key_type), &(yyvsp[-2].ident_sys), HA_KEY_ALG_UNDEF, (yyvsp[-7].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
27288               MYSQL_YYABORT;
27289           }
27290 #line 27291 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27291     break;
27292 
27293   case 145:
27294 #line 2808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27295     {
27296             Lex->pop_select(); //main select
27297           }
27298 #line 27299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27299     break;
27300 
27301   case 146:
27302 #line 2812 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27303     {
27304             Lex->create_info.default_table_charset= NULL;
27305             Lex->create_info.used_fields= 0;
27306           }
27307 #line 27308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27308     break;
27309 
27310   case 147:
27311 #line 2817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27312     {
27313             LEX *lex=Lex;
27314             if (unlikely(lex->set_command_with_check(SQLCOM_CREATE_DB, 0,
27315                          (yyvsp[-5].object_ddl_options) | (yyvsp[-3].object_ddl_options))))
27316                MYSQL_YYABORT;
27317             lex->name= (yyvsp[-2].ident_sys);
27318           }
27319 #line 27320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27320     break;
27321 
27322   case 148:
27323 #line 2826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27324     {
27325             if (Lex->main_select_push())
27326               MYSQL_YYABORT;
27327             if (Lex->add_create_view(thd, (yyvsp[-5].object_ddl_options) | (yyvsp[-1].object_ddl_options),
27328                                      DTYPE_ALGORITHM_UNDEFINED, (yyvsp[-3].view_suid), (yyvsp[0].table)))
27329               MYSQL_YYABORT;
27330           }
27331 #line 27332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27332     break;
27333 
27334   case 149:
27335 #line 2834 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27336     {
27337             Lex->pop_select(); //main select
27338           }
27339 #line 27340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27340     break;
27341 
27342   case 150:
27343 #line 2839 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27344     {
27345             if (unlikely(Lex->add_create_view(thd, (yyvsp[-6].object_ddl_options) | (yyvsp[-1].object_ddl_options), (yyvsp[-5].num), (yyvsp[-3].view_suid), (yyvsp[0].table))))
27346               MYSQL_YYABORT;
27347             if (Lex->main_select_push())
27348               MYSQL_YYABORT;
27349           }
27350 #line 27351 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27351     break;
27352 
27353   case 151:
27354 #line 2846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27355     {
27356             Lex->pop_select(); //main select
27357           }
27358 #line 27359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27359     break;
27360 
27361   case 152:
27362 #line 2850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27363     {
27364             if (Lex->main_select_push())
27365               MYSQL_YYABORT;
27366             Lex->create_info.set((yyvsp[-2].object_ddl_options));
27367           }
27368 #line 27369 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27369     break;
27370 
27371   case 153:
27372 #line 2856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27373     {
27374             Lex->pop_select(); //main select
27375           }
27376 #line 27377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27377     break;
27378 
27379   case 154:
27380 #line 2860 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27381     {
27382             if (Lex->stmt_create_procedure_start((yyvsp[-3].object_ddl_options) | (yyvsp[0].object_ddl_options)))
27383               MYSQL_YYABORT;
27384           }
27385 #line 27386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27386     break;
27387 
27388   case 155:
27389 #line 2865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27390     {
27391             Lex->stmt_create_routine_finalize();
27392           }
27393 #line 27394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27394     break;
27395 
27396   case 156:
27397 #line 2869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27398     {
27399             if (Lex->main_select_push())
27400               MYSQL_YYABORT;
27401             Lex->create_info.set((yyvsp[-2].object_ddl_options));
27402           }
27403 #line 27404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27404     break;
27405 
27406   case 157:
27407 #line 2875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27408     {
27409             Lex->pop_select(); //main select
27410           }
27411 #line 27412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27412     break;
27413 
27414   case 158:
27415 #line 2880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27416     {
27417             if (Lex->stmt_create_stored_function_start((yyvsp[-6].object_ddl_options) | (yyvsp[-2].object_ddl_options), (yyvsp[-4].sp_aggregate_type), (yyvsp[-1].spname)))
27418               MYSQL_YYABORT;
27419           }
27420 #line 27421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27421     break;
27422 
27423   case 159:
27424 #line 2887 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27425     {
27426             Lex->stmt_create_routine_finalize();
27427           }
27428 #line 27429 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27429     break;
27430 
27431   case 160:
27432 #line 2892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27433     {
27434             if (Lex->stmt_create_stored_function_start((yyvsp[-6].object_ddl_options) | (yyvsp[-2].object_ddl_options), (yyvsp[-4].sp_aggregate_type), (yyvsp[-1].spname)))
27435               MYSQL_YYABORT;
27436           }
27437 #line 27438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27438     break;
27439 
27440   case 161:
27441 #line 2899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27442     {
27443             Lex->stmt_create_routine_finalize();
27444           }
27445 #line 27446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27446     break;
27447 
27448   case 162:
27449 #line 2904 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27450     {
27451             if (Lex->stmt_create_udf_function((yyvsp[-9].object_ddl_options) | (yyvsp[-5].object_ddl_options), (yyvsp[-7].sp_aggregate_type), (yyvsp[-4].ident_sys),
27452                                               (Item_result) (yyvsp[-2].num), (yyvsp[0].lex_str)))
27453               MYSQL_YYABORT;
27454           }
27455 #line 27456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27456     break;
27457 
27458   case 163:
27459 #line 2911 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27460     {
27461             if (unlikely(Lex->set_command_with_check(SQLCOM_CREATE_USER,
27462                                                      (yyvsp[-7].object_ddl_options) | (yyvsp[-5].object_ddl_options))))
27463               MYSQL_YYABORT;
27464           }
27465 #line 27466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27466     break;
27467 
27468   case 164:
27469 #line 2918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27470     {
27471             if (unlikely(Lex->set_command_with_check(SQLCOM_CREATE_ROLE,
27472                          (yyvsp[-5].object_ddl_options) | (yyvsp[-3].object_ddl_options))))
27473               MYSQL_YYABORT;
27474           }
27475 #line 27476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27476     break;
27477 
27478   case 165:
27479 #line 2924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27480     {
27481             Lex->alter_tablespace_info->ts_cmd_type= CREATE_LOGFILE_GROUP;
27482           }
27483 #line 27484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27484     break;
27485 
27486   case 166:
27487 #line 2928 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27488     {
27489             Lex->alter_tablespace_info->ts_cmd_type= CREATE_TABLESPACE;
27490           }
27491 #line 27492 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27492     break;
27493 
27494   case 167:
27495 #line 2931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27496     { Lex->set_command(SQLCOM_CREATE_SERVER, (yyvsp[0].object_ddl_options)); }
27497 #line 27498 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27498     break;
27499 
27500   case 168:
27501 #line 2933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27502     { }
27503 #line 27504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27504     break;
27505 
27506   case 169:
27507 #line 2937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27508     { }
27509 #line 27510 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27510     break;
27511 
27512   case 173:
27513 #line 2948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27514     {
27515             Lex->create_info.seq_create_info->min_value= (yyvsp[0].longlong_number);
27516             Lex->create_info.seq_create_info->used_fields|= seq_field_used_min_value;
27517           }
27518 #line 27519 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27519     break;
27520 
27521   case 174:
27522 #line 2953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27523     {
27524             if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_min_value))
27525               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MINVALUE"));
27526             Lex->create_info.seq_create_info->used_fields|= seq_field_used_min_value;
27527           }
27528 #line 27529 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27529     break;
27530 
27531   case 175:
27532 #line 2959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27533     {
27534             if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_min_value))
27535               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MINVALUE"));
27536             Lex->create_info.seq_create_info->used_fields|= seq_field_used_min_value;
27537           }
27538 #line 27539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27539     break;
27540 
27541   case 176:
27542 #line 2965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27543     {
27544            if (unlikely(Lex->create_info.seq_create_info->used_fields &
27545                seq_field_used_max_value))
27546               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MAXVALUE"));
27547             Lex->create_info.seq_create_info->max_value= (yyvsp[0].longlong_number);
27548             Lex->create_info.seq_create_info->used_fields|= seq_field_used_max_value;
27549           }
27550 #line 27551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27551     break;
27552 
27553   case 177:
27554 #line 2973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27555     {
27556             if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_max_value))
27557               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MAXVALUE"));
27558             Lex->create_info.seq_create_info->used_fields|= seq_field_used_max_value;
27559           }
27560 #line 27561 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27561     break;
27562 
27563   case 178:
27564 #line 2979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27565     {
27566             if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_max_value))
27567               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MAXVALUE"));
27568             Lex->create_info.seq_create_info->used_fields|= seq_field_used_max_value;
27569           }
27570 #line 27571 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27571     break;
27572 
27573   case 179:
27574 #line 2985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27575     {
27576             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27577                          seq_field_used_start))
27578               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "START"));
27579             Lex->create_info.seq_create_info->start= (yyvsp[0].longlong_number);
27580             Lex->create_info.seq_create_info->used_fields|= seq_field_used_start;
27581           }
27582 #line 27583 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27583     break;
27584 
27585   case 180:
27586 #line 2993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27587     {
27588              if (unlikely(Lex->create_info.seq_create_info->used_fields &
27589                 seq_field_used_increment))
27590               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "INCREMENT"));
27591             Lex->create_info.seq_create_info->increment= (yyvsp[0].longlong_number);
27592             Lex->create_info.seq_create_info->used_fields|= seq_field_used_increment;
27593           }
27594 #line 27595 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27595     break;
27596 
27597   case 181:
27598 #line 3001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27599     {
27600             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27601                 seq_field_used_cache))
27602               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CACHE"));
27603             Lex->create_info.seq_create_info->cache= (yyvsp[0].longlong_number);
27604             Lex->create_info.seq_create_info->used_fields|= seq_field_used_cache;
27605           }
27606 #line 27607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27607     break;
27608 
27609   case 182:
27610 #line 3009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27611     {
27612             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27613                 seq_field_used_cache))
27614               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CACHE"));
27615             Lex->create_info.seq_create_info->cache= 0;
27616             Lex->create_info.seq_create_info->used_fields|= seq_field_used_cache;
27617           }
27618 #line 27619 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27619     break;
27620 
27621   case 183:
27622 #line 3017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27623     {
27624             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27625                 seq_field_used_cycle))
27626               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CYCLE"));
27627             Lex->create_info.seq_create_info->cycle= 1;
27628             Lex->create_info.seq_create_info->used_fields|= seq_field_used_cycle;
27629           }
27630 #line 27631 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27631     break;
27632 
27633   case 184:
27634 #line 3025 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27635     {
27636             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27637                 seq_field_used_cycle))
27638               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CYCLE"));
27639             Lex->create_info.seq_create_info->cycle= 0;
27640             Lex->create_info.seq_create_info->used_fields|= seq_field_used_cycle;
27641           }
27642 #line 27643 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27643     break;
27644 
27645   case 185:
27646 #line 3033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27647     {
27648             if (unlikely(Lex->sql_command != SQLCOM_ALTER_SEQUENCE))
27649             {
27650               thd->parse_error(ER_SYNTAX_ERROR, "RESTART");
27651               YYABORT;
27652             }
27653             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27654                          seq_field_used_restart))
27655               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "RESTART"));
27656             Lex->create_info.seq_create_info->used_fields|= seq_field_used_restart;
27657           }
27658 #line 27659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27659     break;
27660 
27661   case 186:
27662 #line 3045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27663     {
27664             if (unlikely(Lex->sql_command != SQLCOM_ALTER_SEQUENCE))
27665             {
27666               thd->parse_error(ER_SYNTAX_ERROR, "RESTART");
27667               YYABORT;
27668             }
27669             if (unlikely(Lex->create_info.seq_create_info->used_fields &
27670                          seq_field_used_restart))
27671               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "RESTART"));
27672             Lex->create_info.seq_create_info->restart= (yyvsp[0].longlong_number);
27673             Lex->create_info.seq_create_info->used_fields|= seq_field_used_restart | seq_field_used_restart_value;
27674           }
27675 #line 27676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27676     break;
27677 
27678   case 187:
27679 #line 3061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27680     {
27681             if (unlikely(Lex->add_create_options_with_check((yyvsp[-1].object_ddl_options))))
27682               MYSQL_YYABORT;
27683             Lex->server_options.reset((yyvsp[0].lex_str));
27684           }
27685 #line 27686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27686     break;
27687 
27688   case 188:
27689 #line 3068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27690     { Lex->server_options.scheme= (yyvsp[-4].lex_str); }
27691 #line 27692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27692     break;
27693 
27694   case 191:
27695 #line 3078 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27696     {
27697             MYSQL_YYABORT_UNLESS(Lex->server_options.username.str == 0);
27698             Lex->server_options.username= (yyvsp[0].lex_str);
27699           }
27700 #line 27701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27701     break;
27702 
27703   case 192:
27704 #line 3083 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27705     {
27706             MYSQL_YYABORT_UNLESS(Lex->server_options.host.str == 0);
27707             Lex->server_options.host= (yyvsp[0].lex_str);
27708           }
27709 #line 27710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27710     break;
27711 
27712   case 193:
27713 #line 3088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27714     {
27715             MYSQL_YYABORT_UNLESS(Lex->server_options.db.str == 0);
27716             Lex->server_options.db= (yyvsp[0].lex_str);
27717           }
27718 #line 27719 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27719     break;
27720 
27721   case 194:
27722 #line 3093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27723     {
27724             MYSQL_YYABORT_UNLESS(Lex->server_options.owner.str == 0);
27725             Lex->server_options.owner= (yyvsp[0].lex_str);
27726           }
27727 #line 27728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27728     break;
27729 
27730   case 195:
27731 #line 3098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27732     {
27733             MYSQL_YYABORT_UNLESS(Lex->server_options.password.str == 0);
27734             Lex->server_options.password= (yyvsp[0].lex_str);
27735           }
27736 #line 27737 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27737     break;
27738 
27739   case 196:
27740 #line 3103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27741     {
27742             MYSQL_YYABORT_UNLESS(Lex->server_options.socket.str == 0);
27743             Lex->server_options.socket= (yyvsp[0].lex_str);
27744           }
27745 #line 27746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27746     break;
27747 
27748   case 197:
27749 #line 3108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27750     {
27751             Lex->server_options.port= (yyvsp[0].ulong_num);
27752           }
27753 #line 27754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27754     break;
27755 
27756   case 198:
27757 #line 3115 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27758     {
27759             LEX *lex=Lex;
27760 
27761             lex->stmt_definition_begin= (yyvsp[-2].simple_string);
27762             if (unlikely(lex->add_create_options_with_check((yyvsp[-1].object_ddl_options))))
27763               MYSQL_YYABORT;
27764             if (unlikely(!(lex->event_parse_data=
27765                            Event_parse_data::new_instance(thd))))
27766               MYSQL_YYABORT;
27767             lex->event_parse_data->identifier= (yyvsp[0].spname);
27768             lex->event_parse_data->on_completion=
27769                                   Event_parse_data::ON_COMPLETION_DROP;
27770 
27771             lex->sql_command= SQLCOM_CREATE_EVENT;
27772             /* We need that for disallowing subqueries */
27773           }
27774 #line 27775 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27775     break;
27776 
27777   case 199:
27778 #line 3136 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27779     {
27780             /*
27781               sql_command is set here because some rules in ev_sql_stmt
27782               can overwrite it
27783             */
27784             Lex->sql_command= SQLCOM_CREATE_EVENT;
27785           }
27786 #line 27787 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27787     break;
27788 
27789   case 200:
27790 #line 3147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27791     {
27792             Lex->event_parse_data->item_expression= (yyvsp[-1].item);
27793             Lex->event_parse_data->interval= (yyvsp[0].interval);
27794           }
27795 #line 27796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27796     break;
27797 
27798   case 202:
27799 #line 3154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27800     {
27801             Lex->event_parse_data->item_execute_at= (yyvsp[0].item);
27802           }
27803 #line 27804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27804     break;
27805 
27806   case 203:
27807 #line 3160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27808     { (yyval.num)= 0; }
27809 #line 27810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27810     break;
27811 
27812   case 204:
27813 #line 3162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27814     {
27815             Lex->event_parse_data->status= Event_parse_data::ENABLED;
27816             Lex->event_parse_data->status_changed= true;
27817             (yyval.num)= 1;
27818           }
27819 #line 27820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27820     break;
27821 
27822   case 205:
27823 #line 3168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27824     {
27825             Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED;
27826             Lex->event_parse_data->status_changed= true;
27827             (yyval.num)= 1;
27828           }
27829 #line 27830 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27830     break;
27831 
27832   case 206:
27833 #line 3174 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27834     {
27835             Lex->event_parse_data->status= Event_parse_data::DISABLED;
27836             Lex->event_parse_data->status_changed= true;
27837             (yyval.num)= 1;
27838           }
27839 #line 27840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27840     break;
27841 
27842   case 207:
27843 #line 3183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27844     {
27845             Item *item= new (thd->mem_root) Item_func_now_local(thd, 0);
27846             if (unlikely(item == NULL))
27847               MYSQL_YYABORT;
27848             Lex->event_parse_data->item_starts= item;
27849           }
27850 #line 27851 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27851     break;
27852 
27853   case 208:
27854 #line 3190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27855     {
27856             Lex->event_parse_data->item_starts= (yyvsp[0].item);
27857           }
27858 #line 27859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27859     break;
27860 
27861   case 210:
27862 #line 3198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27863     {
27864             Lex->event_parse_data->item_ends= (yyvsp[0].item);
27865           }
27866 #line 27867 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27867     break;
27868 
27869   case 211:
27870 #line 3204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27871     { (yyval.num)= 0; }
27872 #line 27873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27873     break;
27874 
27875   case 213:
27876 #line 3210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27877     {
27878             Lex->event_parse_data->on_completion= (yyvsp[-1].num)
27879                                     ? Event_parse_data::ON_COMPLETION_DROP
27880                                     : Event_parse_data::ON_COMPLETION_PRESERVE;
27881             (yyval.num)= 1;
27882           }
27883 #line 27884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27884     break;
27885 
27886   case 214:
27887 #line 3219 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27888     { (yyval.num)= 0; }
27889 #line 27890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27890     break;
27891 
27892   case 215:
27893 #line 3221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27894     {
27895             Lex->comment= Lex->event_parse_data->comment= (yyvsp[0].lex_str);
27896             (yyval.num)= 1;
27897           }
27898 #line 27899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27899     break;
27900 
27901   case 216:
27902 #line 3228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27903     {
27904             LEX *lex= thd->lex;
27905             Lex_input_stream *lip= YYLIP;
27906 
27907             /*
27908               This stops the following :
27909               - CREATE EVENT ... DO CREATE EVENT ...;
27910               - ALTER  EVENT ... DO CREATE EVENT ...;
27911               - CREATE EVENT ... DO ALTER EVENT DO ....;
27912               - CREATE PROCEDURE ... BEGIN CREATE EVENT ... END|
27913               This allows:
27914               - CREATE EVENT ... DO DROP EVENT yyy;
27915               - CREATE EVENT ... DO ALTER EVENT yyy;
27916                 (the nested ALTER EVENT can have anything but DO clause)
27917               - ALTER  EVENT ... DO ALTER EVENT yyy;
27918                 (the nested ALTER EVENT can have anything but DO clause)
27919               - ALTER  EVENT ... DO DROP EVENT yyy;
27920               - CREATE PROCEDURE ... BEGIN ALTER EVENT ... END|
27921                 (the nested ALTER EVENT can have anything but DO clause)
27922               - CREATE PROCEDURE ... BEGIN DROP EVENT ... END|
27923             */
27924             if (unlikely(lex->sphead))
27925               my_yyabort_error((ER_EVENT_RECURSION_FORBIDDEN, MYF(0)));
27926 
27927             if (unlikely(!lex->make_sp_head(thd,
27928                                             lex->event_parse_data->identifier,
27929                                             &sp_handler_procedure,
27930                                             DEFAULT_AGGREGATE)))
27931               MYSQL_YYABORT;
27932 
27933             lex->sphead->set_body_start(thd, lip->get_cpp_ptr());
27934           }
27935 #line 27936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27936     break;
27937 
27938   case 217:
27939 #line 3261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27940     {
27941             /* return back to the original memory root ASAP */
27942             if (Lex->sp_body_finalize_event(thd))
27943               MYSQL_YYABORT;
27944           }
27945 #line 27946 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27946     break;
27947 
27948   case 218:
27949 #line 3270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27950     {
27951            LEX *lex=Lex;
27952            lex->users_list.empty();
27953            lex->columns.empty();
27954            lex->grant= lex->grant_tot_col= 0;
27955            lex->all_privileges= 0;
27956            lex->first_select_lex()->db= null_clex_str;
27957            lex->account_options.reset();
27958          }
27959 #line 27960 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27960     break;
27961 
27962   case 219:
27963 #line 3282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27964     { (yyval.sp_aggregate_type)= NOT_AGGREGATE; }
27965 #line 27966 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27966     break;
27967 
27968   case 220:
27969 #line 3283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27970     { (yyval.sp_aggregate_type)= GROUP_AGGREGATE; }
27971 #line 27972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27972     break;
27973 
27974   case 221:
27975 #line 3288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27976     {
27977             if (unlikely(!((yyval.spname)= Lex->make_sp_name(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
27978               MYSQL_YYABORT;
27979           }
27980 #line 27981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27981     break;
27982 
27983   case 222:
27984 #line 3293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27985     {
27986             if (unlikely(!((yyval.spname)= Lex->make_sp_name(thd, &(yyvsp[0].ident_sys)))))
27987               MYSQL_YYABORT;
27988           }
27989 #line 27990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27990     break;
27991 
27992   case 223:
27993 #line 3300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
27994     {}
27995 #line 27996 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
27996     break;
27997 
27998   case 224:
27999 #line 3301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28000     {}
28001 #line 28002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28002     break;
28003 
28004   case 225:
28005 #line 3305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28006     {}
28007 #line 28008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28008     break;
28009 
28010   case 226:
28011 #line 3306 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28012     {}
28013 #line 28014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28014     break;
28015 
28016   case 227:
28017 #line 3312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28018     { Lex->sp_chistics.comment= (yyvsp[0].lex_str); }
28019 #line 28020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28020     break;
28021 
28022   case 228:
28023 #line 3314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28024     { /* Just parse it, we only have one language for now. */ }
28025 #line 28026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28026     break;
28027 
28028   case 229:
28029 #line 3316 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28030     { Lex->sp_chistics.daccess= SP_NO_SQL; }
28031 #line 28032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28032     break;
28033 
28034   case 230:
28035 #line 3318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28036     { Lex->sp_chistics.daccess= SP_CONTAINS_SQL; }
28037 #line 28038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28038     break;
28039 
28040   case 231:
28041 #line 3320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28042     { Lex->sp_chistics.daccess= SP_READS_SQL_DATA; }
28043 #line 28044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28044     break;
28045 
28046   case 232:
28047 #line 3322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28048     { Lex->sp_chistics.daccess= SP_MODIFIES_SQL_DATA; }
28049 #line 28050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28050     break;
28051 
28052   case 233:
28053 #line 3324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28054     { Lex->sp_chistics.suid= (yyvsp[0].sp_suid); }
28055 #line 28056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28056     break;
28057 
28058   case 234:
28059 #line 3329 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28060     { }
28061 #line 28062 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28062     break;
28063 
28064   case 235:
28065 #line 3330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28066     { Lex->sp_chistics.detistic= ! (yyvsp[-1].num); }
28067 #line 28068 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28068     break;
28069 
28070   case 236:
28071 #line 3334 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28072     { (yyval.sp_suid)= SP_IS_SUID; }
28073 #line 28074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28074     break;
28075 
28076   case 237:
28077 #line 3335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28078     { (yyval.sp_suid)= SP_IS_NOT_SUID; }
28079 #line 28080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28080     break;
28081 
28082   case 238:
28083 #line 3340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28084     {
28085             if (unlikely(Lex->call_statement_start(thd, (yyvsp[0].spname))))
28086               MYSQL_YYABORT;
28087           }
28088 #line 28089 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28089     break;
28090 
28091   case 239:
28092 #line 3345 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28093     {
28094             if (Lex->check_cte_dependencies_and_resolve_references())
28095               MYSQL_YYABORT;
28096           }
28097 #line 28098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28098     break;
28099 
28100   case 244:
28101 #line 3364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28102     {
28103            Lex->value_list.push_back((yyvsp[0].item), thd->mem_root);
28104           }
28105 #line 28106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28106     break;
28107 
28108   case 245:
28109 #line 3368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28110     {
28111             Lex->value_list.push_back((yyvsp[0].item), thd->mem_root);
28112           }
28113 #line 28114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28114     break;
28115 
28116   case 246:
28117 #line 3376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28118     {
28119             Lex->sphead->m_param_begin= YYLIP->get_cpp_tok_start();
28120             Lex->sphead->m_param_end= Lex->sphead->m_param_begin;
28121           }
28122 #line 28123 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28123     break;
28124 
28125   case 247:
28126 #line 3381 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28127     {
28128             Lex->sphead->m_param_begin= YYLIP->get_cpp_tok_start();
28129           }
28130 #line 28131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28131     break;
28132 
28133   case 248:
28134 #line 3385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28135     {
28136             Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
28137           }
28138 #line 28139 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28139     break;
28140 
28141   case 251:
28142 #line 3397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28143     {
28144             if (unlikely(!((yyval.spvar)= Lex->sp_param_init(&(yyvsp[0].ident_sys)))))
28145               MYSQL_YYABORT;
28146           }
28147 #line 28148 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28148     break;
28149 
28150   case 252:
28151 #line 3405 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28152     {
28153             if (unlikely(Lex->sp_param_fill_definition((yyval.spvar)= (yyvsp[-1].spvar))))
28154               MYSQL_YYABORT;
28155           }
28156 #line 28157 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28157     break;
28158 
28159   case 253:
28160 #line 3410 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28161     {
28162             if (unlikely(Lex->sphead->spvar_fill_type_reference(thd,
28163                                                                 (yyval.spvar)= (yyvsp[-5].spvar), (yyvsp[-2].ident_sys),
28164                                                                 (yyvsp[0].ident_sys))))
28165               MYSQL_YYABORT;
28166           }
28167 #line 28168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28168     break;
28169 
28170   case 254:
28171 #line 3417 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28172     {
28173             if (unlikely(Lex->sphead->spvar_fill_type_reference(thd, (yyval.spvar)= (yyvsp[-7].spvar),
28174                                                                 (yyvsp[-4].ident_sys), (yyvsp[-2].ident_sys), (yyvsp[0].ident_sys))))
28175               MYSQL_YYABORT;
28176           }
28177 #line 28178 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28178     break;
28179 
28180   case 255:
28181 #line 3423 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28182     {
28183             if (unlikely(Lex->sphead->spvar_fill_table_rowtype_reference(thd, (yyval.spvar)= (yyvsp[-4].spvar), (yyvsp[0].ident_sys))))
28184               MYSQL_YYABORT;
28185           }
28186 #line 28187 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28187     break;
28188 
28189   case 256:
28190 #line 3428 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28191     {
28192             if (unlikely(Lex->sphead->spvar_fill_table_rowtype_reference(thd, (yyval.spvar)= (yyvsp[-6].spvar), (yyvsp[-2].ident_sys), (yyvsp[0].ident_sys))))
28193               MYSQL_YYABORT;
28194           }
28195 #line 28196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28196     break;
28197 
28198   case 257:
28199 #line 3433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28200     {
28201             if (unlikely(Lex->sphead->spvar_fill_row(thd, (yyval.spvar)= (yyvsp[-2].spvar), (yyvsp[0].spvar_definition_list))))
28202               MYSQL_YYABORT;
28203           }
28204 #line 28205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28205     break;
28206 
28207   case 262:
28208 #line 3451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28209     { (yyvsp[0].spvar)->mode=(yyvsp[-1].spvar_mode); }
28210 #line 28211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28211     break;
28212 
28213   case 263:
28214 #line 3455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28215     { (yyval.spvar_mode)= sp_variable::MODE_IN; }
28216 #line 28217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28217     break;
28218 
28219   case 264:
28220 #line 3456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28221     { (yyval.spvar_mode)= sp_variable::MODE_IN; }
28222 #line 28223 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28223     break;
28224 
28225   case 265:
28226 #line 3457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28227     { (yyval.spvar_mode)= sp_variable::MODE_OUT; }
28228 #line 28229 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28229     break;
28230 
28231   case 266:
28232 #line 3458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28233     { (yyval.spvar_mode)= sp_variable::MODE_INOUT; }
28234 #line 28235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28235     break;
28236 
28237   case 267:
28238 #line 3463 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28239     {
28240             Lex->sphead->m_param_begin= YYLIP->get_cpp_tok_start() + 1;
28241           }
28242 #line 28243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28243     break;
28244 
28245   case 268:
28246 #line 3468 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28247     {
28248             Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
28249           }
28250 #line 28251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28251     break;
28252 
28253   case 269:
28254 #line 3474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28255     {}
28256 #line 28257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28257     break;
28258 
28259   case 271:
28260 #line 3479 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28261     {}
28262 #line 28263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28263     break;
28264 
28265   case 273:
28266 #line 3485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28267     {
28268             (yyval.spblock).init();
28269           }
28270 #line 28271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28271     break;
28272 
28273   case 274:
28274 #line 3489 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28275     {
28276             /* We check for declarations out of (standard) order this way
28277               because letting the grammar rules reflect it caused tricky
28278                shift/reduce conflicts with the wrong result. (And we get
28279                better error handling this way.) */
28280             if (unlikely(Lex->sp_declarations_join(&(yyval.spblock), (yyvsp[-2].spblock), (yyvsp[-1].spblock))))
28281               MYSQL_YYABORT;
28282           }
28283 #line 28284 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28284     break;
28285 
28286   case 275:
28287 #line 3500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28288     { (yyval.spblock)= (yyvsp[0].spblock); }
28289 #line 28290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28290     break;
28291 
28292   case 276:
28293 #line 3506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28294     {
28295             if (unlikely(!((yyval.qualified_column_ident)= new (thd->mem_root)
28296                          Qualified_column_ident(&(yyvsp[0].ident_sys)))))
28297               MYSQL_YYABORT;
28298           }
28299 #line 28300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28300     break;
28301 
28302   case 277:
28303 #line 3512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28304     {
28305             if (unlikely(!((yyval.qualified_column_ident)= new (thd->mem_root)
28306                            Qualified_column_ident(&(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
28307               MYSQL_YYABORT;
28308           }
28309 #line 28310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28310     break;
28311 
28312   case 278:
28313 #line 3518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28314     {
28315             if (unlikely(!((yyval.qualified_column_ident)= new (thd->mem_root)
28316                            Qualified_column_ident(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
28317               MYSQL_YYABORT;
28318           }
28319 #line 28320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28320     break;
28321 
28322   case 279:
28323 #line 3527 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28324     {
28325             if (!((yyval.spvar_definition)= Lex->row_field_name(thd, (yyvsp[0].ident_sys))))
28326               MYSQL_YYABORT;
28327           }
28328 #line 28329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28329     break;
28330 
28331   case 281:
28332 #line 3539 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28333     {
28334             if (!((yyval.spvar_definition_list)= Row_definition_list::make(thd->mem_root, (yyvsp[0].spvar_definition))))
28335               MYSQL_YYABORT;
28336           }
28337 #line 28338 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28338     break;
28339 
28340   case 282:
28341 #line 3544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28342     {
28343             if (((yyval.spvar_definition_list)= (yyvsp[-2].spvar_definition_list))->append_uniq(thd->mem_root, (yyvsp[0].spvar_definition)))
28344               MYSQL_YYABORT;
28345           }
28346 #line 28347 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28347     break;
28348 
28349   case 283:
28350 #line 3551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28351     { (yyval.spvar_definition_list)= (yyvsp[-1].spvar_definition_list); }
28352 #line 28353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28353     break;
28354 
28355   case 284:
28356 #line 3556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28357     {
28358             Lex->sp_variable_declarations_init(thd, (yyvsp[0].num));
28359           }
28360 #line 28361 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28361     break;
28362 
28363   case 285:
28364 #line 3565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28365     {
28366             if (unlikely(Lex->sp_variable_declarations_finalize(thd, (yyvsp[-2].num),
28367                                                                 &Lex->last_field[0],
28368                                                                 (yyvsp[0].item))))
28369               MYSQL_YYABORT;
28370             (yyval.spblock).init_using_vars((yyvsp[-2].num));
28371           }
28372 #line 28373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28373     break;
28374 
28375   case 286:
28376 #line 3575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28377     {
28378             if (unlikely(Lex->sp_variable_declarations_with_ref_finalize(thd, (yyvsp[-4].num), (yyvsp[-1].qualified_column_ident), (yyvsp[0].item))))
28379               MYSQL_YYABORT;
28380             (yyval.spblock).init_using_vars((yyvsp[-4].num));
28381           }
28382 #line 28383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28383     break;
28384 
28385   case 287:
28386 #line 3583 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28387     {
28388             if (unlikely(Lex->sp_variable_declarations_rowtype_finalize(thd, (yyvsp[-5].num), (yyvsp[-1].qualified_column_ident), (yyvsp[0].item))))
28389               MYSQL_YYABORT;
28390             (yyval.spblock).init_using_vars((yyvsp[-5].num));
28391           }
28392 #line 28393 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28393     break;
28394 
28395   case 288:
28396 #line 3591 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28397     {
28398             if (unlikely(Lex->sp_variable_declarations_row_finalize(thd, (yyvsp[-3].num), (yyvsp[-1].spvar_definition_list), (yyvsp[0].item))))
28399               MYSQL_YYABORT;
28400             (yyval.spblock).init_using_vars((yyvsp[-3].num));
28401           }
28402 #line 28403 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28403     break;
28404 
28405   case 290:
28406 #line 3601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28407     {
28408             if (unlikely(Lex->spcont->declare_condition(thd, &(yyvsp[-3].ident_sys), (yyvsp[0].spcondvalue))))
28409               MYSQL_YYABORT;
28410             (yyval.spblock).vars= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
28411             (yyval.spblock).conds= 1;
28412           }
28413 #line 28414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28414     break;
28415 
28416   case 292:
28417 #line 3609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28418     {
28419             Lex->sp_block_init(thd);
28420           }
28421 #line 28422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28422     break;
28423 
28424   case 293:
28425 #line 3614 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28426     {
28427             sp_pcontext *param_ctx= Lex->spcont;
28428             if (unlikely(Lex->sp_block_finalize(thd)))
28429               MYSQL_YYABORT;
28430             if (unlikely(Lex->sp_declare_cursor(thd, &(yyvsp[-5].ident_sys), (yyvsp[0].sp_cursor_stmt), param_ctx, true)))
28431               MYSQL_YYABORT;
28432             (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= 0;
28433             (yyval.spblock).curs= 1;
28434           }
28435 #line 28436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28436     break;
28437 
28438   case 294:
28439 #line 3627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28440     {
28441             if (unlikely(Lex->sp_handler_declaration_init(thd, (yyvsp[-2].num))))
28442               MYSQL_YYABORT;
28443           }
28444 #line 28445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28445     break;
28446 
28447   case 295:
28448 #line 3632 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28449     {
28450             if (unlikely(Lex->sp_handler_declaration_finalize(thd, (yyvsp[-5].num))))
28451               MYSQL_YYABORT;
28452             (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).curs= 0;
28453             (yyval.spblock).hndlrs= 1;
28454           }
28455 #line 28456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28456     break;
28457 
28458   case 298:
28459 #line 3647 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28460     {
28461             DBUG_ASSERT(thd->lex->sphead);
28462             if (unlikely(!((yyval.sp_cursor_stmt)= new (thd->mem_root)
28463                            sp_lex_cursor(thd, thd->lex))))
28464               MYSQL_YYABORT;
28465           }
28466 #line 28467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28467     break;
28468 
28469   case 299:
28470 #line 3657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28471     {
28472             DBUG_ASSERT(thd->free_list == NULL);
28473             Lex->sphead->reset_lex(thd, (yyvsp[0].sp_cursor_stmt));
28474             if (Lex->main_select_push(true))
28475               MYSQL_YYABORT;
28476           }
28477 #line 28478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28478     break;
28479 
28480   case 300:
28481 #line 3664 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28482     {
28483             DBUG_ASSERT(Lex == (yyvsp[-2].sp_cursor_stmt));
28484             Lex->pop_select(); //main select
28485             if (unlikely((yyvsp[-2].sp_cursor_stmt)->stmt_finalize(thd)) ||
28486                 unlikely((yyvsp[-2].sp_cursor_stmt)->sphead->restore_lex(thd)))
28487               MYSQL_YYABORT;
28488             (yyval.sp_cursor_stmt)= (yyvsp[-2].sp_cursor_stmt);
28489           }
28490 #line 28491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28491     break;
28492 
28493   case 301:
28494 #line 3675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28495     { (yyval.num)= sp_handler::EXIT; }
28496 #line 28497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28497     break;
28498 
28499   case 302:
28500 #line 3676 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28501     { (yyval.num)= sp_handler::CONTINUE; }
28502 #line 28503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28503     break;
28504 
28505   case 303:
28506 #line 3677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28507     { (yyval.num)= sp_handler::EXIT; }
28508 #line 28509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28509     break;
28510 
28511   case 304:
28512 #line 3678 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28513     { (yyval.num)= sp_handler::CONTINUE; }
28514 #line 28515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28515     break;
28516 
28517   case 305:
28518 #line 3684 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28519     { (yyval.num)= 1; }
28520 #line 28521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28521     break;
28522 
28523   case 306:
28524 #line 3686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28525     { (yyval.num)+= 1; }
28526 #line 28527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28527     break;
28528 
28529   case 307:
28530 #line 3691 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28531     {
28532             LEX *lex= Lex;
28533             sp_head *sp= lex->sphead;
28534             sp_pcontext *ctx= lex->spcont->parent_context();
28535 
28536             if (unlikely(ctx->check_duplicate_handler((yyvsp[0].spcondvalue))))
28537               my_yyabort_error((ER_SP_DUP_HANDLER, MYF(0)));
28538 
28539             sp_instr_hpush_jump *i= (sp_instr_hpush_jump *)sp->last_instruction();
28540             i->add_condition((yyvsp[0].spcondvalue));
28541           }
28542 #line 28543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28543     break;
28544 
28545   case 308:
28546 #line 3706 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28547     { /* mysql errno */
28548             if (unlikely((yyvsp[0].ulong_num) == 0))
28549               my_yyabort_error((ER_WRONG_VALUE, MYF(0), "CONDITION", "0"));
28550             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value((yyvsp[0].ulong_num));
28551             if (unlikely((yyval.spcondvalue) == NULL))
28552               MYSQL_YYABORT;
28553           }
28554 #line 28555 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28555     break;
28556 
28557   case 310:
28558 #line 3718 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28559     { /* SQLSTATE */
28560 
28561             /*
28562               An error is triggered:
28563                 - if the specified string is not a valid SQLSTATE,
28564                 - or if it represents the completion condition -- it is not
28565                   allowed to SIGNAL, or declare a handler for the completion
28566                   condition.
28567             */
28568             if (unlikely(!is_sqlstate_valid(&(yyvsp[0].lex_str)) ||
28569                          is_sqlstate_completion((yyvsp[0].lex_str).str)))
28570               my_yyabort_error((ER_SP_BAD_SQLSTATE, MYF(0), (yyvsp[0].lex_str).str));
28571             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value((yyvsp[0].lex_str).str);
28572             if (unlikely((yyval.spcondvalue) == NULL))
28573               MYSQL_YYABORT;
28574           }
28575 #line 28576 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28576     break;
28577 
28578   case 311:
28579 #line 3737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28580     {}
28581 #line 28582 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28582     break;
28583 
28584   case 312:
28585 #line 3738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28586     {}
28587 #line 28588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28588     break;
28589 
28590   case 313:
28591 #line 3743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28592     {
28593             (yyval.spcondvalue)= (yyvsp[0].spcondvalue);
28594           }
28595 #line 28596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28596     break;
28597 
28598   case 314:
28599 #line 3747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28600     {
28601             (yyval.spcondvalue)= Lex->spcont->find_declared_or_predefined_condition(thd, &(yyvsp[0].ident_sys));
28602             if (unlikely((yyval.spcondvalue) == NULL))
28603               my_yyabort_error((ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].ident_sys).str));
28604           }
28605 #line 28606 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28606     break;
28607 
28608   case 315:
28609 #line 3753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28610     {
28611             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::WARNING);
28612             if (unlikely((yyval.spcondvalue) == NULL))
28613               MYSQL_YYABORT;
28614           }
28615 #line 28616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28616     break;
28617 
28618   case 316:
28619 #line 3759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28620     {
28621             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::NOT_FOUND);
28622             if (unlikely((yyval.spcondvalue) == NULL))
28623               MYSQL_YYABORT;
28624           }
28625 #line 28626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28626     break;
28627 
28628   case 317:
28629 #line 3765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28630     {
28631             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::EXCEPTION);
28632             if (unlikely((yyval.spcondvalue) == NULL))
28633               MYSQL_YYABORT;
28634           }
28635 #line 28636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28636     break;
28637 
28638   case 318:
28639 #line 3771 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28640     {
28641             (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::EXCEPTION);
28642             if (unlikely((yyval.spcondvalue) == NULL))
28643               MYSQL_YYABORT;
28644           }
28645 #line 28646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28646     break;
28647 
28648   case 319:
28649 #line 3781 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28650     {
28651             if (unlikely(Lex->add_resignal_statement(thd, NULL)))
28652               MYSQL_YYABORT;
28653           }
28654 #line 28655 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28655     break;
28656 
28657   case 320:
28658 #line 3786 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28659     {
28660             if (unlikely(Lex->add_signal_statement(thd, (yyvsp[-1].spcondvalue))))
28661               MYSQL_YYABORT;
28662           }
28663 #line 28664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28664     break;
28665 
28666   case 321:
28667 #line 3794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28668     {
28669             if (Lex->add_signal_statement(thd, (yyvsp[-1].spcondvalue)))
28670               MYSQL_YYABORT;
28671           }
28672 #line 28673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28673     break;
28674 
28675   case 322:
28676 #line 3802 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28677     {
28678             LEX *lex= Lex;
28679             sp_condition_value *cond;
28680 
28681             /* SIGNAL foo cannot be used outside of stored programs */
28682             if (unlikely(lex->spcont == NULL))
28683               my_yyabort_error((ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].ident_sys).str));
28684             cond= lex->spcont->find_declared_or_predefined_condition(thd, &(yyvsp[0].ident_sys));
28685             if (unlikely(cond == NULL))
28686               my_yyabort_error((ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].ident_sys).str));
28687             if (unlikely(cond->type != sp_condition_value::SQLSTATE))
28688               my_yyabort_error((ER_SIGNAL_BAD_CONDITION_TYPE, MYF(0)));
28689             (yyval.spcondvalue)= cond;
28690           }
28691 #line 28692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28692     break;
28693 
28694   case 323:
28695 #line 3817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28696     { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); }
28697 #line 28698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28698     break;
28699 
28700   case 324:
28701 #line 3822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28702     { (yyval.spcondvalue)= NULL; }
28703 #line 28704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28704     break;
28705 
28706   case 325:
28707 #line 3824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28708     { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); }
28709 #line 28710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28710     break;
28711 
28712   case 326:
28713 #line 3829 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28714     {
28715             thd->m_parser_state->m_yacc.m_set_signal_info.clear();
28716           }
28717 #line 28718 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28718     break;
28719 
28720   case 328:
28721 #line 3837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28722     {
28723             Set_signal_information *info;
28724             info= &thd->m_parser_state->m_yacc.m_set_signal_info;
28725             int index= (int) (yyvsp[-2].diag_condition_item_name);
28726             info->clear();
28727             info->m_item[index]= (yyvsp[0].item);
28728           }
28729 #line 28730 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28730     break;
28731 
28732   case 329:
28733 #line 3846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28734     {
28735             Set_signal_information *info;
28736             info= &thd->m_parser_state->m_yacc.m_set_signal_info;
28737             int index= (int) (yyvsp[-2].diag_condition_item_name);
28738             if (unlikely(info->m_item[index] != NULL))
28739               my_yyabort_error((ER_DUP_SIGNAL_SET, MYF(0),
28740                                 Diag_condition_item_names[index].str));
28741             info->m_item[index]= (yyvsp[0].item);
28742           }
28743 #line 28744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28744     break;
28745 
28746   case 330:
28747 #line 3862 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28748     { (yyval.item)= (yyvsp[0].item); }
28749 #line 28750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28750     break;
28751 
28752   case 331:
28753 #line 3864 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28754     {
28755             if ((yyvsp[0].item)->type() == Item::FUNC_ITEM)
28756             {
28757               Item_func *item= (Item_func*) (yyvsp[0].item);
28758               if (unlikely(item->functype() == Item_func::SUSERVAR_FUNC))
28759               {
28760                 /*
28761                   Don't allow the following syntax:
28762                     SIGNAL/RESIGNAL ...
28763                     SET <signal condition item name> = @foo := expr
28764                 */
28765                 thd->parse_error();
28766                 MYSQL_YYABORT;
28767               }
28768             }
28769             (yyval.item)= (yyvsp[0].item);
28770           }
28771 #line 28772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28772     break;
28773 
28774   case 332:
28775 #line 3882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28776     { (yyval.item)= (yyvsp[0].item); }
28777 #line 28778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28778     break;
28779 
28780   case 333:
28781 #line 3888 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28782     { (yyval.diag_condition_item_name)= DIAG_CLASS_ORIGIN; }
28783 #line 28784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28784     break;
28785 
28786   case 334:
28787 #line 3890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28788     { (yyval.diag_condition_item_name)= DIAG_SUBCLASS_ORIGIN; }
28789 #line 28790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28790     break;
28791 
28792   case 335:
28793 #line 3892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28794     { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_CATALOG; }
28795 #line 28796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28796     break;
28797 
28798   case 336:
28799 #line 3894 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28800     { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_SCHEMA; }
28801 #line 28802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28802     break;
28803 
28804   case 337:
28805 #line 3896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28806     { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_NAME; }
28807 #line 28808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28808     break;
28809 
28810   case 338:
28811 #line 3898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28812     { (yyval.diag_condition_item_name)= DIAG_CATALOG_NAME; }
28813 #line 28814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28814     break;
28815 
28816   case 339:
28817 #line 3900 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28818     { (yyval.diag_condition_item_name)= DIAG_SCHEMA_NAME; }
28819 #line 28820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28820     break;
28821 
28822   case 340:
28823 #line 3902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28824     { (yyval.diag_condition_item_name)= DIAG_TABLE_NAME; }
28825 #line 28826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28826     break;
28827 
28828   case 341:
28829 #line 3904 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28830     { (yyval.diag_condition_item_name)= DIAG_COLUMN_NAME; }
28831 #line 28832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28832     break;
28833 
28834   case 342:
28835 #line 3906 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28836     { (yyval.diag_condition_item_name)= DIAG_CURSOR_NAME; }
28837 #line 28838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28838     break;
28839 
28840   case 343:
28841 #line 3908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28842     { (yyval.diag_condition_item_name)= DIAG_MESSAGE_TEXT; }
28843 #line 28844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28844     break;
28845 
28846   case 344:
28847 #line 3910 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28848     { (yyval.diag_condition_item_name)= DIAG_MYSQL_ERRNO; }
28849 #line 28850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28850     break;
28851 
28852   case 345:
28853 #line 3915 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28854     {
28855             if (unlikely(Lex->add_resignal_statement(thd, (yyvsp[-1].spcondvalue))))
28856               MYSQL_YYABORT;
28857           }
28858 #line 28859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28859     break;
28860 
28861   case 346:
28862 #line 3923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28863     {
28864             Diagnostics_information *info= (yyvsp[0].diag_info);
28865 
28866             info->set_which_da((yyvsp[-2].diag_area));
28867 
28868             Lex->sql_command= SQLCOM_GET_DIAGNOSTICS;
28869             Lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_get_diagnostics(info);
28870 
28871             if (unlikely(Lex->m_sql_cmd == NULL))
28872               MYSQL_YYABORT;
28873           }
28874 #line 28875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28875     break;
28876 
28877   case 347:
28878 #line 3938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28879     { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
28880 #line 28881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28881     break;
28882 
28883   case 348:
28884 #line 3940 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28885     { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
28886 #line 28887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28887     break;
28888 
28889   case 349:
28890 #line 3945 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28891     {
28892             (yyval.diag_info)= new (thd->mem_root) Statement_information((yyvsp[0].stmt_info_list));
28893             if (unlikely((yyval.diag_info) == NULL))
28894               MYSQL_YYABORT;
28895           }
28896 #line 28897 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28897     break;
28898 
28899   case 350:
28900 #line 3951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28901     {
28902             (yyval.diag_info)= new (thd->mem_root) Condition_information((yyvsp[-1].item), (yyvsp[0].cond_info_list));
28903             if (unlikely((yyval.diag_info) == NULL))
28904               MYSQL_YYABORT;
28905           }
28906 #line 28907 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28907     break;
28908 
28909   case 351:
28910 #line 3960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28911     {
28912             (yyval.stmt_info_list)= new (thd->mem_root) List<Statement_information_item>;
28913             if (unlikely((yyval.stmt_info_list) == NULL) ||
28914                 unlikely((yyval.stmt_info_list)->push_back((yyvsp[0].stmt_info_item), thd->mem_root)))
28915               MYSQL_YYABORT;
28916           }
28917 #line 28918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28918     break;
28919 
28920   case 352:
28921 #line 3967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28922     {
28923             if (unlikely((yyvsp[-2].stmt_info_list)->push_back((yyvsp[0].stmt_info_item), thd->mem_root)))
28924               MYSQL_YYABORT;
28925             (yyval.stmt_info_list)= (yyvsp[-2].stmt_info_list);
28926           }
28927 #line 28928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28928     break;
28929 
28930   case 353:
28931 #line 3976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28932     {
28933             (yyval.stmt_info_item)= new (thd->mem_root) Statement_information_item((yyvsp[0].stmt_info_item_name), (yyvsp[-2].item));
28934             if (unlikely((yyval.stmt_info_item) == NULL))
28935               MYSQL_YYABORT;
28936           }
28937 #line 28938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28938     break;
28939 
28940   case 354:
28941 #line 3985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28942     {
28943             if (unlikely(!((yyval.item)= thd->lex->create_item_for_sp_var(&(yyvsp[0].ident_cli), NULL))))
28944               MYSQL_YYABORT;
28945           }
28946 #line 28947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28947     break;
28948 
28949   case 355:
28950 #line 3990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28951     {
28952             (yyval.item)= new (thd->mem_root) Item_func_get_user_var(thd, &(yyvsp[0].lex_str));
28953             if (unlikely((yyval.item) == NULL))
28954               MYSQL_YYABORT;
28955           }
28956 #line 28957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28957     break;
28958 
28959   case 356:
28960 #line 3999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28961     { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; }
28962 #line 28963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28963     break;
28964 
28965   case 357:
28966 #line 4001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28967     { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; }
28968 #line 28969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28969     break;
28970 
28971   case 358:
28972 #line 4003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28973     { (yyval.stmt_info_item_name)= Statement_information_item::ROW_COUNT; }
28974 #line 28975 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28975     break;
28976 
28977   case 359:
28978 #line 4012 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28979     { (yyval.item)= (yyvsp[0].item); }
28980 #line 28981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28981     break;
28982 
28983   case 360:
28984 #line 4017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28985     {
28986             (yyval.cond_info_list)= new (thd->mem_root) List<Condition_information_item>;
28987             if (unlikely((yyval.cond_info_list) == NULL) ||
28988                 unlikely((yyval.cond_info_list)->push_back((yyvsp[0].cond_info_item), thd->mem_root)))
28989               MYSQL_YYABORT;
28990           }
28991 #line 28992 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
28992     break;
28993 
28994   case 361:
28995 #line 4024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
28996     {
28997             if (unlikely((yyvsp[-2].cond_info_list)->push_back((yyvsp[0].cond_info_item), thd->mem_root)))
28998               MYSQL_YYABORT;
28999             (yyval.cond_info_list)= (yyvsp[-2].cond_info_list);
29000           }
29001 #line 29002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29002     break;
29003 
29004   case 362:
29005 #line 4033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29006     {
29007             (yyval.cond_info_item)= new (thd->mem_root) Condition_information_item((yyvsp[0].cond_info_item_name), (yyvsp[-2].item));
29008             if (unlikely((yyval.cond_info_item) == NULL))
29009               MYSQL_YYABORT;
29010           }
29011 #line 29012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29012     break;
29013 
29014   case 363:
29015 #line 4042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29016     { (yyval.cond_info_item_name)= Condition_information_item::CLASS_ORIGIN; }
29017 #line 29018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29018     break;
29019 
29020   case 364:
29021 #line 4044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29022     { (yyval.cond_info_item_name)= Condition_information_item::SUBCLASS_ORIGIN; }
29023 #line 29024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29024     break;
29025 
29026   case 365:
29027 #line 4046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29028     { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_CATALOG; }
29029 #line 29030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29030     break;
29031 
29032   case 366:
29033 #line 4048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29034     { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_SCHEMA; }
29035 #line 29036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29036     break;
29037 
29038   case 367:
29039 #line 4050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29040     { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_NAME; }
29041 #line 29042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29042     break;
29043 
29044   case 368:
29045 #line 4052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29046     { (yyval.cond_info_item_name)= Condition_information_item::CATALOG_NAME; }
29047 #line 29048 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29048     break;
29049 
29050   case 369:
29051 #line 4054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29052     { (yyval.cond_info_item_name)= Condition_information_item::SCHEMA_NAME; }
29053 #line 29054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29054     break;
29055 
29056   case 370:
29057 #line 4056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29058     { (yyval.cond_info_item_name)= Condition_information_item::TABLE_NAME; }
29059 #line 29060 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29060     break;
29061 
29062   case 371:
29063 #line 4058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29064     { (yyval.cond_info_item_name)= Condition_information_item::COLUMN_NAME; }
29065 #line 29066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29066     break;
29067 
29068   case 372:
29069 #line 4060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29070     { (yyval.cond_info_item_name)= Condition_information_item::CURSOR_NAME; }
29071 #line 29072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29072     break;
29073 
29074   case 373:
29075 #line 4062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29076     { (yyval.cond_info_item_name)= Condition_information_item::MESSAGE_TEXT; }
29077 #line 29078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29078     break;
29079 
29080   case 374:
29081 #line 4064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29082     { (yyval.cond_info_item_name)= Condition_information_item::MYSQL_ERRNO; }
29083 #line 29084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29084     break;
29085 
29086   case 375:
29087 #line 4066 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29088     { (yyval.cond_info_item_name)= Condition_information_item::RETURNED_SQLSTATE; }
29089 #line 29090 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29090     break;
29091 
29092   case 377:
29093 #line 4072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29094     {
29095             if (unlikely((yyval.ident_sys).copy_ident_cli(thd, &(yyvsp[0].kwd))))
29096               MYSQL_YYABORT;
29097           }
29098 #line 29099 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29099     break;
29100 
29101   case 378:
29102 #line 4080 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29103     {
29104             /* NOTE: field definition is filled in sp_decl section. */
29105 
29106             LEX *lex= Lex;
29107             sp_pcontext *spc= lex->spcont;
29108 
29109             if (unlikely(spc->find_variable(&(yyvsp[0].ident_sys), TRUE)))
29110               my_yyabort_error((ER_SP_DUP_VAR, MYF(0), (yyvsp[0].ident_sys).str));
29111             spc->add_variable(thd, &(yyvsp[0].ident_sys));
29112             (yyval.num)= 1;
29113           }
29114 #line 29115 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29115     break;
29116 
29117   case 379:
29118 #line 4092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29119     {
29120             /* NOTE: field definition is filled in sp_decl section. */
29121 
29122             LEX *lex= Lex;
29123             sp_pcontext *spc= lex->spcont;
29124 
29125             if (unlikely(spc->find_variable(&(yyvsp[0].ident_sys), TRUE)))
29126               my_yyabort_error((ER_SP_DUP_VAR, MYF(0), (yyvsp[0].ident_sys).str));
29127             spc->add_variable(thd, &(yyvsp[0].ident_sys));
29128             (yyval.num)= (yyvsp[-2].num) + 1;
29129           }
29130 #line 29131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29131     break;
29132 
29133   case 380:
29134 #line 4106 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29135     { (yyval.item) = NULL; }
29136 #line 29137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29137     break;
29138 
29139   case 381:
29140 #line 4107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29141     { (yyval.item) = (yyvsp[0].item); }
29142 #line 29143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29143     break;
29144 
29145   case 401:
29146 #line 4149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29147     {
29148             if (unlikely(Lex->maybe_start_compound_statement(thd)))
29149               MYSQL_YYABORT;
29150             Lex->sphead->new_cont_backpatch(NULL);
29151           }
29152 #line 29153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29153     break;
29154 
29155   case 402:
29156 #line 4155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29157     { Lex->sphead->do_cont_backpatch(); }
29158 #line 29159 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29159     break;
29160 
29161   case 403:
29162 #line 4159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29163     {
29164             LEX *lex= thd->lex;
29165             Lex_input_stream *lip= YYLIP;
29166 
29167             lex->sphead->reset_lex(thd);
29168             /*
29169               We should not push main select here, it will be done or not
29170               done by the statement, we just provide only a new LEX for the
29171               statement here as if it is start of parsing a new statement.
29172             */
29173             lex->sphead->m_tmp_query= lip->get_tok_start();
29174           }
29175 #line 29176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29176     break;
29177 
29178   case 404:
29179 #line 4172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29180     {
29181             if (Lex->sp_proc_stmt_statement_finalize(thd, yychar == YYEMPTY) ||
29182                 Lex->sphead->restore_lex(thd))
29183               MYSQL_YYABORT;
29184           }
29185 #line 29186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29186     break;
29187 
29188   case 407:
29189 #line 4187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29190     {
29191             Lex->sphead->reset_lex(thd);
29192             if (Lex->main_select_push(true))
29193               MYSQL_YYABORT;
29194           }
29195 #line 29196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29196     break;
29197 
29198   case 408:
29199 #line 4193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29200     {
29201             LEX *lex= Lex;
29202             sp_head *sp= lex->sphead;
29203             Lex->pop_select(); //main select
29204             if (Lex->check_cte_dependencies_and_resolve_references())
29205               MYSQL_YYABORT;
29206             if (unlikely(sp->m_handler->add_instr_freturn(thd, sp, lex->spcont,
29207                                                           (yyvsp[0].item), lex)) ||
29208                 unlikely(sp->restore_lex(thd)))
29209               MYSQL_YYABORT;
29210           }
29211 #line 29212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29212     break;
29213 
29214   case 409:
29215 #line 4205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29216     {
29217             LEX *lex= Lex;
29218             sp_head *sp= lex->sphead;
29219             if (unlikely(sp->m_handler->add_instr_preturn(thd, sp,
29220                                                                lex->spcont)))
29221               MYSQL_YYABORT;
29222           }
29223 #line 29224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29224     break;
29225 
29226   case 410:
29227 #line 4215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29228     {
29229             Lex->sphead->reset_lex(thd);
29230             if (Lex->main_select_push(true))
29231               MYSQL_YYABORT;
29232           }
29233 #line 29234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29234     break;
29235 
29236   case 411:
29237 #line 4221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29238     {
29239             Lex->pop_select(); //main select
29240             (yyval.item)= (yyvsp[0].item);
29241           }
29242 #line 29243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29243     break;
29244 
29245   case 412:
29246 #line 4229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29247     {
29248             if (unlikely(Lex->sp_exit_statement(thd, NULL)))
29249               MYSQL_YYABORT;
29250           }
29251 #line 29252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29252     break;
29253 
29254   case 413:
29255 #line 4234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29256     {
29257             if (unlikely(Lex->sp_exit_statement(thd, &(yyvsp[0].ident_sys), NULL)))
29258               MYSQL_YYABORT;
29259           }
29260 #line 29261 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29261     break;
29262 
29263   case 414:
29264 #line 4239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29265     {
29266             if (unlikely(Lex->sp_exit_statement(thd, (yyvsp[0].item))) ||
29267                 unlikely(Lex->sphead->restore_lex(thd)))
29268               MYSQL_YYABORT;
29269           }
29270 #line 29271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29271     break;
29272 
29273   case 415:
29274 #line 4245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29275     {
29276             if (unlikely(Lex->sp_exit_statement(thd, &(yyvsp[-2].ident_sys), (yyvsp[0].item))) ||
29277                 unlikely(Lex->sphead->restore_lex(thd)))
29278               MYSQL_YYABORT;
29279           }
29280 #line 29281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29281     break;
29282 
29283   case 416:
29284 #line 4254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29285     {
29286             if (unlikely(Lex->sp_continue_statement(thd, NULL)))
29287               MYSQL_YYABORT;
29288           }
29289 #line 29290 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29290     break;
29291 
29292   case 417:
29293 #line 4259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29294     {
29295             if (unlikely(Lex->sp_continue_statement(thd, &(yyvsp[0].ident_sys), NULL)))
29296               MYSQL_YYABORT;
29297           }
29298 #line 29299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29299     break;
29300 
29301   case 418:
29302 #line 4264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29303     {
29304             if (unlikely(Lex->sp_continue_statement(thd, (yyvsp[0].item))) ||
29305                 unlikely(Lex->sphead->restore_lex(thd)))
29306               MYSQL_YYABORT;
29307           }
29308 #line 29309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29309     break;
29310 
29311   case 419:
29312 #line 4270 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29313     {
29314             if (unlikely(Lex->sp_continue_statement(thd, &(yyvsp[-2].ident_sys), (yyvsp[0].item))) ||
29315                 unlikely(Lex->sphead->restore_lex(thd)))
29316               MYSQL_YYABORT;
29317           }
29318 #line 29319 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29319     break;
29320 
29321   case 420:
29322 #line 4280 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29323     {
29324             if (unlikely(Lex->sp_leave_statement(thd, &(yyvsp[0].ident_sys))))
29325               MYSQL_YYABORT;
29326           }
29327 #line 29328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29328     break;
29329 
29330   case 421:
29331 #line 4288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29332     {
29333             if (unlikely(Lex->sp_iterate_statement(thd, &(yyvsp[0].ident_sys))))
29334               MYSQL_YYABORT;
29335           }
29336 #line 29337 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29337     break;
29338 
29339   case 422:
29340 #line 4296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29341     {
29342             if (unlikely(Lex->sp_goto_statement(thd, &(yyvsp[0].ident_sys))))
29343               MYSQL_YYABORT;
29344           }
29345 #line 29346 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29346     break;
29347 
29348   case 423:
29349 #line 4303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29350     {
29351             DBUG_ASSERT(Lex->sphead);
29352             if (unlikely(!((yyval.assignment_lex)= new (thd->mem_root)
29353                            sp_assignment_lex(thd, thd->lex))))
29354               MYSQL_YYABORT;
29355           }
29356 #line 29357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29357     break;
29358 
29359   case 424:
29360 #line 4313 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29361     {
29362             DBUG_ASSERT(thd->free_list == NULL);
29363             Lex->sphead->reset_lex(thd, (yyvsp[0].assignment_lex));
29364             if (Lex->main_select_push(true))
29365               MYSQL_YYABORT;
29366           }
29367 #line 29368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29368     break;
29369 
29370   case 425:
29371 #line 4320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29372     {
29373             DBUG_ASSERT((yyvsp[-2].assignment_lex) == thd->lex);
29374             (yyval.assignment_lex)= (yyvsp[-2].assignment_lex);
29375             (yyval.assignment_lex)->sp_lex_in_use= true;
29376             (yyval.assignment_lex)->set_item_and_free_list((yyvsp[0].item), thd->free_list);
29377             thd->free_list= NULL;
29378             Lex->pop_select(); //min select
29379             if ((yyval.assignment_lex)->sphead->restore_lex(thd))
29380               MYSQL_YYABORT;
29381           }
29382 #line 29383 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29383     break;
29384 
29385   case 426:
29386 #line 4334 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29387     {
29388             Lex->sphead->reset_lex(thd, (yyvsp[0].assignment_lex));
29389             if (Lex->main_select_push(true))
29390               MYSQL_YYABORT;
29391             Lex->current_select->parsing_place= FOR_LOOP_BOUND;
29392           }
29393 #line 29394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29394     break;
29395 
29396   case 427:
29397 #line 4341 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29398     {
29399             DBUG_ASSERT((yyvsp[-2].assignment_lex) == thd->lex);
29400             (yyval.assignment_lex)= (yyvsp[-2].assignment_lex);
29401             (yyval.assignment_lex)->sp_lex_in_use= true;
29402             (yyval.assignment_lex)->set_item_and_free_list((yyvsp[0].item), NULL);
29403             Lex->pop_select(); //main select
29404             if (unlikely((yyval.assignment_lex)->sphead->restore_lex(thd)))
29405               MYSQL_YYABORT;
29406             Lex->current_select->parsing_place= NO_MATTER;
29407           }
29408 #line 29409 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29409     break;
29410 
29411   case 428:
29412 #line 4355 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29413     {
29414             if (unlikely(!((yyval.sp_assignment_lex_list)= new (thd->mem_root) List<sp_assignment_lex>)))
29415               MYSQL_YYABORT;
29416             (yyval.sp_assignment_lex_list)->push_back((yyvsp[0].assignment_lex), thd->mem_root);
29417           }
29418 #line 29419 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29419     break;
29420 
29421   case 429:
29422 #line 4361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29423     {
29424             (yyval.sp_assignment_lex_list)= (yyvsp[-2].sp_assignment_lex_list);
29425             (yyval.sp_assignment_lex_list)->push_back((yyvsp[0].assignment_lex), thd->mem_root);
29426           }
29427 #line 29428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29428     break;
29429 
29430   case 430:
29431 #line 4368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29432     { (yyval.sp_assignment_lex_list)= NULL; }
29433 #line 29434 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29434     break;
29435 
29436   case 431:
29437 #line 4369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29438     { (yyval.sp_assignment_lex_list)= (yyvsp[-1].sp_assignment_lex_list); }
29439 #line 29440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29440     break;
29441 
29442   case 432:
29443 #line 4374 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29444     {
29445             if (unlikely(Lex->sp_open_cursor(thd, &(yyvsp[-1].ident_sys), (yyvsp[0].sp_assignment_lex_list))))
29446               MYSQL_YYABORT;
29447           }
29448 #line 29449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29449     break;
29450 
29451   case 433:
29452 #line 4382 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29453     {
29454             if (unlikely(Lex->sp_add_cfetch(thd, &(yyvsp[-1].ident_sys))))
29455               MYSQL_YYABORT;
29456           }
29457 #line 29458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29458     break;
29459 
29460   case 434:
29461 #line 4387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29462     {
29463             if (unlikely(Lex->sp_add_cfetch(thd, &(yyvsp[-1].ident_sys))))
29464               MYSQL_YYABORT;
29465           }
29466 #line 29467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29467     break;
29468 
29469   case 435:
29470 #line 4392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29471     {
29472             if (unlikely(Lex->sp_add_cfetch(thd, &(yyvsp[-1].ident_sys))))
29473               MYSQL_YYABORT;
29474           }
29475 #line 29476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29476     break;
29477 
29478   case 436:
29479 #line 4399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29480     { }
29481 #line 29482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29482     break;
29483 
29484   case 437:
29485 #line 4401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29486     {
29487            if (unlikely(Lex->sp_add_agg_cfetch()))
29488              MYSQL_YYABORT;
29489          }
29490 #line 29491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29491     break;
29492 
29493   case 438:
29494 #line 4409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29495     {
29496             LEX *lex= Lex;
29497             sp_head *sp= lex->sphead;
29498             uint offset;
29499             sp_instr_cclose *i;
29500 
29501             if (unlikely(!lex->spcont->find_cursor(&(yyvsp[0].ident_sys), &offset, false)))
29502               my_yyabort_error((ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[0].ident_sys).str));
29503             i= new (thd->mem_root)
29504               sp_instr_cclose(sp->instructions(), lex->spcont,  offset);
29505             if (unlikely(i == NULL) ||
29506                 unlikely(sp->add_instr(i)))
29507               MYSQL_YYABORT;
29508           }
29509 #line 29510 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29510     break;
29511 
29512   case 439:
29513 #line 4427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29514     {
29515             LEX *lex= Lex;
29516             sp_head *sp= lex->sphead;
29517             sp_pcontext *spc= lex->spcont;
29518             sp_variable *spv= likely(spc != NULL)
29519               ? spc->find_variable(&(yyvsp[0].ident_sys), false)
29520               : NULL;
29521 
29522             if (unlikely(!spv))
29523               my_yyabort_error((ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].ident_sys).str));
29524 
29525             /* An SP local variable */
29526             sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
29527             i->add_to_varlist(spv);
29528           }
29529 #line 29530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29530     break;
29531 
29532   case 440:
29533 #line 4443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29534     {
29535             LEX *lex= Lex;
29536             sp_head *sp= lex->sphead;
29537             sp_pcontext *spc= lex->spcont;
29538             sp_variable *spv= likely(spc != NULL)
29539               ? spc->find_variable(&(yyvsp[0].ident_sys), false)
29540               : NULL;
29541 
29542             if (unlikely(!spv))
29543               my_yyabort_error((ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].ident_sys).str));
29544 
29545             /* An SP local variable */
29546             sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
29547             i->add_to_varlist(spv);
29548           }
29549 #line 29550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29550     break;
29551 
29552   case 441:
29553 #line 4461 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29554     {
29555             Lex->sphead->reset_lex(thd);
29556             if (Lex->main_select_push(true))
29557               MYSQL_YYABORT;
29558           }
29559 #line 29560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29560     break;
29561 
29562   case 442:
29563 #line 4467 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29564     {
29565             LEX *lex= Lex;
29566             sp_head *sp= lex->sphead;
29567             sp_pcontext *ctx= lex->spcont;
29568             uint ip= sp->instructions();
29569             sp_instr_jump_if_not *i= new (thd->mem_root)
29570               sp_instr_jump_if_not(ip, ctx, (yyvsp[-1].item), lex);
29571             if (unlikely(i == NULL) ||
29572                 unlikely(sp->push_backpatch(thd, i, ctx->push_label(thd, &empty_clex_str, 0))) ||
29573                 unlikely(sp->add_cont_backpatch(i)) ||
29574                 unlikely(sp->add_instr(i)))
29575               MYSQL_YYABORT;
29576             Lex->pop_select(); //main select
29577             if (unlikely(sp->restore_lex(thd)))
29578               MYSQL_YYABORT;
29579           }
29580 #line 29581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29581     break;
29582 
29583   case 443:
29584 #line 4484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29585     {
29586             sp_head *sp= Lex->sphead;
29587             sp_pcontext *ctx= Lex->spcont;
29588             uint ip= sp->instructions();
29589             sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(ip, ctx);
29590             if (unlikely(i == NULL) ||
29591                 unlikely(sp->add_instr(i)))
29592               MYSQL_YYABORT;
29593             sp->backpatch(ctx->pop_label());
29594             sp->push_backpatch(thd, i, ctx->push_label(thd, &empty_clex_str, 0));
29595           }
29596 #line 29597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29597     break;
29598 
29599   case 444:
29600 #line 4496 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29601     {
29602             LEX *lex= Lex;
29603 
29604             lex->sphead->backpatch(lex->spcont->pop_label());
29605           }
29606 #line 29607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29607     break;
29608 
29609   case 448:
29610 #line 4511 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29611     {
29612             if (unlikely(Lex->maybe_start_compound_statement(thd)))
29613               MYSQL_YYABORT;
29614 
29615             /**
29616               An example of the CASE statement in use is
29617             <pre>
29618             CREATE PROCEDURE proc_19194_simple(i int)
29619             BEGIN
29620               DECLARE str CHAR(10);
29621 
29622               CASE i
29623                 WHEN 1 THEN SET str="1";
29624                 WHEN 2 THEN SET str="2";
29625                 WHEN 3 THEN SET str="3";
29626                 ELSE SET str="unknown";
29627               END CASE;
29628 
29629               SELECT str;
29630             END
29631             </pre>
29632               The actions are used to generate the following code:
29633             <pre>
29634             SHOW PROCEDURE CODE proc_19194_simple;
29635             Pos     Instruction
29636             0       set str@1 NULL
29637             1       set_case_expr (12) 0 i@0
29638             2       jump_if_not 5(12) (case_expr@0 = 1)
29639             3       set str@1 _latin1'1'
29640             4       jump 12
29641             5       jump_if_not 8(12) (case_expr@0 = 2)
29642             6       set str@1 _latin1'2'
29643             7       jump 12
29644             8       jump_if_not 11(12) (case_expr@0 = 3)
29645             9       set str@1 _latin1'3'
29646             10      jump 12
29647             11      set str@1 _latin1'unknown'
29648             12      stmt 0 "SELECT str"
29649             </pre>
29650             */
29651 
29652             Lex->sphead->new_cont_backpatch(NULL);
29653 
29654             /*
29655               BACKPATCH: Creating target label for the jump to after END CASE
29656               (instruction 12 in the example)
29657             */
29658             Lex->spcont->push_label(thd, &empty_clex_str, Lex->sphead->instructions());
29659           }
29660 #line 29661 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29661     break;
29662 
29663   case 449:
29664 #line 4564 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29665     {
29666             /*
29667               BACKPATCH: Resolving forward jump from
29668               "case_stmt_action_then" to after END CASE
29669               (jump from instruction 4 to 12, 7 to 12 ... in the example)
29670             */
29671             Lex->sphead->backpatch(Lex->spcont->pop_label());
29672 
29673             if ((yyvsp[-3].num))
29674               Lex->spcont->pop_case_expr_id();
29675 
29676             Lex->sphead->do_cont_backpatch();
29677           }
29678 #line 29679 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29679     break;
29680 
29681   case 450:
29682 #line 4580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29683     {
29684             Lex->sphead->reset_lex(thd); /* For expr $2 */
29685             if (Lex->main_select_push(true))
29686               MYSQL_YYABORT;
29687           }
29688 #line 29689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29689     break;
29690 
29691   case 451:
29692 #line 4586 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29693     {
29694             if (unlikely(Lex->case_stmt_action_expr((yyvsp[0].item))))
29695               MYSQL_YYABORT;
29696 
29697             Lex->pop_select(); //main select
29698             if (Lex->sphead->restore_lex(thd))
29699               MYSQL_YYABORT;
29700           }
29701 #line 29702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29702     break;
29703 
29704   case 452:
29705 #line 4595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29706     { (yyval.num)= 1; }
29707 #line 29708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29708     break;
29709 
29710   case 453:
29711 #line 4597 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29712     { (yyval.num)= 0; }
29713 #line 29714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29714     break;
29715 
29716   case 458:
29717 #line 4612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29718     {
29719             Lex->sphead->reset_lex(thd); /* For expr $3 */
29720             if (Lex->main_select_push(true))
29721               MYSQL_YYABORT;
29722           }
29723 #line 29724 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29724     break;
29725 
29726   case 459:
29727 #line 4618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29728     {
29729             /* Simple case: <caseval> = <whenval> */
29730 
29731             LEX *lex= Lex;
29732             if (unlikely(lex->case_stmt_action_when((yyvsp[0].item), true)))
29733               MYSQL_YYABORT;
29734             Lex->pop_select(); //main select
29735             /* For expr $3 */
29736             if (unlikely(lex->sphead->restore_lex(thd)))
29737               MYSQL_YYABORT;
29738           }
29739 #line 29740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29740     break;
29741 
29742   case 460:
29743 #line 4631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29744     {
29745             if (unlikely(Lex->case_stmt_action_then()))
29746               MYSQL_YYABORT;
29747           }
29748 #line 29749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29749     break;
29750 
29751   case 461:
29752 #line 4639 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29753     {
29754             Lex->sphead->reset_lex(thd); /* For expr $3 */
29755             if (Lex->main_select_push(true))
29756               MYSQL_YYABORT;
29757           }
29758 #line 29759 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29759     break;
29760 
29761   case 462:
29762 #line 4645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29763     {
29764             LEX *lex= Lex;
29765             if (unlikely(lex->case_stmt_action_when((yyvsp[0].item), false)))
29766               MYSQL_YYABORT;
29767             Lex->pop_select(); //main select
29768             /* For expr $3 */
29769             if (unlikely(lex->sphead->restore_lex(thd)))
29770               MYSQL_YYABORT;
29771           }
29772 #line 29773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29773     break;
29774 
29775   case 463:
29776 #line 4656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29777     {
29778             if (unlikely(Lex->case_stmt_action_then()))
29779               MYSQL_YYABORT;
29780           }
29781 #line 29782 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29782     break;
29783 
29784   case 464:
29785 #line 4664 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29786     {
29787             LEX *lex= Lex;
29788             sp_head *sp= lex->sphead;
29789             uint ip= sp->instructions();
29790             sp_instr_error *i= new (thd->mem_root)
29791               sp_instr_error(ip, lex->spcont, ER_SP_CASE_NOT_FOUND);
29792             if (unlikely(i == NULL) ||
29793                 unlikely(sp->add_instr(i)))
29794               MYSQL_YYABORT;
29795           }
29796 #line 29797 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29797     break;
29798 
29799   case 466:
29800 #line 4678 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29801     { (yyval.lex_str)= (yyvsp[-1].ident_sys); }
29802 #line 29803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29803     break;
29804 
29805   case 467:
29806 #line 4682 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29807     { (yyval.lex_str)= null_clex_str; }
29808 #line 29809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29809     break;
29810 
29811   case 468:
29812 #line 4683 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29813     { (yyval.lex_str)= (yyvsp[0].ident_sys); }
29814 #line 29815 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29815     break;
29816 
29817   case 469:
29818 #line 4688 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29819     {
29820             if (unlikely(Lex->spcont->block_label_declare(&(yyvsp[0].lex_str))))
29821               MYSQL_YYABORT;
29822             (yyval.lex_str)= (yyvsp[0].lex_str);
29823           }
29824 #line 29825 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29825     break;
29826 
29827   case 470:
29828 #line 4698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29829     {
29830             Lex->sp_block_init(thd, &(yyvsp[-1].lex_str));
29831           }
29832 #line 29833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29833     break;
29834 
29835   case 471:
29836 #line 4705 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29837     {
29838             if (unlikely(Lex->sp_block_finalize(thd, (yyvsp[-3].spblock), &(yyvsp[0].lex_str))))
29839               MYSQL_YYABORT;
29840           }
29841 #line 29842 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29842     break;
29843 
29844   case 472:
29845 #line 4713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29846     {
29847             Lex->sp_block_init(thd);
29848           }
29849 #line 29850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29850     break;
29851 
29852   case 473:
29853 #line 4719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29854     {
29855             if (unlikely(Lex->sp_block_finalize(thd, (yyvsp[-2].spblock))))
29856               MYSQL_YYABORT;
29857           }
29858 #line 29859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29859     break;
29860 
29861   case 474:
29862 #line 4727 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29863     {
29864             if (unlikely(Lex->maybe_start_compound_statement(thd)))
29865               MYSQL_YYABORT;
29866             Lex->sp_block_init(thd);
29867           }
29868 #line 29869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29869     break;
29870 
29871   case 475:
29872 #line 4735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29873     {
29874             if (unlikely(Lex->sp_block_finalize(thd, (yyvsp[-2].spblock))))
29875               MYSQL_YYABORT;
29876           }
29877 #line 29878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29878     break;
29879 
29880   case 476:
29881 #line 4743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29882     { (yyval.num)= 1; }
29883 #line 29884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29884     break;
29885 
29886   case 477:
29887 #line 4744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29888     { (yyval.num)= -1; }
29889 #line 29890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29890     break;
29891 
29892   case 478:
29893 #line 4749 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29894     {
29895             if (Lex->main_select_push(true))
29896               MYSQL_YYABORT;
29897           }
29898 #line 29899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29899     break;
29900 
29901   case 479:
29902 #line 4754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29903     {
29904             Lex->pop_select(); //main select
29905             if (unlikely(Lex->sp_for_loop_declarations(thd, &(yyval.for_loop), &(yyvsp[-2].ident_sys), (yyvsp[0].for_loop_bounds))))
29906               MYSQL_YYABORT;
29907           }
29908 #line 29909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29909     break;
29910 
29911   case 480:
29912 #line 4764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29913     {
29914             (yyval.for_loop_bounds)= Lex_for_loop_bounds_intrange((yyvsp[-3].num), (yyvsp[-2].assignment_lex), (yyvsp[0].assignment_lex));
29915           }
29916 #line 29917 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29917     break;
29918 
29919   case 481:
29920 #line 4768 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29921     {
29922             (yyval.for_loop_bounds).m_direction= (yyvsp[-1].num);
29923             (yyval.for_loop_bounds).m_index= (yyvsp[0].assignment_lex);
29924             (yyval.for_loop_bounds).m_target_bound= NULL;
29925             (yyval.for_loop_bounds).m_implicit_cursor= false;
29926           }
29927 #line 29928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29928     break;
29929 
29930   case 482:
29931 #line 4775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29932     {
29933             if (unlikely(Lex->sp_for_loop_implicit_cursor_statement(thd, &(yyval.for_loop_bounds),
29934                                                                     (yyvsp[-1].sp_cursor_stmt))))
29935               MYSQL_YYABORT;
29936           }
29937 #line 29938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29938     break;
29939 
29940   case 483:
29941 #line 4784 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29942     {
29943             LEX *lex= Lex;
29944             uint ip= lex->sphead->instructions();
29945             sp_label *lab= lex->spcont->last_label();  /* Jumping back */
29946             sp_instr_jump *i= new (thd->mem_root)
29947               sp_instr_jump(ip, lex->spcont, lab->ip);
29948             if (unlikely(i == NULL) ||
29949                 unlikely(lex->sphead->add_instr(i)))
29950               MYSQL_YYABORT;
29951           }
29952 #line 29953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29953     break;
29954 
29955   case 484:
29956 #line 4798 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29957     {
29958             LEX *lex= Lex;
29959             if (unlikely(lex->sp_while_loop_expression(thd, (yyvsp[-1].item))))
29960               MYSQL_YYABORT;
29961             Lex->pop_select(); //main select
29962             if (lex->sphead->restore_lex(thd))
29963               MYSQL_YYABORT;
29964             if (lex->main_select_push(true))
29965                MYSQL_YYABORT;
29966           }
29967 #line 29968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29968     break;
29969 
29970   case 485:
29971 #line 4809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29972     {
29973             if (unlikely(Lex->sp_while_loop_finalize(thd)))
29974               MYSQL_YYABORT;
29975           }
29976 #line 29977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29977     break;
29978 
29979   case 486:
29980 #line 4817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29981     {
29982             Lex->sphead->reset_lex(thd);
29983             if (Lex->main_select_push(true))
29984               MYSQL_YYABORT;
29985           }
29986 #line 29987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
29987     break;
29988 
29989   case 487:
29990 #line 4823 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
29991     {
29992             LEX *lex= Lex;
29993             uint ip= lex->sphead->instructions();
29994             sp_label *lab= lex->spcont->last_label();  /* Jumping back */
29995             sp_instr_jump_if_not *i= new (thd->mem_root)
29996               sp_instr_jump_if_not(ip, lex->spcont, (yyvsp[-2].item), lab->ip, lex);
29997             if (unlikely(i == NULL) ||
29998                 unlikely(lex->sphead->add_instr(i)))
29999               MYSQL_YYABORT;
30000             Lex->pop_select(); //main select
30001             if (lex->sphead->restore_lex(thd))
30002               MYSQL_YYABORT;
30003             /* We can shortcut the cont_backpatch here */
30004             i->m_cont_dest= ip+1;
30005           }
30006 #line 30007 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30007     break;
30008 
30009   case 488:
30010 #line 4842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30011     {
30012             if (unlikely(Lex->sp_pop_loop_label(thd, &(yyvsp[0].lex_str))))
30013               MYSQL_YYABORT;
30014           }
30015 #line 30016 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30016     break;
30017 
30018   case 489:
30019 #line 4850 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30020     {
30021             if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-1].lex_str))))
30022               MYSQL_YYABORT;
30023           }
30024 #line 30025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30025     break;
30026 
30027   case 490:
30028 #line 4855 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30029     { }
30030 #line 30031 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30031     break;
30032 
30033   case 491:
30034 #line 4857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30035     {
30036             if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-1].lex_str))))
30037               MYSQL_YYABORT;
30038             Lex->sphead->reset_lex(thd);
30039             if (Lex->main_select_push(true))
30040               MYSQL_YYABORT;
30041           }
30042 #line 30043 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30043     break;
30044 
30045   case 492:
30046 #line 4865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30047     { }
30048 #line 30049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30049     break;
30050 
30051   case 493:
30052 #line 4867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30053     {
30054             // See "The FOR LOOP statement" comments in sql_lex.cc
30055             Lex->sp_block_init(thd); // The outer DECLARE..BEGIN..END block
30056           }
30057 #line 30058 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30058     break;
30059 
30060   case 494:
30061 #line 4872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30062     {
30063             if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-3].lex_str)))) // The inner WHILE block
30064               MYSQL_YYABORT;
30065             if (unlikely(Lex->sp_for_loop_condition_test(thd, (yyvsp[0].for_loop))))
30066               MYSQL_YYABORT;
30067           }
30068 #line 30069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30069     break;
30070 
30071   case 495:
30072 #line 4881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30073     {
30074             if (unlikely(Lex->sp_for_loop_finalize(thd, (yyvsp[-5].for_loop))))
30075               MYSQL_YYABORT;
30076           }
30077 #line 30078 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30078     break;
30079 
30080   case 496:
30081 #line 4886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30082     {
30083             if (unlikely(Lex->sp_for_loop_outer_block_finalize(thd, (yyvsp[-7].for_loop))))
30084               MYSQL_YYABORT;
30085           }
30086 #line 30087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30087     break;
30088 
30089   case 497:
30090 #line 4891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30091     {
30092             if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-1].lex_str))))
30093               MYSQL_YYABORT;
30094           }
30095 #line 30096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30096     break;
30097 
30098   case 498:
30099 #line 4896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30100     { }
30101 #line 30102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30102     break;
30103 
30104   case 499:
30105 #line 4901 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30106     {
30107             if (unlikely(Lex->sp_push_loop_empty_label(thd)))
30108               MYSQL_YYABORT;
30109           }
30110 #line 30111 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30111     break;
30112 
30113   case 500:
30114 #line 4906 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30115     {
30116             Lex->sp_pop_loop_empty_label(thd);
30117           }
30118 #line 30119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30119     break;
30120 
30121   case 501:
30122 #line 4910 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30123     {
30124             if (unlikely(Lex->sp_push_loop_empty_label(thd)))
30125               MYSQL_YYABORT;
30126             Lex->sphead->reset_lex(thd);
30127             if (Lex->main_select_push(true))
30128               MYSQL_YYABORT;
30129           }
30130 #line 30131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30131     break;
30132 
30133   case 502:
30134 #line 4918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30135     {
30136             Lex->sp_pop_loop_empty_label(thd);
30137           }
30138 #line 30139 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30139     break;
30140 
30141   case 503:
30142 #line 4922 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30143     {
30144             // See "The FOR LOOP statement" comments in sql_lex.cc
30145             if (unlikely(Lex->maybe_start_compound_statement(thd)))
30146               MYSQL_YYABORT;
30147             Lex->sp_block_init(thd); // The outer DECLARE..BEGIN..END block
30148           }
30149 #line 30150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30150     break;
30151 
30152   case 504:
30153 #line 4929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30154     {
30155             if (unlikely(Lex->sp_push_loop_empty_label(thd))) // The inner WHILE block
30156               MYSQL_YYABORT;
30157             if (unlikely(Lex->sp_for_loop_condition_test(thd, (yyvsp[0].for_loop))))
30158               MYSQL_YYABORT;
30159           }
30160 #line 30161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30161     break;
30162 
30163   case 505:
30164 #line 4938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30165     {
30166             if (unlikely(Lex->sp_for_loop_finalize(thd, (yyvsp[-5].for_loop))))
30167               MYSQL_YYABORT;
30168             Lex->sp_pop_loop_empty_label(thd); // The inner WHILE block
30169             if (unlikely(Lex->sp_for_loop_outer_block_finalize(thd, (yyvsp[-5].for_loop))))
30170               MYSQL_YYABORT;
30171           }
30172 #line 30173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30173     break;
30174 
30175   case 506:
30176 #line 4946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30177     {
30178             if (unlikely(Lex->sp_push_loop_empty_label(thd)))
30179               MYSQL_YYABORT;
30180           }
30181 #line 30182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30182     break;
30183 
30184   case 507:
30185 #line 4951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30186     {
30187             Lex->sp_pop_loop_empty_label(thd);
30188           }
30189 #line 30190 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30190     break;
30191 
30192   case 508:
30193 #line 4958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30194     { Lex->trg_chistics.action_time= TRG_ACTION_BEFORE; }
30195 #line 30196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30196     break;
30197 
30198   case 509:
30199 #line 4960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30200     { Lex->trg_chistics.action_time= TRG_ACTION_AFTER; }
30201 #line 30202 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30202     break;
30203 
30204   case 510:
30205 #line 4965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30206     { Lex->trg_chistics.event= TRG_EVENT_INSERT; }
30207 #line 30208 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30208     break;
30209 
30210   case 511:
30211 #line 4967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30212     { Lex->trg_chistics.event= TRG_EVENT_UPDATE; }
30213 #line 30214 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30214     break;
30215 
30216   case 512:
30217 #line 4969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30218     { Lex->trg_chistics.event= TRG_EVENT_DELETE; }
30219 #line 30220 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30220     break;
30221 
30222   case 516:
30223 #line 5003 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30224     {}
30225 #line 30226 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30226     break;
30227 
30228   case 517:
30229 #line 5005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30230     {
30231             LEX *lex= Lex;
30232             lex->alter_tablespace_info->logfile_group_name= (yyvsp[0].ident_sys).str;
30233           }
30234 #line 30235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30235     break;
30236 
30237   case 518:
30238 #line 5015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30239     {
30240             Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_ADD_FILE;
30241           }
30242 #line 30243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30243     break;
30244 
30245   case 519:
30246 #line 5021 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30247     {
30248             Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_DROP_FILE;
30249           }
30250 #line 30251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30251     break;
30252 
30253   case 524:
30254 #line 5044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30255     {}
30256 #line 30257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30257     break;
30258 
30259   case 571:
30260 #line 5138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30261     {
30262             LEX *lex= Lex;
30263             lex->alter_tablespace_info->data_file_name= (yyvsp[0].lex_str).str;
30264           }
30265 #line 30266 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30266     break;
30267 
30268   case 572:
30269 #line 5146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30270     {
30271             LEX *lex= Lex;
30272             lex->alter_tablespace_info->undo_file_name= (yyvsp[0].lex_str).str;
30273           }
30274 #line 30275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30275     break;
30276 
30277   case 573:
30278 #line 5154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30279     {
30280             LEX *lex= Lex;
30281             lex->alter_tablespace_info->redo_file_name= (yyvsp[0].lex_str).str;
30282           }
30283 #line 30284 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30284     break;
30285 
30286   case 574:
30287 #line 5162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30288     {
30289             LEX *lex= Lex;
30290             lex->alter_tablespace_info= (new (thd->mem_root)
30291                                          st_alter_tablespace());
30292             if (unlikely(lex->alter_tablespace_info == NULL))
30293               MYSQL_YYABORT;
30294             lex->alter_tablespace_info->tablespace_name= (yyvsp[0].ident_sys).str;
30295             lex->sql_command= SQLCOM_ALTER_TABLESPACE;
30296           }
30297 #line 30298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30298     break;
30299 
30300   case 575:
30301 #line 5175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30302     {
30303             LEX *lex= Lex;
30304             lex->alter_tablespace_info= (new (thd->mem_root)
30305                                          st_alter_tablespace());
30306             if (unlikely(lex->alter_tablespace_info == NULL))
30307               MYSQL_YYABORT;
30308             lex->alter_tablespace_info->logfile_group_name= (yyvsp[0].ident_sys).str;
30309             lex->sql_command= SQLCOM_ALTER_TABLESPACE;
30310           }
30311 #line 30312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30312     break;
30313 
30314   case 576:
30315 #line 5188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30316     {
30317             LEX *lex= Lex;
30318             lex->alter_tablespace_info->ts_access_mode= TS_READ_ONLY;
30319           }
30320 #line 30321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30321     break;
30322 
30323   case 577:
30324 #line 5193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30325     {
30326             LEX *lex= Lex;
30327             lex->alter_tablespace_info->ts_access_mode= TS_READ_WRITE;
30328           }
30329 #line 30330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30330     break;
30331 
30332   case 578:
30333 #line 5198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30334     {
30335             LEX *lex= Lex;
30336             lex->alter_tablespace_info->ts_access_mode= TS_NOT_ACCESSIBLE;
30337           }
30338 #line 30339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30339     break;
30340 
30341   case 579:
30342 #line 5206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30343     {
30344             LEX *lex= Lex;
30345             lex->alter_tablespace_info->initial_size= (yyvsp[0].ulonglong_number);
30346           }
30347 #line 30348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30348     break;
30349 
30350   case 580:
30351 #line 5214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30352     {
30353             LEX *lex= Lex;
30354             lex->alter_tablespace_info->autoextend_size= (yyvsp[0].ulonglong_number);
30355           }
30356 #line 30357 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30357     break;
30358 
30359   case 581:
30360 #line 5222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30361     {
30362             LEX *lex= Lex;
30363             lex->alter_tablespace_info->max_size= (yyvsp[0].ulonglong_number);
30364           }
30365 #line 30366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30366     break;
30367 
30368   case 582:
30369 #line 5230 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30370     {
30371             LEX *lex= Lex;
30372             lex->alter_tablespace_info->extent_size= (yyvsp[0].ulonglong_number);
30373           }
30374 #line 30375 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30375     break;
30376 
30377   case 583:
30378 #line 5238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30379     {
30380             LEX *lex= Lex;
30381             lex->alter_tablespace_info->undo_buffer_size= (yyvsp[0].ulonglong_number);
30382           }
30383 #line 30384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30384     break;
30385 
30386   case 584:
30387 #line 5246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30388     {
30389             LEX *lex= Lex;
30390             lex->alter_tablespace_info->redo_buffer_size= (yyvsp[0].ulonglong_number);
30391           }
30392 #line 30393 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30393     break;
30394 
30395   case 585:
30396 #line 5254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30397     {
30398             LEX *lex= Lex;
30399             if (unlikely(lex->alter_tablespace_info->nodegroup_id != UNDEF_NODEGROUP))
30400               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NODEGROUP"));
30401             lex->alter_tablespace_info->nodegroup_id= (yyvsp[0].ulong_num);
30402           }
30403 #line 30404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30404     break;
30405 
30406   case 586:
30407 #line 5264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30408     {
30409             LEX *lex= Lex;
30410             if (unlikely(lex->alter_tablespace_info->ts_comment != NULL))
30411               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"COMMENT"));
30412             lex->alter_tablespace_info->ts_comment= (yyvsp[0].lex_str).str;
30413           }
30414 #line 30415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30415     break;
30416 
30417   case 587:
30418 #line 5274 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30419     {
30420             LEX *lex= Lex;
30421             if (unlikely(lex->alter_tablespace_info->storage_engine != NULL))
30422               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE, MYF(0),
30423                                 "STORAGE ENGINE"));
30424             lex->alter_tablespace_info->storage_engine= (yyvsp[0].db_type);
30425           }
30426 #line 30427 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30427     break;
30428 
30429   case 590:
30430 #line 5290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30431     {
30432             LEX *lex= Lex;
30433             lex->alter_tablespace_info->wait_until_completed= TRUE;
30434           }
30435 #line 30436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30436     break;
30437 
30438   case 591:
30439 #line 5295 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30440     {
30441             LEX *lex= Lex;
30442             if (unlikely(!(lex->alter_tablespace_info->wait_until_completed)))
30443               my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NO_WAIT"));
30444             lex->alter_tablespace_info->wait_until_completed= FALSE;
30445           }
30446 #line 30447 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30447     break;
30448 
30449   case 592:
30450 #line 5304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30451     { (yyval.ulonglong_number)= (yyvsp[0].ulonglong_number);}
30452 #line 30453 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30453     break;
30454 
30455   case 593:
30456 #line 5306 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30457     {
30458             if ((yyvsp[0].ident_sys).to_size_number(&(yyval.ulonglong_number)))
30459               MYSQL_YYABORT;
30460           }
30461 #line 30462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30462     break;
30463 
30464   case 594:
30465 #line 5318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30466     { Lex->create_info.option_list= NULL; }
30467 #line 30468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30468     break;
30469 
30470   case 595:
30471 #line 5319 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30472     {}
30473 #line 30474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30474     break;
30475 
30476   case 596:
30477 #line 5320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30478     {}
30479 #line 30480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30480     break;
30481 
30482   case 597:
30483 #line 5322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30484     {
30485 
30486             Lex->create_info.add(DDL_options_st::OPT_LIKE);
30487             TABLE_LIST *src_table= Lex->first_select_lex()->
30488               add_table_to_list(thd, (yyvsp[0].table), NULL, 0, TL_READ, MDL_SHARED_READ);
30489             if (unlikely(! src_table))
30490               MYSQL_YYABORT;
30491             /* CREATE TABLE ... LIKE is not allowed for views. */
30492             src_table->required_type= TABLE_TYPE_NORMAL;
30493           }
30494 #line 30495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30495     break;
30496 
30497   case 598:
30498 #line 5335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30499     { (yyval.table)= (yyvsp[0].table); }
30500 #line 30501 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30501     break;
30502 
30503   case 599:
30504 #line 5336 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30505     { (yyval.table)= (yyvsp[-1].table); }
30506 #line 30507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30507     break;
30508 
30509   case 600:
30510 #line 5340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30511     {}
30512 #line 30513 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30513     break;
30514 
30515   case 601:
30516 #line 5343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30517     {
30518             if (Lex->check_cte_dependencies_and_resolve_references())
30519               MYSQL_YYABORT;
30520           }
30521 #line 30522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30522     break;
30523 
30524   case 602:
30525 #line 5351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30526     {
30527             if (Lex->parsed_insert_select((yyvsp[0].select_lex_unit)->first_select()))
30528               MYSQL_YYABORT;
30529           }
30530 #line 30531 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30531     break;
30532 
30533   case 603:
30534 #line 5356 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30535     {
30536             SELECT_LEX *first_select= (yyvsp[-1].select_lex_unit)->first_select();
30537             (yyvsp[-1].select_lex_unit)->set_with_clause((yyvsp[-2].with_clause));
30538             (yyvsp[-2].with_clause)->attach_to(first_select);
30539             if (Lex->parsed_insert_select(first_select))
30540               MYSQL_YYABORT;
30541           }
30542 #line 30543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30543     break;
30544 
30545   case 604:
30546 #line 5367 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30547     {
30548             /*
30549               Remove all tables used in PARTITION clause from the global table
30550               list. Partitioning with subqueries is not allowed anyway.
30551             */
30552             TABLE_LIST *last_non_sel_table= Lex->create_last_non_select_table;
30553             last_non_sel_table->next_global= 0;
30554             Lex->query_tables_last= &last_non_sel_table->next_global;
30555           }
30556 #line 30557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30557     break;
30558 
30559   case 605:
30560 #line 5403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30561     {}
30562 #line 30563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30563     break;
30564 
30565   case 607:
30566 #line 5409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30567     {
30568             LEX *lex= Lex;
30569             lex->part_info= new (thd->mem_root) partition_info();
30570             if (unlikely(!lex->part_info))
30571               MYSQL_YYABORT;
30572             if (lex->sql_command == SQLCOM_ALTER_TABLE)
30573             {
30574               lex->alter_info.partition_flags|= ALTER_PARTITION_INFO;
30575             }
30576           }
30577 #line 30578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30578     break;
30579 
30580   case 609:
30581 #line 5424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30582     {
30583 #ifdef WITH_PARTITION_STORAGE_ENGINE
30584             LEX_CSTRING partition_name={STRING_WITH_LEN("partition")};
30585             if (unlikely(!plugin_is_ready(&partition_name, MYSQL_STORAGE_ENGINE_PLUGIN)))
30586               my_yyabort_error((ER_OPTION_PREVENTS_STATEMENT, MYF(0),
30587                                 "--skip-partition"));
30588 #else
30589             my_yyabort_error((ER_FEATURE_DISABLED, MYF(0), "partitioning",
30590                               "--with-plugin-partition"));
30591 #endif
30592           }
30593 #line 30594 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30594     break;
30595 
30596   case 610:
30597 #line 5439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30598     {
30599             if (unlikely(!Lex->part_info))
30600             {
30601               thd->parse_error(ER_PARTITION_ENTRY_ERROR);
30602               MYSQL_YYABORT;
30603             }
30604             if (Lex->main_select_push())
30605               MYSQL_YYABORT;
30606             /*
30607               We enter here when opening the frm file to translate
30608               partition info string into part_info data structure.
30609             */
30610           }
30611 #line 30612 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30612     break;
30613 
30614   case 611:
30615 #line 5453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30616     {
30617             Lex->pop_select(); //main select
30618           }
30619 #line 30620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30620     break;
30621 
30622   case 612:
30623 #line 5460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30624     { Lex->safe_to_cache_query= 1; }
30625 #line 30626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30626     break;
30627 
30628   case 614:
30629 #line 5466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30630     {
30631             partition_info *part_info= Lex->part_info;
30632             part_info->list_of_part_fields= TRUE;
30633             part_info->column_list= FALSE;
30634             part_info->part_type= HASH_PARTITION;
30635           }
30636 #line 30637 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30637     break;
30638 
30639   case 615:
30640 #line 5473 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30641     { Lex->part_info->part_type= HASH_PARTITION; }
30642 #line 30643 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30643     break;
30644 
30645   case 616:
30646 #line 5474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30647     {}
30648 #line 30649 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30649     break;
30650 
30651   case 617:
30652 #line 5476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30653     { Lex->part_info->part_type= RANGE_PARTITION; }
30654 #line 30655 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30655     break;
30656 
30657   case 618:
30658 #line 5478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30659     { Lex->part_info->part_type= RANGE_PARTITION; }
30660 #line 30661 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30661     break;
30662 
30663   case 619:
30664 #line 5480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30665     {
30666 	    Select->parsing_place= IN_PART_FUNC;
30667           }
30668 #line 30669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30669     break;
30670 
30671   case 620:
30672 #line 5484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30673     {
30674 	    Lex->part_info->part_type= LIST_PARTITION;
30675 	    Select->parsing_place= NO_MATTER;
30676 	  }
30677 #line 30678 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30678     break;
30679 
30680   case 621:
30681 #line 5489 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30682     { Lex->part_info->part_type= LIST_PARTITION; }
30683 #line 30684 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30684     break;
30685 
30686   case 622:
30687 #line 5491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30688     {
30689              if (unlikely(Lex->part_info->vers_init_info(thd)))
30690                MYSQL_YYABORT;
30691           }
30692 #line 30693 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30693     break;
30694 
30695   case 624:
30696 #line 5499 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30697     {}
30698 #line 30699 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30699     break;
30700 
30701   case 625:
30702 #line 5501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30703     { Lex->part_info->linear_hash_ind= TRUE;}
30704 #line 30705 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30705     break;
30706 
30707   case 626:
30708 #line 5506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30709     { Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_NONE;}
30710 #line 30711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30711     break;
30712 
30713   case 627:
30714 #line 5508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30715     {
30716             switch ((yyvsp[0].ulong_num)) {
30717             case 1:
30718               Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_51;
30719               break;
30720             case 2:
30721               Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_55;
30722               break;
30723             default:
30724               thd->parse_error();
30725               MYSQL_YYABORT;
30726             }
30727           }
30728 #line 30729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30729     break;
30730 
30731   case 628:
30732 #line 5524 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30733     {}
30734 #line 30735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30735     break;
30736 
30737   case 629:
30738 #line 5525 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30739     {}
30740 #line 30741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30741     break;
30742 
30743   case 630:
30744 #line 5529 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30745     {}
30746 #line 30747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30747     break;
30748 
30749   case 631:
30750 #line 5530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30751     {}
30752 #line 30753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30753     break;
30754 
30755   case 632:
30756 #line 5535 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30757     {
30758             partition_info *part_info= Lex->part_info;
30759             part_info->num_columns++;
30760             if (unlikely(part_info->part_field_list.push_back((yyvsp[0].ident_sys).str,
30761                          thd->mem_root)))
30762               MYSQL_YYABORT;
30763             if (unlikely(part_info->num_columns > MAX_REF_PARTS))
30764               my_yyabort_error((ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
30765                                 "list of partition fields"));
30766           }
30767 #line 30768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30768     break;
30769 
30770   case 633:
30771 #line 5549 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30772     {
30773             partition_info *part_info= Lex->part_info;
30774             part_info->column_list= TRUE;
30775             part_info->list_of_part_fields= TRUE;
30776           }
30777 #line 30778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30778     break;
30779 
30780   case 634:
30781 #line 5559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30782     {
30783             partition_info *part_info= Lex->part_info;
30784             if (unlikely(part_info->set_part_expr(thd, (yyvsp[-1].item), FALSE)))
30785               MYSQL_YYABORT;
30786             part_info->num_columns= 1;
30787             part_info->column_list= FALSE;
30788           }
30789 #line 30790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30790     break;
30791 
30792   case 635:
30793 #line 5570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30794     {
30795             if (unlikely(Lex->part_info->set_part_expr(thd, (yyvsp[-1].item), TRUE)))
30796               MYSQL_YYABORT;
30797           }
30798 #line 30799 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30799     break;
30800 
30801   case 636:
30802 #line 5578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30803     {}
30804 #line 30805 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30805     break;
30806 
30807   case 637:
30808 #line 5580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30809     {
30810             uint num_parts= (yyvsp[0].ulong_num);
30811             partition_info *part_info= Lex->part_info;
30812             if (unlikely(num_parts == 0))
30813               my_yyabort_error((ER_NO_PARTS_ERROR, MYF(0), "partitions"));
30814 
30815             part_info->num_parts= num_parts;
30816             part_info->use_default_num_partitions= FALSE;
30817           }
30818 #line 30819 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30819     break;
30820 
30821   case 638:
30822 #line 5592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30823     {}
30824 #line 30825 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30825     break;
30826 
30827   case 639:
30828 #line 5594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30829     { Lex->part_info->subpart_type= HASH_PARTITION; }
30830 #line 30831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30831     break;
30832 
30833   case 640:
30834 #line 5595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30835     {}
30836 #line 30837 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30837     break;
30838 
30839   case 641:
30840 #line 5598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30841     {
30842             partition_info *part_info= Lex->part_info;
30843             part_info->subpart_type= HASH_PARTITION;
30844             part_info->list_of_subpart_fields= TRUE;
30845           }
30846 #line 30847 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30847     break;
30848 
30849   case 642:
30850 #line 5603 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30851     {}
30852 #line 30853 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30853     break;
30854 
30855   case 643:
30856 #line 5607 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30857     {}
30858 #line 30859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30859     break;
30860 
30861   case 644:
30862 #line 5608 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30863     {}
30864 #line 30865 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30865     break;
30866 
30867   case 645:
30868 #line 5613 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30869     {
30870             partition_info *part_info= Lex->part_info;
30871             if (unlikely(part_info->subpart_field_list.push_back((yyvsp[0].ident_sys).str,
30872                          thd->mem_root)))
30873               MYSQL_YYABORT;
30874 
30875             if (unlikely(part_info->subpart_field_list.elements > MAX_REF_PARTS))
30876               my_yyabort_error((ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
30877                                 "list of subpartition fields"));
30878           }
30879 #line 30880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30880     break;
30881 
30882   case 646:
30883 #line 5627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30884     {
30885             if (unlikely(!Lex->safe_to_cache_query))
30886             {
30887               thd->parse_error(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR);
30888               MYSQL_YYABORT;
30889             }
30890             (yyval.item)=(yyvsp[0].item);
30891           }
30892 #line 30893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30893     break;
30894 
30895   case 647:
30896 #line 5638 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30897     {}
30898 #line 30899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30899     break;
30900 
30901   case 648:
30902 #line 5640 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30903     {
30904             uint num_parts= (yyvsp[0].ulong_num);
30905             LEX *lex= Lex;
30906             if (unlikely(num_parts == 0))
30907               my_yyabort_error((ER_NO_PARTS_ERROR, MYF(0), "subpartitions"));
30908             lex->part_info->num_subparts= num_parts;
30909             lex->part_info->use_default_num_subpartitions= FALSE;
30910           }
30911 #line 30912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30912     break;
30913 
30914   case 649:
30915 #line 5652 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30916     {
30917             partition_info *part_info= Lex->part_info;
30918             if (unlikely(part_info->part_type == RANGE_PARTITION))
30919               my_yyabort_error((ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
30920                                 "RANGE"));
30921             if (unlikely(part_info->part_type == LIST_PARTITION))
30922               my_yyabort_error((ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
30923                                 "LIST"));
30924           }
30925 #line 30926 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30926     break;
30927 
30928   case 650:
30929 #line 5662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30930     {
30931             partition_info *part_info= Lex->part_info;
30932             uint count_curr_parts= part_info->partitions.elements;
30933             if (part_info->num_parts != 0)
30934             {
30935               if (unlikely(part_info->num_parts !=
30936                            count_curr_parts))
30937               {
30938                 thd->parse_error(ER_PARTITION_WRONG_NO_PART_ERROR);
30939                 MYSQL_YYABORT;
30940               }
30941             }
30942             else if (count_curr_parts > 0)
30943             {
30944               part_info->num_parts= count_curr_parts;
30945             }
30946             part_info->count_curr_subparts= 0;
30947           }
30948 #line 30949 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30949     break;
30950 
30951   case 651:
30952 #line 5683 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30953     {}
30954 #line 30955 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30955     break;
30956 
30957   case 652:
30958 #line 5684 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30959     {}
30960 #line 30961 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30961     break;
30962 
30963   case 653:
30964 #line 5689 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30965     {
30966             partition_info *part_info= Lex->part_info;
30967             partition_element *p_elem= new (thd->mem_root) partition_element();
30968 
30969             if (unlikely(!p_elem) ||
30970                 unlikely(part_info->partitions.push_back(p_elem, thd->mem_root)))
30971               MYSQL_YYABORT;
30972 
30973             p_elem->part_state= PART_NORMAL;
30974             p_elem->id= part_info->partitions.elements - 1;
30975             part_info->curr_part_elem= p_elem;
30976             part_info->current_partition= p_elem;
30977             part_info->use_default_partitions= FALSE;
30978             part_info->use_default_num_partitions= FALSE;
30979           }
30980 #line 30981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30981     break;
30982 
30983   case 654:
30984 #line 5708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30985     {}
30986 #line 30987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30987     break;
30988 
30989   case 655:
30990 #line 5713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
30991     {
30992             partition_info *part_info= Lex->part_info;
30993             partition_element *p_elem= part_info->curr_part_elem;
30994             if (unlikely(check_ident_length(&(yyvsp[0].ident_sys))))
30995               MYSQL_YYABORT;
30996             p_elem->partition_name= (yyvsp[0].ident_sys).str;
30997           }
30998 #line 30999 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
30999     break;
31000 
31001   case 656:
31002 #line 5724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31003     {
31004             LEX *lex= Lex;
31005             partition_info *part_info= lex->part_info;
31006             if (! lex->is_partition_management())
31007             {
31008               if (unlikely(part_info->error_if_requires_values()))
31009                 MYSQL_YYABORT;
31010               if (unlikely(part_info->part_type == VERSIONING_PARTITION))
31011                 my_yyabort_error((ER_VERS_WRONG_PARTS, MYF(0),
31012                                   lex->create_last_non_select_table->
31013                                   table_name.str));
31014             }
31015             else
31016               part_info->part_type= HASH_PARTITION;
31017           }
31018 #line 31019 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31019     break;
31020 
31021   case 657:
31022 #line 5740 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31023     {
31024             LEX *lex= Lex;
31025             partition_info *part_info= lex->part_info;
31026             if (! lex->is_partition_management())
31027             {
31028               if (unlikely(part_info->part_type != RANGE_PARTITION))
31029                 my_yyabort_error((ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
31030                                   "RANGE", "LESS THAN"));
31031             }
31032             else
31033               part_info->part_type= RANGE_PARTITION;
31034           }
31035 #line 31036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31036     break;
31037 
31038   case 658:
31039 #line 5752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31040     {}
31041 #line 31042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31042     break;
31043 
31044   case 659:
31045 #line 5754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31046     {
31047             LEX *lex= Lex;
31048             partition_info *part_info= lex->part_info;
31049             if (! lex->is_partition_management())
31050             {
31051               if (unlikely(part_info->part_type != LIST_PARTITION))
31052                 my_yyabort_error((ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
31053                                   "LIST", "IN"));
31054             }
31055             else
31056               part_info->part_type= LIST_PARTITION;
31057           }
31058 #line 31059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31059     break;
31060 
31061   case 660:
31062 #line 5766 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31063     {}
31064 #line 31065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31065     break;
31066 
31067   case 661:
31068 #line 5768 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31069     {
31070             if (Lex->part_values_current(thd))
31071               MYSQL_YYABORT;
31072           }
31073 #line 31074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31074     break;
31075 
31076   case 662:
31077 #line 5773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31078     {
31079             if (Lex->part_values_history(thd))
31080               MYSQL_YYABORT;
31081           }
31082 #line 31083 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31083     break;
31084 
31085   case 663:
31086 #line 5778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31087     {
31088             LEX *lex= Lex;
31089             partition_info *part_info= lex->part_info;
31090             if (! lex->is_partition_management())
31091             {
31092               if (unlikely(part_info->part_type != LIST_PARTITION))
31093                 my_yyabort_error((ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
31094                                   "LIST", "DEFAULT"));
31095             }
31096             else
31097               part_info->part_type= LIST_PARTITION;
31098             if (unlikely(part_info->init_column_part(thd)))
31099               MYSQL_YYABORT;
31100             if (unlikely(part_info->add_max_value(thd)))
31101               MYSQL_YYABORT;
31102          }
31103 #line 31104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31104     break;
31105 
31106   case 664:
31107 #line 5798 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31108     {
31109             partition_info *part_info= Lex->part_info;
31110 
31111             if (unlikely(part_info->num_columns &&
31112                          part_info->num_columns != 1U))
31113             {
31114               part_info->print_debug("Kilroy II", NULL);
31115               thd->parse_error(ER_PARTITION_COLUMN_LIST_ERROR);
31116               MYSQL_YYABORT;
31117             }
31118             else
31119               part_info->num_columns= 1U;
31120             if (unlikely(part_info->init_column_part(thd)))
31121               MYSQL_YYABORT;
31122             if (unlikely(part_info->add_max_value(thd)))
31123               MYSQL_YYABORT;
31124           }
31125 #line 31126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31126     break;
31127 
31128   case 665:
31129 #line 5815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31130     {}
31131 #line 31132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31132     break;
31133 
31134   case 666:
31135 #line 5820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31136     {
31137             LEX *lex= Lex;
31138             partition_info *part_info= lex->part_info;
31139             part_info->print_debug("part_values_in: part_value_item", NULL);
31140 
31141             if (part_info->num_columns != 1U)
31142             {
31143               if (unlikely(!lex->is_partition_management() ||
31144                            part_info->num_columns == 0 ||
31145                            part_info->num_columns > MAX_REF_PARTS))
31146               {
31147                 part_info->print_debug("Kilroy III", NULL);
31148                 thd->parse_error(ER_PARTITION_COLUMN_LIST_ERROR);
31149                 MYSQL_YYABORT;
31150               }
31151               /*
31152                 Reorganize the current large array into a list of small
31153                 arrays with one entry in each array. This can happen
31154                 in the first partition of an ALTER TABLE statement where
31155                 we ADD or REORGANIZE partitions. Also can only happen
31156                 for LIST partitions.
31157               */
31158               if (unlikely(part_info->reorganize_into_single_field_col_val(thd)))
31159                 MYSQL_YYABORT;
31160             }
31161           }
31162 #line 31163 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31163     break;
31164 
31165   case 667:
31166 #line 5847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31167     {
31168             partition_info *part_info= Lex->part_info;
31169             if (unlikely(part_info->num_columns < 2U))
31170             {
31171               thd->parse_error(ER_ROW_SINGLE_PARTITION_FIELD_ERROR);
31172               MYSQL_YYABORT;
31173             }
31174           }
31175 #line 31176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31176     break;
31177 
31178   case 668:
31179 #line 5858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31180     {}
31181 #line 31182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31182     break;
31183 
31184   case 669:
31185 #line 5859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31186     {}
31187 #line 31188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31188     break;
31189 
31190   case 670:
31191 #line 5864 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31192     {
31193             partition_info *part_info= Lex->part_info;
31194             part_info->print_debug("( part_value_item", NULL);
31195             /* Initialisation code needed for each list of value expressions */
31196             if (unlikely(!(part_info->part_type == LIST_PARTITION &&
31197                            part_info->num_columns == 1U) &&
31198                            part_info->init_column_part(thd)))
31199               MYSQL_YYABORT;
31200           }
31201 #line 31202 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31202     break;
31203 
31204   case 671:
31205 #line 5873 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31206     {}
31207 #line 31208 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31208     break;
31209 
31210   case 672:
31211 #line 5875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31212     {
31213             partition_info *part_info= Lex->part_info;
31214             part_info->print_debug(") part_value_item", NULL);
31215             if (part_info->num_columns == 0)
31216               part_info->num_columns= part_info->curr_list_object;
31217             if (unlikely(part_info->num_columns != part_info->curr_list_object))
31218             {
31219               /*
31220                 All value items lists must be of equal length, in some cases
31221                 which is covered by the above if-statement we don't know yet
31222                 how many columns is in the partition so the assignment above
31223                 ensures that we only report errors when we know we have an
31224                 error.
31225               */
31226               part_info->print_debug("Kilroy I", NULL);
31227               thd->parse_error(ER_PARTITION_COLUMN_LIST_ERROR);
31228               MYSQL_YYABORT;
31229             }
31230             part_info->curr_list_object= 0;
31231           }
31232 #line 31233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31233     break;
31234 
31235   case 673:
31236 #line 5898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31237     {}
31238 #line 31239 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31239     break;
31240 
31241   case 674:
31242 #line 5899 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31243     {}
31244 #line 31245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31245     break;
31246 
31247   case 675:
31248 #line 5904 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31249     {
31250             partition_info *part_info= Lex->part_info;
31251             if (unlikely(part_info->part_type == LIST_PARTITION))
31252             {
31253               thd->parse_error(ER_MAXVALUE_IN_VALUES_IN);
31254               MYSQL_YYABORT;
31255             }
31256             if (unlikely(part_info->add_max_value(thd)))
31257               MYSQL_YYABORT;
31258           }
31259 #line 31260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31260     break;
31261 
31262   case 676:
31263 #line 5915 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31264     {
31265             LEX *lex= Lex;
31266             partition_info *part_info= lex->part_info;
31267             Item *part_expr= (yyvsp[0].item);
31268 
31269             if (unlikely(!lex->safe_to_cache_query))
31270             {
31271               thd->parse_error(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR);
31272               MYSQL_YYABORT;
31273             }
31274             if (unlikely(part_info->add_column_list_value(thd, part_expr)))
31275               MYSQL_YYABORT;
31276           }
31277 #line 31278 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31278     break;
31279 
31280   case 677:
31281 #line 5933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31282     {
31283             partition_info *part_info= Lex->part_info;
31284             if (unlikely(part_info->num_subparts != 0 &&
31285                          !part_info->use_default_subpartitions))
31286             {
31287               /*
31288                 We come here when we have defined subpartitions on the first
31289                 partition but not on all the subsequent partitions.
31290               */
31291               thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
31292               MYSQL_YYABORT;
31293             }
31294           }
31295 #line 31296 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31296     break;
31297 
31298   case 678:
31299 #line 5947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31300     {
31301             partition_info *part_info= Lex->part_info;
31302             if (part_info->num_subparts != 0)
31303             {
31304               if (unlikely(part_info->num_subparts !=
31305                            part_info->count_curr_subparts))
31306               {
31307                 thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
31308                 MYSQL_YYABORT;
31309               }
31310             }
31311             else if (part_info->count_curr_subparts > 0)
31312             {
31313               if (unlikely(part_info->partitions.elements > 1))
31314               {
31315                 thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
31316                 MYSQL_YYABORT;
31317               }
31318               part_info->num_subparts= part_info->count_curr_subparts;
31319             }
31320             part_info->count_curr_subparts= 0;
31321           }
31322 #line 31323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31323     break;
31324 
31325   case 679:
31326 #line 5972 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31327     {}
31328 #line 31329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31329     break;
31330 
31331   case 680:
31332 #line 5973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31333     {}
31334 #line 31335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31335     break;
31336 
31337   case 681:
31338 #line 5978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31339     {
31340             partition_info *part_info= Lex->part_info;
31341             partition_element *curr_part= part_info->current_partition;
31342             partition_element *sub_p_elem= new (thd->mem_root)
31343                                            partition_element(curr_part);
31344             if (unlikely(part_info->use_default_subpartitions &&
31345                          part_info->partitions.elements >= 2))
31346             {
31347               /*
31348                 create table t1 (a int)
31349                 partition by list (a) subpartition by hash (a)
31350                 (partition p0 values in (1),
31351                  partition p1 values in (2) subpartition sp11);
31352                 causes use to arrive since we are on the second
31353                 partition, but still use_default_subpartitions
31354                 is set. When we come here we're processing at least
31355                 the second partition (the current partition processed
31356                 have already been put into the partitions list.
31357               */
31358               thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
31359               MYSQL_YYABORT;
31360             }
31361             if (unlikely(!sub_p_elem) ||
31362                 unlikely(curr_part->subpartitions.push_back(sub_p_elem, thd->mem_root)))
31363               MYSQL_YYABORT;
31364 
31365             sub_p_elem->id= curr_part->subpartitions.elements - 1;
31366             part_info->curr_part_elem= sub_p_elem;
31367             part_info->use_default_subpartitions= FALSE;
31368             part_info->use_default_num_subpartitions= FALSE;
31369             part_info->count_curr_subparts++;
31370           }
31371 #line 31372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31372     break;
31373 
31374   case 682:
31375 #line 6010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31376     {}
31377 #line 31378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31378     break;
31379 
31380   case 683:
31381 #line 6015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31382     {
31383             if (unlikely(check_ident_length(&(yyvsp[0].lex_str))))
31384               MYSQL_YYABORT;
31385             Lex->part_info->curr_part_elem->partition_name= (yyvsp[0].lex_str).str;
31386           }
31387 #line 31388 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31388     break;
31389 
31390   case 684:
31391 #line 6023 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31392     {}
31393 #line 31394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31394     break;
31395 
31396   case 685:
31397 #line 6024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31398     {}
31399 #line 31400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31400     break;
31401 
31402   case 686:
31403 #line 6028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31404     {}
31405 #line 31406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31406     break;
31407 
31408   case 687:
31409 #line 6029 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31410     {}
31411 #line 31412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31412     break;
31413 
31414   case 688:
31415 #line 6034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31416     { Lex->part_info->curr_part_elem->tablespace_name= (yyvsp[0].lex_str).str; }
31417 #line 31418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31418     break;
31419 
31420   case 689:
31421 #line 6036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31422     {
31423             partition_info *part_info= Lex->part_info;
31424             part_info->curr_part_elem->engine_type= (yyvsp[0].db_type);
31425             part_info->default_engine_type= (yyvsp[0].db_type);
31426           }
31427 #line 31428 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31428     break;
31429 
31430   case 690:
31431 #line 6042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31432     {
31433             LEX *lex= Lex;
31434             lex->part_info->curr_part_elem->connect_string.str= (yyvsp[0].lex_str).str;
31435             lex->part_info->curr_part_elem->connect_string.length= (yyvsp[0].lex_str).length;
31436           }
31437 #line 31438 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31438     break;
31439 
31440   case 691:
31441 #line 6048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31442     { Lex->part_info->curr_part_elem->nodegroup_id= (uint16) (yyvsp[0].ulong_num); }
31443 #line 31444 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31444     break;
31445 
31446   case 692:
31447 #line 6050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31448     { Lex->part_info->curr_part_elem->part_max_rows= (ha_rows) (yyvsp[0].ulonglong_number); }
31449 #line 31450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31450     break;
31451 
31452   case 693:
31453 #line 6052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31454     { Lex->part_info->curr_part_elem->part_min_rows= (ha_rows) (yyvsp[0].ulonglong_number); }
31455 #line 31456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31456     break;
31457 
31458   case 694:
31459 #line 6054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31460     { Lex->part_info->curr_part_elem->data_file_name= (yyvsp[0].lex_str).str; }
31461 #line 31462 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31462     break;
31463 
31464   case 695:
31465 #line 6056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31466     { Lex->part_info->curr_part_elem->index_file_name= (yyvsp[0].lex_str).str; }
31467 #line 31468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31468     break;
31469 
31470   case 696:
31471 #line 6058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31472     { Lex->part_info->curr_part_elem->part_comment= (yyvsp[0].lex_str).str; }
31473 #line 31474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31474     break;
31475 
31476   case 697:
31477 #line 6062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31478     {}
31479 #line 31480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31480     break;
31481 
31482   case 698:
31483 #line 6064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31484     {
31485            partition_info *part_info= Lex->part_info;
31486            if (unlikely(part_info->vers_set_interval(thd, (yyvsp[-2].item), (yyvsp[-1].interval), (yyvsp[0].ulong_num))))
31487              MYSQL_YYABORT;
31488          }
31489 #line 31490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31490     break;
31491 
31492   case 699:
31493 #line 6070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31494     {
31495          partition_info *part_info= Lex->part_info;
31496          if (unlikely(part_info->vers_set_limit((yyvsp[0].ulonglong_number))))
31497          {
31498            my_error(ER_PART_WRONG_VALUE, MYF(0),
31499                     Lex->create_last_non_select_table->table_name.str,
31500                     "LIMIT");
31501            MYSQL_YYABORT;
31502          }
31503        }
31504 #line 31505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31505     break;
31506 
31507   case 700:
31508 #line 6085 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31509     {
31510            (yyval.ulong_num)= thd->query_start();
31511          }
31512 #line 31513 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31513     break;
31514 
31515   case 701:
31516 #line 6089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31517     {
31518            /* only allowed from mysql_unpack_partition() */
31519            if (unlikely(!Lex->part_info->table))
31520            {
31521              thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[-1].kwd).pos());
31522              MYSQL_YYABORT;
31523            }
31524            (yyval.ulong_num)= (ulong)(yyvsp[0].ulong_num);
31525          }
31526 #line 31527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31527     break;
31528 
31529   case 702:
31530 #line 6105 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31531     {}
31532 #line 31533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31533     break;
31534 
31535   case 703:
31536 #line 6106 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31537     {}
31538 #line 31539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31539     break;
31540 
31541   case 704:
31542 #line 6110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31543     {}
31544 #line 31545 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31545     break;
31546 
31547   case 705:
31548 #line 6111 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31549     {}
31550 #line 31551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31551     break;
31552 
31553   case 706:
31554 #line 6115 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31555     {}
31556 #line 31557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31557     break;
31558 
31559   case 707:
31560 #line 6116 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31561     {}
31562 #line 31563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31563     break;
31564 
31565   case 708:
31566 #line 6120 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31567     {}
31568 #line 31569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31569     break;
31570 
31571   case 709:
31572 #line 6121 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31573     {}
31574 #line 31575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31575     break;
31576 
31577   case 710:
31578 #line 6126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31579     {
31580             Lex->check_exists= FALSE;
31581           }
31582 #line 31583 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31583     break;
31584 
31585   case 711:
31586 #line 6130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31587     {
31588             Lex->check_exists= TRUE;
31589           }
31590 #line 31591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31591     break;
31592 
31593   case 712:
31594 #line 6137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31595     {
31596             (yyval.object_ddl_options).init();
31597           }
31598 #line 31599 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31599     break;
31600 
31601   case 713:
31602 #line 6141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31603     {
31604             (yyval.object_ddl_options).set(DDL_options_st::OPT_IF_NOT_EXISTS);
31605           }
31606 #line 31607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31607     break;
31608 
31609   case 714:
31610 #line 6148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31611     {
31612             (yyval.object_ddl_options).init();
31613           }
31614 #line 31615 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31615     break;
31616 
31617   case 715:
31618 #line 6152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31619     {
31620             (yyval.object_ddl_options).set(DDL_options_st::OPT_OR_REPLACE);
31621           }
31622 #line 31623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31623     break;
31624 
31625   case 723:
31626 #line 6175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31627     {
31628             LEX *lex= Lex;
31629             if (!lex->m_sql_cmd)
31630             {
31631               DBUG_ASSERT(lex->sql_command == SQLCOM_ALTER_TABLE);
31632               if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table()))
31633                 MYSQL_YYABORT;
31634             }
31635             Storage_engine_name *opt=
31636               lex->m_sql_cmd->option_storage_engine_name();
31637             DBUG_ASSERT(opt); // Expect a proper Sql_cmd
31638             *opt= Storage_engine_name((yyvsp[0].lex_str));
31639             lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
31640           }
31641 #line 31642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31642     break;
31643 
31644   case 724:
31645 #line 6190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31646     {
31647             Lex->create_info.max_rows= (yyvsp[0].ulonglong_number);
31648             Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS;
31649           }
31650 #line 31651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31651     break;
31652 
31653   case 725:
31654 #line 6195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31655     {
31656             Lex->create_info.min_rows= (yyvsp[0].ulonglong_number);
31657             Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS;
31658           }
31659 #line 31660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31660     break;
31661 
31662   case 726:
31663 #line 6200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31664     {
31665             Lex->create_info.avg_row_length=(yyvsp[0].ulong_num);
31666             Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH;
31667           }
31668 #line 31669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31669     break;
31670 
31671   case 727:
31672 #line 6205 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31673     {
31674             Lex->create_info.password=(yyvsp[0].lex_str).str;
31675             Lex->create_info.used_fields|= HA_CREATE_USED_PASSWORD;
31676           }
31677 #line 31678 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31678     break;
31679 
31680   case 728:
31681 #line 6210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31682     {
31683             Lex->create_info.comment=(yyvsp[0].lex_str);
31684             Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
31685           }
31686 #line 31687 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31687     break;
31688 
31689   case 729:
31690 #line 6215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31691     {
31692             Lex->create_info.auto_increment_value=(yyvsp[0].ulonglong_number);
31693             Lex->create_info.used_fields|= HA_CREATE_USED_AUTO;
31694           }
31695 #line 31696 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31696     break;
31697 
31698   case 730:
31699 #line 6220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31700     {
31701             switch((yyvsp[0].ulong_num)) {
31702             case 0:
31703                 Lex->create_info.table_options|= HA_OPTION_NO_PACK_KEYS;
31704                 break;
31705             case 1:
31706                 Lex->create_info.table_options|= HA_OPTION_PACK_KEYS;
31707                 break;
31708             default:
31709                 thd->parse_error();
31710                 MYSQL_YYABORT;
31711             }
31712             Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
31713           }
31714 #line 31715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31715     break;
31716 
31717   case 731:
31718 #line 6235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31719     {
31720             Lex->create_info.table_options&=
31721               ~(HA_OPTION_PACK_KEYS | HA_OPTION_NO_PACK_KEYS);
31722             Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
31723           }
31724 #line 31725 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31725     break;
31726 
31727   case 732:
31728 #line 6241 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31729     {
31730             switch((yyvsp[0].ulong_num)) {
31731             case 0:
31732                 Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_OFF;
31733                 break;
31734             case 1:
31735                 Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_ON;
31736                 break;
31737             default:
31738                 thd->parse_error();
31739                 MYSQL_YYABORT;
31740             }
31741             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
31742           }
31743 #line 31744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31744     break;
31745 
31746   case 733:
31747 #line 6256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31748     {
31749             Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_DEFAULT;
31750             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
31751           }
31752 #line 31753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31753     break;
31754 
31755   case 734:
31756 #line 6261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31757     {
31758             switch((yyvsp[0].ulong_num)) {
31759             case 0:
31760                 Lex->create_info.table_options|= HA_OPTION_NO_STATS_PERSISTENT;
31761                 break;
31762             case 1:
31763                 Lex->create_info.table_options|= HA_OPTION_STATS_PERSISTENT;
31764                 break;
31765             default:
31766                 thd->parse_error();
31767                 MYSQL_YYABORT;
31768             }
31769             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
31770           }
31771 #line 31772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31772     break;
31773 
31774   case 735:
31775 #line 6276 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31776     {
31777             Lex->create_info.table_options&=
31778               ~(HA_OPTION_STATS_PERSISTENT | HA_OPTION_NO_STATS_PERSISTENT);
31779             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
31780           }
31781 #line 31782 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31782     break;
31783 
31784   case 736:
31785 #line 6282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31786     {
31787             /* From user point of view STATS_SAMPLE_PAGES can be specified as
31788             STATS_SAMPLE_PAGES=N (where 0<N<=65535, it does not make sense to
31789             scan 0 pages) or STATS_SAMPLE_PAGES=default. Internally we record
31790             =default as 0. See create_frm() in sql/table.cc, we use only two
31791             bytes for stats_sample_pages and this is why we do not allow
31792             larger values. 65535 pages, 16kb each means to sample 1GB, which
31793             is impractical. If at some point this needs to be extended, then
31794             we can store the higher bits from stats_sample_pages in .frm too. */
31795             if (unlikely((yyvsp[0].ulong_num) == 0 || (yyvsp[0].ulong_num) > 0xffff))
31796             {
31797               thd->parse_error();
31798               MYSQL_YYABORT;
31799             }
31800             Lex->create_info.stats_sample_pages=(yyvsp[0].ulong_num);
31801             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
31802           }
31803 #line 31804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31804     break;
31805 
31806   case 737:
31807 #line 6300 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31808     {
31809             Lex->create_info.stats_sample_pages=0;
31810             Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
31811           }
31812 #line 31813 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31813     break;
31814 
31815   case 738:
31816 #line 6305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31817     {
31818             Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
31819             Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
31820           }
31821 #line 31822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31822     break;
31823 
31824   case 739:
31825 #line 6310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31826     {
31827              Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
31828              Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
31829           }
31830 #line 31831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31831     break;
31832 
31833   case 740:
31834 #line 6315 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31835     {
31836             Lex->create_info.used_fields|= HA_CREATE_USED_PAGE_CHECKSUM;
31837             Lex->create_info.page_checksum= (yyvsp[0].choice);
31838           }
31839 #line 31840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31840     break;
31841 
31842   case 741:
31843 #line 6320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31844     {
31845             Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE;
31846             Lex->create_info.used_fields|= HA_CREATE_USED_DELAY_KEY_WRITE;
31847           }
31848 #line 31849 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31849     break;
31850 
31851   case 742:
31852 #line 6325 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31853     {
31854             Lex->create_info.row_type= (yyvsp[0].row_type);
31855             Lex->create_info.used_fields|= HA_CREATE_USED_ROW_FORMAT;
31856           }
31857 #line 31858 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31858     break;
31859 
31860   case 743:
31861 #line 6330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31862     {
31863             Lex->first_select_lex()->table_list.save_and_clear(&Lex->save_list);
31864           }
31865 #line 31866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31866     break;
31867 
31868   case 744:
31869 #line 6334 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31870     {
31871             /*
31872               Move the union list to the merge_list and exclude its tables
31873               from the global list.
31874             */
31875             LEX *lex=Lex;
31876             lex->create_info.merge_list= lex->first_select_lex()->table_list.first;
31877             lex->first_select_lex()->table_list= lex->save_list;
31878             /*
31879               When excluding union list from the global list we assume that
31880               elements of the former immediately follow elements which represent
31881               table being created/altered and parent tables.
31882             */
31883             TABLE_LIST *last_non_sel_table= lex->create_last_non_select_table;
31884             DBUG_ASSERT(last_non_sel_table->next_global ==
31885                         lex->create_info.merge_list);
31886             last_non_sel_table->next_global= 0;
31887             Lex->query_tables_last= &last_non_sel_table->next_global;
31888 
31889             lex->create_info.used_fields|= HA_CREATE_USED_UNION;
31890           }
31891 #line 31892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31892     break;
31893 
31894   case 747:
31895 #line 6358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31896     {
31897             Lex->create_info.merge_insert_method= (yyvsp[0].ulong_num);
31898             Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD;
31899           }
31900 #line 31901 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31901     break;
31902 
31903   case 748:
31904 #line 6363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31905     {
31906             Lex->create_info.data_file_name= (yyvsp[0].lex_str).str;
31907             Lex->create_info.used_fields|= HA_CREATE_USED_DATADIR;
31908           }
31909 #line 31910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31910     break;
31911 
31912   case 749:
31913 #line 6368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31914     {
31915             Lex->create_info.index_file_name= (yyvsp[0].lex_str).str;
31916             Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR;
31917           }
31918 #line 31919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31919     break;
31920 
31921   case 750:
31922 #line 6373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31923     {Lex->create_info.tablespace= (yyvsp[0].ident_sys).str;}
31924 #line 31925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31925     break;
31926 
31927   case 751:
31928 #line 6375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31929     {Lex->create_info.storage_media= HA_SM_DISK;}
31930 #line 31931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31931     break;
31932 
31933   case 752:
31934 #line 6377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31935     {Lex->create_info.storage_media= HA_SM_MEMORY;}
31936 #line 31937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31937     break;
31938 
31939   case 753:
31940 #line 6379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31941     {
31942             Lex->create_info.connect_string.str= (yyvsp[0].lex_str).str;
31943             Lex->create_info.connect_string.length= (yyvsp[0].lex_str).length;
31944             Lex->create_info.used_fields|= HA_CREATE_USED_CONNECTION;
31945           }
31946 #line 31947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31947     break;
31948 
31949   case 754:
31950 #line 6385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31951     {
31952             Lex->create_info.used_fields|= HA_CREATE_USED_KEY_BLOCK_SIZE;
31953             Lex->create_info.key_block_size= (yyvsp[0].ulong_num);
31954           }
31955 #line 31956 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31956     break;
31957 
31958   case 755:
31959 #line 6390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31960     {
31961 	    Lex->create_info.used_fields|= HA_CREATE_USED_TRANSACTIONAL;
31962             Lex->create_info.transactional= (yyvsp[0].choice);
31963           }
31964 #line 31965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31965     break;
31966 
31967   case 756:
31968 #line 6395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31969     {
31970             if (unlikely((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH))
31971               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
31972             (void) new (thd->mem_root)
31973                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].lex_str), true,
31974                                        &Lex->create_info.option_list,
31975                                        &Lex->option_list_last);
31976           }
31977 #line 31978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31978     break;
31979 
31980   case 757:
31981 #line 6404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31982     {
31983             if (unlikely((yyvsp[0].ident_sys).length > ENGINE_OPTION_MAX_LENGTH))
31984               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
31985             (void) new (thd->mem_root)
31986                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ident_sys), false,
31987                                        &Lex->create_info.option_list,
31988                                        &Lex->option_list_last);
31989           }
31990 #line 31991 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
31991     break;
31992 
31993   case 758:
31994 #line 6413 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
31995     {
31996             (void) new (thd->mem_root)
31997                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ulonglong_number), &Lex->create_info.option_list,
31998                                        &Lex->option_list_last, thd->mem_root);
31999           }
32000 #line 32001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32001     break;
32002 
32003   case 759:
32004 #line 6419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32005     {
32006             (void) new (thd->mem_root)
32007                    engine_option_value((yyvsp[-2].ident_sys), &Lex->create_info.option_list,
32008                                        &Lex->option_list_last);
32009           }
32010 #line 32011 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32011     break;
32012 
32013   case 760:
32014 #line 6425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32015     {
32016 	    Lex->create_info.used_fields|= HA_CREATE_USED_SEQUENCE;
32017             Lex->create_info.sequence= ((yyvsp[0].choice) == HA_CHOICE_YES);
32018 	  }
32019 #line 32020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32020     break;
32021 
32022   case 764:
32023 #line 6439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32024     {
32025             if (unlikely(Lex->create_info.options & HA_LEX_CREATE_TMP_TABLE))
32026             {
32027               if (DBUG_EVALUATE_IF("sysvers_force", 0, 1))
32028               {
32029                 my_error(ER_VERS_NOT_SUPPORTED, MYF(0), "CREATE TEMPORARY TABLE");
32030                 MYSQL_YYABORT;
32031               }
32032             }
32033             else
32034             {
32035               Lex->alter_info.flags|= ALTER_ADD_SYSTEM_VERSIONING;
32036               Lex->create_info.options|= HA_VERSIONED_TABLE;
32037             }
32038           }
32039 #line 32040 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32040     break;
32041 
32042   case 765:
32043 #line 6458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32044     {
32045             if (unlikely(Lex->create_info.add_table_option_default_charset((yyvsp[0].charset))))
32046               MYSQL_YYABORT;
32047           }
32048 #line 32049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32049     break;
32050 
32051   case 766:
32052 #line 6466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32053     {
32054             HA_CREATE_INFO *cinfo= &Lex->create_info;
32055             if (unlikely((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
32056                          cinfo->default_table_charset && (yyvsp[0].charset) &&
32057                          !((yyvsp[0].charset)= merge_charset_and_collation(cinfo->default_table_charset,
32058                                                            (yyvsp[0].charset)))))
32059               MYSQL_YYABORT;
32060 
32061             Lex->create_info.default_table_charset= (yyvsp[0].charset);
32062             Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
32063           }
32064 #line 32065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32065     break;
32066 
32067   case 767:
32068 #line 6481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32069     {
32070             if (Storage_engine_name((yyvsp[0].lex_str)).
32071                  resolve_storage_engine_with_error(thd, &(yyval.db_type),
32072                                             thd->lex->create_info.tmp_table()))
32073               MYSQL_YYABORT;
32074           }
32075 #line 32076 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32076     break;
32077 
32078   case 768:
32079 #line 6491 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32080     {
32081             plugin_ref plugin;
32082             if (likely((plugin= ha_resolve_by_name(thd, &(yyvsp[0].lex_str), false))))
32083               (yyval.db_type)= plugin_hton(plugin);
32084             else
32085               my_yyabort_error((ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[0].lex_str).str));
32086           }
32087 #line 32088 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32088     break;
32089 
32090   case 769:
32091 #line 6501 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32092     { (yyval.row_type)= ROW_TYPE_DEFAULT; }
32093 #line 32094 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32094     break;
32095 
32096   case 770:
32097 #line 6502 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32098     { (yyval.row_type)= ROW_TYPE_FIXED; }
32099 #line 32100 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32100     break;
32101 
32102   case 771:
32103 #line 6503 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32104     { (yyval.row_type)= ROW_TYPE_DYNAMIC; }
32105 #line 32106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32106     break;
32107 
32108   case 772:
32109 #line 6504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32110     { (yyval.row_type)= ROW_TYPE_COMPRESSED; }
32111 #line 32112 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32112     break;
32113 
32114   case 773:
32115 #line 6505 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32116     { (yyval.row_type)= ROW_TYPE_REDUNDANT; }
32117 #line 32118 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32118     break;
32119 
32120   case 774:
32121 #line 6506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32122     { (yyval.row_type)= ROW_TYPE_COMPACT; }
32123 #line 32124 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32124     break;
32125 
32126   case 775:
32127 #line 6507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32128     { (yyval.row_type)= ROW_TYPE_PAGE; }
32129 #line 32130 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32130     break;
32131 
32132   case 776:
32133 #line 6511 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32134     { (yyval.ulong_num)= MERGE_INSERT_DISABLED; }
32135 #line 32136 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32136     break;
32137 
32138   case 777:
32139 #line 6512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32140     { (yyval.ulong_num)= MERGE_INSERT_TO_FIRST; }
32141 #line 32142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32142     break;
32143 
32144   case 778:
32145 #line 6513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32146     { (yyval.ulong_num)= MERGE_INSERT_TO_LAST; }
32147 #line 32148 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32148     break;
32149 
32150   case 779:
32151 #line 6517 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32152     {(yyval.num) = (int) STRING_RESULT; }
32153 #line 32154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32154     break;
32155 
32156   case 780:
32157 #line 6518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32158     {(yyval.num) = (int) REAL_RESULT; }
32159 #line 32160 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32160     break;
32161 
32162   case 781:
32163 #line 6519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32164     {(yyval.num) = (int) DECIMAL_RESULT; }
32165 #line 32166 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32166     break;
32167 
32168   case 782:
32169 #line 6520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32170     {(yyval.num) = (int) INT_RESULT; }
32171 #line 32172 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32172     break;
32173 
32174   case 783:
32175 #line 6526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32176     {
32177           Lex->create_last_non_select_table= Lex->last_table();
32178         }
32179 #line 32180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32180     break;
32181 
32182   case 784:
32183 #line 6533 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32184     {
32185           Lex->create_last_non_select_table= Lex->last_table();
32186         }
32187 #line 32188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32188     break;
32189 
32190   case 787:
32191 #line 6544 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32192     { }
32193 #line 32194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32194     break;
32195 
32196   case 791:
32197 #line 6548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32198     { }
32199 #line 32200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32200     break;
32201 
32202   case 792:
32203 #line 6553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32204     { (yyval.create_field)= (yyvsp[0].create_field); }
32205 #line 32206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32206     break;
32207 
32208   case 793:
32209 #line 6555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32210     { (yyval.create_field)= (yyvsp[-1].create_field); }
32211 #line 32212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32212     break;
32213 
32214   case 794:
32215 #line 6560 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32216     {
32217             Lex->option_list= NULL;
32218             if (unlikely(Lex->add_key(Key::MULTIPLE, &(yyvsp[-1].lex_str), (yyvsp[0].key_alg), (yyvsp[-2].object_ddl_options))))
32219               MYSQL_YYABORT;
32220           }
32221 #line 32222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32222     break;
32223 
32224   case 795:
32225 #line 6565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32226     { }
32227 #line 32228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32228     break;
32229 
32230   case 796:
32231 #line 6567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32232     {
32233             Lex->option_list= NULL;
32234             if (unlikely(Lex->add_key(Key::MULTIPLE, &(yyvsp[-2].ident_sys), (yyvsp[0].key_alg), (yyvsp[-3].object_ddl_options))))
32235               MYSQL_YYABORT;
32236           }
32237 #line 32238 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32238     break;
32239 
32240   case 797:
32241 #line 6572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32242     { }
32243 #line 32244 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32244     break;
32245 
32246   case 798:
32247 #line 6574 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32248     {
32249             Lex->option_list= NULL;
32250             if (unlikely(Lex->add_key((yyvsp[-3].key_type), &(yyvsp[0].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-1].object_ddl_options))))
32251               MYSQL_YYABORT;
32252           }
32253 #line 32254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32254     break;
32255 
32256   case 799:
32257 #line 6579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32258     { }
32259 #line 32260 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32260     break;
32261 
32262   case 800:
32263 #line 6581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32264     {
32265             Lex->option_list= NULL;
32266             if (unlikely(Lex->add_key((yyvsp[-3].key_type), &(yyvsp[0].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-1].object_ddl_options))))
32267               MYSQL_YYABORT;
32268           }
32269 #line 32270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32270     break;
32271 
32272   case 801:
32273 #line 6586 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32274     { }
32275 #line 32276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32276     break;
32277 
32278   case 802:
32279 #line 6590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32280     {
32281             Lex->option_list= NULL;
32282             if (unlikely(Lex->add_key((yyvsp[-3].key_type), (yyvsp[-1].lex_str).str ? &(yyvsp[-1].lex_str) : &(yyvsp[-4].lex_str), (yyvsp[0].key_alg), (yyvsp[-2].object_ddl_options))))
32283               MYSQL_YYABORT;
32284           }
32285 #line 32286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32286     break;
32287 
32288   case 803:
32289 #line 6595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32290     { }
32291 #line 32292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32292     break;
32293 
32294   case 804:
32295 #line 6598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32296     {
32297             Lex->option_list= NULL;
32298             if (unlikely(Lex->add_key((yyvsp[-4].key_type), (yyvsp[-2].ident_sys).str ? &(yyvsp[-2].ident_sys) : &(yyvsp[-5].lex_str), (yyvsp[0].key_alg), (yyvsp[-3].object_ddl_options))))
32299               MYSQL_YYABORT;
32300           }
32301 #line 32302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32302     break;
32303 
32304   case 805:
32305 #line 6603 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32306     { }
32307 #line 32308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32308     break;
32309 
32310   case 806:
32311 #line 6605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32312     {
32313             if (unlikely(Lex->check_add_key((yyvsp[-1].object_ddl_options))) ||
32314                 unlikely(!(Lex->last_key= (new (thd->mem_root)
32315                                            Key(Key::MULTIPLE,
32316                                            (yyvsp[-4].lex_str).str ? &(yyvsp[-4].lex_str) : &(yyvsp[0].lex_str),
32317                                            HA_KEY_ALG_UNDEF, true, (yyvsp[-1].object_ddl_options))))))
32318               MYSQL_YYABORT;
32319             Lex->option_list= NULL;
32320           }
32321 #line 32322 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32322     break;
32323 
32324   case 807:
32325 #line 6615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32326     {
32327             LEX *lex=Lex;
32328             Key *key= (new (thd->mem_root)
32329                        Foreign_key((yyvsp[-5].lex_str).str ? &(yyvsp[-5].lex_str) : &(yyvsp[-9].lex_str),
32330                                    &lex->last_key->columns,
32331                                    &(yyvsp[0].table)->db,
32332                                    &(yyvsp[0].table)->table,
32333                                    &lex->ref_list,
32334                                    lex->fk_delete_opt,
32335                                    lex->fk_update_opt,
32336                                    lex->fk_match_option,
32337                                     (yyvsp[-6].object_ddl_options)));
32338             if (unlikely(key == NULL))
32339               MYSQL_YYABORT;
32340             /*
32341               handle_if_exists_options() expectes the two keys in this order:
32342               the Foreign_key, followed by its auto-generated Key.
32343             */
32344             lex->alter_info.key_list.push_back(key, thd->mem_root);
32345             lex->alter_info.key_list.push_back(Lex->last_key, thd->mem_root);
32346             lex->option_list= NULL;
32347 
32348             /* Only used for ALTER TABLE. Ignored otherwise. */
32349             lex->alter_info.flags|= ALTER_ADD_FOREIGN_KEY;
32350           }
32351 #line 32352 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32352     break;
32353 
32354   case 808:
32355 #line 6644 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32356     {
32357            Lex->add_constraint((yyvsp[-1].lex_str), (yyvsp[0].virtual_column), FALSE);
32358          }
32359 #line 32360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32360     break;
32361 
32362   case 809:
32363 #line 6652 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32364     {
32365             Vers_parse_info &info= Lex->vers_get_info();
32366             info.set_period((yyvsp[-3].ident_sys), (yyvsp[-1].ident_sys));
32367           }
32368 #line 32369 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32369     break;
32370 
32371   case 810:
32372 #line 6660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32373     {
32374             if (Lex->add_period((yyvsp[-5].ident_sys), (yyvsp[-3].ident_sys), (yyvsp[-1].ident_sys)))
32375               MYSQL_YYABORT;
32376           }
32377 #line 32378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32378     break;
32379 
32380   case 811:
32381 #line 6667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32382     { (yyval.virtual_column)= (Virtual_column_info*) 0; }
32383 #line 32384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32384     break;
32385 
32386   case 812:
32387 #line 6668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32388     { (yyval.virtual_column)= (yyvsp[0].virtual_column);}
32389 #line 32390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32390     break;
32391 
32392   case 813:
32393 #line 6673 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32394     {
32395             Virtual_column_info *v= add_virtual_expression(thd, (yyvsp[-1].item));
32396             if (unlikely(!v))
32397               MYSQL_YYABORT;
32398             (yyval.virtual_column)= v;
32399           }
32400 #line 32401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32401     break;
32402 
32403   case 814:
32404 #line 6682 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32405     {}
32406 #line 32407 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32407     break;
32408 
32409   case 815:
32410 #line 6683 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32411     {}
32412 #line 32413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32413     break;
32414 
32415   case 816:
32416 #line 6687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32417     { (yyval.lex_str)= null_clex_str; }
32418 #line 32419 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32419     break;
32420 
32421   case 817:
32422 #line 6688 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32423     { (yyval.lex_str)= (yyvsp[0].lex_str); }
32424 #line 32425 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32425     break;
32426 
32427   case 818:
32428 #line 6692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32429     { (yyval.lex_str)=(yyvsp[0].lex_str); }
32430 #line 32431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32431     break;
32432 
32433   case 819:
32434 #line 6697 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32435     {
32436             LEX *lex=Lex;
32437             Create_field *f= new (thd->mem_root) Create_field();
32438 
32439             if (unlikely(check_string_char_length(&(yyvsp[0].lex_str), 0, NAME_CHAR_LEN,
32440                                                   system_charset_info, 1)))
32441               my_yyabort_error((ER_TOO_LONG_IDENT, MYF(0), (yyvsp[0].lex_str).str));
32442 
32443             if (unlikely(!f))
32444               MYSQL_YYABORT;
32445 
32446             lex->init_last_field(f, &(yyvsp[0].lex_str), NULL);
32447             (yyval.create_field)= f;
32448             lex->parsing_options.lookup_keywords_after_qualifier= true;
32449           }
32450 #line 32451 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32451     break;
32452 
32453   case 820:
32454 #line 6713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32455     {
32456             LEX *lex=Lex;
32457             lex->parsing_options.lookup_keywords_after_qualifier= false;
32458             (yyval.create_field)= (yyvsp[-2].create_field);
32459 
32460             (yyval.create_field)->check_constraint= (yyvsp[0].virtual_column);
32461 
32462             if (unlikely((yyval.create_field)->check(thd)))
32463               MYSQL_YYABORT;
32464 
32465             lex->alter_info.create_list.push_back((yyval.create_field), thd->mem_root);
32466 
32467             (yyval.create_field)->create_if_not_exists= Lex->check_exists;
32468             if ((yyval.create_field)->flags & PRI_KEY_FLAG)
32469               lex->add_key_to_list(&(yyvsp[-3].lex_str), Key::PRIMARY, lex->check_exists);
32470             else if ((yyval.create_field)->flags & UNIQUE_KEY_FLAG)
32471               lex->add_key_to_list(&(yyvsp[-3].lex_str), Key::UNIQUE, lex->check_exists);
32472           }
32473 #line 32474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32474     break;
32475 
32476   case 821:
32477 #line 6734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32478     { Lex->last_field->set_attributes((yyvsp[0].Lex_field_type), Lex->charset); }
32479 #line 32480 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32480     break;
32481 
32482   case 823:
32483 #line 6737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32484     {
32485             Lex->last_field->set_handler(&type_handler_longlong);
32486             Lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG
32487                                      | UNSIGNED_FLAG | UNIQUE_KEY_FLAG;
32488             Lex->alter_info.flags|= ALTER_ADD_INDEX;
32489           }
32490 #line 32491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32491     break;
32492 
32493   case 825:
32494 #line 6747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32495     {}
32496 #line 32497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32497     break;
32498 
32499   case 826:
32500 #line 6748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32501     {}
32502 #line 32503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32503     break;
32504 
32505   case 827:
32506 #line 6752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32507     {}
32508 #line 32509 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32509     break;
32510 
32511   case 829:
32512 #line 6757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32513     {}
32514 #line 32515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32515     break;
32516 
32517   case 830:
32518 #line 6758 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32519     {}
32520 #line 32521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32521     break;
32522 
32523   case 831:
32524 #line 6762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32525     {}
32526 #line 32527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32527     break;
32528 
32529   case 833:
32530 #line 6767 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32531     { }
32532 #line 32533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32533     break;
32534 
32535   case 837:
32536 #line 6772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32537     {
32538            Lex->last_field->vcol_info= (yyvsp[0].virtual_column);
32539            Lex->last_field->flags&= ~NOT_NULL_FLAG; // undo automatic NOT NULL for timestamps
32540          }
32541 #line 32542 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32542     break;
32543 
32544   case 839:
32545 #line 6778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32546     {
32547             if (Lex->last_field_generated_always_as_row_start())
32548               MYSQL_YYABORT;
32549           }
32550 #line 32551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32551     break;
32552 
32553   case 840:
32554 #line 6783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32555     {
32556             if (Lex->last_field_generated_always_as_row_end())
32557               MYSQL_YYABORT;
32558           }
32559 #line 32560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32560     break;
32561 
32562   case 841:
32563 #line 6790 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32564     {}
32565 #line 32566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32566     break;
32567 
32568   case 842:
32569 #line 6791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32570     {}
32571 #line 32572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32572     break;
32573 
32574   case 843:
32575 #line 6796 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32576     {
32577             Lex->last_field->vcol_info->set_stored_in_db_flag(FALSE);
32578           }
32579 #line 32580 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32580     break;
32581 
32582   case 844:
32583 #line 6800 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32584     {
32585             Lex->last_field->vcol_info->set_stored_in_db_flag(FALSE);
32586           }
32587 #line 32588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32588     break;
32589 
32590   case 845:
32591 #line 6804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32592     {
32593             Lex->last_field->vcol_info->set_stored_in_db_flag(TRUE);
32594           }
32595 #line 32596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32596     break;
32597 
32598   case 846:
32599 #line 6808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32600     {
32601             Lex->last_field->vcol_info->set_stored_in_db_flag(TRUE);
32602           }
32603 #line 32604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32604     break;
32605 
32606   case 847:
32607 #line 6814 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32608     {}
32609 #line 32610 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32610     break;
32611 
32612   case 848:
32613 #line 6815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32614     {}
32615 #line 32616 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32616     break;
32617 
32618   case 849:
32619 #line 6819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32620     {}
32621 #line 32622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32622     break;
32623 
32624   case 851:
32625 #line 6825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32626     {
32627             LEX *lex=Lex;
32628             lex->last_field->flags|= UNIQUE_KEY_FLAG;
32629             lex->alter_info.flags|= ALTER_ADD_INDEX;
32630           }
32631 #line 32632 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32632     break;
32633 
32634   case 852:
32635 #line 6831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32636     {
32637             LEX *lex=Lex;
32638             lex->last_field->flags|= UNIQUE_KEY_FLAG;
32639             lex->alter_info.flags|= ALTER_ADD_INDEX;
32640           }
32641 #line 32642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32642     break;
32643 
32644   case 853:
32645 #line 6836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32646     { Lex->last_field->comment= (yyvsp[0].lex_str); }
32647 #line 32648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32648     break;
32649 
32650   case 854:
32651 #line 6838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32652     {
32653             Lex->last_field->invisible= INVISIBLE_USER;
32654           }
32655 #line 32656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32656     break;
32657 
32658   case 855:
32659 #line 6845 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32660     {
32661             /*
32662               "PARSE_VCOL_EXPR" can only be used by the SQL server
32663               when reading a '*.frm' file.
32664               Prevent the end user from invoking this command.
32665             */
32666             MYSQL_YYABORT_UNLESS(Lex->parse_vcol_expr);
32667             if (Lex->main_select_push())
32668               MYSQL_YYABORT;
32669           }
32670 #line 32671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32671     break;
32672 
32673   case 856:
32674 #line 6856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32675     {
32676             Virtual_column_info *v= add_virtual_expression(thd, (yyvsp[0].item));
32677             if (unlikely(!v))
32678               MYSQL_YYABORT;
32679             Lex->last_field->vcol_info= v;
32680             Lex->pop_select(); //main select
32681           }
32682 #line 32683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32683     break;
32684 
32685   case 858:
32686 #line 6868 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32687     {
32688             (yyvsp[0].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
32689             (yyval.item)= new (thd->mem_root) Item_row(thd, *(yyvsp[0].item_list));
32690             if (unlikely((yyval.item) == NULL))
32691               MYSQL_YYABORT;
32692           }
32693 #line 32694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32694     break;
32695 
32696   case 859:
32697 #line 6878 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32698     {
32699             Virtual_column_info *v=
32700               add_virtual_expression(thd, (yyvsp[-1].item));
32701             if (unlikely(!v))
32702               MYSQL_YYABORT;
32703             (yyval.virtual_column)= v;
32704           }
32705 #line 32706 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32706     break;
32707 
32708   case 860:
32709 #line 6886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32710     {
32711             Item *item;
32712             if (!(item= new (thd->mem_root) Item_singlerow_subselect(thd, (yyvsp[0].select_lex))))
32713               MYSQL_YYABORT;
32714             Virtual_column_info *v= add_virtual_expression(thd, item);
32715             if (unlikely(!v))
32716               MYSQL_YYABORT;
32717             (yyval.virtual_column)= v;
32718           }
32719 #line 32720 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32720     break;
32721 
32722   case 864:
32723 #line 6902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32724     {
32725             if (unlikely(!((yyval.virtual_column)= add_virtual_expression(thd, (yyvsp[0].item)))))
32726               MYSQL_YYABORT;
32727           }
32728 #line 32729 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32729     break;
32730 
32731   case 865:
32732 #line 6909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32733     {
32734           Lex->map_data_type(Lex_ident_sys(), &((yyval.Lex_field_type)= (yyvsp[0].Lex_field_type)));
32735           Lex->last_field->set_attributes((yyval.Lex_field_type), Lex->charset);
32736         }
32737 #line 32738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32738     break;
32739 
32740   case 866:
32741 #line 6917 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32742     {
32743             Lex->map_data_type(Lex_ident_sys(), &((yyval.Lex_field_type)= (yyvsp[0].Lex_field_type)));
32744           }
32745 #line 32746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32746     break;
32747 
32748   case 867:
32749 #line 6921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32750     {
32751             if (Lex->map_data_type((yyvsp[-2].ident_sys), &((yyval.Lex_field_type)= (yyvsp[0].Lex_field_type))))
32752               MYSQL_YYABORT;
32753           }
32754 #line 32755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32755     break;
32756 
32757   case 873:
32758 #line 6936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32759     { (yyval.Lex_field_type).set((yyvsp[-2].type_handler), (yyvsp[-1].const_simple_string)); }
32760 #line 32761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32761     break;
32762 
32763   case 874:
32764 #line 6937 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32765     { (yyval.Lex_field_type).set((yyvsp[-2].type_handler), (yyvsp[-1].Lex_length_and_dec)); }
32766 #line 32767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32767     break;
32768 
32769   case 875:
32770 #line 6939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32771     {
32772             (yyval.Lex_field_type).set(&type_handler_float, (yyvsp[-1].Lex_length_and_dec));
32773             if ((yyvsp[-1].Lex_length_and_dec).length() && !(yyvsp[-1].Lex_length_and_dec).dec())
32774             {
32775               int err;
32776               ulonglong tmp_length= my_strtoll10((yyvsp[-1].Lex_length_and_dec).length(), NULL, &err);
32777               if (unlikely(err || tmp_length > PRECISION_FOR_DOUBLE))
32778                 my_yyabort_error((ER_WRONG_FIELD_SPEC, MYF(0),
32779                                   Lex->last_field->field_name.str));
32780               if (tmp_length > PRECISION_FOR_FLOAT)
32781                 (yyval.Lex_field_type).set(&type_handler_double);
32782               else
32783                 (yyval.Lex_field_type).set(&type_handler_float);
32784             }
32785           }
32786 #line 32787 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32787     break;
32788 
32789   case 876:
32790 #line 6955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32791     {
32792             (yyval.Lex_field_type).set(&type_handler_bit, (yyvsp[0].const_simple_string));
32793           }
32794 #line 32795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32795     break;
32796 
32797   case 877:
32798 #line 6959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32799     {
32800             (yyval.Lex_field_type).set(&type_handler_tiny, "1");
32801           }
32802 #line 32803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32803     break;
32804 
32805   case 878:
32806 #line 6963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32807     {
32808             (yyval.Lex_field_type).set(&type_handler_tiny, "1");
32809           }
32810 #line 32811 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32811     break;
32812 
32813   case 879:
32814 #line 6967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32815     { (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));}
32816 #line 32817 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32817     break;
32818 
32819   case 880:
32820 #line 6969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32821     {
32822             if ((yyvsp[-1].Lex_length_and_dec).length() != 0)
32823               (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));
32824             else
32825               (yyval.Lex_field_type).set(&type_handler_double);
32826           }
32827 #line 32828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32828     break;
32829 
32830   case 881:
32831 #line 6976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32832     { (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));}
32833 #line 32834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32834     break;
32835 
32836   case 882:
32837 #line 6978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32838     { (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));}
32839 #line 32840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32840     break;
32841 
32842   case 887:
32843 #line 6991 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32844     {
32845             (yyval.Lex_field_type).set(&type_handler_string, (yyvsp[-1].const_simple_string));
32846           }
32847 #line 32848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32848     break;
32849 
32850   case 888:
32851 #line 6995 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32852     {
32853             (yyval.Lex_field_type).set(&type_handler_string, (yyvsp[-1].const_simple_string));
32854             bincmp_collation(national_charset_info, (yyvsp[0].num));
32855           }
32856 #line 32857 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32857     break;
32858 
32859   case 889:
32860 #line 7000 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32861     {
32862             Lex->charset=&my_charset_bin;
32863             (yyval.Lex_field_type).set(&type_handler_string, (yyvsp[0].const_simple_string));
32864           }
32865 #line 32866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32866     break;
32867 
32868   case 890:
32869 #line 7005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32870     {
32871             (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].const_simple_string));
32872           }
32873 #line 32874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32874     break;
32875 
32876   case 891:
32877 #line 7009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32878     {
32879             (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].const_simple_string));
32880           }
32881 #line 32882 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32882     break;
32883 
32884   case 892:
32885 #line 7013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32886     {
32887             (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-2].const_simple_string));
32888             bincmp_collation(national_charset_info, (yyvsp[0].num));
32889           }
32890 #line 32891 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32891     break;
32892 
32893   case 893:
32894 #line 7018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32895     {
32896             Lex->charset=&my_charset_bin;
32897             (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].const_simple_string));
32898           }
32899 #line 32900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32900     break;
32901 
32902   case 894:
32903 #line 7023 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32904     {
32905             Lex->charset= &my_charset_bin;
32906             (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].const_simple_string));
32907           }
32908 #line 32909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32909     break;
32910 
32911   case 895:
32912 #line 7031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32913     {
32914             if ((yyvsp[-1].const_simple_string))
32915             {
32916               errno= 0;
32917               ulong length= strtoul((yyvsp[-1].const_simple_string), NULL, 10);
32918               if (errno == 0 && length <= MAX_FIELD_BLOBLENGTH && length != 4)
32919               {
32920                 char buff[sizeof("YEAR()") + MY_INT64_NUM_DECIMAL_DIGITS + 1];
32921                 my_snprintf(buff, sizeof(buff), "YEAR(%lu)", length);
32922                 push_warning_printf(thd, Sql_condition::WARN_LEVEL_NOTE,
32923                                     ER_WARN_DEPRECATED_SYNTAX,
32924                                     ER_THD(thd, ER_WARN_DEPRECATED_SYNTAX),
32925                                     buff, "YEAR(4)");
32926               }
32927             }
32928             (yyval.Lex_field_type).set(&type_handler_year, (yyvsp[-1].const_simple_string));
32929           }
32930 #line 32931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32931     break;
32932 
32933   case 896:
32934 #line 7048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32935     { (yyval.Lex_field_type).set(&type_handler_newdate); }
32936 #line 32937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32937     break;
32938 
32939   case 897:
32940 #line 7050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32941     {
32942             (yyval.Lex_field_type).set(opt_mysql56_temporal_format ?
32943                    static_cast<const Type_handler*>(&type_handler_time2) :
32944                    static_cast<const Type_handler*>(&type_handler_time),
32945                    (yyvsp[0].const_simple_string));
32946           }
32947 #line 32948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32948     break;
32949 
32950   case 898:
32951 #line 7057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32952     {
32953             (yyval.Lex_field_type).set(opt_mysql56_temporal_format ?
32954                    static_cast<const Type_handler*>(&type_handler_timestamp2):
32955                    static_cast<const Type_handler*>(&type_handler_timestamp),
32956                    (yyvsp[0].const_simple_string));
32957           }
32958 #line 32959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32959     break;
32960 
32961   case 899:
32962 #line 7064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32963     {
32964             (yyval.Lex_field_type).set(thd->type_handler_for_datetime(), (yyvsp[0].const_simple_string));
32965           }
32966 #line 32967 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32967     break;
32968 
32969   case 900:
32970 #line 7072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32971     {
32972             Lex->charset=&my_charset_bin;
32973             (yyval.Lex_field_type).set(&type_handler_tiny_blob);
32974           }
32975 #line 32976 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32976     break;
32977 
32978   case 901:
32979 #line 7077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32980     {
32981             Lex->charset=&my_charset_bin;
32982             (yyval.Lex_field_type).set(&type_handler_blob, (yyvsp[-1].const_simple_string));
32983           }
32984 #line 32985 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32985     break;
32986 
32987   case 902:
32988 #line 7082 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32989     {
32990             Lex->charset=&my_charset_bin;
32991             (yyval.Lex_field_type).set(&type_handler_blob, (yyvsp[-1].const_simple_string));
32992           }
32993 #line 32994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
32994     break;
32995 
32996   case 903:
32997 #line 7087 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
32998     {
32999             Lex->charset=&my_charset_bin;
33000             (yyval.Lex_field_type).set(&type_handler_long_blob);
33001           }
33002 #line 33003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33003     break;
33004 
33005   case 904:
33006 #line 7092 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33007     {
33008 #ifdef HAVE_SPATIAL
33009             Lex->charset=&my_charset_bin;
33010             Lex->last_field->geom_type= (yyvsp[-2].geom_type);
33011             (yyval.Lex_field_type).set(&type_handler_geometry, (yyvsp[-1].Lex_length_and_dec));
33012 #else
33013             my_yyabort_error((ER_FEATURE_DISABLED, MYF(0), sym_group_geom.name,
33014                               sym_group_geom.needed_define));
33015 #endif
33016           }
33017 #line 33018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33018     break;
33019 
33020   case 905:
33021 #line 7103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33022     {
33023             Lex->charset=&my_charset_bin;
33024             (yyval.Lex_field_type).set(&type_handler_medium_blob);
33025           }
33026 #line 33027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33027     break;
33028 
33029   case 906:
33030 #line 7108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33031     {
33032             Lex->charset=&my_charset_bin;
33033             (yyval.Lex_field_type).set(&type_handler_long_blob);
33034           }
33035 #line 33036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33036     break;
33037 
33038   case 907:
33039 #line 7113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33040     {
33041             Lex->charset=&my_charset_bin;
33042             (yyval.Lex_field_type).set(&type_handler_medium_blob);
33043           }
33044 #line 33045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33045     break;
33046 
33047   case 908:
33048 #line 7118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33049     { (yyval.Lex_field_type).set(&type_handler_medium_blob); }
33050 #line 33051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33051     break;
33052 
33053   case 909:
33054 #line 7120 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33055     { (yyval.Lex_field_type).set(&type_handler_tiny_blob); }
33056 #line 33057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33057     break;
33058 
33059   case 910:
33060 #line 7122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33061     { (yyval.Lex_field_type).set(&type_handler_blob, (yyvsp[-1].const_simple_string)); }
33062 #line 33063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33063     break;
33064 
33065   case 911:
33066 #line 7124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33067     { (yyval.Lex_field_type).set(&type_handler_medium_blob); }
33068 #line 33069 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33069     break;
33070 
33071   case 912:
33072 #line 7126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33073     { (yyval.Lex_field_type).set(&type_handler_long_blob); }
33074 #line 33075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33075     break;
33076 
33077   case 913:
33078 #line 7128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33079     { (yyval.Lex_field_type).set(&type_handler_long_blob); }
33080 #line 33081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33081     break;
33082 
33083   case 914:
33084 #line 7130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33085     { (yyval.Lex_field_type).set(&type_handler_medium_blob); }
33086 #line 33087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33087     break;
33088 
33089   case 915:
33090 #line 7132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33091     {
33092             Lex->charset= &my_charset_utf8mb4_bin;
33093             (yyval.Lex_field_type).set(&type_handler_json_longtext);
33094           }
33095 #line 33096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33096     break;
33097 
33098   case 916:
33099 #line 7140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33100     { (yyval.Lex_field_type).set(&type_handler_enum); }
33101 #line 33102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33102     break;
33103 
33104   case 917:
33105 #line 7142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33106     { (yyval.Lex_field_type).set(&type_handler_set); }
33107 #line 33108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33108     break;
33109 
33110   case 918:
33111 #line 7146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33112     { (yyval.geom_type)= Field::GEOM_GEOMETRY; }
33113 #line 33114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33114     break;
33115 
33116   case 919:
33117 #line 7147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33118     { (yyval.geom_type)= Field::GEOM_GEOMETRYCOLLECTION; }
33119 #line 33120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33120     break;
33121 
33122   case 920:
33123 #line 7148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33124     { (yyval.geom_type)= Field::GEOM_POINT; }
33125 #line 33126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33126     break;
33127 
33128   case 921:
33129 #line 7149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33130     { (yyval.geom_type)= Field::GEOM_MULTIPOINT; }
33131 #line 33132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33132     break;
33133 
33134   case 922:
33135 #line 7150 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33136     { (yyval.geom_type)= Field::GEOM_LINESTRING; }
33137 #line 33138 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33138     break;
33139 
33140   case 923:
33141 #line 7151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33142     { (yyval.geom_type)= Field::GEOM_MULTILINESTRING; }
33143 #line 33144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33144     break;
33145 
33146   case 924:
33147 #line 7152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33148     { (yyval.geom_type)= Field::GEOM_POLYGON; }
33149 #line 33150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33150     break;
33151 
33152   case 925:
33153 #line 7153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33154     { (yyval.geom_type)= Field::GEOM_MULTIPOLYGON; }
33155 #line 33156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33156     break;
33157 
33158   case 926:
33159 #line 7157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33160     {}
33161 #line 33162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33162     break;
33163 
33164   case 927:
33165 #line 7161 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33166     {}
33167 #line 33168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33168     break;
33169 
33170   case 928:
33171 #line 7162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33172     {}
33173 #line 33174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33174     break;
33175 
33176   case 929:
33177 #line 7166 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33178     {}
33179 #line 33180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33180     break;
33181 
33182   case 930:
33183 #line 7167 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33184     {}
33185 #line 33186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33186     break;
33187 
33188   case 931:
33189 #line 7171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33190     {}
33191 #line 33192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33192     break;
33193 
33194   case 932:
33195 #line 7172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33196     {}
33197 #line 33198 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33198     break;
33199 
33200   case 933:
33201 #line 7173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33202     {}
33203 #line 33204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33204     break;
33205 
33206   case 934:
33207 #line 7174 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33208     {}
33209 #line 33210 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33210     break;
33211 
33212   case 935:
33213 #line 7175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33214     {}
33215 #line 33216 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33216     break;
33217 
33218   case 936:
33219 #line 7179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33220     { (yyval.type_handler)= &type_handler_long; }
33221 #line 33222 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33222     break;
33223 
33224   case 937:
33225 #line 7180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33226     { (yyval.type_handler)= &type_handler_tiny; }
33227 #line 33228 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33228     break;
33229 
33230   case 938:
33231 #line 7181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33232     { (yyval.type_handler)= &type_handler_short; }
33233 #line 33234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33234     break;
33235 
33236   case 939:
33237 #line 7182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33238     { (yyval.type_handler)= &type_handler_int24; }
33239 #line 33240 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33240     break;
33241 
33242   case 940:
33243 #line 7183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33244     { (yyval.type_handler)= &type_handler_longlong; }
33245 #line 33246 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33246     break;
33247 
33248   case 941:
33249 #line 7188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33250     {
33251             (yyval.type_handler)= thd->variables.sql_mode & MODE_REAL_AS_FLOAT ?
33252               static_cast<const Type_handler *>(&type_handler_float) :
33253               static_cast<const Type_handler *>(&type_handler_double);
33254           }
33255 #line 33256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33256     break;
33257 
33258   case 942:
33259 #line 7193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33260     { (yyval.type_handler)= &type_handler_double; }
33261 #line 33262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33262     break;
33263 
33264   case 943:
33265 #line 7194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33266     { (yyval.type_handler)= &type_handler_double; }
33267 #line 33268 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33268     break;
33269 
33270   case 944:
33271 #line 7199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33272     { Lex->last_field->srid= 0; }
33273 #line 33274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33274     break;
33275 
33276   case 945:
33277 #line 7202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33278     {
33279             Lex->last_field->srid=atoi((yyvsp[0].lex_str).str);
33280           }
33281 #line 33282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33282     break;
33283 
33284   case 946:
33285 #line 7208 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33286     { (yyval.Lex_length_and_dec).set(0, 0);  }
33287 #line 33288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33288     break;
33289 
33290   case 947:
33291 #line 7209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33292     { (yyval.Lex_length_and_dec).set((yyvsp[0].const_simple_string), 0); }
33293 #line 33294 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33294     break;
33295 
33296   case 948:
33297 #line 7210 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33298     { (yyval.Lex_length_and_dec)= (yyvsp[0].Lex_length_and_dec); }
33299 #line 33300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33300     break;
33301 
33302   case 949:
33303 #line 7214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33304     { (yyval.Lex_length_and_dec).set((yyvsp[-3].lex_str).str, (yyvsp[-1].lex_str).str); }
33305 #line 33306 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33306     break;
33307 
33308   case 950:
33309 #line 7218 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33310     {}
33311 #line 33312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33312     break;
33313 
33314   case 951:
33315 #line 7219 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33316     {}
33317 #line 33318 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33318     break;
33319 
33320   case 952:
33321 #line 7220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33322     { Lex->last_field->flags|= UNSIGNED_FLAG;}
33323 #line 33324 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33324     break;
33325 
33326   case 953:
33327 #line 7221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33328     { Lex->last_field->flags|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
33329 #line 33330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33330     break;
33331 
33332   case 954:
33333 #line 7222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33334     { Lex->last_field->flags|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
33335 #line 33336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33336     break;
33337 
33338   case 955:
33339 #line 7223 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33340     { Lex->last_field->flags|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
33341 #line 33342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33342     break;
33343 
33344   case 956:
33345 #line 7227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33346     { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
33347 #line 33348 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33348     break;
33349 
33350   case 957:
33351 #line 7228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33352     { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
33353 #line 33354 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33354     break;
33355 
33356   case 958:
33357 #line 7229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33358     { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
33359 #line 33360 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33360     break;
33361 
33362   case 959:
33363 #line 7230 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33364     { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
33365 #line 33366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33366     break;
33367 
33368   case 960:
33369 #line 7234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33370     { (yyval.const_simple_string)= (char*) 0; /* use default length */ }
33371 #line 33372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33372     break;
33373 
33374   case 961:
33375 #line 7235 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33376     { (yyval.const_simple_string)= (yyvsp[0].const_simple_string); }
33377 #line 33378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33378     break;
33379 
33380   case 962:
33381 #line 7239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33382     { (yyval.const_simple_string)= (char*) "1"; }
33383 #line 33384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33384     break;
33385 
33386   case 963:
33387 #line 7240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33388     { (yyval.const_simple_string)= (yyvsp[0].const_simple_string); }
33389 #line 33390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33390     break;
33391 
33392   case 964:
33393 #line 7244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33394     { (yyval.Lex_length_and_dec).set(0, 0); }
33395 #line 33396 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33396     break;
33397 
33398   case 965:
33399 #line 7245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33400     { (yyval.Lex_length_and_dec)= (yyvsp[0].Lex_length_and_dec); }
33401 #line 33402 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33402     break;
33403 
33404   case 966:
33405 #line 7250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33406     {}
33407 #line 33408 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33408     break;
33409 
33410   case 968:
33411 #line 7255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33412     { Lex->last_field->flags&= ~ NOT_NULL_FLAG; }
33413 #line 33414 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33414     break;
33415 
33416   case 969:
33417 #line 7256 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33418     { Lex->last_field->default_value= (yyvsp[0].virtual_column); }
33419 #line 33420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33420     break;
33421 
33422   case 970:
33423 #line 7258 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33424     {
33425             Item *item= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
33426             if (unlikely(item == NULL))
33427               MYSQL_YYABORT;
33428             Lex->last_field->on_update= item;
33429           }
33430 #line 33431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33431     break;
33432 
33433   case 971:
33434 #line 7264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33435     { Lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; }
33436 #line 33437 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33437     break;
33438 
33439   case 972:
33440 #line 7266 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33441     {
33442             LEX *lex=Lex;
33443             lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_KEY_FLAG;
33444             lex->alter_info.flags|= ALTER_ADD_INDEX;
33445           }
33446 #line 33447 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33447     break;
33448 
33449   case 973:
33450 #line 7272 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33451     {
33452             if (unlikely(Lex->charset && !my_charset_same(Lex->charset,(yyvsp[0].charset))))
33453               my_yyabort_error((ER_COLLATION_CHARSET_MISMATCH, MYF(0),
33454                                 (yyvsp[0].charset)->name,Lex->charset->csname));
33455             Lex->last_field->charset= (yyvsp[0].charset);
33456           }
33457 #line 33458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33458     break;
33459 
33460   case 975:
33461 #line 7282 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33462     { (yyval.const_simple_string)= NULL; }
33463 #line 33464 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33464     break;
33465 
33466   case 976:
33467 #line 7283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33468     { (yyval.const_simple_string)= (yyvsp[0].ident_sys).str; }
33469 #line 33470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33470     break;
33471 
33472   case 977:
33473 #line 7287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33474     {}
33475 #line 33476 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33476     break;
33477 
33478   case 978:
33479 #line 7288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33480     { }
33481 #line 33482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33482     break;
33483 
33484   case 979:
33485 #line 7293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33486     {
33487             if (unlikely(Lex->last_field->set_compressed((yyvsp[0].const_simple_string))))
33488               MYSQL_YYABORT;
33489           }
33490 #line 33491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33491     break;
33492 
33493   case 980:
33494 #line 7301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33495     {
33496             if (unlikely(Lex->last_field->set_compressed_deprecated(thd, (yyvsp[0].const_simple_string))))
33497               MYSQL_YYABORT;
33498           }
33499 #line 33500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33500     break;
33501 
33502   case 981:
33503 #line 7309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33504     {
33505             if (unlikely(Lex->last_field->
33506                 set_compressed_deprecated_column_attribute(thd, (yyvsp[-1].kwd).pos(), (yyvsp[0].const_simple_string))))
33507               MYSQL_YYABORT;
33508           }
33509 #line 33510 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33510     break;
33511 
33512   case 982:
33513 #line 7318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33514     {
33515             Lex->last_field->flags|= NOT_NULL_FLAG;
33516           }
33517 #line 33518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33518     break;
33519 
33520   case 983:
33521 #line 7322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33522     {
33523             LEX *lex=Lex;
33524             lex->last_field->flags|= PRI_KEY_FLAG | NOT_NULL_FLAG;
33525             lex->alter_info.flags|= ALTER_ADD_INDEX;
33526           }
33527 #line 33528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33528     break;
33529 
33530   case 986:
33531 #line 7333 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33532     {
33533             if (unlikely((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH))
33534               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
33535             (void) new (thd->mem_root)
33536                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].lex_str), true,
33537                                        &Lex->last_field->option_list,
33538                                        &Lex->option_list_last);
33539           }
33540 #line 33541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33541     break;
33542 
33543   case 987:
33544 #line 7342 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33545     {
33546             if (unlikely((yyvsp[0].ident_sys).length > ENGINE_OPTION_MAX_LENGTH))
33547               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
33548             (void) new (thd->mem_root)
33549                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ident_sys), false,
33550                                        &Lex->last_field->option_list,
33551                                        &Lex->option_list_last);
33552           }
33553 #line 33554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33554     break;
33555 
33556   case 988:
33557 #line 7351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33558     {
33559             (void) new (thd->mem_root)
33560                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ulonglong_number), &Lex->last_field->option_list,
33561                                        &Lex->option_list_last, thd->mem_root);
33562           }
33563 #line 33564 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33564     break;
33565 
33566   case 989:
33567 #line 7357 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33568     {
33569             (void) new (thd->mem_root)
33570                    engine_option_value((yyvsp[-2].ident_sys), &Lex->last_field->option_list,
33571                                        &Lex->option_list_last);
33572           }
33573 #line 33574 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33574     break;
33575 
33576   case 990:
33577 #line 7363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33578     {
33579             Lex->last_field->versioning= (yyvsp[-1].vers_column_versioning);
33580             Lex->create_info.options|= HA_VERSIONED_TABLE;
33581             if (Lex->alter_info.flags & ALTER_DROP_SYSTEM_VERSIONING)
33582             {
33583               my_yyabort_error((ER_VERS_NOT_VERSIONED, MYF(0),
33584                        Lex->create_last_non_select_table->table_name.str));
33585             }
33586           }
33587 #line 33588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33588     break;
33589 
33590   case 991:
33591 #line 7376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33592     {
33593             Lex->alter_info.flags|= ALTER_COLUMN_UNVERSIONED;
33594             Lex->create_info.vers_info.versioned_fields= true;
33595             (yyval.vers_column_versioning)= Column_definition::WITH_VERSIONING;
33596           }
33597 #line 33598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33598     break;
33599 
33600   case 992:
33601 #line 7382 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33602     {
33603             Lex->alter_info.flags|= ALTER_COLUMN_UNVERSIONED;
33604             Lex->create_info.vers_info.unversioned_fields= true;
33605             (yyval.vers_column_versioning)= Column_definition::WITHOUT_VERSIONING;
33606           }
33607 #line 33608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33608     break;
33609 
33610   case 993:
33611 #line 7391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33612     {}
33613 #line 33614 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33614     break;
33615 
33616   case 994:
33617 #line 7392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33618     {}
33619 #line 33620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33620     break;
33621 
33622   case 995:
33623 #line 7397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33624     {
33625             if (unlikely(!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,MY_CS_PRIMARY,MYF(0)))))
33626               my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str));
33627           }
33628 #line 33629 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33629     break;
33630 
33631   case 996:
33632 #line 7401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33633     { (yyval.charset)= &my_charset_bin; }
33634 #line 33635 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33635     break;
33636 
33637   case 997:
33638 #line 7405 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33639     { (yyval.charset)=(yyvsp[0].charset);   }
33640 #line 33641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33641     break;
33642 
33643   case 998:
33644 #line 7406 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33645     { (yyval.charset)=NULL; }
33646 #line 33647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33647     break;
33648 
33649   case 999:
33650 #line 7410 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33651     { (yyval.charset)= NULL; }
33652 #line 33653 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33653     break;
33654 
33655   case 1000:
33656 #line 7411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33657     { (yyval.charset)= (yyvsp[0].charset); }
33658 #line 33659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33659     break;
33660 
33661   case 1001:
33662 #line 7416 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33663     {
33664             if (unlikely(!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,
33665                                                     MY_CS_PRIMARY,MYF(0))) &&
33666                          !((yyval.charset)=get_old_charset_by_name((yyvsp[0].lex_str).str))))
33667               my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str));
33668           }
33669 #line 33670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33670     break;
33671 
33672   case 1002:
33673 #line 7422 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33674     { (yyval.charset)= &my_charset_bin; }
33675 #line 33676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33676     break;
33677 
33678   case 1003:
33679 #line 7426 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33680     { (yyval.charset)=(yyvsp[0].charset);   }
33681 #line 33682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33682     break;
33683 
33684   case 1004:
33685 #line 7427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33686     { (yyval.charset)=NULL; }
33687 #line 33688 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33688     break;
33689 
33690   case 1005:
33691 #line 7432 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33692     {
33693             if (unlikely(!((yyval.charset)= mysqld_collation_get_by_name((yyvsp[0].lex_str).str))))
33694               MYSQL_YYABORT;
33695           }
33696 #line 33697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33697     break;
33698 
33699   case 1006:
33700 #line 7439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33701     { (yyval.charset)=NULL; }
33702 #line 33703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33703     break;
33704 
33705   case 1007:
33706 #line 7440 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33707     { (yyval.charset)=(yyvsp[0].charset); }
33708 #line 33709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33709     break;
33710 
33711   case 1008:
33712 #line 7444 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33713     { (yyval.charset)=(yyvsp[0].charset); }
33714 #line 33715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33715     break;
33716 
33717   case 1009:
33718 #line 7445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33719     { (yyval.charset)=NULL; }
33720 #line 33721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33721     break;
33722 
33723   case 1010:
33724 #line 7449 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33725     {}
33726 #line 33727 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33727     break;
33728 
33729   case 1011:
33730 #line 7450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33731     {}
33732 #line 33733 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33733     break;
33734 
33735   case 1012:
33736 #line 7454 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33737     { (yyval.charset)= (yyvsp[0].charset); }
33738 #line 33739 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33739     break;
33740 
33741   case 1013:
33742 #line 7455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33743     { (yyval.charset)= &my_charset_latin1; }
33744 #line 33745 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33745     break;
33746 
33747   case 1014:
33748 #line 7457 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33749     {
33750             if (unlikely(!((yyval.charset)= get_charset_by_csname("ucs2", MY_CS_PRIMARY,MYF(0)))))
33751               my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), "ucs2"));
33752           }
33753 #line 33754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33754     break;
33755 
33756   case 1015:
33757 #line 7464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33758     {
33759            Lex->charset= (yyvsp[0].charset);
33760          }
33761 #line 33762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33762     break;
33763 
33764   case 1016:
33765 #line 7470 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33766     { bincmp_collation(NULL, false); }
33767 #line 33768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33768     break;
33769 
33770   case 1017:
33771 #line 7471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33772     {}
33773 #line 33774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33774     break;
33775 
33776   case 1018:
33777 #line 7475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33778     { bincmp_collation(&my_charset_bin, false); }
33779 #line 33780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33780     break;
33781 
33782   case 1019:
33783 #line 7476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33784     { bincmp_collation((yyvsp[-1].charset), (yyvsp[0].num)); }
33785 #line 33786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33786     break;
33787 
33788   case 1020:
33789 #line 7477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33790     { bincmp_collation(NULL, true); }
33791 #line 33792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33792     break;
33793 
33794   case 1021:
33795 #line 7478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33796     { bincmp_collation((yyvsp[0].charset), true); }
33797 #line 33798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33798     break;
33799 
33800   case 1022:
33801 #line 7480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33802     {
33803             if (!my_charset_same(Lex->charset, (yyvsp[-1].charset)))
33804               my_yyabort_error((ER_COLLATION_CHARSET_MISMATCH, MYF(0),
33805                                 Lex->charset->name, (yyvsp[-1].charset)->csname));
33806           }
33807 #line 33808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33808     break;
33809 
33810   case 1023:
33811 #line 7485 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33812     { }
33813 #line 33814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33814     break;
33815 
33816   case 1024:
33817 #line 7489 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33818     { (yyval.num)= false; }
33819 #line 33820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33820     break;
33821 
33822   case 1025:
33823 #line 7490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33824     { (yyval.num)= true; }
33825 #line 33826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33826     break;
33827 
33828   case 1026:
33829 #line 7495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33830     {
33831           if (unlikely((yyvsp[0].ulong_num) == 0))
33832           {
33833             thd->parse_error();
33834             MYSQL_YYABORT;
33835           }
33836         }
33837 #line 33838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33838     break;
33839 
33840   case 1027:
33841 #line 7503 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33842     { (yyval.ulong_num)= (yyvsp[-2].ulong_num); }
33843 #line 33844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33844     break;
33845 
33846   case 1028:
33847 #line 7507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33848     { (yyval.ulong_num)= 0; }
33849 #line 33850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33850     break;
33851 
33852   case 1029:
33853 #line 7508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33854     { (yyval.ulong_num)= 1 << MY_STRXFRM_DESC_SHIFT; }
33855 #line 33856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33856     break;
33857 
33858   case 1030:
33859 #line 7512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33860     { (yyval.ulong_num)= 1 << MY_STRXFRM_REVERSE_SHIFT; }
33861 #line 33862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33862     break;
33863 
33864   case 1031:
33865 #line 7515 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33866     { (yyval.ulong_num)= 0; }
33867 #line 33868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33868     break;
33869 
33870   case 1032:
33871 #line 7516 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33872     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
33873 #line 33874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33874     break;
33875 
33876   case 1033:
33877 #line 7517 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33878     { (yyval.ulong_num)= (yyvsp[-1].ulong_num) | (yyvsp[0].ulong_num); }
33879 #line 33880 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33880     break;
33881 
33882   case 1034:
33883 #line 7518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33884     { (yyval.ulong_num)= (yyvsp[0].ulong_num) ; }
33885 #line 33886 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33886     break;
33887 
33888   case 1035:
33889 #line 7523 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33890     {
33891           (yyval.ulong_num)= (yyvsp[0].ulong_num) < 1 ? 1 : ((yyvsp[0].ulong_num) > MY_STRXFRM_NLEVELS ? MY_STRXFRM_NLEVELS : (yyvsp[0].ulong_num));
33892           (yyval.ulong_num)--;
33893         }
33894 #line 33895 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33895     break;
33896 
33897   case 1036:
33898 #line 7531 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33899     {
33900           (yyval.ulong_num)= (1 | (yyvsp[0].ulong_num)) << (yyvsp[-1].ulong_num);
33901         }
33902 #line 33903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33903     break;
33904 
33905   case 1037:
33906 #line 7537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33907     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
33908 #line 33909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33909     break;
33910 
33911   case 1038:
33912 #line 7538 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33913     { (yyval.ulong_num)|= (yyvsp[0].ulong_num); }
33914 #line 33915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33915     break;
33916 
33917   case 1039:
33918 #line 7543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33919     {
33920           uint start= (yyvsp[-2].ulong_num);
33921           uint end= (yyvsp[0].ulong_num);
33922           for ((yyval.ulong_num)= 0; start <= end; start++)
33923             (yyval.ulong_num)|= (1 << start);
33924         }
33925 #line 33926 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33926     break;
33927 
33928   case 1040:
33929 #line 7552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33930     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
33931 #line 33932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33932     break;
33933 
33934   case 1041:
33935 #line 7553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33936     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
33937 #line 33938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33938     break;
33939 
33940   case 1042:
33941 #line 7557 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33942     { (yyval.ulong_num)= 0; }
33943 #line 33944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33944     break;
33945 
33946   case 1043:
33947 #line 7558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33948     { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
33949 #line 33950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33950     break;
33951 
33952   case 1046:
33953 #line 7572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33954     {
33955             (yyval.table)=(yyvsp[-3].table);
33956           }
33957 #line 33958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33958     break;
33959 
33960   case 1047:
33961 #line 7579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33962     { Lex->ref_list.empty(); }
33963 #line 33964 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33964     break;
33965 
33966   case 1049:
33967 #line 7585 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33968     {
33969             Key_part_spec *key= new (thd->mem_root) Key_part_spec(&(yyvsp[0].ident_sys), 0);
33970             if (unlikely(key == NULL))
33971               MYSQL_YYABORT;
33972             Lex->ref_list.push_back(key, thd->mem_root);
33973           }
33974 #line 33975 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33975     break;
33976 
33977   case 1050:
33978 #line 7592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33979     {
33980             Key_part_spec *key= new (thd->mem_root) Key_part_spec(&(yyvsp[0].ident_sys), 0);
33981             if (unlikely(key == NULL))
33982               MYSQL_YYABORT;
33983             LEX *lex= Lex;
33984             lex->ref_list.empty();
33985             lex->ref_list.push_back(key, thd->mem_root);
33986           }
33987 #line 33988 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33988     break;
33989 
33990   case 1051:
33991 #line 7604 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33992     { Lex->fk_match_option= Foreign_key::FK_MATCH_UNDEF; }
33993 #line 33994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
33994     break;
33995 
33996   case 1052:
33997 #line 7606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
33998     { Lex->fk_match_option= Foreign_key::FK_MATCH_FULL; }
33999 #line 34000 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34000     break;
34001 
34002   case 1053:
34003 #line 7608 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34004     { Lex->fk_match_option= Foreign_key::FK_MATCH_PARTIAL; }
34005 #line 34006 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34006     break;
34007 
34008   case 1054:
34009 #line 7610 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34010     { Lex->fk_match_option= Foreign_key::FK_MATCH_SIMPLE; }
34011 #line 34012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34012     break;
34013 
34014   case 1055:
34015 #line 7615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34016     {
34017             LEX *lex= Lex;
34018             lex->fk_update_opt= FK_OPTION_UNDEF;
34019             lex->fk_delete_opt= FK_OPTION_UNDEF;
34020           }
34021 #line 34022 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34022     break;
34023 
34024   case 1056:
34025 #line 7621 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34026     {
34027             LEX *lex= Lex;
34028             lex->fk_update_opt= (yyvsp[0].m_fk_option);
34029             lex->fk_delete_opt= FK_OPTION_UNDEF;
34030           }
34031 #line 34032 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34032     break;
34033 
34034   case 1057:
34035 #line 7627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34036     {
34037             LEX *lex= Lex;
34038             lex->fk_update_opt= FK_OPTION_UNDEF;
34039             lex->fk_delete_opt= (yyvsp[0].m_fk_option);
34040           }
34041 #line 34042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34042     break;
34043 
34044   case 1058:
34045 #line 7634 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34046     {
34047             LEX *lex= Lex;
34048             lex->fk_update_opt= (yyvsp[-3].m_fk_option);
34049             lex->fk_delete_opt= (yyvsp[0].m_fk_option);
34050           }
34051 #line 34052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34052     break;
34053 
34054   case 1059:
34055 #line 7641 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34056     {
34057             LEX *lex= Lex;
34058             lex->fk_update_opt= (yyvsp[0].m_fk_option);
34059             lex->fk_delete_opt= (yyvsp[-3].m_fk_option);
34060           }
34061 #line 34062 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34062     break;
34063 
34064   case 1060:
34065 #line 7649 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34066     { (yyval.m_fk_option)= FK_OPTION_RESTRICT; }
34067 #line 34068 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34068     break;
34069 
34070   case 1061:
34071 #line 7650 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34072     { (yyval.m_fk_option)= FK_OPTION_CASCADE; }
34073 #line 34074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34074     break;
34075 
34076   case 1062:
34077 #line 7651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34078     { (yyval.m_fk_option)= FK_OPTION_SET_NULL; }
34079 #line 34080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34080     break;
34081 
34082   case 1063:
34083 #line 7652 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34084     { (yyval.m_fk_option)= FK_OPTION_NO_ACTION; }
34085 #line 34086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34086     break;
34087 
34088   case 1064:
34089 #line 7653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34090     { (yyval.m_fk_option)= FK_OPTION_SET_DEFAULT; }
34091 #line 34092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34092     break;
34093 
34094   case 1065:
34095 #line 7657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34096     { (yyval.key_type)= Key::PRIMARY; }
34097 #line 34098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34098     break;
34099 
34100   case 1066:
34101 #line 7658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34102     { (yyval.key_type)= Key::UNIQUE; }
34103 #line 34104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34104     break;
34105 
34106   case 1067:
34107 #line 7662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34108     {}
34109 #line 34110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34110     break;
34111 
34112   case 1068:
34113 #line 7663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34114     {}
34115 #line 34116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34116     break;
34117 
34118   case 1069:
34119 #line 7667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34120     {}
34121 #line 34122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34122     break;
34123 
34124   case 1071:
34125 #line 7672 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34126     {}
34127 #line 34128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34128     break;
34129 
34130   case 1072:
34131 #line 7673 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34132     {}
34133 #line 34134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34134     break;
34135 
34136   case 1073:
34137 #line 7674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34138     {}
34139 #line 34140 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34140     break;
34141 
34142   case 1074:
34143 #line 7678 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34144     { (yyval.key_type)= Key::MULTIPLE; }
34145 #line 34146 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34146     break;
34147 
34148   case 1075:
34149 #line 7679 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34150     { (yyval.key_type)= Key::UNIQUE; }
34151 #line 34152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34152     break;
34153 
34154   case 1076:
34155 #line 7683 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34156     { (yyval.key_type)= Key::FULLTEXT;}
34157 #line 34158 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34158     break;
34159 
34160   case 1077:
34161 #line 7688 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34162     {
34163 #ifdef HAVE_SPATIAL
34164             (yyval.key_type)= Key::SPATIAL;
34165 #else
34166             my_yyabort_error((ER_FEATURE_DISABLED, MYF(0), sym_group_geom.name,
34167                               sym_group_geom.needed_define));
34168 #endif
34169           }
34170 #line 34171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34171     break;
34172 
34173   case 1078:
34174 #line 7699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34175     {}
34176 #line 34177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34177     break;
34178 
34179   case 1079:
34180 #line 7700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34181     { Lex->last_key->option_list= Lex->option_list; }
34182 #line 34183 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34183     break;
34184 
34185   case 1080:
34186 #line 7704 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34187     {}
34188 #line 34189 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34189     break;
34190 
34191   case 1081:
34192 #line 7705 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34193     { Lex->last_key->option_list= Lex->option_list; }
34194 #line 34195 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34195     break;
34196 
34197   case 1082:
34198 #line 7709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34199     {}
34200 #line 34201 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34201     break;
34202 
34203   case 1083:
34204 #line 7710 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34205     { Lex->last_key->option_list= Lex->option_list; }
34206 #line 34207 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34207     break;
34208 
34209   case 1090:
34210 #line 7729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34211     { (yyval.key_alg)= HA_KEY_ALG_UNDEF; }
34212 #line 34213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34213     break;
34214 
34215   case 1091:
34216 #line 7730 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34217     { (yyval.key_alg)= (yyvsp[0].key_alg); }
34218 #line 34219 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34219     break;
34220 
34221   case 1092:
34222 #line 7735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34223     { (yyval.key_alg)= HA_KEY_ALG_UNDEF; }
34224 #line 34225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34225     break;
34226 
34227   case 1093:
34228 #line 7736 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34229     { (yyval.key_alg)= (yyvsp[0].key_alg); }
34230 #line 34231 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34231     break;
34232 
34233   case 1094:
34234 #line 7737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34235     { (yyval.key_alg)= (yyvsp[0].key_alg); }
34236 #line 34237 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34237     break;
34238 
34239   case 1095:
34240 #line 7742 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34241     { Lex->last_key->key_create_info.algorithm= (yyvsp[0].key_alg); }
34242 #line 34243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34243     break;
34244 
34245   case 1096:
34246 #line 7744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34247     { Lex->last_key->key_create_info.algorithm= (yyvsp[0].key_alg); }
34248 #line 34249 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34249     break;
34250 
34251   case 1097:
34252 #line 7749 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34253     {
34254             Lex->last_key->key_create_info.block_size= (yyvsp[0].ulong_num);
34255             Lex->last_key->key_create_info.flags|= HA_USES_BLOCK_SIZE;
34256          }
34257 #line 34258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34258     break;
34259 
34260   case 1098:
34261 #line 7754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34262     { Lex->last_key->key_create_info.comment= (yyvsp[0].lex_str); }
34263 #line 34264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34264     break;
34265 
34266   case 1099:
34267 #line 7756 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34268     {
34269             if (unlikely((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH))
34270               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
34271             (void) new (thd->mem_root)
34272                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].lex_str), true, &Lex->option_list,
34273                                        &Lex->option_list_last);
34274           }
34275 #line 34276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34276     break;
34277 
34278   case 1100:
34279 #line 7764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34280     {
34281             if (unlikely((yyvsp[0].ident_sys).length > ENGINE_OPTION_MAX_LENGTH))
34282               my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
34283             (void) new (thd->mem_root)
34284                    engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ident_sys), false, &Lex->option_list,
34285                                        &Lex->option_list_last);
34286           }
34287 #line 34288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34288     break;
34289 
34290   case 1101:
34291 #line 7772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34292     {
34293             (void) new (thd->mem_root)
34294                   engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ulonglong_number), &Lex->option_list,
34295                                       &Lex->option_list_last, thd->mem_root);
34296           }
34297 #line 34298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34298     break;
34299 
34300   case 1102:
34301 #line 7778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34302     {
34303             (void) new (thd->mem_root)
34304                    engine_option_value((yyvsp[-2].ident_sys), &Lex->option_list,
34305                                        &Lex->option_list_last);
34306           }
34307 #line 34308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34308     break;
34309 
34310   case 1107:
34311 #line 7797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34312     {
34313             if (likely(plugin_is_ready(&(yyvsp[0].ident_sys), MYSQL_FTPARSER_PLUGIN)))
34314               Lex->last_key->key_create_info.parser_name= (yyvsp[0].ident_sys);
34315             else
34316               my_yyabort_error((ER_FUNCTION_NOT_DEFINED, MYF(0), (yyvsp[0].ident_sys).str));
34317           }
34318 #line 34319 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34319     break;
34320 
34321   case 1108:
34322 #line 7806 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34323     { (yyval.key_alg)= HA_KEY_ALG_BTREE; }
34324 #line 34325 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34325     break;
34326 
34327   case 1109:
34328 #line 7807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34329     { (yyval.key_alg)= HA_KEY_ALG_RTREE; }
34330 #line 34331 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34331     break;
34332 
34333   case 1110:
34334 #line 7808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34335     { (yyval.key_alg)= HA_KEY_ALG_HASH; }
34336 #line 34337 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34337     break;
34338 
34339   case 1111:
34340 #line 7813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34341     {
34342             Lex->last_key->columns.push_back((yyvsp[-1].key_part), thd->mem_root);
34343           }
34344 #line 34345 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34345     break;
34346 
34347   case 1112:
34348 #line 7817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34349     {
34350             Lex->last_key->columns.push_back((yyvsp[-1].key_part), thd->mem_root);
34351           }
34352 #line 34353 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34353     break;
34354 
34355   case 1113:
34356 #line 7824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34357     {
34358             (yyval.key_part)= new (thd->mem_root) Key_part_spec(&(yyvsp[0].ident_sys), 0);
34359             if (unlikely((yyval.key_part) == NULL))
34360               MYSQL_YYABORT;
34361           }
34362 #line 34363 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34363     break;
34364 
34365   case 1114:
34366 #line 7830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34367     {
34368             int key_part_len= atoi((yyvsp[-1].lex_str).str);
34369             if (unlikely(!key_part_len))
34370               my_yyabort_error((ER_KEY_PART_0, MYF(0), (yyvsp[-3].ident_sys).str));
34371             (yyval.key_part)= new (thd->mem_root) Key_part_spec(&(yyvsp[-3].ident_sys), (uint) key_part_len);
34372             if (unlikely((yyval.key_part) == NULL))
34373               MYSQL_YYABORT;
34374           }
34375 #line 34376 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34376     break;
34377 
34378   case 1115:
34379 #line 7841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34380     { (yyval.lex_str)= null_clex_str; }
34381 #line 34382 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34382     break;
34383 
34384   case 1116:
34385 #line 7842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34386     { (yyval.lex_str)= (yyvsp[0].lex_str); }
34387 #line 34388 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34388     break;
34389 
34390   case 1117:
34391 #line 7847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34392     { Lex->last_field->interval_list.push_back((yyvsp[0].string), thd->mem_root); }
34393 #line 34394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34394     break;
34395 
34396   case 1118:
34397 #line 7849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34398     { Lex->last_field->interval_list.push_back((yyvsp[0].string), thd->mem_root); }
34399 #line 34400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34400     break;
34401 
34402   case 1119:
34403 #line 7858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34404     {
34405             Lex->name= null_clex_str;
34406             Lex->table_type= TABLE_TYPE_UNKNOWN;
34407             Lex->sql_command= SQLCOM_ALTER_TABLE;
34408             Lex->duplicates= DUP_ERROR;
34409             Lex->first_select_lex()->order_list.empty();
34410             Lex->create_info.init();
34411             Lex->create_info.row_type= ROW_TYPE_NOT_USED;
34412             Lex->alter_info.reset();
34413             Lex->no_write_to_binlog= 0;
34414             Lex->create_info.storage_media= HA_SM_DEFAULT;
34415             if (Lex->main_select_push())
34416               MYSQL_YYABORT;
34417             DBUG_ASSERT(!Lex->m_sql_cmd);
34418           }
34419 #line 34420 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34420     break;
34421 
34422   case 1120:
34423 #line 7874 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34424     {
34425             if (!Lex->first_select_lex()->
34426                  add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
34427                                    TL_READ_NO_INSERT, MDL_SHARED_UPGRADABLE))
34428               MYSQL_YYABORT;
34429             Lex->first_select_lex()->db=
34430               (Lex->first_select_lex()->table_list.first)->db;
34431             Lex->create_last_non_select_table= Lex->last_table();
34432             Lex->mark_first_table_as_inserting();
34433           }
34434 #line 34435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34435     break;
34436 
34437   case 1121:
34438 #line 7885 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34439     {
34440             if (likely(!Lex->m_sql_cmd))
34441             {
34442               /* Create a generic ALTER TABLE statment. */
34443               Lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table();
34444               if (unlikely(Lex->m_sql_cmd == NULL))
34445                 MYSQL_YYABORT;
34446             }
34447             Lex->pop_select(); //main select
34448           }
34449 #line 34450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34450     break;
34451 
34452   case 1122:
34453 #line 7896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34454     {
34455             Lex->create_info.default_table_charset= NULL;
34456             Lex->create_info.used_fields= 0;
34457             if (Lex->main_select_push(true))
34458               MYSQL_YYABORT;
34459           }
34460 #line 34461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34461     break;
34462 
34463   case 1123:
34464 #line 7903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34465     {
34466             LEX *lex=Lex;
34467             lex->sql_command=SQLCOM_ALTER_DB;
34468             lex->name= (yyvsp[-2].ident_sys);
34469             if (lex->name.str == NULL &&
34470                 unlikely(lex->copy_db_to(&lex->name)))
34471               MYSQL_YYABORT;
34472             Lex->pop_select(); //main select
34473           }
34474 #line 34475 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34475     break;
34476 
34477   case 1124:
34478 #line 7913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34479     {
34480             LEX *lex= Lex;
34481             if (unlikely(lex->sphead))
34482               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "DATABASE"));
34483             lex->sql_command= SQLCOM_ALTER_DB_UPGRADE;
34484             lex->name= (yyvsp[-4].ident_sys);
34485           }
34486 #line 34487 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34487     break;
34488 
34489   case 1125:
34490 #line 7921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34491     {
34492             LEX *lex= Lex;
34493 
34494             if (unlikely(lex->sphead))
34495               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE"));
34496             if (Lex->main_select_push())
34497               MYSQL_YYABORT;
34498             lex->sp_chistics.init();
34499           }
34500 #line 34501 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34501     break;
34502 
34503   case 1126:
34504 #line 7931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34505     {
34506             LEX *lex=Lex;
34507 
34508             lex->sql_command= SQLCOM_ALTER_PROCEDURE;
34509             lex->spname= (yyvsp[-2].spname);
34510             Lex->pop_select(); //main select
34511             if (Lex->check_main_unit_semantics())
34512               MYSQL_YYABORT;
34513           }
34514 #line 34515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34515     break;
34516 
34517   case 1127:
34518 #line 7941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34519     {
34520             LEX *lex= Lex;
34521 
34522             if (unlikely(lex->sphead))
34523               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"));
34524             if (Lex->main_select_push())
34525               MYSQL_YYABORT;
34526             lex->sp_chistics.init();
34527           }
34528 #line 34529 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34529     break;
34530 
34531   case 1128:
34532 #line 7951 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34533     {
34534             LEX *lex=Lex;
34535 
34536             lex->sql_command= SQLCOM_ALTER_FUNCTION;
34537             lex->spname= (yyvsp[-2].spname);
34538             Lex->pop_select(); //main select
34539             if (Lex->check_main_unit_semantics())
34540               MYSQL_YYABORT;
34541           }
34542 #line 34543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34543     break;
34544 
34545   case 1129:
34546 #line 7961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34547     {
34548             if (Lex->main_select_push())
34549               MYSQL_YYABORT;
34550             if (Lex->add_alter_view(thd, (yyvsp[-4].num), (yyvsp[-2].view_suid), (yyvsp[0].table)))
34551               MYSQL_YYABORT;
34552           }
34553 #line 34554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34554     break;
34555 
34556   case 1130:
34557 #line 7968 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34558     {
34559             Lex->pop_select(); //main select
34560             if (Lex->check_main_unit_semantics())
34561               MYSQL_YYABORT;
34562           }
34563 #line 34564 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34564     break;
34565 
34566   case 1131:
34567 #line 7979 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34568     {
34569             if (Lex->main_select_push())
34570               MYSQL_YYABORT;
34571             if (Lex->add_alter_view(thd, VIEW_ALGORITHM_INHERIT, (yyvsp[-2].view_suid), (yyvsp[0].table)))
34572               MYSQL_YYABORT;
34573           }
34574 #line 34575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34575     break;
34576 
34577   case 1132:
34578 #line 7986 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34579     {
34580             Lex->pop_select(); //main select
34581             if (Lex->check_main_unit_semantics())
34582               MYSQL_YYABORT;
34583           }
34584 #line 34585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34585     break;
34586 
34587   case 1133:
34588 #line 7992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34589     {
34590             if (Lex->main_select_push())
34591               MYSQL_YYABORT;
34592             /*
34593               It is safe to use Lex->spname because
34594               ALTER EVENT xxx RENATE TO yyy DO ALTER EVENT RENAME TO
34595               is not allowed. Lex->spname is used in the case of RENAME TO
34596               If it had to be supported spname had to be added to
34597               Event_parse_data.
34598             */
34599 
34600             if (unlikely(!(Lex->event_parse_data= Event_parse_data::new_instance(thd))))
34601               MYSQL_YYABORT;
34602             Lex->event_parse_data->identifier= (yyvsp[0].spname);
34603 
34604             Lex->sql_command= SQLCOM_ALTER_EVENT;
34605             Lex->stmt_definition_begin= (yyvsp[-2].simple_string);
34606           }
34607 #line 34608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34608     break;
34609 
34610   case 1134:
34611 #line 8015 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34612     {
34613             if (unlikely(!((yyvsp[-4].num) || (yyvsp[-3].num) || (yyvsp[-2].num) || (yyvsp[-1].num) || (yyvsp[0].num))))
34614             {
34615               thd->parse_error();
34616               MYSQL_YYABORT;
34617             }
34618             /*
34619               sql_command is set here because some rules in ev_sql_stmt
34620               can overwrite it
34621             */
34622             Lex->sql_command= SQLCOM_ALTER_EVENT;
34623             Lex->stmt_definition_end= (char*)YYLIP->get_cpp_ptr();
34624 
34625             Lex->pop_select(); //main select
34626           }
34627 #line 34628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34628     break;
34629 
34630   case 1135:
34631 #line 8031 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34632     {
34633             LEX *lex= Lex;
34634             lex->alter_tablespace_info->ts_cmd_type= ALTER_TABLESPACE;
34635           }
34636 #line 34637 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34637     break;
34638 
34639   case 1136:
34640 #line 8036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34641     {
34642             LEX *lex= Lex;
34643             lex->alter_tablespace_info->ts_cmd_type= ALTER_LOGFILE_GROUP;
34644           }
34645 #line 34646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34646     break;
34647 
34648   case 1137:
34649 #line 8041 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34650     {
34651             LEX *lex= Lex;
34652             lex->alter_tablespace_info->ts_cmd_type= CHANGE_FILE_TABLESPACE;
34653           }
34654 #line 34655 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34655     break;
34656 
34657   case 1138:
34658 #line 8046 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34659     {
34660             LEX *lex= Lex;
34661             lex->alter_tablespace_info->ts_cmd_type= ALTER_ACCESS_MODE_TABLESPACE;
34662           }
34663 #line 34664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34664     break;
34665 
34666   case 1139:
34667 #line 8051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34668     {
34669             LEX *lex= Lex;
34670             lex->sql_command= SQLCOM_ALTER_SERVER;
34671             lex->server_options.reset((yyvsp[0].lex_str));
34672           }
34673 #line 34674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34674     break;
34675 
34676   case 1140:
34677 #line 8055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34678     { }
34679 #line 34680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34680     break;
34681 
34682   case 1141:
34683 #line 8059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34684     {
34685             Lex->create_info.set((yyvsp[-5].object_ddl_options));
34686             Lex->sql_command= SQLCOM_ALTER_USER;
34687           }
34688 #line 34689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34689     break;
34690 
34691   case 1142:
34692 #line 8064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34693     {
34694             LEX *lex= Lex;
34695             lex->name= null_clex_str;
34696             lex->table_type= TABLE_TYPE_UNKNOWN;
34697             lex->sql_command= SQLCOM_ALTER_SEQUENCE;
34698             lex->create_info.init();
34699             lex->no_write_to_binlog= 0;
34700             DBUG_ASSERT(!lex->m_sql_cmd);
34701             if (Lex->main_select_push())
34702               MYSQL_YYABORT;
34703           }
34704 #line 34705 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34705     break;
34706 
34707   case 1143:
34708 #line 8076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34709     {
34710             LEX *lex= Lex;
34711             if (!(lex->create_info.seq_create_info= new (thd->mem_root)
34712                                                      sequence_definition()) ||
34713                 !lex->first_select_lex()->
34714                   add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_SEQUENCE,
34715                                     TL_WRITE, MDL_EXCLUSIVE))
34716               MYSQL_YYABORT;
34717           }
34718 #line 34719 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34719     break;
34720 
34721   case 1144:
34722 #line 8086 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34723     {
34724             /* Create a generic ALTER SEQUENCE statment. */
34725             Lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_sequence((yyvsp[-4].object_ddl_options));
34726             if (unlikely(Lex->m_sql_cmd == NULL))
34727               MYSQL_YYABORT;
34728             Lex->pop_select(); //main select
34729             if (Lex->check_main_unit_semantics())
34730               MYSQL_YYABORT;
34731           }
34732 #line 34733 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34733     break;
34734 
34735   case 1145:
34736 #line 8099 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34737     {
34738             Lex->account_options.account_locked= ACCOUNTLOCK_LOCKED;
34739           }
34740 #line 34741 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34741     break;
34742 
34743   case 1146:
34744 #line 8103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34745     {
34746             Lex->account_options.account_locked= ACCOUNTLOCK_UNLOCKED;
34747           }
34748 #line 34749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34749     break;
34750 
34751   case 1147:
34752 #line 8110 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34753     {
34754             Lex->account_options.password_expire= PASSWORD_EXPIRE_NOW;
34755           }
34756 #line 34757 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34757     break;
34758 
34759   case 1148:
34760 #line 8114 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34761     {
34762             Lex->account_options.password_expire= PASSWORD_EXPIRE_NEVER;
34763           }
34764 #line 34765 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34765     break;
34766 
34767   case 1149:
34768 #line 8118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34769     {
34770             Lex->account_options.password_expire= PASSWORD_EXPIRE_DEFAULT;
34771           }
34772 #line 34773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34773     break;
34774 
34775   case 1150:
34776 #line 8122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34777     {
34778             Lex->account_options.password_expire= PASSWORD_EXPIRE_INTERVAL;
34779             if (!(Lex->account_options.num_expiration_days= atoi((yyvsp[-1].lex_str).str)))
34780               my_yyabort_error((ER_WRONG_VALUE, MYF(0), "DAY", (yyvsp[-1].lex_str).str));
34781           }
34782 #line 34783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34783     break;
34784 
34785   case 1156:
34786 #line 8138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34787     { (yyval.num)= 0;}
34788 #line 34789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34789     break;
34790 
34791   case 1157:
34792 #line 8139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34793     { (yyval.num)= 1; }
34794 #line 34795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34795     break;
34796 
34797   case 1158:
34798 #line 8140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34799     { (yyval.num)= 1; }
34800 #line 34801 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34801     break;
34802 
34803   case 1159:
34804 #line 8141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34805     { (yyval.num)= 1; }
34806 #line 34807 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34807     break;
34808 
34809   case 1160:
34810 #line 8145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34811     { (yyval.num)= 0;}
34812 #line 34813 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34813     break;
34814 
34815   case 1161:
34816 #line 8147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34817     {
34818             /*
34819               Use lex's spname to hold the new name.
34820               The original name is in the Event_parse_data object
34821             */
34822             Lex->spname= (yyvsp[0].spname);
34823             (yyval.num)= 1;
34824           }
34825 #line 34826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34826     break;
34827 
34828   case 1162:
34829 #line 8158 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34830     { (yyval.num)= 0;}
34831 #line 34832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34832     break;
34833 
34834   case 1163:
34835 #line 8159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34836     { (yyval.num)= 1; }
34837 #line 34838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34838     break;
34839 
34840   case 1164:
34841 #line 8163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34842     { (yyval.ident_sys)= Lex_ident_sys(); }
34843 #line 34844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34844     break;
34845 
34846   case 1167:
34847 #line 8170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34848     {
34849             Lex->m_sql_cmd= new (thd->mem_root)
34850               Sql_cmd_discard_import_tablespace(
34851                 Sql_cmd_discard_import_tablespace::DISCARD_TABLESPACE);
34852             if (unlikely(Lex->m_sql_cmd == NULL))
34853               MYSQL_YYABORT;
34854           }
34855 #line 34856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34856     break;
34857 
34858   case 1168:
34859 #line 8178 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34860     {
34861             Lex->m_sql_cmd= new (thd->mem_root)
34862               Sql_cmd_discard_import_tablespace(
34863                 Sql_cmd_discard_import_tablespace::IMPORT_TABLESPACE);
34864             if (unlikely(Lex->m_sql_cmd == NULL))
34865               MYSQL_YYABORT;
34866           }
34867 #line 34868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34868     break;
34869 
34870   case 1174:
34871 #line 8200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34872     {
34873             Lex->alter_info.partition_flags|= ALTER_PARTITION_DROP;
34874             DBUG_ASSERT(!Lex->if_exists());
34875             Lex->create_info.add((yyvsp[-1].object_ddl_options));
34876           }
34877 #line 34878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34878     break;
34879 
34880   case 1175:
34881 #line 8207 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34882     {
34883             LEX *lex= Lex;
34884             lex->alter_info.partition_flags|= ALTER_PARTITION_REBUILD;
34885             lex->no_write_to_binlog= (yyvsp[-1].num);
34886           }
34887 #line 34888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34888     break;
34889 
34890   case 1176:
34891 #line 8214 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34892     {
34893             LEX *lex= thd->lex;
34894             lex->no_write_to_binlog= (yyvsp[-1].num);
34895             lex->check_opt.init();
34896             DBUG_ASSERT(!lex->m_sql_cmd);
34897             lex->m_sql_cmd= new (thd->mem_root)
34898                               Sql_cmd_alter_table_optimize_partition();
34899             if (unlikely(lex->m_sql_cmd == NULL))
34900               MYSQL_YYABORT;
34901           }
34902 #line 34903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34903     break;
34904 
34905   case 1178:
34906 #line 8227 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34907     {
34908             LEX *lex= thd->lex;
34909             lex->no_write_to_binlog= (yyvsp[-1].num);
34910             lex->check_opt.init();
34911             DBUG_ASSERT(!lex->m_sql_cmd);
34912             lex->m_sql_cmd= new (thd->mem_root)
34913                               Sql_cmd_alter_table_analyze_partition();
34914             if (unlikely(lex->m_sql_cmd == NULL))
34915                MYSQL_YYABORT;
34916           }
34917 #line 34918 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34918     break;
34919 
34920   case 1179:
34921 #line 8238 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34922     {
34923             LEX *lex= thd->lex;
34924             lex->check_opt.init();
34925             DBUG_ASSERT(!lex->m_sql_cmd);
34926             lex->m_sql_cmd= new (thd->mem_root)
34927                               Sql_cmd_alter_table_check_partition();
34928             if (unlikely(lex->m_sql_cmd == NULL))
34929               MYSQL_YYABORT;
34930           }
34931 #line 34932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34932     break;
34933 
34934   case 1181:
34935 #line 8250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34936     {
34937             LEX *lex= thd->lex;
34938             lex->no_write_to_binlog= (yyvsp[-1].num);
34939             lex->check_opt.init();
34940             DBUG_ASSERT(!lex->m_sql_cmd);
34941             lex->m_sql_cmd= new (thd->mem_root)
34942                               Sql_cmd_alter_table_repair_partition();
34943             if (unlikely(lex->m_sql_cmd == NULL))
34944               MYSQL_YYABORT;
34945           }
34946 #line 34947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34947     break;
34948 
34949   case 1183:
34950 #line 8262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34951     {
34952             LEX *lex= Lex;
34953             lex->alter_info.partition_flags|= ALTER_PARTITION_COALESCE;
34954             lex->no_write_to_binlog= (yyvsp[-1].num);
34955             lex->alter_info.num_parts= (yyvsp[0].ulong_num);
34956           }
34957 #line 34958 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34958     break;
34959 
34960   case 1184:
34961 #line 8269 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34962     {
34963             LEX *lex= thd->lex;
34964             lex->check_opt.init();
34965             DBUG_ASSERT(!lex->m_sql_cmd);
34966             lex->m_sql_cmd= new (thd->mem_root)
34967                               Sql_cmd_alter_table_truncate_partition();
34968             if (unlikely(lex->m_sql_cmd == NULL))
34969               MYSQL_YYABORT;
34970           }
34971 #line 34972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34972     break;
34973 
34974   case 1186:
34975 #line 8281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34976     {
34977             if (Lex->stmt_alter_table_exchange_partition((yyvsp[-1].table)))
34978               MYSQL_YYABORT;
34979           }
34980 #line 34981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34981     break;
34982 
34983   case 1187:
34984 #line 8289 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34985     {
34986             Lex->alter_info.partition_flags|= ALTER_PARTITION_REMOVE;
34987           }
34988 #line 34989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34989     break;
34990 
34991   case 1188:
34992 #line 8296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
34993     {
34994             Lex->alter_info.partition_flags|= ALTER_PARTITION_ALL;
34995           }
34996 #line 34997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
34997     break;
34998 
34999   case 1190:
35000 #line 8305 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35001     {
35002             LEX *lex= Lex;
35003             lex->part_info= new (thd->mem_root) partition_info();
35004             if (unlikely(!lex->part_info))
35005               MYSQL_YYABORT;
35006 
35007             lex->alter_info.partition_flags|= ALTER_PARTITION_ADD;
35008             DBUG_ASSERT(!Lex->create_info.if_not_exists());
35009             lex->create_info.set((yyvsp[-1].object_ddl_options));
35010             lex->no_write_to_binlog= (yyvsp[0].num);
35011           }
35012 #line 35013 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35013     break;
35014 
35015   case 1191:
35016 #line 8317 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35017     {}
35018 #line 35019 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35019     break;
35020 
35021   case 1193:
35022 #line 8323 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35023     {
35024             LEX *lex= Lex;
35025             lex->part_info->num_parts= lex->part_info->partitions.elements;
35026           }
35027 #line 35028 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35028     break;
35029 
35030   case 1194:
35031 #line 8328 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35032     {
35033             Lex->part_info->num_parts= (yyvsp[0].ulong_num);
35034           }
35035 #line 35036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35036     break;
35037 
35038   case 1195:
35039 #line 8335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35040     {
35041             LEX *lex= Lex;
35042             lex->part_info= new (thd->mem_root) partition_info();
35043             if (unlikely(!lex->part_info))
35044               MYSQL_YYABORT;
35045 
35046             lex->no_write_to_binlog= (yyvsp[0].num);
35047           }
35048 #line 35049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35049     break;
35050 
35051   case 1197:
35052 #line 8348 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35053     {
35054             Lex->alter_info.partition_flags|= ALTER_PARTITION_TABLE_REORG;
35055           }
35056 #line 35057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35057     break;
35058 
35059   case 1198:
35060 #line 8352 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35061     {
35062             Lex->alter_info.partition_flags|= ALTER_PARTITION_REORGANIZE;
35063           }
35064 #line 35065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35065     break;
35066 
35067   case 1199:
35068 #line 8356 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35069     {
35070             partition_info *part_info= Lex->part_info;
35071             part_info->num_parts= part_info->partitions.elements;
35072           }
35073 #line 35074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35074     break;
35075 
35076   case 1200:
35077 #line 8363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35078     {}
35079 #line 35080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35080     break;
35081 
35082   case 1201:
35083 #line 8364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35084     {}
35085 #line 35086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35086     break;
35087 
35088   case 1202:
35089 #line 8369 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35090     {
35091             if (unlikely(Lex->alter_info.partition_names.push_back((yyvsp[0].ident_sys).str,
35092                                                                    thd->mem_root)))
35093               MYSQL_YYABORT;
35094           }
35095 #line 35096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35096     break;
35097 
35098   case 1206:
35099 #line 8391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35100     {
35101             LEX *lex=Lex;
35102             lex->create_last_non_select_table= lex->last_table();
35103             lex->alter_info.flags|= ALTER_PARSER_ADD_COLUMN;
35104             (yyvsp[-1].create_field)->after= (yyvsp[0].lex_str);
35105           }
35106 #line 35107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35107     break;
35108 
35109   case 1207:
35110 #line 8398 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35111     {
35112             Lex->create_last_non_select_table= Lex->last_table();
35113             Lex->alter_info.flags|= ALTER_ADD_INDEX;
35114           }
35115 #line 35116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35116     break;
35117 
35118   case 1208:
35119 #line 8403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35120     {
35121             Lex->alter_info.flags|= ALTER_ADD_PERIOD;
35122           }
35123 #line 35124 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35124     break;
35125 
35126   case 1209:
35127 #line 8408 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35128     {
35129             Table_period_info &period= Lex->create_info.period_info;
35130             period.create_if_not_exists= Lex->check_exists;
35131             Lex->alter_info.flags|= ALTER_ADD_CHECK_CONSTRAINT;
35132           }
35133 #line 35134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35134     break;
35135 
35136   case 1210:
35137 #line 8414 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35138     {
35139             LEX *lex=Lex;
35140             lex->alter_info.flags|= ALTER_PARSER_ADD_COLUMN;
35141             if (!lex->alter_info.key_list.is_empty())
35142               lex->alter_info.flags|= ALTER_ADD_INDEX;
35143           }
35144 #line 35145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35145     break;
35146 
35147   case 1211:
35148 #line 8421 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35149     {
35150             Lex->alter_info.flags|= ALTER_ADD_CHECK_CONSTRAINT;
35151 	  }
35152 #line 35153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35153     break;
35154 
35155   case 1212:
35156 #line 8425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35157     {
35158            Lex->alter_info.flags|= ALTER_ADD_CHECK_CONSTRAINT;
35159            Lex->add_constraint((yyvsp[-1].lex_str), (yyvsp[0].virtual_column), TRUE);
35160          }
35161 #line 35162 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35162     break;
35163 
35164   case 1213:
35165 #line 8431 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35166     {
35167             Lex->alter_info.flags|= ALTER_CHANGE_COLUMN | ALTER_RENAME_COLUMN;
35168             Lex->create_last_non_select_table= Lex->last_table();
35169             (yyvsp[-1].create_field)->change= (yyvsp[-2].lex_str);
35170             (yyvsp[-1].create_field)->after= (yyvsp[0].lex_str);
35171           }
35172 #line 35173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35173     break;
35174 
35175   case 1214:
35176 #line 8439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35177     {
35178             Lex->alter_info.flags|= ALTER_CHANGE_COLUMN;
35179             Lex->create_last_non_select_table= Lex->last_table();
35180             (yyvsp[-1].create_field)->change= (yyvsp[-1].create_field)->field_name;
35181             (yyvsp[-1].create_field)->after= (yyvsp[0].lex_str);
35182           }
35183 #line 35184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35184     break;
35185 
35186   case 1215:
35187 #line 8446 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35188     {
35189             LEX *lex=Lex;
35190             Alter_drop *ad= (new (thd->mem_root)
35191                              Alter_drop(Alter_drop::COLUMN, (yyvsp[-1].lex_str).str, (yyvsp[-2].num)));
35192             if (unlikely(ad == NULL))
35193               MYSQL_YYABORT;
35194             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
35195             lex->alter_info.flags|= ALTER_PARSER_DROP_COLUMN;
35196           }
35197 #line 35198 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35198     break;
35199 
35200   case 1216:
35201 #line 8456 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35202     {
35203             LEX *lex=Lex;
35204             Alter_drop *ad= (new (thd->mem_root)
35205                              Alter_drop(Alter_drop::CHECK_CONSTRAINT,
35206                                         (yyvsp[0].lex_str).str, (yyvsp[-1].num)));
35207             if (unlikely(ad == NULL))
35208               MYSQL_YYABORT;
35209             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
35210             lex->alter_info.flags|= ALTER_DROP_CHECK_CONSTRAINT;
35211           }
35212 #line 35213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35213     break;
35214 
35215   case 1217:
35216 #line 8467 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35217     {
35218             LEX *lex=Lex;
35219             Alter_drop *ad= (new (thd->mem_root)
35220                              Alter_drop(Alter_drop::FOREIGN_KEY, (yyvsp[0].lex_str).str, (yyvsp[-1].num)));
35221             if (unlikely(ad == NULL))
35222               MYSQL_YYABORT;
35223             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
35224             lex->alter_info.flags|= ALTER_DROP_FOREIGN_KEY;
35225           }
35226 #line 35227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35227     break;
35228 
35229   case 1218:
35230 #line 8477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35231     {
35232             LEX *lex=Lex;
35233             Alter_drop *ad= (new (thd->mem_root)
35234                              Alter_drop(Alter_drop::KEY, primary_key_name,
35235                                         FALSE));
35236             if (unlikely(ad == NULL))
35237               MYSQL_YYABORT;
35238             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
35239             lex->alter_info.flags|= ALTER_DROP_INDEX;
35240           }
35241 #line 35242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35242     break;
35243 
35244   case 1219:
35245 #line 8488 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35246     {
35247             LEX *lex=Lex;
35248             Alter_drop *ad= (new (thd->mem_root)
35249                              Alter_drop(Alter_drop::KEY, (yyvsp[0].lex_str).str, (yyvsp[-1].num)));
35250             if (unlikely(ad == NULL))
35251               MYSQL_YYABORT;
35252             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
35253             lex->alter_info.flags|= ALTER_DROP_INDEX;
35254           }
35255 #line 35256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35256     break;
35257 
35258   case 1220:
35259 #line 8498 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35260     {
35261             LEX *lex=Lex;
35262             lex->alter_info.keys_onoff= Alter_info::DISABLE;
35263             lex->alter_info.flags|= ALTER_KEYS_ONOFF;
35264           }
35265 #line 35266 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35266     break;
35267 
35268   case 1221:
35269 #line 8504 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35270     {
35271             LEX *lex=Lex;
35272             lex->alter_info.keys_onoff= Alter_info::ENABLE;
35273             lex->alter_info.flags|= ALTER_KEYS_ONOFF;
35274           }
35275 #line 35276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35276     break;
35277 
35278   case 1222:
35279 #line 8510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35280     {
35281             if (check_expression((yyvsp[0].virtual_column), &(yyvsp[-3].lex_str), VCOL_DEFAULT))
35282               MYSQL_YYABORT;
35283             if (unlikely(Lex->add_alter_list((yyvsp[-3].lex_str).str, (yyvsp[0].virtual_column), (yyvsp[-4].num))))
35284               MYSQL_YYABORT;
35285           }
35286 #line 35287 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35287     break;
35288 
35289   case 1223:
35290 #line 8517 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35291     {
35292             if (unlikely(Lex->add_alter_list((yyvsp[-2].lex_str).str, (Virtual_column_info*) 0,
35293                                              (yyvsp[-3].num))))
35294               MYSQL_YYABORT;
35295           }
35296 #line 35297 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35297     break;
35298 
35299   case 1224:
35300 #line 8523 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35301     {
35302             LEX *lex=Lex;
35303             lex->first_select_lex()->db= (yyvsp[0].table)->db;
35304             if (lex->first_select_lex()->db.str == NULL &&
35305                 lex->copy_db_to(&lex->first_select_lex()->db))
35306               MYSQL_YYABORT;
35307             if (unlikely(check_table_name((yyvsp[0].table)->table.str,(yyvsp[0].table)->table.length,
35308                                           FALSE)) ||
35309                 ((yyvsp[0].table)->db.str && unlikely(check_db_name((LEX_STRING*) &(yyvsp[0].table)->db))))
35310               my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[0].table)->table.str));
35311             lex->name= (yyvsp[0].table)->table;
35312             lex->alter_info.flags|= ALTER_RENAME;
35313           }
35314 #line 35315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35315     break;
35316 
35317   case 1225:
35318 #line 8537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35319     {
35320             if (!(yyvsp[-1].charset))
35321             {
35322               (yyvsp[-1].charset)= thd->variables.collation_database;
35323             }
35324             (yyvsp[0].charset)= (yyvsp[0].charset) ? (yyvsp[0].charset) : (yyvsp[-1].charset);
35325             if (unlikely(!my_charset_same((yyvsp[-1].charset),(yyvsp[0].charset))))
35326               my_yyabort_error((ER_COLLATION_CHARSET_MISMATCH, MYF(0),
35327                                 (yyvsp[0].charset)->name, (yyvsp[-1].charset)->csname));
35328             if (unlikely(Lex->create_info.add_alter_list_item_convert_to_charset((yyvsp[0].charset))))
35329               MYSQL_YYABORT;
35330             Lex->alter_info.flags|= ALTER_CONVERT_TO;
35331           }
35332 #line 35333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35333     break;
35334 
35335   case 1226:
35336 #line 8551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35337     {
35338             LEX *lex=Lex;
35339             lex->alter_info.flags|= ALTER_OPTIONS;
35340           }
35341 #line 35342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35342     break;
35343 
35344   case 1227:
35345 #line 8556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35346     {
35347             Lex->alter_info.flags|= ALTER_RECREATE;
35348           }
35349 #line 35350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35350     break;
35351 
35352   case 1228:
35353 #line 8560 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35354     {
35355             LEX *lex=Lex;
35356             lex->alter_info.flags|= ALTER_ORDER;
35357           }
35358 #line 35359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35359     break;
35360 
35361   case 1231:
35362 #line 8567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35363     {
35364             Lex->alter_info.flags|= ALTER_ADD_SYSTEM_VERSIONING;
35365             Lex->create_info.options|= HA_VERSIONED_TABLE;
35366           }
35367 #line 35368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35368     break;
35369 
35370   case 1232:
35371 #line 8572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35372     {
35373             Lex->alter_info.flags|= ALTER_DROP_SYSTEM_VERSIONING;
35374             Lex->create_info.options&= ~HA_VERSIONED_TABLE;
35375           }
35376 #line 35377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35377     break;
35378 
35379   case 1233:
35380 #line 8577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35381     {
35382             Lex->alter_info.flags|= ALTER_DROP_PERIOD;
35383           }
35384 #line 35385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35385     break;
35386 
35387   case 1234:
35388 #line 8581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35389     {
35390             Alter_drop *ad= new Alter_drop(Alter_drop::PERIOD, (yyvsp[0].ident_sys).str, (yyvsp[-2].num));
35391             if (unlikely(ad == NULL))
35392               MYSQL_YYABORT;
35393             Lex->alter_info.drop_list.push_back(ad, thd->mem_root);
35394             Lex->alter_info.flags|= ALTER_DROP_CHECK_CONSTRAINT;
35395           }
35396 #line 35397 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35397     break;
35398 
35399   case 1240:
35400 #line 8600 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35401     {
35402             Lex->alter_info.set_requested_algorithm(
35403               Alter_info::ALTER_TABLE_ALGORITHM_DEFAULT);
35404           }
35405 #line 35406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35406     break;
35407 
35408   case 1241:
35409 #line 8605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35410     {
35411             if (unlikely(Lex->alter_info.set_requested_algorithm(&(yyvsp[0].ident_sys))))
35412               my_yyabort_error((ER_UNKNOWN_ALTER_ALGORITHM, MYF(0), (yyvsp[0].ident_sys).str));
35413           }
35414 #line 35415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35415     break;
35416 
35417   case 1242:
35418 #line 8613 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35419     {
35420             Lex->alter_info.requested_lock=
35421               Alter_info::ALTER_TABLE_LOCK_DEFAULT;
35422           }
35423 #line 35424 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35424     break;
35425 
35426   case 1243:
35427 #line 8618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35428     {
35429             if (unlikely(Lex->alter_info.set_requested_lock(&(yyvsp[0].ident_sys))))
35430               my_yyabort_error((ER_UNKNOWN_ALTER_LOCK, MYF(0), (yyvsp[0].ident_sys).str));
35431           }
35432 #line 35433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35433     break;
35434 
35435   case 1244:
35436 #line 8625 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35437     {}
35438 #line 35439 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35439     break;
35440 
35441   case 1245:
35442 #line 8626 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35443     {}
35444 #line 35445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35445     break;
35446 
35447   case 1246:
35448 #line 8630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35449     { Lex->ignore= 0;}
35450 #line 35451 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35451     break;
35452 
35453   case 1247:
35454 #line 8631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35455     { Lex->ignore= 1;}
35456 #line 35457 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35457     break;
35458 
35459   case 1248:
35460 #line 8635 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35461     { Lex->ignore= 0;}
35462 #line 35463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35463     break;
35464 
35465   case 1254:
35466 #line 8649 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35467     { Lex->ignore= 1;}
35468 #line 35469 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35469     break;
35470 
35471   case 1255:
35472 #line 8651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35473     {
35474             Lex->alter_info.requested_lock=
35475               Alter_info::ALTER_TABLE_LOCK_NONE;
35476           }
35477 #line 35478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35478     break;
35479 
35480   case 1256:
35481 #line 8658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35482     { Lex->drop_mode= DROP_DEFAULT; }
35483 #line 35484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35484     break;
35485 
35486   case 1257:
35487 #line 8659 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35488     { Lex->drop_mode= DROP_RESTRICT; }
35489 #line 35490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35490     break;
35491 
35492   case 1258:
35493 #line 8660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35494     { Lex->drop_mode= DROP_CASCADE; }
35495 #line 35496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35496     break;
35497 
35498   case 1259:
35499 #line 8664 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35500     { (yyval.lex_str)= null_clex_str; }
35501 #line 35502 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35502     break;
35503 
35504   case 1260:
35505 #line 8666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35506     {
35507             (yyval.lex_str)= (yyvsp[0].ident_sys);
35508             Lex->alter_info.flags |= ALTER_COLUMN_ORDER;
35509           }
35510 #line 35511 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35511     break;
35512 
35513   case 1261:
35514 #line 8671 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35515     {
35516             (yyval.lex_str).str=    first_keyword;
35517 	    (yyval.lex_str).length= 5; /* Length of "first" */
35518             Lex->alter_info.flags |= ALTER_COLUMN_ORDER;
35519           }
35520 #line 35521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35521     break;
35522 
35523   case 1262:
35524 #line 8679 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35525     {}
35526 #line 35527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35527     break;
35528 
35529   case 1263:
35530 #line 8680 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35531     {}
35532 #line 35533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35533     break;
35534 
35535   case 1264:
35536 #line 8681 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35537     {}
35538 #line 35539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35539     break;
35540 
35541   case 1265:
35542 #line 8682 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35543     {}
35544 #line 35545 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35545     break;
35546 
35547   case 1266:
35548 #line 8687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35549     {
35550             LEX *lex=Lex;
35551             lex->sql_command = SQLCOM_SLAVE_START;
35552             lex->type = 0;
35553             /* If you change this code don't forget to update SLAVE START too */
35554           }
35555 #line 35556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35556     break;
35557 
35558   case 1267:
35559 #line 8694 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35560     {}
35561 #line 35562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35562     break;
35563 
35564   case 1268:
35565 #line 8696 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35566     {
35567             LEX *lex=Lex;
35568             lex->sql_command = SQLCOM_SLAVE_ALL_START;
35569             lex->type = 0;
35570             /* If you change this code don't forget to update STOP SLAVE too */
35571           }
35572 #line 35573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35573     break;
35574 
35575   case 1269:
35576 #line 8702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35577     {}
35578 #line 35579 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35579     break;
35580 
35581   case 1270:
35582 #line 8704 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35583     {
35584             LEX *lex=Lex;
35585             lex->sql_command = SQLCOM_SLAVE_STOP;
35586             lex->type = 0;
35587             /* If you change this code don't forget to update SLAVE STOP too */
35588           }
35589 #line 35590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35590     break;
35591 
35592   case 1271:
35593 #line 8711 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35594     {
35595             LEX *lex=Lex;
35596             lex->sql_command = SQLCOM_SLAVE_ALL_STOP;
35597             lex->type = 0;
35598             /* If you change this code don't forget to update SLAVE STOP too */
35599           }
35600 #line 35601 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35601     break;
35602 
35603   case 1272:
35604 #line 8721 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35605     {
35606             LEX *lex= Lex;
35607             lex->sql_command= SQLCOM_BEGIN;
35608             /* READ ONLY and READ WRITE are mutually exclusive. */
35609             if (unlikely(((yyvsp[0].num) & MYSQL_START_TRANS_OPT_READ_WRITE) &&
35610                          ((yyvsp[0].num) & MYSQL_START_TRANS_OPT_READ_ONLY)))
35611             {
35612               thd->parse_error();
35613               MYSQL_YYABORT;
35614             }
35615             lex->start_transaction_opt= (yyvsp[0].num);
35616           }
35617 #line 35618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35618     break;
35619 
35620   case 1273:
35621 #line 8737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35622     {
35623             (yyval.num)= 0;
35624           }
35625 #line 35626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35626     break;
35627 
35628   case 1274:
35629 #line 8741 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35630     {
35631             (yyval.num)= (yyvsp[0].num);
35632           }
35633 #line 35634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35634     break;
35635 
35636   case 1275:
35637 #line 8748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35638     {
35639             (yyval.num)= (yyvsp[0].num);
35640           }
35641 #line 35642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35642     break;
35643 
35644   case 1276:
35645 #line 8752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35646     {
35647             (yyval.num)= (yyvsp[-2].num) | (yyvsp[0].num);
35648           }
35649 #line 35650 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35650     break;
35651 
35652   case 1277:
35653 #line 8759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35654     {
35655             (yyval.num)= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
35656           }
35657 #line 35658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35658     break;
35659 
35660   case 1278:
35661 #line 8763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35662     {
35663             (yyval.num)= MYSQL_START_TRANS_OPT_READ_ONLY;
35664           }
35665 #line 35666 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35666     break;
35667 
35668   case 1279:
35669 #line 8767 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35670     {
35671             (yyval.num)= MYSQL_START_TRANS_OPT_READ_WRITE;
35672           }
35673 #line 35674 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35674     break;
35675 
35676   case 1280:
35677 #line 8773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35678     { Lex->slave_thd_opt= 0; }
35679 #line 35680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35680     break;
35681 
35682   case 1281:
35683 #line 8775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35684     {}
35685 #line 35686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35686     break;
35687 
35688   case 1284:
35689 #line 8784 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35690     {}
35691 #line 35692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35692     break;
35693 
35694   case 1285:
35695 #line 8785 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35696     { Lex->slave_thd_opt|=SLAVE_SQL; }
35697 #line 35698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35698     break;
35699 
35700   case 1286:
35701 #line 8786 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35702     { Lex->slave_thd_opt|=SLAVE_IO; }
35703 #line 35704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35704     break;
35705 
35706   case 1287:
35707 #line 8790 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35708     {}
35709 #line 35710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35710     break;
35711 
35712   case 1288:
35713 #line 8792 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35714     {
35715             LEX *lex=Lex;
35716             if (unlikely(((lex->mi.log_file_name || lex->mi.pos) &&
35717                          (lex->mi.relay_log_name || lex->mi.relay_log_pos)) ||
35718                          !((lex->mi.log_file_name && lex->mi.pos) ||
35719                            (lex->mi.relay_log_name && lex->mi.relay_log_pos))))
35720                my_yyabort_error((ER_BAD_SLAVE_UNTIL_COND, MYF(0)));
35721           }
35722 #line 35723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35723     break;
35724 
35725   case 1289:
35726 #line 8801 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35727     {
35728             Lex->mi.gtid_pos_str = (yyvsp[0].lex_str);
35729           }
35730 #line 35731 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35731     break;
35732 
35733   case 1292:
35734 #line 8813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35735     {
35736             LEX *lex=Lex;
35737             lex->sql_command = SQLCOM_CHECKSUM;
35738             /* Will be overridden during execution. */
35739             YYPS->m_lock_type= TL_UNLOCK;
35740           }
35741 #line 35742 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35742     break;
35743 
35744   case 1293:
35745 #line 8820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35746     {}
35747 #line 35748 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35748     break;
35749 
35750   case 1294:
35751 #line 8824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35752     { Lex->check_opt.flags= 0; }
35753 #line 35754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35754     break;
35755 
35756   case 1295:
35757 #line 8825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35758     { Lex->check_opt.flags= T_QUICK; }
35759 #line 35760 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35760     break;
35761 
35762   case 1296:
35763 #line 8826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35764     { Lex->check_opt.flags= T_EXTEND; }
35765 #line 35766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35766     break;
35767 
35768   case 1298:
35769 #line 8832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35770     { Lex->table_type= TABLE_TYPE_VIEW; }
35771 #line 35772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35772     break;
35773 
35774   case 1300:
35775 #line 8838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35776     {
35777             LEX *lex=Lex;
35778             lex->sql_command = SQLCOM_REPAIR;
35779             lex->no_write_to_binlog= (yyvsp[0].num);
35780             lex->check_opt.init();
35781             lex->alter_info.reset();
35782             /* Will be overridden during execution. */
35783             YYPS->m_lock_type= TL_UNLOCK;
35784           }
35785 #line 35786 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35786     break;
35787 
35788   case 1301:
35789 #line 8848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35790     {
35791             LEX* lex= thd->lex;
35792             DBUG_ASSERT(!lex->m_sql_cmd);
35793             lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_repair_table();
35794             if (unlikely(lex->m_sql_cmd == NULL))
35795               MYSQL_YYABORT;
35796           }
35797 #line 35798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35798     break;
35799 
35800   case 1302:
35801 #line 8858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35802     { Lex->check_opt.flags = T_MEDIUM; }
35803 #line 35804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35804     break;
35805 
35806   case 1303:
35807 #line 8859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35808     {}
35809 #line 35810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35810     break;
35811 
35812   case 1304:
35813 #line 8863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35814     {}
35815 #line 35816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35816     break;
35817 
35818   case 1305:
35819 #line 8864 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35820     {}
35821 #line 35822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35822     break;
35823 
35824   case 1306:
35825 #line 8868 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35826     { Lex->check_opt.flags|= T_QUICK; }
35827 #line 35828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35828     break;
35829 
35830   case 1307:
35831 #line 8869 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35832     { Lex->check_opt.flags|= T_EXTEND; }
35833 #line 35834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35834     break;
35835 
35836   case 1308:
35837 #line 8870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35838     { Lex->check_opt.sql_flags|= TT_USEFRM; }
35839 #line 35840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35840     break;
35841 
35842   case 1309:
35843 #line 8874 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35844     { }
35845 #line 35846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35846     break;
35847 
35848   case 1310:
35849 #line 8875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35850     { Lex->check_opt.sql_flags|= TT_FROM_MYSQL; }
35851 #line 35852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35852     break;
35853 
35854   case 1311:
35855 #line 8880 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35856     {
35857             LEX *lex=Lex;
35858             lex->sql_command = SQLCOM_ANALYZE;
35859             lex->no_write_to_binlog= (yyvsp[-1].num);
35860             lex->check_opt.init();
35861             lex->alter_info.reset();
35862             /* Will be overridden during execution. */
35863             YYPS->m_lock_type= TL_UNLOCK;
35864           }
35865 #line 35866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35866     break;
35867 
35868   case 1312:
35869 #line 8890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35870     {
35871             LEX* lex= thd->lex;
35872             DBUG_ASSERT(!lex->m_sql_cmd);
35873             lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_analyze_table();
35874             if (unlikely(lex->m_sql_cmd == NULL))
35875               MYSQL_YYABORT;
35876           }
35877 #line 35878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35878     break;
35879 
35880   case 1316:
35881 #line 8910 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35882     {}
35883 #line 35884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35884     break;
35885 
35886   case 1317:
35887 #line 8912 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35888     {
35889             thd->lex->with_persistent_for_clause= TRUE;
35890           }
35891 #line 35892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35892     break;
35893 
35894   case 1318:
35895 #line 8919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35896     {}
35897 #line 35898 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35898     break;
35899 
35900   case 1319:
35901 #line 8921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35902     {}
35903 #line 35904 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35904     break;
35905 
35906   case 1320:
35907 #line 8925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35908     {}
35909 #line 35910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35910     break;
35911 
35912   case 1321:
35913 #line 8927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35914     {
35915             LEX* lex= thd->lex;
35916             lex->column_list= new (thd->mem_root) List<LEX_STRING>;
35917             if (unlikely(lex->column_list == NULL))
35918               MYSQL_YYABORT;
35919           }
35920 #line 35921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35921     break;
35922 
35923   case 1322:
35924 #line 8935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35925     { }
35926 #line 35927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35927     break;
35928 
35929   case 1323:
35930 #line 8939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35931     {}
35932 #line 35933 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35933     break;
35934 
35935   case 1324:
35936 #line 8941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35937     {
35938             LEX* lex= thd->lex;
35939             lex->index_list= new (thd->mem_root) List<LEX_STRING>;
35940             if (unlikely(lex->index_list == NULL))
35941               MYSQL_YYABORT;
35942           }
35943 #line 35944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35944     break;
35945 
35946   case 1325:
35947 #line 8949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35948     { }
35949 #line 35950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35950     break;
35951 
35952   case 1326:
35953 #line 8954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35954     {}
35955 #line 35956 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35956     break;
35957 
35958   case 1327:
35959 #line 8956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35960     {
35961             Lex->column_list->push_back((LEX_STRING*)
35962                 thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_STRING)), thd->mem_root);
35963           }
35964 #line 35965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35965     break;
35966 
35967   case 1328:
35968 #line 8961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35969     {
35970             Lex->column_list->push_back((LEX_STRING*)
35971                 thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_STRING)), thd->mem_root);
35972           }
35973 #line 35974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35974     break;
35975 
35976   case 1329:
35977 #line 8969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35978     {}
35979 #line 35980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35980     break;
35981 
35982   case 1332:
35983 #line 8976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35984     {
35985             Lex->index_list->push_back((LEX_STRING*)
35986                                        thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_STRING)),
35987                                        thd->mem_root);
35988           }
35989 #line 35990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
35990     break;
35991 
35992   case 1333:
35993 #line 8983 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
35994     {
35995             LEX_STRING str= {(char*) "PRIMARY", 7};
35996             Lex->index_list->push_back((LEX_STRING*)
35997                                         thd->memdup(&str, sizeof(LEX_STRING)),
35998                                         thd->mem_root);
35999           }
36000 #line 36001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36001     break;
36002 
36003   case 1334:
36004 #line 8993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36005     {
36006             Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
36007             Lex->comment= (yyvsp[0].lex_str);
36008             Lex->ident.str=    NULL;
36009             Lex->ident.length= 0;
36010           }
36011 #line 36012 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36012     break;
36013 
36014   case 1335:
36015 #line 9001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36016     {
36017             Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
36018             Lex->comment= (yyvsp[-3].lex_str);
36019             Lex->ident=   (yyvsp[0].lex_str);
36020           }
36021 #line 36022 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36022     break;
36023 
36024   case 1337:
36025 #line 9011 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36026     { Lex->table_type= TABLE_TYPE_VIEW; }
36027 #line 36028 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36028     break;
36029 
36030   case 1339:
36031 #line 9016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36032     {
36033             LEX *lex=Lex;
36034 
36035             lex->sql_command = SQLCOM_CHECK;
36036             lex->check_opt.init();
36037             lex->alter_info.reset();
36038             /* Will be overridden during execution. */
36039             YYPS->m_lock_type= TL_UNLOCK;
36040           }
36041 #line 36042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36042     break;
36043 
36044   case 1340:
36045 #line 9026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36046     {
36047             LEX* lex= thd->lex;
36048             if (unlikely(lex->sphead))
36049               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "CHECK"));
36050             DBUG_ASSERT(!lex->m_sql_cmd);
36051             lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_check_table();
36052             if (unlikely(lex->m_sql_cmd == NULL))
36053               MYSQL_YYABORT;
36054           }
36055 #line 36056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36056     break;
36057 
36058   case 1341:
36059 #line 9038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36060     { Lex->check_opt.flags = T_MEDIUM; }
36061 #line 36062 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36062     break;
36063 
36064   case 1342:
36065 #line 9039 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36066     {}
36067 #line 36068 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36068     break;
36069 
36070   case 1343:
36071 #line 9043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36072     {}
36073 #line 36074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36074     break;
36075 
36076   case 1344:
36077 #line 9044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36078     {}
36079 #line 36080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36080     break;
36081 
36082   case 1345:
36083 #line 9048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36084     { Lex->check_opt.flags|= T_QUICK; }
36085 #line 36086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36086     break;
36087 
36088   case 1346:
36089 #line 9049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36090     { Lex->check_opt.flags|= T_FAST; }
36091 #line 36092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36092     break;
36093 
36094   case 1347:
36095 #line 9050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36096     { Lex->check_opt.flags|= T_MEDIUM; }
36097 #line 36098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36098     break;
36099 
36100   case 1348:
36101 #line 9051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36102     { Lex->check_opt.flags|= T_EXTEND; }
36103 #line 36104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36104     break;
36105 
36106   case 1349:
36107 #line 9052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36108     { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; }
36109 #line 36110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36110     break;
36111 
36112   case 1350:
36113 #line 9053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36114     { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
36115 #line 36116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36116     break;
36117 
36118   case 1351:
36119 #line 9057 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36120     { }
36121 #line 36122 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36122     break;
36123 
36124   case 1352:
36125 #line 9058 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36126     { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
36127 #line 36128 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36128     break;
36129 
36130   case 1353:
36131 #line 9063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36132     {
36133             LEX *lex=Lex;
36134             lex->sql_command = SQLCOM_OPTIMIZE;
36135             lex->no_write_to_binlog= (yyvsp[-1].num);
36136             lex->check_opt.init();
36137             lex->alter_info.reset();
36138             /* Will be overridden during execution. */
36139             YYPS->m_lock_type= TL_UNLOCK;
36140           }
36141 #line 36142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36142     break;
36143 
36144   case 1354:
36145 #line 9073 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36146     {
36147             LEX* lex= thd->lex;
36148             DBUG_ASSERT(!lex->m_sql_cmd);
36149             lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_optimize_table();
36150             if (unlikely(lex->m_sql_cmd == NULL))
36151               MYSQL_YYABORT;
36152           }
36153 #line 36154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36154     break;
36155 
36156   case 1355:
36157 #line 9083 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36158     { (yyval.num)= 0; }
36159 #line 36160 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36160     break;
36161 
36162   case 1356:
36163 #line 9084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36164     { (yyval.num)= 1; }
36165 #line 36166 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36166     break;
36167 
36168   case 1357:
36169 #line 9085 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36170     { (yyval.num)= 1; }
36171 #line 36172 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36172     break;
36173 
36174   case 1358:
36175 #line 9090 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36176     {
36177             Lex->sql_command= SQLCOM_RENAME_TABLE;
36178             if (Lex->main_select_push())
36179               MYSQL_YYABORT;
36180           }
36181 #line 36182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36182     break;
36183 
36184   case 1359:
36185 #line 9096 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36186     {
36187             Lex->pop_select(); //main select
36188           }
36189 #line 36190 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36190     break;
36191 
36192   case 1360:
36193 #line 9100 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36194     {
36195             Lex->sql_command = SQLCOM_RENAME_USER;
36196           }
36197 #line 36198 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36198     break;
36199 
36200   case 1361:
36201 #line 9107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36202     {
36203             if (unlikely(Lex->users_list.push_back((yyvsp[-2].lex_user), thd->mem_root) ||
36204                          Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
36205               MYSQL_YYABORT;
36206           }
36207 #line 36208 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36208     break;
36209 
36210   case 1362:
36211 #line 9113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36212     {
36213             if (unlikely(Lex->users_list.push_back((yyvsp[-2].lex_user), thd->mem_root) ||
36214                          Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
36215               MYSQL_YYABORT;
36216           }
36217 #line 36218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36218     break;
36219 
36220   case 1365:
36221 #line 9127 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36222     {
36223             LEX *lex=Lex;
36224             SELECT_LEX *sl= lex->current_select;
36225             if (unlikely(!sl->add_table_to_list(thd, (yyvsp[-3].table),NULL,
36226                                                 TL_OPTION_UPDATING,
36227                                                 TL_IGNORE, MDL_EXCLUSIVE)) ||
36228                 unlikely(!sl->add_table_to_list(thd, (yyvsp[0].table), NULL,
36229                                                 TL_OPTION_UPDATING,
36230                                                 TL_IGNORE, MDL_EXCLUSIVE)))
36231               MYSQL_YYABORT;
36232           }
36233 #line 36234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36234     break;
36235 
36236   case 1366:
36237 #line 9142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36238     {
36239             Lex->alter_info.reset();
36240           }
36241 #line 36242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36242     break;
36243 
36244   case 1367:
36245 #line 9146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36246     {
36247             LEX *lex=Lex;
36248             lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE;
36249             lex->ident= (yyvsp[0].lex_str);
36250           }
36251 #line 36252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36252     break;
36253 
36254   case 1372:
36255 #line 9165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36256     {
36257             if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL, 0, TL_READ,
36258                                                     MDL_SHARED_READ,
36259                                                     Select->
36260                                                     pop_index_hints())))
36261               MYSQL_YYABORT;
36262           }
36263 #line 36264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36264     break;
36265 
36266   case 1373:
36267 #line 9176 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36268     {
36269             if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-2].table), NULL, 0, TL_READ,
36270                                                     MDL_SHARED_READ,
36271                                                     Select->
36272                                                     pop_index_hints())))
36273               MYSQL_YYABORT;
36274           }
36275 #line 36276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36276     break;
36277 
36278   case 1374:
36279 #line 9186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36280     { (yyval.lex_str)= (yyvsp[0].ident_sys); }
36281 #line 36282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36282     break;
36283 
36284   case 1375:
36285 #line 9187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36286     { (yyval.lex_str) = default_key_cache_base; }
36287 #line 36288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36288     break;
36289 
36290   case 1376:
36291 #line 9192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36292     {
36293             LEX *lex=Lex;
36294             lex->sql_command=SQLCOM_PRELOAD_KEYS;
36295             lex->alter_info.reset();
36296             if (lex->main_select_push())
36297               MYSQL_YYABORT;
36298           }
36299 #line 36300 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36300     break;
36301 
36302   case 1377:
36303 #line 9200 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36304     {
36305             Lex->pop_select(); //main select
36306           }
36307 #line 36308 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36308     break;
36309 
36310   case 1382:
36311 #line 9217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36312     {
36313             if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-2].table), NULL, (yyvsp[0].num), TL_READ,
36314                                                     MDL_SHARED_READ,
36315                                                     Select->
36316                                                     pop_index_hints())))
36317               MYSQL_YYABORT;
36318           }
36319 #line 36320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36320     break;
36321 
36322   case 1383:
36323 #line 9228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36324     {
36325             if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-3].table), NULL, (yyvsp[0].num), TL_READ,
36326                                                     MDL_SHARED_READ,
36327                                                     Select->
36328                                                     pop_index_hints())))
36329               MYSQL_YYABORT;
36330           }
36331 #line 36332 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36332     break;
36333 
36334   case 1384:
36335 #line 9239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36336     {
36337             Lex->alter_info.partition_flags|= ALTER_PARTITION_ADMIN;
36338           }
36339 #line 36340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36340     break;
36341 
36342   case 1386:
36343 #line 9246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36344     {
36345             Lex->first_select_lex()->alloc_index_hints(thd);
36346             Select->set_index_hint_type(INDEX_HINT_USE,
36347                                         INDEX_HINT_MASK_ALL);
36348           }
36349 #line 36350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36350     break;
36351 
36352   case 1388:
36353 #line 9255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36354     { }
36355 #line 36356 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36356     break;
36357 
36358   case 1390:
36359 #line 9261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36360     { (yyval.num)= 0; }
36361 #line 36362 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36362     break;
36363 
36364   case 1391:
36365 #line 9262 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36366     { (yyval.num)= TL_OPTION_IGNORE_LEAVES; }
36367 #line 36368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36368     break;
36369 
36370   case 1392:
36371 #line 9272 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36372     {
36373             if (Lex->push_select((yyvsp[0].select_lex_unit)->fake_select_lex ?
36374                                  (yyvsp[0].select_lex_unit)->fake_select_lex :
36375                                  (yyvsp[0].select_lex_unit)->first_select()))
36376               MYSQL_YYABORT;
36377           }
36378 #line 36379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36379     break;
36380 
36381   case 1393:
36382 #line 9279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36383     {
36384             Lex->pop_select();
36385             (yyvsp[-2].select_lex_unit)->set_with_clause(NULL);
36386             if (Lex->select_finalize((yyvsp[-2].select_lex_unit), (yyvsp[0].select_lock)))
36387               MYSQL_YYABORT;
36388           }
36389 #line 36390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36390     break;
36391 
36392   case 1394:
36393 #line 9286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36394     {
36395             if (Lex->push_select((yyvsp[0].select_lex_unit)->fake_select_lex ?
36396                                  (yyvsp[0].select_lex_unit)->fake_select_lex :
36397                                  (yyvsp[0].select_lex_unit)->first_select()))
36398               MYSQL_YYABORT;
36399           }
36400 #line 36401 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36401     break;
36402 
36403   case 1395:
36404 #line 9293 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36405     {
36406             Lex->pop_select();
36407             (yyvsp[-2].select_lex_unit)->set_with_clause((yyvsp[-3].with_clause));
36408             (yyvsp[-3].with_clause)->attach_to((yyvsp[-2].select_lex_unit)->first_select());
36409             if (Lex->select_finalize((yyvsp[-2].select_lex_unit), (yyvsp[0].select_lock)))
36410               MYSQL_YYABORT;
36411           }
36412 #line 36413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36413     break;
36414 
36415   case 1396:
36416 #line 9304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36417     {
36418             if (Lex->push_select((yyvsp[0].select_lex)))
36419               MYSQL_YYABORT;
36420           }
36421 #line 36422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36422     break;
36423 
36424   case 1397:
36425 #line 9309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36426     {
36427             SELECT_LEX_UNIT *unit;
36428             if (!(unit  = Lex->create_unit((yyvsp[-2].select_lex))))
36429               MYSQL_YYABORT;
36430             if ((yyvsp[0].order_limit_lock))
36431               unit= Lex->add_tail_to_query_expression_body(unit, (yyvsp[0].order_limit_lock));
36432             if (Lex->select_finalize(unit))
36433               MYSQL_YYABORT;
36434           }
36435 #line 36436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36436     break;
36437 
36438   case 1398:
36439 #line 9320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36440     {
36441             if (Lex->push_select((yyvsp[0].select_lex)))
36442               MYSQL_YYABORT;
36443           }
36444 #line 36445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36445     break;
36446 
36447   case 1399:
36448 #line 9325 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36449     {
36450             SELECT_LEX_UNIT *unit;
36451             if (!(unit  = Lex->create_unit((yyvsp[-2].select_lex))))
36452               MYSQL_YYABORT;
36453             if ((yyvsp[0].order_limit_lock))
36454               unit= Lex->add_tail_to_query_expression_body(unit, (yyvsp[0].order_limit_lock));
36455             unit->set_with_clause((yyvsp[-3].with_clause));
36456             (yyvsp[-3].with_clause)->attach_to((yyvsp[-2].select_lex));
36457             if (Lex->select_finalize(unit))
36458               MYSQL_YYABORT;
36459           }
36460 #line 36461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36461     break;
36462 
36463   case 1400:
36464 #line 9339 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36465     { (yyval.select_lex)= (yyvsp[0].select_lex); }
36466 #line 36467 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36467     break;
36468 
36469   case 1401:
36470 #line 9340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36471     { (yyval.select_lex)= (yyvsp[0].select_lex); }
36472 #line 36473 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36473     break;
36474 
36475   case 1402:
36476 #line 9345 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36477     {
36478             if (Lex->parsed_TVC_start())
36479               MYSQL_YYABORT;
36480 	  }
36481 #line 36482 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36482     break;
36483 
36484   case 1403:
36485 #line 9350 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36486     {
36487             if (!((yyval.select_lex)= Lex->parsed_TVC_end()))
36488 	      MYSQL_YYABORT;
36489 	  }
36490 #line 36491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36491     break;
36492 
36493   case 1404:
36494 #line 9358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36495     {
36496             SELECT_LEX *sel;
36497             LEX *lex= Lex;
36498             if (!(sel= lex->alloc_select(TRUE)) ||
36499                   lex->push_select(sel))
36500               MYSQL_YYABORT;
36501             sel->init_select();
36502             sel->braces= FALSE;
36503           }
36504 #line 36505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36505     break;
36506 
36507   case 1405:
36508 #line 9368 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36509     {
36510             Select->parsing_place= SELECT_LIST;
36511           }
36512 #line 36513 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36513     break;
36514 
36515   case 1406:
36516 #line 9372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36517     {
36518             Select->parsing_place= NO_MATTER;
36519           }
36520 #line 36521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36521     break;
36522 
36523   case 1407:
36524 #line 9384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36525     {
36526             (yyval.select_lex)= Lex->pop_select();
36527           }
36528 #line 36529 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36529     break;
36530 
36531   case 1408:
36532 #line 9397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36533     {
36534             (yyval.select_lex)= Lex->pop_select();
36535           }
36536 #line 36537 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36537     break;
36538 
36539   case 1409:
36540 #line 9455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36541     {
36542             (yyvsp[0].select_lex_unit)->set_with_clause(NULL);
36543             (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit);
36544           }
36545 #line 36546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36546     break;
36547 
36548   case 1410:
36549 #line 9461 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36550     {
36551             (yyvsp[0].select_lex_unit)->set_with_clause((yyvsp[-1].with_clause));
36552             (yyvsp[-1].with_clause)->attach_to((yyvsp[0].select_lex_unit)->first_select());
36553             (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit);
36554           }
36555 #line 36556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36556     break;
36557 
36558   case 1411:
36559 #line 9474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36560     { (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit); }
36561 #line 36562 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36562     break;
36563 
36564   case 1412:
36565 #line 9475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36566     { (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit); }
36567 #line 36568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36568     break;
36569 
36570   case 1413:
36571 #line 9490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36572     {
36573             if ((yyvsp[0].select_lex_unit)->first_select()->next_select())
36574             {
36575               if (Lex->parsed_multi_operand_query_expression_body((yyvsp[0].select_lex_unit)))
36576                 MYSQL_YYABORT;
36577             }
36578           }
36579 #line 36580 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36580     break;
36581 
36582   case 1414:
36583 #line 9498 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36584     {
36585             if (!(yyvsp[0].order_limit_lock))
36586               (yyval.select_lex_unit)= (yyvsp[-2].select_lex_unit);
36587             else
36588               (yyval.select_lex_unit)= Lex->add_tail_to_query_expression_body((yyvsp[-2].select_lex_unit), (yyvsp[0].order_limit_lock));
36589           }
36590 #line 36591 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36591     break;
36592 
36593   case 1415:
36594 #line 9505 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36595     {
36596             Lex->push_select(!(yyvsp[0].select_lex_unit)->first_select()->next_select() ?
36597                                (yyvsp[0].select_lex_unit)->first_select() : (yyvsp[0].select_lex_unit)->fake_select_lex);
36598           }
36599 #line 36600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36600     break;
36601 
36602   case 1416:
36603 #line 9510 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36604     {
36605             if (!((yyval.select_lex_unit)= Lex->add_tail_to_query_expression_body_ext_parens((yyvsp[-2].select_lex_unit), (yyvsp[0].order_limit_lock))))
36606                MYSQL_YYABORT;
36607           }
36608 #line 36609 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36609     break;
36610 
36611   case 1417:
36612 #line 9518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36613     { (yyval.select_lex_unit)= (yyvsp[-1].select_lex_unit); }
36614 #line 36615 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36615     break;
36616 
36617   case 1418:
36618 #line 9520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36619     {
36620             SELECT_LEX *sel= (yyvsp[-1].select_lex_unit)->first_select()->next_select() ?
36621                                (yyvsp[-1].select_lex_unit)->fake_select_lex : (yyvsp[-1].select_lex_unit)->first_select();
36622             sel->braces= true;
36623             (yyval.select_lex_unit)= (yyvsp[-1].select_lex_unit);
36624           }
36625 #line 36626 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36626     break;
36627 
36628   case 1419:
36629 #line 9535 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36630     {
36631             Lex->push_select((yyvsp[0].select_lex));
36632             if (!((yyval.select_lex_unit)= Lex->create_unit((yyvsp[0].select_lex))))
36633               MYSQL_YYABORT;
36634           }
36635 #line 36636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36636     break;
36637 
36638   case 1420:
36639 #line 9542 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36640     {
36641             if (!(yyvsp[-1].select_lex_unit)->first_select()->next_select())
36642             {
36643               Lex->pop_select();
36644             }
36645           }
36646 #line 36647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36647     break;
36648 
36649   case 1421:
36650 #line 9549 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36651     {
36652             if (!((yyval.select_lex_unit)= Lex->add_primary_to_query_expression_body((yyvsp[-3].select_lex_unit), (yyvsp[0].select_lex),
36653                                                                 (yyvsp[-2].unit_operation).unit_type,
36654                                                                 (yyvsp[-2].unit_operation).distinct,
36655                                                                 FALSE)))
36656               MYSQL_YYABORT;
36657           }
36658 #line 36659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36659     break;
36660 
36661   case 1422:
36662 #line 9559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36663     {
36664             if (!((yyval.select_lex_unit)= Lex->add_primary_to_query_expression_body_ext_parens(
36665                                                                 (yyvsp[-2].select_lex_unit), (yyvsp[0].select_lex),
36666                                                                 (yyvsp[-1].unit_operation).unit_type,
36667                                                                 (yyvsp[-1].unit_operation).distinct)))
36668               MYSQL_YYABORT;
36669           }
36670 #line 36671 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36671     break;
36672 
36673   case 1423:
36674 #line 9575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36675     { (yyval.select_lex)= (yyvsp[0].select_lex); }
36676 #line 36677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36677     break;
36678 
36679   case 1424:
36680 #line 9577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36681     { (yyval.select_lex)= (yyvsp[0].select_lex_unit)->first_select(); }
36682 #line 36683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36683     break;
36684 
36685   case 1425:
36686 #line 9586 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36687     { (yyval.select_lex)= (yyvsp[0].select_lex);}
36688 #line 36689 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36689     break;
36690 
36691   case 1426:
36692 #line 9591 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36693     {
36694             if (!((yyval.select_lex)= Lex->parsed_subselect((yyvsp[0].select_lex_unit))))
36695               YYABORT;
36696           }
36697 #line 36698 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36698     break;
36699 
36700   case 1427:
36701 #line 9632 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36702     {
36703             if (!(yyvsp[0].select_lex_unit)->fake_select_lex)
36704               (yyvsp[0].select_lex_unit)->first_select()->braces= false;
36705             else
36706               (yyvsp[0].select_lex_unit)->fake_select_lex->braces= false;
36707             if (!((yyval.select_lex)= Lex->parsed_subselect((yyvsp[0].select_lex_unit))))
36708               YYABORT;
36709           }
36710 #line 36711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36711     break;
36712 
36713   case 1428:
36714 #line 9641 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36715     {
36716             (yyvsp[-1].select_lex_unit)->set_with_clause((yyvsp[-2].with_clause));
36717             (yyvsp[-2].with_clause)->attach_to((yyvsp[-1].select_lex_unit)->first_select());
36718             if (!((yyval.select_lex)= Lex->parsed_subselect((yyvsp[-1].select_lex_unit))))
36719               YYABORT;
36720           }
36721 #line 36722 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36722     break;
36723 
36724   case 1432:
36725 #line 9660 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36726     {
36727             Select->context.table_list=
36728               Select->context.first_name_resolution_table=
36729                 Select->table_list.first;
36730           }
36731 #line 36732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36732     break;
36733 
36734   case 1435:
36735 #line 9675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36736     {
36737             if (unlikely((Select->options & SELECT_DISTINCT) &&
36738                          (Select->options & SELECT_ALL)))
36739               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "ALL", "DISTINCT"));
36740           }
36741 #line 36742 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36742     break;
36743 
36744   case 1436:
36745 #line 9684 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36746     {
36747             (yyval.vers_range_unit)= VERS_UNDEFINED;
36748           }
36749 #line 36750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36750     break;
36751 
36752   case 1437:
36753 #line 9688 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36754     {
36755             (yyval.vers_range_unit)= VERS_TRX_ID;
36756           }
36757 #line 36758 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36758     break;
36759 
36760   case 1438:
36761 #line 9692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36762     {
36763             (yyval.vers_range_unit)= VERS_TIMESTAMP;
36764           }
36765 #line 36766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36766     break;
36767 
36768   case 1439:
36769 #line 9699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36770     {
36771             Item *item;
36772             if (!(item= type_handler_datetime.create_literal_item(thd,
36773                                                      (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
36774                                                      YYCSCL, true)))
36775               MYSQL_YYABORT;
36776             (yyval.vers_history_point)= Vers_history_point(VERS_TIMESTAMP, item);
36777           }
36778 #line 36779 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36779     break;
36780 
36781   case 1440:
36782 #line 9708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36783     {
36784             (yyval.vers_history_point)= Vers_history_point(VERS_TIMESTAMP, (yyvsp[0].item));
36785           }
36786 #line 36787 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36787     break;
36788 
36789   case 1441:
36790 #line 9712 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36791     {
36792             (yyval.vers_history_point)= Vers_history_point((yyvsp[-1].vers_range_unit), (yyvsp[0].item));
36793           }
36794 #line 36795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36795     break;
36796 
36797   case 1442:
36798 #line 9720 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36799     {
36800             if (unlikely(0 == strcasecmp((yyvsp[-4].ident_sys).str, "SYSTEM_TIME")))
36801             {
36802               thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[-5].simple_string));
36803               MYSQL_YYABORT;
36804             }
36805             Lex->period_conditions.init(SYSTEM_TIME_FROM_TO,
36806                                         Vers_history_point(VERS_TIMESTAMP, (yyvsp[-2].item)),
36807                                         Vers_history_point(VERS_TIMESTAMP, (yyvsp[0].item)),
36808                                         (yyvsp[-4].ident_sys));
36809           }
36810 #line 36811 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36811     break;
36812 
36813   case 1443:
36814 #line 9735 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36815     {
36816             (yyval.num)= false;
36817           }
36818 #line 36819 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36819     break;
36820 
36821   case 1444:
36822 #line 9739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36823     {
36824             (yyval.num)= true;
36825           }
36826 #line 36827 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36827     break;
36828 
36829   case 1445:
36830 #line 9746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36831     {
36832             (yyval.num)= false;
36833           }
36834 #line 36835 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36835     break;
36836 
36837   case 1446:
36838 #line 9750 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36839     {
36840             (yyval.num)= true;
36841           }
36842 #line 36843 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36843     break;
36844 
36845   case 1447:
36846 #line 9757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36847     {
36848             Lex->vers_conditions.init(SYSTEM_TIME_AS_OF, (yyvsp[0].vers_history_point));
36849           }
36850 #line 36851 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36851     break;
36852 
36853   case 1448:
36854 #line 9761 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36855     {
36856             Lex->vers_conditions.init(SYSTEM_TIME_ALL);
36857           }
36858 #line 36859 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36859     break;
36860 
36861   case 1449:
36862 #line 9765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36863     {
36864             Lex->vers_conditions.init(SYSTEM_TIME_FROM_TO, (yyvsp[-2].vers_history_point), (yyvsp[0].vers_history_point));
36865           }
36866 #line 36867 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36867     break;
36868 
36869   case 1450:
36870 #line 9769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36871     {
36872             Lex->vers_conditions.init(SYSTEM_TIME_BETWEEN, (yyvsp[-2].vers_history_point), (yyvsp[0].vers_history_point));
36873           }
36874 #line 36875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36875     break;
36876 
36877   case 1454:
36878 #line 9782 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36879     {
36880             /*
36881               Allow this flag once per query.
36882             */
36883             if (Select->options & OPTION_NO_QUERY_CACHE)
36884               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SQL_NO_CACHE"));
36885             Select->options|= OPTION_NO_QUERY_CACHE;
36886           }
36887 #line 36888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36888     break;
36889 
36890   case 1455:
36891 #line 9791 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36892     {
36893             /*
36894               Allow this flag once per query.
36895             */
36896             if (Select->options & OPTION_TO_QUERY_CACHE)
36897               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SQL_CACHE"));
36898             Select->options|= OPTION_TO_QUERY_CACHE;
36899           }
36900 #line 36901 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36901     break;
36902 
36903   case 1456:
36904 #line 9804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36905     {
36906             (yyval.select_lock)= (yyvsp[0].select_lock);
36907             (yyval.select_lock).defined_lock= TRUE;
36908             (yyval.select_lock).update_lock= TRUE;
36909           }
36910 #line 36911 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36911     break;
36912 
36913   case 1457:
36914 #line 9810 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36915     {
36916             (yyval.select_lock)= (yyvsp[0].select_lock);
36917             (yyval.select_lock).defined_lock= TRUE;
36918             (yyval.select_lock).update_lock= FALSE;
36919           }
36920 #line 36921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36921     break;
36922 
36923   case 1458:
36924 #line 9820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36925     {
36926           (yyval.select_lock).empty();
36927         }
36928 #line 36929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36929     break;
36930 
36931   case 1459:
36932 #line 9824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36933     {
36934           (yyval.select_lock)= (yyvsp[0].select_lock);
36935         }
36936 #line 36937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36937     break;
36938 
36939   case 1460:
36940 #line 9832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36941     {
36942           (yyval.select_lock).empty();
36943         }
36944 #line 36945 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36945     break;
36946 
36947   case 1461:
36948 #line 9836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36949     {
36950           (yyval.select_lock).defined_timeout= TRUE;
36951           (yyval.select_lock).timeout= (yyvsp[0].ulong_num);
36952         }
36953 #line 36954 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36954     break;
36955 
36956   case 1462:
36957 #line 9841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36958     {
36959           (yyval.select_lock).defined_timeout= TRUE;
36960           (yyval.select_lock).timeout= 0;
36961         }
36962 #line 36963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36963     break;
36964 
36965   case 1465:
36966 #line 9851 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36967     {
36968             Item *item= new (thd->mem_root)
36969                           Item_field(thd, &thd->lex->current_select->context,
36970                                      NULL, NULL, &star_clex_str);
36971             if (unlikely(item == NULL))
36972               MYSQL_YYABORT;
36973             if (unlikely(add_item_to_list(thd, item)))
36974               MYSQL_YYABORT;
36975             (thd->lex->current_select->with_wild)++;
36976           }
36977 #line 36978 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36978     break;
36979 
36980   case 1466:
36981 #line 9865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36982     {
36983             if (unlikely(add_item_to_list(thd, (yyvsp[-1].item))))
36984               MYSQL_YYABORT;
36985           }
36986 #line 36987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
36987     break;
36988 
36989   case 1467:
36990 #line 9870 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
36991     {
36992             DBUG_ASSERT((yyvsp[-3].simple_string) < (yyvsp[-1].simple_string));
36993 
36994             if (unlikely(add_item_to_list(thd, (yyvsp[-2].item))))
36995               MYSQL_YYABORT;
36996             if ((yyvsp[0].lex_str).str)
36997             {
36998               if (unlikely(Lex->sql_command == SQLCOM_CREATE_VIEW &&
36999                           check_column_name((yyvsp[0].lex_str).str)))
37000                 my_yyabort_error((ER_WRONG_COLUMN_NAME, MYF(0), (yyvsp[0].lex_str).str));
37001               (yyvsp[-2].item)->is_autogenerated_name= FALSE;
37002               (yyvsp[-2].item)->set_name(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info);
37003             }
37004             else if (!(yyvsp[-2].item)->name.str || (yyvsp[-2].item)->name.str == item_empty_name)
37005             {
37006               (yyvsp[-2].item)->set_name(thd, (yyvsp[-3].simple_string), (uint) ((yyvsp[-1].simple_string) - (yyvsp[-3].simple_string)), thd->charset());
37007             }
37008           }
37009 #line 37010 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37010     break;
37011 
37012   case 1468:
37013 #line 9891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37014     {
37015             (yyval.simple_string)= (char*) YYLIP->get_tok_start();
37016           }
37017 #line 37018 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37018     break;
37019 
37020   case 1469:
37021 #line 9897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37022     {
37023             (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_start();
37024           }
37025 #line 37026 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37026     break;
37027 
37028   case 1470:
37029 #line 9903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37030     {
37031             (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_end_rtrim();
37032           }
37033 #line 37034 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37034     break;
37035 
37036   case 1471:
37037 #line 9909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37038     { (yyval.lex_str)=null_clex_str;}
37039 #line 37040 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37040     break;
37041 
37042   case 1472:
37043 #line 9910 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37044     { (yyval.lex_str)=(yyvsp[0].ident_sys); }
37045 #line 37046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37046     break;
37047 
37048   case 1473:
37049 #line 9911 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37050     { (yyval.lex_str)=(yyvsp[0].lex_str); }
37051 #line 37052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37052     break;
37053 
37054   case 1474:
37055 #line 9912 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37056     { (yyval.lex_str)=(yyvsp[0].ident_sys); }
37057 #line 37058 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37058     break;
37059 
37060   case 1475:
37061 #line 9913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37062     { (yyval.lex_str)=(yyvsp[0].lex_str); }
37063 #line 37064 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37064     break;
37065 
37066   case 1476:
37067 #line 9917 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37068     { (yyval.num)= NOT_FIXED_DEC;  }
37069 #line 37070 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37070     break;
37071 
37072   case 1477:
37073 #line 9918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37074     { (yyval.num)= NOT_FIXED_DEC;  }
37075 #line 37076 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37076     break;
37077 
37078   case 1478:
37079 #line 9919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37080     { (yyval.num)= (yyvsp[-1].ulong_num); }
37081 #line 37082 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37082     break;
37083 
37084   case 1479:
37085 #line 9923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37086     { (yyval.num)= 0;  }
37087 #line 37088 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37088     break;
37089 
37090   case 1480:
37091 #line 9924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37092     { (yyval.num)= 0;  }
37093 #line 37094 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37094     break;
37095 
37096   case 1481:
37097 #line 9925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37098     { (yyval.num)= (yyvsp[-1].ulong_num); }
37099 #line 37100 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37100     break;
37101 
37102   case 1482:
37103 #line 9929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37104     {}
37105 #line 37106 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37106     break;
37107 
37108   case 1483:
37109 #line 9930 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37110     {}
37111 #line 37112 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37112     break;
37113 
37114   case 1484:
37115 #line 9936 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37116     {
37117             /*
37118               Design notes:
37119               Do not use a manually maintained stack like thd->lex->xxx_list,
37120               but use the internal bison stack ($$, $1 and $3) instead.
37121               Using the bison stack is:
37122               - more robust to changes in the grammar,
37123               - guaranteed to be in sync with the parser state,
37124               - better for performances (no memory allocation).
37125             */
37126             Item_cond_or *item1;
37127             Item_cond_or *item3;
37128             if (is_cond_or((yyvsp[-2].item)))
37129             {
37130               item1= (Item_cond_or*) (yyvsp[-2].item);
37131               if (is_cond_or((yyvsp[0].item)))
37132               {
37133                 item3= (Item_cond_or*) (yyvsp[0].item);
37134                 /*
37135                   (X1 OR X2) OR (Y1 OR Y2) ==> OR (X1, X2, Y1, Y2)
37136                 */
37137                 item3->add_at_head(item1->argument_list());
37138                 (yyval.item) = (yyvsp[0].item);
37139               }
37140               else
37141               {
37142                 /*
37143                   (X1 OR X2) OR Y ==> OR (X1, X2, Y)
37144                 */
37145                 item1->add((yyvsp[0].item), thd->mem_root);
37146                 (yyval.item) = (yyvsp[-2].item);
37147               }
37148             }
37149             else if (is_cond_or((yyvsp[0].item)))
37150             {
37151               item3= (Item_cond_or*) (yyvsp[0].item);
37152               /*
37153                 X OR (Y1 OR Y2) ==> OR (X, Y1, Y2)
37154               */
37155               item3->add_at_head((yyvsp[-2].item), thd->mem_root);
37156               (yyval.item) = (yyvsp[0].item);
37157             }
37158             else
37159             {
37160               /* X OR Y */
37161               (yyval.item)= new (thd->mem_root) Item_cond_or(thd, (yyvsp[-2].item), (yyvsp[0].item));
37162               if (unlikely((yyval.item) == NULL))
37163                 MYSQL_YYABORT;
37164             }
37165           }
37166 #line 37167 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37167     break;
37168 
37169   case 1485:
37170 #line 9987 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37171     {
37172             /* XOR is a proprietary extension */
37173             (yyval.item)= new (thd->mem_root) Item_func_xor(thd, (yyvsp[-2].item), (yyvsp[0].item));
37174             if (unlikely((yyval.item) == NULL))
37175               MYSQL_YYABORT;
37176           }
37177 #line 37178 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37178     break;
37179 
37180   case 1486:
37181 #line 9994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37182     {
37183             /* See comments in rule expr: expr or expr */
37184             Item_cond_and *item1;
37185             Item_cond_and *item3;
37186             if (is_cond_and((yyvsp[-2].item)))
37187             {
37188               item1= (Item_cond_and*) (yyvsp[-2].item);
37189               if (is_cond_and((yyvsp[0].item)))
37190               {
37191                 item3= (Item_cond_and*) (yyvsp[0].item);
37192                 /*
37193                   (X1 AND X2) AND (Y1 AND Y2) ==> AND (X1, X2, Y1, Y2)
37194                 */
37195                 item3->add_at_head(item1->argument_list());
37196                 (yyval.item) = (yyvsp[0].item);
37197               }
37198               else
37199               {
37200                 /*
37201                   (X1 AND X2) AND Y ==> AND (X1, X2, Y)
37202                 */
37203                 item1->add((yyvsp[0].item), thd->mem_root);
37204                 (yyval.item) = (yyvsp[-2].item);
37205               }
37206             }
37207             else if (is_cond_and((yyvsp[0].item)))
37208             {
37209               item3= (Item_cond_and*) (yyvsp[0].item);
37210               /*
37211                 X AND (Y1 AND Y2) ==> AND (X, Y1, Y2)
37212               */
37213               item3->add_at_head((yyvsp[-2].item), thd->mem_root);
37214               (yyval.item) = (yyvsp[0].item);
37215             }
37216             else
37217             {
37218               /* X AND Y */
37219               (yyval.item)= new (thd->mem_root) Item_cond_and(thd, (yyvsp[-2].item), (yyvsp[0].item));
37220               if (unlikely((yyval.item) == NULL))
37221                 MYSQL_YYABORT;
37222             }
37223           }
37224 #line 37225 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37225     break;
37226 
37227   case 1487:
37228 #line 10037 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37229     {
37230             (yyval.item)= negate_expression(thd, (yyvsp[0].item));
37231             if (unlikely((yyval.item) == NULL))
37232               MYSQL_YYABORT;
37233           }
37234 #line 37235 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37235     break;
37236 
37237   case 1488:
37238 #line 10043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37239     {
37240             (yyval.item)= new (thd->mem_root) Item_func_istrue(thd, (yyvsp[-2].item));
37241             if (unlikely((yyval.item) == NULL))
37242               MYSQL_YYABORT;
37243           }
37244 #line 37245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37245     break;
37246 
37247   case 1489:
37248 #line 10049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37249     {
37250             (yyval.item)= new (thd->mem_root) Item_func_isnottrue(thd, (yyvsp[-3].item));
37251             if (unlikely((yyval.item) == NULL))
37252               MYSQL_YYABORT;
37253           }
37254 #line 37255 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37255     break;
37256 
37257   case 1490:
37258 #line 10055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37259     {
37260             (yyval.item)= new (thd->mem_root) Item_func_isfalse(thd, (yyvsp[-2].item));
37261             if (unlikely((yyval.item) == NULL))
37262               MYSQL_YYABORT;
37263           }
37264 #line 37265 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37265     break;
37266 
37267   case 1491:
37268 #line 10061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37269     {
37270             (yyval.item)= new (thd->mem_root) Item_func_isnotfalse(thd, (yyvsp[-3].item));
37271             if (unlikely((yyval.item) == NULL))
37272               MYSQL_YYABORT;
37273           }
37274 #line 37275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37275     break;
37276 
37277   case 1492:
37278 #line 10067 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37279     {
37280             (yyval.item)= new (thd->mem_root) Item_func_isnull(thd, (yyvsp[-2].item));
37281             if (unlikely((yyval.item) == NULL))
37282               MYSQL_YYABORT;
37283           }
37284 #line 37285 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37285     break;
37286 
37287   case 1493:
37288 #line 10073 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37289     {
37290             (yyval.item)= new (thd->mem_root) Item_func_isnotnull(thd, (yyvsp[-3].item));
37291             if (unlikely((yyval.item) == NULL))
37292               MYSQL_YYABORT;
37293           }
37294 #line 37295 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37295     break;
37296 
37297   case 1494:
37298 #line 10079 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37299     {
37300             (yyval.item)= new (thd->mem_root) Item_func_isnull(thd, (yyvsp[-2].item));
37301             if (unlikely((yyval.item) == NULL))
37302               MYSQL_YYABORT;
37303           }
37304 #line 37305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37305     break;
37306 
37307   case 1495:
37308 #line 10085 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37309     {
37310             (yyval.item)= new (thd->mem_root) Item_func_isnotnull(thd, (yyvsp[-3].item));
37311             if (unlikely((yyval.item) == NULL))
37312               MYSQL_YYABORT;
37313           }
37314 #line 37315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37315     break;
37316 
37317   case 1496:
37318 #line 10091 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37319     {
37320             (yyval.item)= new (thd->mem_root) Item_func_equal(thd, (yyvsp[-2].item), (yyvsp[0].item));
37321             if (unlikely((yyval.item) == NULL))
37322               MYSQL_YYABORT;
37323           }
37324 #line 37325 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37325     break;
37326 
37327   case 1497:
37328 #line 10097 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37329     {
37330             (yyval.item)= (*(yyvsp[-1].boolfunc2creator))(0)->create(thd, (yyvsp[-2].item), (yyvsp[0].item));
37331             if (unlikely((yyval.item) == NULL))
37332               MYSQL_YYABORT;
37333           }
37334 #line 37335 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37335     break;
37336 
37337   case 1498:
37338 #line 10103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37339     {
37340             (yyval.item)= all_any_subquery_creator(thd, (yyvsp[-5].item), (yyvsp[-4].boolfunc2creator), (yyvsp[-3].num), (yyvsp[-1].select_lex));
37341             if (unlikely((yyval.item) == NULL))
37342               MYSQL_YYABORT;
37343           }
37344 #line 37345 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37345     break;
37346 
37347   case 1500:
37348 #line 10113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37349     {
37350             (yyval.item)= new (thd->mem_root) Item_in_subselect(thd, (yyvsp[-2].item), (yyvsp[0].select_lex));
37351             if (unlikely(!(yyval.item)))
37352               MYSQL_YYABORT;
37353           }
37354 #line 37355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37355     break;
37356 
37357   case 1501:
37358 #line 10119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37359     {
37360             Item *item= new (thd->mem_root) Item_in_subselect(thd, (yyvsp[-3].item), (yyvsp[0].select_lex));
37361             if (unlikely(!item))
37362               MYSQL_YYABORT;
37363             (yyval.item)= negate_expression(thd, item);
37364             if (unlikely(!(yyval.item)))
37365               MYSQL_YYABORT;
37366           }
37367 #line 37368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37368     break;
37369 
37370   case 1502:
37371 #line 10128 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37372     {
37373             (yyval.item)= handle_sql2003_note184_exception(thd, (yyvsp[-4].item), true, (yyvsp[-1].item));
37374             if (unlikely((yyval.item) == NULL))
37375               MYSQL_YYABORT;
37376           }
37377 #line 37378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37378     break;
37379 
37380   case 1503:
37381 #line 10134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37382     {
37383             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
37384             (yyvsp[-1].item_list)->push_front((yyvsp[-6].item), thd->mem_root);
37385             (yyval.item)= new (thd->mem_root) Item_func_in(thd, *(yyvsp[-1].item_list));
37386             if (unlikely((yyval.item) == NULL))
37387               MYSQL_YYABORT;
37388           }
37389 #line 37390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37390     break;
37391 
37392   case 1504:
37393 #line 10142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37394     {
37395             (yyval.item)= handle_sql2003_note184_exception(thd, (yyvsp[-5].item), false, (yyvsp[-1].item));
37396             if (unlikely((yyval.item) == NULL))
37397               MYSQL_YYABORT;
37398           }
37399 #line 37400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37400     break;
37401 
37402   case 1505:
37403 #line 10148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37404     {
37405             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
37406             (yyvsp[-1].item_list)->push_front((yyvsp[-7].item), thd->mem_root);
37407             Item_func_in *item= new (thd->mem_root) Item_func_in(thd, *(yyvsp[-1].item_list));
37408             if (unlikely(item == NULL))
37409               MYSQL_YYABORT;
37410             (yyval.item)= item->neg_transformer(thd);
37411           }
37412 #line 37413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37413     break;
37414 
37415   case 1506:
37416 #line 10157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37417     {
37418             (yyval.item)= new (thd->mem_root) Item_func_between(thd, (yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item));
37419             if (unlikely((yyval.item) == NULL))
37420               MYSQL_YYABORT;
37421           }
37422 #line 37423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37423     break;
37424 
37425   case 1507:
37426 #line 10163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37427     {
37428             Item_func_between *item;
37429             item= new (thd->mem_root) Item_func_between(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[0].item));
37430             if (unlikely(item == NULL))
37431               MYSQL_YYABORT;
37432             (yyval.item)= item->neg_transformer(thd);
37433           }
37434 #line 37435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37435     break;
37436 
37437   case 1508:
37438 #line 10171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37439     {
37440             Item *item1= new (thd->mem_root) Item_func_soundex(thd, (yyvsp[-3].item));
37441             Item *item4= new (thd->mem_root) Item_func_soundex(thd, (yyvsp[0].item));
37442             if (unlikely(item1 == NULL) || unlikely(item4 == NULL))
37443               MYSQL_YYABORT;
37444             (yyval.item)= new (thd->mem_root) Item_func_eq(thd, item1, item4);
37445             if (unlikely((yyval.item) == NULL))
37446               MYSQL_YYABORT;
37447           }
37448 #line 37449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37449     break;
37450 
37451   case 1509:
37452 #line 10181 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37453     {
37454             (yyval.item)= new (thd->mem_root) Item_func_like(thd, (yyvsp[-2].item), (yyvsp[0].item), escape(thd), false);
37455             if (unlikely(!(yyval.item)))
37456               MYSQL_YYABORT;
37457           }
37458 #line 37459 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37459     break;
37460 
37461   case 1510:
37462 #line 10187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37463     {
37464             Lex->escape_used= true;
37465             (yyval.item)= new (thd->mem_root) Item_func_like(thd, (yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item), true);
37466             if (unlikely(!(yyval.item)))
37467               MYSQL_YYABORT;
37468           }
37469 #line 37470 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37470     break;
37471 
37472   case 1511:
37473 #line 10194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37474     {
37475             Item *item= new (thd->mem_root) Item_func_like(thd, (yyvsp[-3].item), (yyvsp[0].item), escape(thd), false);
37476             if (unlikely(!item))
37477               MYSQL_YYABORT;
37478             (yyval.item)= item->neg_transformer(thd);
37479           }
37480 #line 37481 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37481     break;
37482 
37483   case 1512:
37484 #line 10201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37485     {
37486             Lex->escape_used= true;
37487             Item *item= new (thd->mem_root) Item_func_like(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[0].item), true);
37488             if (unlikely(!item))
37489               MYSQL_YYABORT;
37490             (yyval.item)= item->neg_transformer(thd);
37491           }
37492 #line 37493 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37493     break;
37494 
37495   case 1513:
37496 #line 10209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37497     {
37498             (yyval.item)= new (thd->mem_root) Item_func_regex(thd, (yyvsp[-2].item), (yyvsp[0].item));
37499             if (unlikely((yyval.item) == NULL))
37500               MYSQL_YYABORT;
37501           }
37502 #line 37503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37503     break;
37504 
37505   case 1514:
37506 #line 10215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37507     {
37508             Item *item= new (thd->mem_root) Item_func_regex(thd, (yyvsp[-3].item), (yyvsp[0].item));
37509             if (unlikely(item == NULL))
37510               MYSQL_YYABORT;
37511             (yyval.item)= negate_expression(thd, item);
37512             if (unlikely((yyval.item) == NULL))
37513               MYSQL_YYABORT;
37514           }
37515 #line 37516 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37516     break;
37517 
37518   case 1516:
37519 #line 10228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37520     {
37521             (yyval.item)= new (thd->mem_root) Item_func_bit_or(thd, (yyvsp[-2].item), (yyvsp[0].item));
37522             if (unlikely((yyval.item) == NULL))
37523               MYSQL_YYABORT;
37524           }
37525 #line 37526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37526     break;
37527 
37528   case 1517:
37529 #line 10234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37530     {
37531             (yyval.item)= new (thd->mem_root) Item_func_bit_and(thd, (yyvsp[-2].item), (yyvsp[0].item));
37532             if (unlikely((yyval.item) == NULL))
37533               MYSQL_YYABORT;
37534           }
37535 #line 37536 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37536     break;
37537 
37538   case 1518:
37539 #line 10240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37540     {
37541             (yyval.item)= new (thd->mem_root) Item_func_shift_left(thd, (yyvsp[-2].item), (yyvsp[0].item));
37542             if (unlikely((yyval.item) == NULL))
37543               MYSQL_YYABORT;
37544           }
37545 #line 37546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37546     break;
37547 
37548   case 1519:
37549 #line 10246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37550     {
37551             (yyval.item)= new (thd->mem_root) Item_func_shift_right(thd, (yyvsp[-2].item), (yyvsp[0].item));
37552             if (unlikely((yyval.item) == NULL))
37553               MYSQL_YYABORT;
37554           }
37555 #line 37556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37556     break;
37557 
37558   case 1520:
37559 #line 10252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37560     {
37561             (yyval.item)= new (thd->mem_root) Item_func_concat_operator_oracle(thd,
37562                                                                      (yyvsp[-2].item), (yyvsp[0].item));
37563             if (unlikely((yyval.item) == NULL))
37564               MYSQL_YYABORT;
37565           }
37566 #line 37567 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37567     break;
37568 
37569   case 1521:
37570 #line 10259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37571     {
37572             (yyval.item)= new (thd->mem_root) Item_func_plus(thd, (yyvsp[-2].item), (yyvsp[0].item));
37573             if (unlikely((yyval.item) == NULL))
37574               MYSQL_YYABORT;
37575           }
37576 #line 37577 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37577     break;
37578 
37579   case 1522:
37580 #line 10265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37581     {
37582             (yyval.item)= new (thd->mem_root) Item_func_minus(thd, (yyvsp[-2].item), (yyvsp[0].item));
37583             if (unlikely((yyval.item) == NULL))
37584               MYSQL_YYABORT;
37585           }
37586 #line 37587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37587     break;
37588 
37589   case 1523:
37590 #line 10271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37591     {
37592             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 0);
37593             if (unlikely((yyval.item) == NULL))
37594               MYSQL_YYABORT;
37595           }
37596 #line 37597 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37597     break;
37598 
37599   case 1524:
37600 #line 10277 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37601     {
37602             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 1);
37603             if (unlikely((yyval.item) == NULL))
37604               MYSQL_YYABORT;
37605           }
37606 #line 37607 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37607     break;
37608 
37609   case 1525:
37610 #line 10284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37611     {
37612             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 0);
37613             if (unlikely((yyval.item) == NULL))
37614               MYSQL_YYABORT;
37615           }
37616 #line 37617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37617     break;
37618 
37619   case 1526:
37620 #line 10290 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37621     {
37622             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 0);
37623             if (unlikely((yyval.item) == NULL))
37624               MYSQL_YYABORT;
37625           }
37626 #line 37627 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37627     break;
37628 
37629   case 1527:
37630 #line 10296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37631     {
37632             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 1);
37633             if (unlikely((yyval.item) == NULL))
37634               MYSQL_YYABORT;
37635           }
37636 #line 37637 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37637     break;
37638 
37639   case 1528:
37640 #line 10302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37641     {
37642             (yyval.item)= new (thd->mem_root) Item_func_mul(thd, (yyvsp[-2].item), (yyvsp[0].item));
37643             if (unlikely((yyval.item) == NULL))
37644               MYSQL_YYABORT;
37645           }
37646 #line 37647 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37647     break;
37648 
37649   case 1529:
37650 #line 10308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37651     {
37652             (yyval.item)= new (thd->mem_root) Item_func_div(thd, (yyvsp[-2].item), (yyvsp[0].item));
37653             if (unlikely((yyval.item) == NULL))
37654               MYSQL_YYABORT;
37655           }
37656 #line 37657 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37657     break;
37658 
37659   case 1530:
37660 #line 10314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37661     {
37662             (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-2].item), (yyvsp[0].item));
37663             if (unlikely((yyval.item) == NULL))
37664               MYSQL_YYABORT;
37665           }
37666 #line 37667 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37667     break;
37668 
37669   case 1531:
37670 #line 10320 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37671     {
37672             (yyval.item)= new (thd->mem_root) Item_func_int_div(thd, (yyvsp[-2].item), (yyvsp[0].item));
37673             if (unlikely((yyval.item) == NULL))
37674               MYSQL_YYABORT;
37675           }
37676 #line 37677 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37677     break;
37678 
37679   case 1532:
37680 #line 10326 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37681     {
37682             (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-2].item), (yyvsp[0].item));
37683             if (unlikely((yyval.item) == NULL))
37684               MYSQL_YYABORT;
37685           }
37686 #line 37687 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37687     break;
37688 
37689   case 1533:
37690 #line 10332 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37691     {
37692             (yyval.item)= new (thd->mem_root) Item_func_bit_xor(thd, (yyvsp[-2].item), (yyvsp[0].item));
37693             if (unlikely((yyval.item) == NULL))
37694               MYSQL_YYABORT;
37695           }
37696 #line 37697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37697     break;
37698 
37699   case 1543:
37700 #line 10361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37701     { (yyval.boolfunc2creator) = &comp_eq_creator; }
37702 #line 37703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37703     break;
37704 
37705   case 1544:
37706 #line 10362 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37707     { (yyval.boolfunc2creator) = &comp_ge_creator; }
37708 #line 37709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37709     break;
37710 
37711   case 1545:
37712 #line 10363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37713     { (yyval.boolfunc2creator) = &comp_gt_creator; }
37714 #line 37715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37715     break;
37716 
37717   case 1546:
37718 #line 10364 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37719     { (yyval.boolfunc2creator) = &comp_le_creator; }
37720 #line 37721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37721     break;
37722 
37723   case 1547:
37724 #line 10365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37725     { (yyval.boolfunc2creator) = &comp_lt_creator; }
37726 #line 37727 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37727     break;
37728 
37729   case 1548:
37730 #line 10366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37731     { (yyval.boolfunc2creator) = &comp_ne_creator; }
37732 #line 37733 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37733     break;
37734 
37735   case 1549:
37736 #line 10370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37737     { (yyval.num) = 1; }
37738 #line 37739 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37739     break;
37740 
37741   case 1550:
37742 #line 10371 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37743     { (yyval.num) = 0; }
37744 #line 37745 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37745     break;
37746 
37747   case 1551:
37748 #line 10376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37749     {
37750             (yyval.Lex_dyncol_type).set(DYN_COL_NULL); /* automatic type */
37751             Lex->charset= NULL;
37752 	  }
37753 #line 37754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37754     break;
37755 
37756   case 1552:
37757 #line 10380 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37758     { (yyval.Lex_dyncol_type)= (yyvsp[0].Lex_dyncol_type); }
37759 #line 37760 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37760     break;
37761 
37762   case 1553:
37763 #line 10384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37764     { (yyval.Lex_dyncol_type)= (yyvsp[0].Lex_dyncol_type); Lex->charset= NULL; }
37765 #line 37766 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37766     break;
37767 
37768   case 1554:
37769 #line 10385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37770     { (yyval.Lex_dyncol_type)= (yyvsp[0].Lex_dyncol_type); Lex->charset= NULL; }
37771 #line 37772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37772     break;
37773 
37774   case 1555:
37775 #line 10386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37776     { (yyval.Lex_dyncol_type)= (yyvsp[0].Lex_dyncol_type); }
37777 #line 37778 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37778     break;
37779 
37780   case 1556:
37781 #line 10390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37782     { (yyval.Lex_dyncol_type).set(DYN_COL_INT); }
37783 #line 37784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37784     break;
37785 
37786   case 1557:
37787 #line 10391 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37788     { (yyval.Lex_dyncol_type).set(DYN_COL_UINT);  }
37789 #line 37790 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37790     break;
37791 
37792   case 1558:
37793 #line 10392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37794     { (yyval.Lex_dyncol_type).set(DYN_COL_DOUBLE);  }
37795 #line 37796 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37796     break;
37797 
37798   case 1559:
37799 #line 10393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37800     { (yyval.Lex_dyncol_type).set(DYN_COL_DOUBLE); }
37801 #line 37802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37802     break;
37803 
37804   case 1560:
37805 #line 10394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37806     { (yyval.Lex_dyncol_type).set(DYN_COL_DOUBLE); }
37807 #line 37808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37808     break;
37809 
37810   case 1561:
37811 #line 10395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37812     { (yyval.Lex_dyncol_type).set(DYN_COL_DECIMAL, (yyvsp[0].Lex_length_and_dec)); }
37813 #line 37814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37814     break;
37815 
37816   case 1562:
37817 #line 10399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37818     { (yyval.Lex_dyncol_type).set(DYN_COL_DATE); }
37819 #line 37820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37820     break;
37821 
37822   case 1563:
37823 #line 10400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37824     { (yyval.Lex_dyncol_type).set(DYN_COL_TIME, 0, (yyvsp[0].const_simple_string)); }
37825 #line 37826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37826     break;
37827 
37828   case 1564:
37829 #line 10401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37830     { (yyval.Lex_dyncol_type).set(DYN_COL_DATETIME, 0, (yyvsp[0].const_simple_string)); }
37831 #line 37832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37832     break;
37833 
37834   case 1565:
37835 #line 10406 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37836     { Lex->charset= thd->variables.collation_connection; }
37837 #line 37838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37838     break;
37839 
37840   case 1566:
37841 #line 10408 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37842     {
37843             (yyval.Lex_dyncol_type).set(DYN_COL_STRING);
37844           }
37845 #line 37846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37846     break;
37847 
37848   case 1567:
37849 #line 10412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37850     {
37851             (yyval.Lex_dyncol_type).set(DYN_COL_STRING);
37852             Lex->charset= national_charset_info;
37853           }
37854 #line 37855 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37855     break;
37856 
37857   case 1568:
37858 #line 10420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37859     {
37860      LEX *lex= Lex;
37861      (yyval.dyncol_def)= (DYNCALL_CREATE_DEF *)
37862        alloc_root(thd->mem_root, sizeof(DYNCALL_CREATE_DEF));
37863      if (unlikely((yyval.dyncol_def) == NULL))
37864        MYSQL_YYABORT;
37865      (yyval.dyncol_def)->key= (yyvsp[-3].item);
37866      (yyval.dyncol_def)->value= (yyvsp[-1].item);
37867      (yyval.dyncol_def)->type= (DYNAMIC_COLUMN_TYPE)(yyvsp[0].Lex_dyncol_type).dyncol_type();
37868      (yyval.dyncol_def)->cs= lex->charset;
37869      if ((yyvsp[0].Lex_dyncol_type).length())
37870        (yyval.dyncol_def)->len= strtoul((yyvsp[0].Lex_dyncol_type).length(), NULL, 10);
37871      else
37872        (yyval.dyncol_def)->len= 0;
37873      if ((yyvsp[0].Lex_dyncol_type).dec())
37874        (yyval.dyncol_def)->frac= strtoul((yyvsp[0].Lex_dyncol_type).dec(), NULL, 10);
37875      else
37876        (yyval.dyncol_def)->len= 0;
37877    }
37878 #line 37879 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37879     break;
37880 
37881   case 1569:
37882 #line 10443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37883     {
37884          (yyval.dyncol_def_list)= new (thd->mem_root) List<DYNCALL_CREATE_DEF>;
37885          if (unlikely((yyval.dyncol_def_list) == NULL))
37886            MYSQL_YYABORT;
37887          (yyval.dyncol_def_list)->push_back((yyvsp[0].dyncol_def), thd->mem_root);
37888        }
37889 #line 37890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37890     break;
37891 
37892   case 1570:
37893 #line 10450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37894     {
37895          (yyvsp[-2].dyncol_def_list)->push_back((yyvsp[0].dyncol_def), thd->mem_root);
37896          (yyval.dyncol_def_list)= (yyvsp[-2].dyncol_def_list);
37897        }
37898 #line 37899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37899     break;
37900 
37901   case 1571:
37902 #line 10458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37903     { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_ISOPEN; }
37904 #line 37905 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37905     break;
37906 
37907   case 1572:
37908 #line 10459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37909     { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_FOUND; }
37910 #line 37911 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37911     break;
37912 
37913   case 1573:
37914 #line 10460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37915     { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_NOTFOUND; }
37916 #line 37917 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37917     break;
37918 
37919   case 1574:
37920 #line 10461 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37921     { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_ROWCOUNT; }
37922 #line 37923 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37923     break;
37924 
37925   case 1575:
37926 #line 10466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37927     {
37928             if (unlikely(!((yyval.item)= Lex->make_item_plsql_cursor_attr(thd, &(yyvsp[-2].ident_sys), (yyvsp[0].plsql_cursor_attr)))))
37929               MYSQL_YYABORT;
37930           }
37931 #line 37932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37932     break;
37933 
37934   case 1576:
37935 #line 10474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37936     { (yyval.trim).set(TRIM_BOTH, (yyvsp[0].item));         }
37937 #line 37938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37938     break;
37939 
37940   case 1577:
37941 #line 10475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37942     { (yyval.trim).set(TRIM_LEADING, (yyvsp[-2].item), (yyvsp[0].item));  }
37943 #line 37944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37944     break;
37945 
37946   case 1578:
37947 #line 10476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37948     { (yyval.trim).set(TRIM_TRAILING, (yyvsp[-2].item), (yyvsp[0].item)); }
37949 #line 37950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37950     break;
37951 
37952   case 1579:
37953 #line 10477 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37954     { (yyval.trim).set(TRIM_BOTH, (yyvsp[-2].item), (yyvsp[0].item));     }
37955 #line 37956 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37956     break;
37957 
37958   case 1580:
37959 #line 10478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37960     { (yyval.trim).set(TRIM_LEADING, (yyvsp[0].item));      }
37961 #line 37962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37962     break;
37963 
37964   case 1581:
37965 #line 10479 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37966     { (yyval.trim).set(TRIM_TRAILING, (yyvsp[0].item));     }
37967 #line 37968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37968     break;
37969 
37970   case 1582:
37971 #line 10480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37972     { (yyval.trim).set(TRIM_BOTH, (yyvsp[0].item));         }
37973 #line 37974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37974     break;
37975 
37976   case 1583:
37977 #line 10481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37978     { (yyval.trim).set(TRIM_BOTH, (yyvsp[-2].item), (yyvsp[0].item));     }
37979 #line 37980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37980     break;
37981 
37982   case 1590:
37983 #line 10519 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37984     { (yyval.item)= (yyvsp[0].item_param); }
37985 #line 37986 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37986     break;
37987 
37988   case 1592:
37989 #line 10522 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
37990     {
37991             if (!Lex->select_stack_top)
37992             {
37993               my_error(ER_INVALID_GROUP_FUNC_USE, MYF(0));
37994               MYSQL_YYABORT;
37995             }
37996           }
37997 #line 37998 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
37998     break;
37999 
38000   case 1593:
38001 #line 10530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38002     {
38003             if (!Lex->select_stack_top)
38004             {
38005                my_error(ER_WRONG_PLACEMENT_OF_WINDOW_FUNCTION, MYF(0));
38006                MYSQL_YYABORT;
38007             }
38008           }
38009 #line 38010 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38010     break;
38011 
38012   case 1595:
38013 #line 10539 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38014     {
38015             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
38016             (yyval.item)= new (thd->mem_root) Item_row(thd, *(yyvsp[-1].item_list));
38017             if (unlikely((yyval.item) == NULL))
38018               MYSQL_YYABORT;
38019           }
38020 #line 38021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38021     break;
38022 
38023   case 1596:
38024 #line 10546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38025     {
38026             (yyval.item)= new (thd->mem_root) Item_exists_subselect(thd, (yyvsp[-1].select_lex));
38027             if (unlikely((yyval.item) == NULL))
38028               MYSQL_YYABORT;
38029           }
38030 #line 38031 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38031     break;
38032 
38033   case 1597:
38034 #line 10552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38035     {
38036             if (unlikely(!((yyval.item)= (yyvsp[-1].item)->make_odbc_literal(thd, &(yyvsp[-2].ident_sys)))))
38037               MYSQL_YYABORT;
38038           }
38039 #line 38040 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38040     break;
38041 
38042   case 1598:
38043 #line 10557 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38044     {
38045             (yyvsp[-5].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
38046             Item_func_match *i1= new (thd->mem_root) Item_func_match(thd, *(yyvsp[-5].item_list),
38047                                                                      (yyvsp[-1].num));
38048             if (unlikely(i1 == NULL))
38049               MYSQL_YYABORT;
38050             Select->add_ftfunc_to_list(thd, i1);
38051             (yyval.item)= i1;
38052           }
38053 #line 38054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38054     break;
38055 
38056   case 1599:
38057 #line 10567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38058     {
38059             if (unlikely(!((yyval.item)= (yyvsp[-1].Lex_cast_type).create_typecast_item(thd, (yyvsp[-3].item), Lex->charset))))
38060               MYSQL_YYABORT;
38061           }
38062 #line 38063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38063     break;
38064 
38065   case 1600:
38066 #line 10572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38067     {
38068             if (unlikely(!((yyval.item)= new(thd->mem_root) Item_func_case_searched(thd, *(yyvsp[-1].item_list)))))
38069               MYSQL_YYABORT;
38070           }
38071 #line 38072 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38072     break;
38073 
38074   case 1601:
38075 #line 10577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38076     {
38077             (yyvsp[-1].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
38078             if (unlikely(!((yyval.item)= new (thd->mem_root) Item_func_case_simple(thd, *(yyvsp[-1].item_list)))))
38079               MYSQL_YYABORT;
38080           }
38081 #line 38082 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38082     break;
38083 
38084   case 1602:
38085 #line 10583 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38086     {
38087             if (unlikely(!((yyval.item)= (yyvsp[-1].Lex_cast_type).create_typecast_item(thd, (yyvsp[-3].item), Lex->charset))))
38088               MYSQL_YYABORT;
38089           }
38090 #line 38091 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38091     break;
38092 
38093   case 1603:
38094 #line 10588 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38095     {
38096             (yyval.item)= new (thd->mem_root) Item_func_conv_charset(thd, (yyvsp[-3].item), (yyvsp[-1].charset));
38097             if (unlikely((yyval.item) == NULL))
38098               MYSQL_YYABORT;
38099           }
38100 #line 38101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38101     break;
38102 
38103   case 1604:
38104 #line 10594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38105     {
38106             Item_splocal *il= (yyvsp[-1].item)->get_item_splocal();
38107             if (unlikely(il))
38108               my_yyabort_error((ER_WRONG_COLUMN_NAME, MYF(0), il->my_name()->str));
38109             (yyval.item)= new (thd->mem_root) Item_default_value(thd, Lex->current_context(),
38110                                                          (yyvsp[-1].item), 0);
38111             if (unlikely((yyval.item) == NULL))
38112               MYSQL_YYABORT;
38113             Lex->default_used= TRUE;
38114           }
38115 #line 38116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38116     break;
38117 
38118   case 1605:
38119 #line 10605 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38120     {
38121             (yyval.item)= new (thd->mem_root) Item_insert_value(thd, Lex->current_context(),
38122                                                         (yyvsp[-1].item));
38123             if (unlikely((yyval.item) == NULL))
38124               MYSQL_YYABORT;
38125           }
38126 #line 38127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38127     break;
38128 
38129   case 1606:
38130 #line 10612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38131     {
38132             if (unlikely(!((yyval.item)= Lex->create_item_func_nextval(thd, (yyvsp[0].table)))))
38133               MYSQL_YYABORT;
38134           }
38135 #line 38136 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38136     break;
38137 
38138   case 1607:
38139 #line 10617 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38140     {
38141             if (unlikely(!((yyval.item)= Lex->create_item_func_nextval(thd, (yyvsp[-1].table)))))
38142               MYSQL_YYABORT;
38143           }
38144 #line 38145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38145     break;
38146 
38147   case 1608:
38148 #line 10622 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38149     {
38150             if (unlikely(!((yyval.item)= Lex->create_item_func_lastval(thd, (yyvsp[0].table)))))
38151               MYSQL_YYABORT;
38152           }
38153 #line 38154 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38154     break;
38155 
38156   case 1609:
38157 #line 10627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38158     {
38159             if (unlikely(!((yyval.item)= Lex->create_item_func_lastval(thd, (yyvsp[-1].table)))))
38160               MYSQL_YYABORT;
38161           }
38162 #line 38163 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38163     break;
38164 
38165   case 1610:
38166 #line 10632 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38167     {
38168             if (unlikely(!((yyval.item)= Lex->create_item_func_setval(thd, (yyvsp[-3].table), (yyvsp[-1].longlong_number), 0, 1))))
38169               MYSQL_YYABORT;
38170           }
38171 #line 38172 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38172     break;
38173 
38174   case 1611:
38175 #line 10637 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38176     {
38177             if (unlikely(!((yyval.item)= Lex->create_item_func_setval(thd, (yyvsp[-5].table), (yyvsp[-3].longlong_number), 0, (yyvsp[-1].ulong_num)))))
38178               MYSQL_YYABORT;
38179           }
38180 #line 38181 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38181     break;
38182 
38183   case 1612:
38184 #line 10642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38185     {
38186             if (unlikely(!((yyval.item)= Lex->create_item_func_setval(thd, (yyvsp[-7].table), (yyvsp[-5].longlong_number), (yyvsp[-1].ulonglong_number), (yyvsp[-3].ulong_num)))))
38187               MYSQL_YYABORT;
38188           }
38189 #line 38190 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38190     break;
38191 
38192   case 1615:
38193 #line 10651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38194     { (yyval.item)= (yyvsp[-1].item); }
38195 #line 38196 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38196     break;
38197 
38198   case 1616:
38199 #line 10653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38200     {
38201             if (!((yyval.item)= Lex->create_item_query_expression(thd, (yyvsp[0].select_lex)->master_unit())))
38202               MYSQL_YYABORT;
38203           }
38204 #line 38205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38205     break;
38206 
38207   case 1618:
38208 #line 10662 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38209     {
38210             if (unlikely(!((yyval.item)= new (thd->mem_root) Item_func_set_collation(thd, (yyvsp[-2].item), (yyvsp[0].charset)))))
38211               MYSQL_YYABORT;
38212           }
38213 #line 38214 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38214     break;
38215 
38216   case 1620:
38217 #line 10671 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38218     {
38219             Type_cast_attributes at(&my_charset_bin);
38220             if (unlikely(!((yyval.item)= type_handler_long_blob.create_typecast_item(thd, (yyvsp[0].item), at))))
38221               MYSQL_YYABORT;
38222           }
38223 #line 38224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38224     break;
38225 
38226   case 1621:
38227 #line 10677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38228     {
38229             (yyval.item)= (yyvsp[0].item);
38230           }
38231 #line 38232 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38232     break;
38233 
38234   case 1622:
38235 #line 10681 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38236     {
38237             (yyval.item)= (yyvsp[0].item)->neg(thd);
38238             if (unlikely((yyval.item) == NULL))
38239               MYSQL_YYABORT;
38240           }
38241 #line 38242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38242     break;
38243 
38244   case 1623:
38245 #line 10687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38246     {
38247             (yyval.item)= new (thd->mem_root) Item_func_bit_neg(thd, (yyvsp[0].item));
38248             if (unlikely((yyval.item) == NULL))
38249               MYSQL_YYABORT;
38250           }
38251 #line 38252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38252     break;
38253 
38254   case 1624:
38255 #line 10693 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38256     {
38257             (yyval.item)= negate_expression(thd, (yyvsp[0].item));
38258             if (unlikely((yyval.item) == NULL))
38259               MYSQL_YYABORT;
38260           }
38261 #line 38262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38262     break;
38263 
38264   case 1626:
38265 #line 10703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38266     {
38267             (yyval.item)= new (thd->mem_root) Item_func_concat(thd, (yyvsp[-2].item), (yyvsp[0].item));
38268             if (unlikely((yyval.item) == NULL))
38269               MYSQL_YYABORT;
38270           }
38271 #line 38272 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38272     break;
38273 
38274   case 1627:
38275 #line 10712 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38276     {
38277             (yyval.item)= new (thd->mem_root) Item_datetime_typecast(thd, (yyvsp[-1].item),
38278                                       AUTO_SEC_PART_DIGITS);
38279             if (unlikely((yyval.item) == NULL))
38280               MYSQL_YYABORT;
38281           }
38282 #line 38283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38283     break;
38284 
38285   case 1628:
38286 #line 10719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38287     {
38288             (yyval.item)= new (thd->mem_root) Item_func_timestamp(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38289             if (unlikely((yyval.item) == NULL))
38290               MYSQL_YYABORT;
38291           }
38292 #line 38293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38293     break;
38294 
38295   case 1629:
38296 #line 10733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38297     {
38298             (yyval.item)= new (thd->mem_root) Item_func_char(thd, *(yyvsp[-1].item_list));
38299             if (unlikely((yyval.item) == NULL))
38300               MYSQL_YYABORT;
38301           }
38302 #line 38303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38303     break;
38304 
38305   case 1630:
38306 #line 10739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38307     {
38308             (yyval.item)= new (thd->mem_root) Item_func_char(thd, *(yyvsp[-3].item_list), (yyvsp[-1].charset));
38309             if (unlikely((yyval.item) == NULL))
38310               MYSQL_YYABORT;
38311           }
38312 #line 38313 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38313     break;
38314 
38315   case 1631:
38316 #line 10745 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38317     {
38318             (yyval.item)= new (thd->mem_root) Item_func_current_user(thd,
38319                                       Lex->current_context());
38320             if (unlikely((yyval.item) == NULL))
38321               MYSQL_YYABORT;
38322             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
38323             Lex->safe_to_cache_query= 0;
38324           }
38325 #line 38326 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38326     break;
38327 
38328   case 1632:
38329 #line 10754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38330     {
38331             (yyval.item)= new (thd->mem_root) Item_func_current_role(thd,
38332                                       Lex->current_context());
38333             if (unlikely((yyval.item) == NULL))
38334               MYSQL_YYABORT;
38335             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
38336             Lex->safe_to_cache_query= 0;
38337           }
38338 #line 38339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38339     break;
38340 
38341   case 1633:
38342 #line 10763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38343     {
38344             (yyval.item)= new (thd->mem_root) Item_date_typecast(thd, (yyvsp[-1].item));
38345             if (unlikely((yyval.item) == NULL))
38346               MYSQL_YYABORT;
38347           }
38348 #line 38349 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38349     break;
38350 
38351   case 1634:
38352 #line 10769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38353     {
38354             (yyval.item)= new (thd->mem_root) Item_func_dayofmonth(thd, (yyvsp[-1].item));
38355             if (unlikely((yyval.item) == NULL))
38356               MYSQL_YYABORT;
38357           }
38358 #line 38359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38359     break;
38360 
38361   case 1635:
38362 #line 10775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38363     {
38364             (yyval.item)= new (thd->mem_root) Item_func_hour(thd, (yyvsp[-1].item));
38365             if (unlikely((yyval.item) == NULL))
38366               MYSQL_YYABORT;
38367           }
38368 #line 38369 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38369     break;
38370 
38371   case 1636:
38372 #line 10781 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38373     {
38374             (yyval.item)= new (thd->mem_root) Item_func_insert(thd, (yyvsp[-7].item), (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
38375             if (unlikely((yyval.item) == NULL))
38376               MYSQL_YYABORT;
38377           }
38378 #line 38379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38379     break;
38380 
38381   case 1637:
38382 #line 10787 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38383     {
38384             List<Item> *list= new (thd->mem_root) List<Item>;
38385             if (unlikely(list == NULL))
38386               MYSQL_YYABORT;
38387             if (unlikely(list->push_front((yyvsp[-1].item), thd->mem_root)) ||
38388                 unlikely(list->push_front((yyvsp[-3].item), thd->mem_root)))
38389               MYSQL_YYABORT;
38390             Item_row *item= new (thd->mem_root) Item_row(thd, *list);
38391             if (unlikely(item == NULL))
38392               MYSQL_YYABORT;
38393             (yyval.item)= new (thd->mem_root) Item_func_interval(thd, item);
38394             if (unlikely((yyval.item) == NULL))
38395               MYSQL_YYABORT;
38396           }
38397 #line 38398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38398     break;
38399 
38400   case 1638:
38401 #line 10802 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38402     {
38403             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
38404             (yyvsp[-1].item_list)->push_front((yyvsp[-5].item), thd->mem_root);
38405             Item_row *item= new (thd->mem_root) Item_row(thd, *(yyvsp[-1].item_list));
38406             if (unlikely(item == NULL))
38407               MYSQL_YYABORT;
38408             (yyval.item)= new (thd->mem_root) Item_func_interval(thd, item);
38409             if (unlikely((yyval.item) == NULL))
38410               MYSQL_YYABORT;
38411           }
38412 #line 38413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38413     break;
38414 
38415   case 1639:
38416 #line 10813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38417     {
38418             (yyval.item)= new (thd->mem_root) Item_func_left(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38419             if (unlikely((yyval.item) == NULL))
38420               MYSQL_YYABORT;
38421           }
38422 #line 38423 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38423     break;
38424 
38425   case 1640:
38426 #line 10819 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38427     {
38428             (yyval.item)= new (thd->mem_root) Item_func_minute(thd, (yyvsp[-1].item));
38429             if (unlikely((yyval.item) == NULL))
38430               MYSQL_YYABORT;
38431           }
38432 #line 38433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38433     break;
38434 
38435   case 1641:
38436 #line 10825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38437     {
38438             (yyval.item)= new (thd->mem_root) Item_func_month(thd, (yyvsp[-1].item));
38439             if (unlikely((yyval.item) == NULL))
38440               MYSQL_YYABORT;
38441           }
38442 #line 38443 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38443     break;
38444 
38445   case 1642:
38446 #line 10831 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38447     {
38448             (yyval.item)= new (thd->mem_root) Item_func_right(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38449             if (unlikely((yyval.item) == NULL))
38450               MYSQL_YYABORT;
38451           }
38452 #line 38453 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38453     break;
38454 
38455   case 1643:
38456 #line 10837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38457     {
38458             (yyval.item)= new (thd->mem_root) Item_func_second(thd, (yyvsp[-1].item));
38459             if (unlikely((yyval.item) == NULL))
38460               MYSQL_YYABORT;
38461           }
38462 #line 38463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38463     break;
38464 
38465   case 1644:
38466 #line 10843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38467     {
38468             (yyval.item)= new (thd->mem_root) Item_func_oracle_sql_rowcount(thd);
38469             if (unlikely((yyval.item) == NULL))
38470               MYSQL_YYABORT;
38471             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
38472             Lex->safe_to_cache_query= 0;
38473           }
38474 #line 38475 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38475     break;
38476 
38477   case 1645:
38478 #line 10851 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38479     {
38480             (yyval.item)= new (thd->mem_root) Item_time_typecast(thd, (yyvsp[-1].item),
38481                                       AUTO_SEC_PART_DIGITS);
38482             if (unlikely((yyval.item) == NULL))
38483               MYSQL_YYABORT;
38484           }
38485 #line 38486 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38486     break;
38487 
38488   case 1646:
38489 #line 10858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38490     {
38491             (yyval.item)= (yyvsp[0].item);
38492           }
38493 #line 38494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38494     break;
38495 
38496   case 1647:
38497 #line 10862 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38498     {
38499             if (unlikely(!((yyval.item)= (yyvsp[-1].trim).make_item_func_trim(thd))))
38500               MYSQL_YYABORT;
38501           }
38502 #line 38503 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38503     break;
38504 
38505   case 1648:
38506 #line 10867 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38507     {
38508             (yyval.item)= new (thd->mem_root) Item_func_user(thd);
38509             if (unlikely((yyval.item) == NULL))
38510               MYSQL_YYABORT;
38511             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
38512             Lex->safe_to_cache_query=0;
38513           }
38514 #line 38515 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38515     break;
38516 
38517   case 1649:
38518 #line 10875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38519     {
38520             (yyval.item)= new (thd->mem_root) Item_func_year(thd, (yyvsp[-1].item));
38521             if (unlikely((yyval.item) == NULL))
38522               MYSQL_YYABORT;
38523           }
38524 #line 38525 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38525     break;
38526 
38527   case 1650:
38528 #line 10896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38529     {
38530             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-3].item), (yyvsp[-1].item),
38531                                                              INTERVAL_DAY, 0);
38532             if (unlikely((yyval.item) == NULL))
38533               MYSQL_YYABORT;
38534           }
38535 #line 38536 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38536     break;
38537 
38538   case 1651:
38539 #line 10903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38540     {
38541             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0);
38542             if (unlikely((yyval.item) == NULL))
38543               MYSQL_YYABORT;
38544           }
38545 #line 38546 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38546     break;
38547 
38548   case 1652:
38549 #line 10909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38550     {
38551             (yyval.item)= new (thd->mem_root) Item_func_curdate_local(thd);
38552             if (unlikely((yyval.item) == NULL))
38553               MYSQL_YYABORT;
38554             Lex->safe_to_cache_query=0;
38555           }
38556 #line 38557 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38557     break;
38558 
38559   case 1653:
38560 #line 10916 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38561     {
38562             (yyval.item)= new (thd->mem_root) Item_func_curtime_local(thd, (yyvsp[0].num));
38563             if (unlikely((yyval.item) == NULL))
38564               MYSQL_YYABORT;
38565             Lex->safe_to_cache_query=0;
38566           }
38567 #line 38568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38568     break;
38569 
38570   case 1654:
38571 #line 10923 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38572     {
38573             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0);
38574             if (unlikely((yyval.item) == NULL))
38575               MYSQL_YYABORT;
38576           }
38577 #line 38578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38578     break;
38579 
38580   case 1655:
38581 #line 10929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38582     {
38583             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1);
38584             if (unlikely((yyval.item) == NULL))
38585               MYSQL_YYABORT;
38586           }
38587 #line 38588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38588     break;
38589 
38590   case 1656:
38591 #line 10935 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38592     {
38593             (yyval.item)= new (thd->mem_root) Item_func_date_format(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38594             if (unlikely((yyval.item) == NULL))
38595               MYSQL_YYABORT;
38596           }
38597 #line 38598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38598     break;
38599 
38600   case 1657:
38601 #line 10941 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38602     {
38603             (yyval.item)= new (thd->mem_root) Item_func_date_format(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
38604             if (unlikely((yyval.item) == NULL))
38605               MYSQL_YYABORT;
38606           }
38607 #line 38608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38608     break;
38609 
38610   case 1658:
38611 #line 10947 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38612     {
38613             (yyval.item)= new (thd->mem_root) Item_func_decode(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38614             if (unlikely((yyval.item) == NULL))
38615               MYSQL_YYABORT;
38616           }
38617 #line 38618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38618     break;
38619 
38620   case 1659:
38621 #line 10953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38622     {
38623             (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
38624             if (unlikely(!((yyval.item)= new (thd->mem_root) Item_func_decode_oracle(thd, *(yyvsp[-1].item_list)))))
38625               MYSQL_YYABORT;
38626           }
38627 #line 38628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38628     break;
38629 
38630   case 1660:
38631 #line 10959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38632     {
38633             (yyval.item)=new (thd->mem_root) Item_extract(thd, (yyvsp[-3].interval), (yyvsp[-1].item));
38634             if (unlikely((yyval.item) == NULL))
38635               MYSQL_YYABORT;
38636           }
38637 #line 38638 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38638     break;
38639 
38640   case 1661:
38641 #line 10965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38642     {
38643             (yyval.item)= new (thd->mem_root) Item_func_get_format(thd, (yyvsp[-3].date_time_type), (yyvsp[-1].item));
38644             if (unlikely((yyval.item) == NULL))
38645               MYSQL_YYABORT;
38646           }
38647 #line 38648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38648     break;
38649 
38650   case 1662:
38651 #line 10971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38652     {
38653             (yyval.item)= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
38654             if (unlikely((yyval.item) == NULL))
38655               MYSQL_YYABORT;
38656             Lex->safe_to_cache_query=0;
38657           }
38658 #line 38659 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38659     break;
38660 
38661   case 1663:
38662 #line 10978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38663     {
38664             (yyval.item)= new (thd->mem_root) Item_func_locate(thd, (yyvsp[-1].item), (yyvsp[-3].item));
38665             if (unlikely((yyval.item) == NULL))
38666               MYSQL_YYABORT;
38667           }
38668 #line 38669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38669     break;
38670 
38671   case 1664:
38672 #line 10984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38673     {
38674             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-3].item), (yyvsp[-1].item),
38675                                                              INTERVAL_DAY, 1);
38676             if (unlikely((yyval.item) == NULL))
38677               MYSQL_YYABORT;
38678           }
38679 #line 38680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38680     break;
38681 
38682   case 1665:
38683 #line 10991 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38684     {
38685             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1);
38686             if (unlikely((yyval.item) == NULL))
38687               MYSQL_YYABORT;
38688           }
38689 #line 38690 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38690     break;
38691 
38692   case 1666:
38693 #line 10997 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38694     {
38695             if (unlikely(!((yyval.item)= Lex->make_item_func_substr(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item)))))
38696               MYSQL_YYABORT;
38697           }
38698 #line 38699 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38699     break;
38700 
38701   case 1667:
38702 #line 11002 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38703     {
38704             if (unlikely(!((yyval.item)= Lex->make_item_func_substr(thd, (yyvsp[-3].item), (yyvsp[-1].item)))))
38705               MYSQL_YYABORT;
38706           }
38707 #line 38708 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38708     break;
38709 
38710   case 1668:
38711 #line 11007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38712     {
38713             if (unlikely(!((yyval.item)= Lex->make_item_func_substr(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item)))))
38714               MYSQL_YYABORT;
38715           }
38716 #line 38717 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38717     break;
38718 
38719   case 1669:
38720 #line 11012 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38721     {
38722             if (unlikely(!((yyval.item)= Lex->make_item_func_substr(thd, (yyvsp[-3].item), (yyvsp[-1].item)))))
38723               MYSQL_YYABORT;
38724           }
38725 #line 38726 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38726     break;
38727 
38728   case 1670:
38729 #line 11017 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38730     {
38731             /*
38732               Unlike other time-related functions, SYSDATE() is
38733               replication-unsafe because it is not affected by the
38734               TIMESTAMP variable.  It is unsafe even if
38735               sysdate_is_now=1, because the slave may have
38736               sysdate_is_now=0.
38737             */
38738             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
38739             if (global_system_variables.sysdate_is_now == 0)
38740               (yyval.item)= new (thd->mem_root) Item_func_sysdate_local(thd, (yyvsp[0].num));
38741             else
38742               (yyval.item)= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
38743             if (unlikely((yyval.item) == NULL))
38744               MYSQL_YYABORT;
38745             Lex->safe_to_cache_query=0;
38746           }
38747 #line 38748 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38748     break;
38749 
38750   case 1671:
38751 #line 11035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38752     {
38753             (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-1].item), (yyvsp[-3].item), (yyvsp[-5].interval_time_st), 0);
38754             if (unlikely((yyval.item) == NULL))
38755               MYSQL_YYABORT;
38756           }
38757 #line 38758 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38758     break;
38759 
38760   case 1672:
38761 #line 11041 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38762     {
38763             (yyval.item)= new (thd->mem_root) Item_func_timestamp_diff(thd, (yyvsp[-3].item), (yyvsp[-1].item), (yyvsp[-5].interval_time_st));
38764             if (unlikely((yyval.item) == NULL))
38765               MYSQL_YYABORT;
38766           }
38767 #line 38768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38768     break;
38769 
38770   case 1673:
38771 #line 11047 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38772     {
38773             if (unlikely(!((yyval.item)= (yyvsp[-1].trim).make_item_func_trim_oracle(thd))))
38774               MYSQL_YYABORT;
38775           }
38776 #line 38777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38777     break;
38778 
38779   case 1674:
38780 #line 11052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38781     {
38782             (yyval.item)= new (thd->mem_root) Item_func_curdate_utc(thd);
38783             if (unlikely((yyval.item) == NULL))
38784               MYSQL_YYABORT;
38785             Lex->safe_to_cache_query=0;
38786           }
38787 #line 38788 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38788     break;
38789 
38790   case 1675:
38791 #line 11059 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38792     {
38793             (yyval.item)= new (thd->mem_root) Item_func_curtime_utc(thd, (yyvsp[0].num));
38794             if (unlikely((yyval.item) == NULL))
38795               MYSQL_YYABORT;
38796             Lex->safe_to_cache_query=0;
38797           }
38798 #line 38799 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38799     break;
38800 
38801   case 1676:
38802 #line 11066 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38803     {
38804             (yyval.item)= new (thd->mem_root) Item_func_now_utc(thd, (yyvsp[0].num));
38805             if (unlikely((yyval.item) == NULL))
38806               MYSQL_YYABORT;
38807             Lex->safe_to_cache_query=0;
38808           }
38809 #line 38810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38810     break;
38811 
38812   case 1677:
38813 #line 11074 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38814     {
38815             (yyval.item)= create_func_dyncol_add(thd, (yyvsp[-3].item), *(yyvsp[-1].dyncol_def_list));
38816             if (unlikely((yyval.item) == NULL))
38817               MYSQL_YYABORT;
38818           }
38819 #line 38820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38820     break;
38821 
38822   case 1678:
38823 #line 11081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38824     {
38825             (yyval.item)= create_func_dyncol_delete(thd, (yyvsp[-3].item), *(yyvsp[-1].item_list));
38826             if (unlikely((yyval.item) == NULL))
38827               MYSQL_YYABORT;
38828           }
38829 #line 38830 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38830     break;
38831 
38832   case 1679:
38833 #line 11088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38834     {
38835             (yyval.item)= new (thd->mem_root) Item_func_dyncol_check(thd, (yyvsp[-1].item));
38836             if (unlikely((yyval.item) == NULL))
38837               MYSQL_YYABORT;
38838           }
38839 #line 38840 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38840     break;
38841 
38842   case 1680:
38843 #line 11095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38844     {
38845             (yyval.item)= create_func_dyncol_create(thd, *(yyvsp[-1].dyncol_def_list));
38846             if (unlikely((yyval.item) == NULL))
38847               MYSQL_YYABORT;
38848           }
38849 #line 38850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38850     break;
38851 
38852   case 1681:
38853 #line 11102 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38854     {
38855             LEX *lex= Lex;
38856             (yyval.item)= create_func_dyncol_get(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].Lex_cast_type).type_handler(),
38857                                         (yyvsp[-1].Lex_cast_type).length(), (yyvsp[-1].Lex_cast_type).dec(),
38858                                         lex->charset);
38859             if (unlikely((yyval.item) == NULL))
38860               MYSQL_YYABORT;
38861           }
38862 #line 38863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38863     break;
38864 
38865   case 1682:
38866 #line 11119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38867     {
38868             (yyval.item)= new (thd->mem_root) Item_func_ascii(thd, (yyvsp[-1].item));
38869             if (unlikely((yyval.item) == NULL))
38870               MYSQL_YYABORT;
38871           }
38872 #line 38873 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38873     break;
38874 
38875   case 1683:
38876 #line 11125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38877     {
38878             (yyval.item)= new (thd->mem_root) Item_func_charset(thd, (yyvsp[-1].item));
38879             if (unlikely((yyval.item) == NULL))
38880               MYSQL_YYABORT;
38881           }
38882 #line 38883 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38883     break;
38884 
38885   case 1684:
38886 #line 11131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38887     {
38888             (yyval.item)= new (thd->mem_root) Item_func_coalesce(thd, *(yyvsp[-1].item_list));
38889             if (unlikely((yyval.item) == NULL))
38890               MYSQL_YYABORT;
38891           }
38892 #line 38893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38893     break;
38894 
38895   case 1685:
38896 #line 11137 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38897     {
38898             (yyval.item)= new (thd->mem_root) Item_func_collation(thd, (yyvsp[-1].item));
38899             if (unlikely((yyval.item) == NULL))
38900               MYSQL_YYABORT;
38901           }
38902 #line 38903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38903     break;
38904 
38905   case 1686:
38906 #line 11143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38907     {
38908             (yyval.item)= new (thd->mem_root) Item_func_database(thd);
38909             if (unlikely((yyval.item) == NULL))
38910               MYSQL_YYABORT;
38911             Lex->safe_to_cache_query=0;
38912           }
38913 #line 38914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38914     break;
38915 
38916   case 1687:
38917 #line 11150 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38918     {
38919             (yyval.item)= new (thd->mem_root) Item_func_if(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
38920             if (unlikely((yyval.item) == NULL))
38921               MYSQL_YYABORT;
38922           }
38923 #line 38924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38924     break;
38925 
38926   case 1688:
38927 #line 11156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38928     {
38929             (yyval.item)= new (thd->mem_root) Item_func_format(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38930             if (unlikely((yyval.item) == NULL))
38931               MYSQL_YYABORT;
38932           }
38933 #line 38934 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38934     break;
38935 
38936   case 1689:
38937 #line 11162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38938     {
38939             (yyval.item)= new (thd->mem_root) Item_func_format(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
38940             if (unlikely((yyval.item) == NULL))
38941               MYSQL_YYABORT;
38942           }
38943 #line 38944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38944     break;
38945 
38946   case 1690:
38947 #line 11171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38948     {
38949             List<Item> *list= new (thd->mem_root) List<Item>;
38950             if (unlikely(list == NULL))
38951               MYSQL_YYABORT;
38952             list->push_back((yyvsp[-1].item), thd->mem_root);
38953 
38954             (yyval.item)= new (thd->mem_root) Item_func_last_value(thd, *list);
38955             if (unlikely((yyval.item) == NULL))
38956               MYSQL_YYABORT;
38957           }
38958 #line 38959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38959     break;
38960 
38961   case 1691:
38962 #line 11182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38963     {
38964             (yyvsp[-3].item_list)->push_back((yyvsp[-1].item), thd->mem_root);
38965             (yyval.item)= new (thd->mem_root) Item_func_last_value(thd, *(yyvsp[-3].item_list));
38966             if (unlikely((yyval.item) == NULL))
38967               MYSQL_YYABORT;
38968           }
38969 #line 38970 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38970     break;
38971 
38972   case 1692:
38973 #line 11189 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38974     {
38975             (yyval.item)= new (thd->mem_root) Item_func_microsecond(thd, (yyvsp[-1].item));
38976             if (unlikely((yyval.item) == NULL))
38977               MYSQL_YYABORT;
38978           }
38979 #line 38980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38980     break;
38981 
38982   case 1693:
38983 #line 11195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38984     {
38985             (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-3].item), (yyvsp[-1].item));
38986             if (unlikely((yyval.item) == NULL))
38987               MYSQL_YYABORT;
38988           }
38989 #line 38990 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
38990     break;
38991 
38992   case 1694:
38993 #line 11201 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
38994     {
38995             (yyval.item)=  new (thd->mem_root)
38996               Item_func_password(thd, (yyvsp[-1].item), Item_func_password::OLD);
38997             if (unlikely((yyval.item) == NULL))
38998               MYSQL_YYABORT;
38999           }
39000 #line 39001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39001     break;
39002 
39003   case 1695:
39004 #line 11208 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39005     {
39006             Item* i1;
39007             i1= new (thd->mem_root) Item_func_password(thd, (yyvsp[-1].item));
39008             if (unlikely(i1 == NULL))
39009               MYSQL_YYABORT;
39010             (yyval.item)= i1;
39011           }
39012 #line 39013 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39013     break;
39014 
39015   case 1696:
39016 #line 11216 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39017     {
39018             (yyval.item)= new (thd->mem_root) Item_func_quarter(thd, (yyvsp[-1].item));
39019             if (unlikely((yyval.item) == NULL))
39020               MYSQL_YYABORT;
39021           }
39022 #line 39023 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39023     break;
39024 
39025   case 1697:
39026 #line 11222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39027     {
39028             (yyval.item)= new (thd->mem_root) Item_func_repeat(thd, (yyvsp[-3].item), (yyvsp[-1].item));
39029             if (unlikely((yyval.item) == NULL))
39030               MYSQL_YYABORT;
39031           }
39032 #line 39033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39033     break;
39034 
39035   case 1698:
39036 #line 11228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39037     {
39038             if (unlikely(!((yyval.item)= Lex->make_item_func_replace(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item)))))
39039               MYSQL_YYABORT;
39040           }
39041 #line 39042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39042     break;
39043 
39044   case 1699:
39045 #line 11233 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39046     {
39047             (yyval.item)= new (thd->mem_root) Item_func_reverse(thd, (yyvsp[-1].item));
39048             if (unlikely((yyval.item) == NULL))
39049               MYSQL_YYABORT;
39050           }
39051 #line 39052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39052     break;
39053 
39054   case 1700:
39055 #line 11239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39056     {
39057             (yyval.item)= new (thd->mem_root) Item_func_row_count(thd);
39058             if (unlikely((yyval.item) == NULL))
39059               MYSQL_YYABORT;
39060             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
39061             Lex->safe_to_cache_query= 0;
39062           }
39063 #line 39064 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39064     break;
39065 
39066   case 1701:
39067 #line 11247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39068     {
39069             (yyval.item)= new (thd->mem_root) Item_func_round(thd, (yyvsp[-3].item), (yyvsp[-1].item), 1);
39070             if (unlikely((yyval.item) == NULL))
39071               MYSQL_YYABORT;
39072           }
39073 #line 39074 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39074     break;
39075 
39076   case 1702:
39077 #line 11253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39078     {
39079             (yyval.item)= new (thd->mem_root) Item_func_week(thd, (yyvsp[-1].item));
39080             if (unlikely((yyval.item) == NULL))
39081               MYSQL_YYABORT;
39082           }
39083 #line 39084 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39084     break;
39085 
39086   case 1703:
39087 #line 11259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39088     {
39089             (yyval.item)= new (thd->mem_root) Item_func_week(thd, (yyvsp[-3].item), (yyvsp[-1].item));
39090             if (unlikely((yyval.item) == NULL))
39091               MYSQL_YYABORT;
39092           }
39093 #line 39094 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39094     break;
39095 
39096   case 1704:
39097 #line 11265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39098     {
39099             (yyval.item)= new (thd->mem_root) Item_func_weight_string(thd, (yyvsp[-2].item), 0, 0, (yyvsp[-1].ulong_num));
39100             if (unlikely((yyval.item) == NULL))
39101               MYSQL_YYABORT;
39102           }
39103 #line 39104 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39104     break;
39105 
39106   case 1705:
39107 #line 11271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39108     {
39109             (yyval.item)= new (thd->mem_root)
39110                 Item_func_weight_string(thd, (yyvsp[-5].item), 0, (yyvsp[-2].ulong_num),
39111                                         (yyvsp[-1].ulong_num) | MY_STRXFRM_PAD_WITH_SPACE);
39112             if (unlikely((yyval.item) == NULL))
39113               MYSQL_YYABORT;
39114           }
39115 #line 39116 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39116     break;
39117 
39118   case 1706:
39119 #line 11279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39120     {
39121             Item *item= new (thd->mem_root) Item_char_typecast(thd, (yyvsp[-4].item), (yyvsp[-1].ulong_num),
39122                                                                &my_charset_bin);
39123             if (unlikely(item == NULL))
39124               MYSQL_YYABORT;
39125             (yyval.item)= new (thd->mem_root)
39126                 Item_func_weight_string(thd, item, 0, (yyvsp[-1].ulong_num),
39127                                         MY_STRXFRM_PAD_WITH_SPACE);
39128             if (unlikely((yyval.item) == NULL))
39129               MYSQL_YYABORT;
39130           }
39131 #line 39132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39132     break;
39133 
39134   case 1707:
39135 #line 11291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39136     {
39137             (yyval.item)= new (thd->mem_root) Item_func_weight_string(thd, (yyvsp[-7].item), (yyvsp[-5].ulong_num), (yyvsp[-3].ulong_num),
39138                                                             (yyvsp[-1].ulong_num));
39139             if (unlikely((yyval.item) == NULL))
39140               MYSQL_YYABORT;
39141           }
39142 #line 39143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39143     break;
39144 
39145   case 1708:
39146 #line 11298 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39147     {
39148 #ifdef HAVE_SPATIAL
39149             (yyval.item)= (yyvsp[0].item);
39150             /* $1 may be NULL, GEOM_NEW not tested for out of memory */
39151             if (unlikely((yyval.item) == NULL))
39152               MYSQL_YYABORT;
39153 #else
39154             my_yyabort_error((ER_FEATURE_DISABLED, MYF(0), sym_group_geom.name,
39155                               sym_group_geom.needed_define));
39156 #endif
39157           }
39158 #line 39159 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39159     break;
39160 
39161   case 1709:
39162 #line 11313 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39163     {
39164             (yyval.item)= GEOM_NEW(thd,
39165                          Item_func_spatial_precise_rel(thd, (yyvsp[-3].item), (yyvsp[-1].item),
39166                                                  Item_func::SP_CONTAINS_FUNC));
39167           }
39168 #line 39169 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39169     break;
39170 
39171   case 1710:
39172 #line 11319 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39173     {
39174             (yyval.item)= GEOM_NEW(thd,
39175                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
39176                            Geometry::wkb_geometrycollection,
39177                            Geometry::wkb_point));
39178           }
39179 #line 39180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39180     break;
39181 
39182   case 1711:
39183 #line 11326 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39184     {
39185             (yyval.item)= GEOM_NEW(thd,
39186                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
39187                            Geometry::wkb_linestring,
39188                            Geometry::wkb_point));
39189           }
39190 #line 39191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39191     break;
39192 
39193   case 1712:
39194 #line 11333 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39195     {
39196             (yyval.item)= GEOM_NEW(thd,
39197                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
39198                            Geometry::wkb_multilinestring,
39199                            Geometry::wkb_linestring));
39200           }
39201 #line 39202 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39202     break;
39203 
39204   case 1713:
39205 #line 11340 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39206     {
39207             (yyval.item)= GEOM_NEW(thd,
39208                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
39209                            Geometry::wkb_multipoint,
39210                            Geometry::wkb_point));
39211           }
39212 #line 39213 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39213     break;
39214 
39215   case 1714:
39216 #line 11347 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39217     {
39218             (yyval.item)= GEOM_NEW(thd,
39219                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
39220                            Geometry::wkb_multipolygon,
39221                            Geometry::wkb_polygon));
39222           }
39223 #line 39224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39224     break;
39225 
39226   case 1715:
39227 #line 11354 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39228     {
39229             (yyval.item)= GEOM_NEW(thd, Item_func_point(thd, (yyvsp[-3].item), (yyvsp[-1].item)));
39230           }
39231 #line 39232 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39232     break;
39233 
39234   case 1716:
39235 #line 11358 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39236     {
39237             (yyval.item)= GEOM_NEW(thd,
39238                          Item_func_spatial_collection(thd, *(yyvsp[-1].item_list),
39239                            Geometry::wkb_polygon,
39240                            Geometry::wkb_linestring));
39241           }
39242 #line 39243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39243     break;
39244 
39245   case 1717:
39246 #line 11365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39247     {
39248             (yyval.item)= GEOM_NEW(thd, Item_func_spatial_precise_rel(thd, (yyvsp[-3].item), (yyvsp[-1].item),
39249                                                     Item_func::SP_WITHIN_FUNC));
39250           }
39251 #line 39252 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39252     break;
39253 
39254   case 1718:
39255 #line 11382 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39256     {
39257 #ifdef HAVE_DLOPEN
39258             udf_func *udf= 0;
39259             LEX *lex= Lex;
39260             if (using_udf_functions &&
39261                 (udf= find_udf((yyvsp[-1].ident_sys).str, (yyvsp[-1].ident_sys).length)) &&
39262                 udf->type == UDFTYPE_AGGREGATE)
39263             {
39264               if (unlikely(lex->current_select->inc_in_sum_expr()))
39265               {
39266                 thd->parse_error();
39267                 MYSQL_YYABORT;
39268               }
39269             }
39270             /* Temporary placing the result of find_udf in $3 */
39271             (yyval.udf)= udf;
39272 #endif
39273           }
39274 #line 39275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39275     break;
39276 
39277   case 1719:
39278 #line 11401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39279     {
39280             Create_func *builder;
39281             Item *item= NULL;
39282 
39283             if (unlikely(check_routine_name(&(yyvsp[-4].ident_sys))))
39284               MYSQL_YYABORT;
39285 
39286             /*
39287               Implementation note:
39288               names are resolved with the following order:
39289               - MySQL native functions,
39290               - User Defined Functions,
39291               - Stored Functions (assuming the current <use> database)
39292 
39293               This will be revised with WL#2128 (SQL PATH)
39294             */
39295             builder= find_native_function_builder(thd, &(yyvsp[-4].ident_sys));
39296             if (builder)
39297             {
39298               item= builder->create_func(thd, &(yyvsp[-4].ident_sys), (yyvsp[-1].item_list));
39299             }
39300             else
39301             {
39302 #ifdef HAVE_DLOPEN
39303               /* Retrieving the result of find_udf */
39304               udf_func *udf= (yyvsp[-2].udf);
39305 
39306               if (udf)
39307               {
39308                 if (udf->type == UDFTYPE_AGGREGATE)
39309                 {
39310                   Select->in_sum_expr--;
39311                 }
39312 
39313                 item= Create_udf_func::s_singleton.create(thd, udf, (yyvsp[-1].item_list));
39314               }
39315               else
39316 #endif
39317               {
39318                 builder= find_qualified_function_builder(thd);
39319                 DBUG_ASSERT(builder);
39320                 item= builder->create_func(thd, &(yyvsp[-4].ident_sys), (yyvsp[-1].item_list));
39321               }
39322             }
39323 
39324             if (unlikely(! ((yyval.item)= item)))
39325               MYSQL_YYABORT;
39326           }
39327 #line 39328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39328     break;
39329 
39330   case 1720:
39331 #line 11450 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39332     {
39333             if (unlikely(!((yyval.item)= Lex->make_item_func_call_generic(thd, &(yyvsp[-5].ident_cli), &(yyvsp[-3].ident_cli), (yyvsp[-1].item_list)))))
39334               MYSQL_YYABORT;
39335           }
39336 #line 39337 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39337     break;
39338 
39339   case 1721:
39340 #line 11458 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39341     { (yyval.num)= (yyvsp[-1].num) | (yyvsp[0].num); }
39342 #line 39343 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39343     break;
39344 
39345   case 1722:
39346 #line 11460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39347     { (yyval.num)= FT_BOOL; }
39348 #line 39349 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39349     break;
39350 
39351   case 1723:
39352 #line 11464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39353     { (yyval.num)= FT_NL; }
39354 #line 39355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39355     break;
39356 
39357   case 1724:
39358 #line 11465 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39359     { (yyval.num)= FT_NL; }
39360 #line 39361 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39361     break;
39362 
39363   case 1725:
39364 #line 11469 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39365     { (yyval.num)= 0;         }
39366 #line 39367 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39367     break;
39368 
39369   case 1726:
39370 #line 11470 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39371     { (yyval.num)= FT_EXPAND; }
39372 #line 39373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39373     break;
39374 
39375   case 1727:
39376 #line 11474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39377     { (yyval.item_list)= NULL; }
39378 #line 39379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39379     break;
39380 
39381   case 1728:
39382 #line 11475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39383     { (yyval.item_list)= (yyvsp[0].item_list); }
39384 #line 39385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39385     break;
39386 
39387   case 1729:
39388 #line 11480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39389     {
39390             (yyval.item_list)= new (thd->mem_root) List<Item>;
39391             if (unlikely((yyval.item_list) == NULL))
39392               MYSQL_YYABORT;
39393             (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root);
39394           }
39395 #line 39396 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39396     break;
39397 
39398   case 1730:
39399 #line 11487 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39400     {
39401             (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
39402             (yyval.item_list)= (yyvsp[-2].item_list);
39403           }
39404 #line 39405 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39405     break;
39406 
39407   case 1731:
39408 #line 11495 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39409     {
39410             /*
39411              Use Item::name as a storage for the attribute value of user
39412              defined function argument. It is safe to use Item::name
39413              because the syntax will not allow having an explicit name here.
39414              See WL#1017 re. udf attributes.
39415             */
39416             if ((yyvsp[0].lex_str).str)
39417             {
39418               (yyvsp[-2].item)->is_autogenerated_name= FALSE;
39419               (yyvsp[-2].item)->set_name(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info);
39420             }
39421             /*
39422                A field has to have its proper name in order for name
39423                resolution to work, something we are only guaranteed if we
39424                parse it out. If we hijack the input stream with
39425                remember_name we may get quoted or escaped names.
39426             */
39427             else if ((yyvsp[-2].item)->type() != Item::FIELD_ITEM &&
39428                      (yyvsp[-2].item)->type() != Item::REF_ITEM /* For HAVING */ )
39429               (yyvsp[-2].item)->set_name(thd, (yyvsp[-3].simple_string), (uint) ((yyvsp[-1].simple_string) - (yyvsp[-3].simple_string)), thd->charset());
39430             (yyval.item)= (yyvsp[-2].item);
39431           }
39432 #line 39433 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39433     break;
39434 
39435   case 1732:
39436 #line 11522 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39437     {
39438             (yyval.item)= new (thd->mem_root) Item_sum_avg(thd, (yyvsp[-1].item), FALSE);
39439             if (unlikely((yyval.item) == NULL))
39440               MYSQL_YYABORT;
39441           }
39442 #line 39443 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39443     break;
39444 
39445   case 1733:
39446 #line 11528 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39447     {
39448             (yyval.item)= new (thd->mem_root) Item_sum_avg(thd, (yyvsp[-1].item), TRUE);
39449             if (unlikely((yyval.item) == NULL))
39450               MYSQL_YYABORT;
39451           }
39452 #line 39453 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39453     break;
39454 
39455   case 1734:
39456 #line 11534 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39457     {
39458             (yyval.item)= new (thd->mem_root) Item_sum_and(thd, (yyvsp[-1].item));
39459             if (unlikely((yyval.item) == NULL))
39460               MYSQL_YYABORT;
39461           }
39462 #line 39463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39463     break;
39464 
39465   case 1735:
39466 #line 11540 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39467     {
39468             (yyval.item)= new (thd->mem_root) Item_sum_or(thd, (yyvsp[-1].item));
39469             if (unlikely((yyval.item) == NULL))
39470               MYSQL_YYABORT;
39471           }
39472 #line 39473 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39473     break;
39474 
39475   case 1736:
39476 #line 11546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39477     {
39478             (yyval.item)= new (thd->mem_root) Item_sum_xor(thd, (yyvsp[-1].item));
39479             if (unlikely((yyval.item) == NULL))
39480               MYSQL_YYABORT;
39481           }
39482 #line 39483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39483     break;
39484 
39485   case 1737:
39486 #line 11552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39487     {
39488             Item *item= new (thd->mem_root) Item_int(thd, (int32) 0L, 1);
39489             if (unlikely(item == NULL))
39490               MYSQL_YYABORT;
39491             (yyval.item)= new (thd->mem_root) Item_sum_count(thd, item);
39492             if (unlikely((yyval.item) == NULL))
39493               MYSQL_YYABORT;
39494           }
39495 #line 39496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39496     break;
39497 
39498   case 1738:
39499 #line 11561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39500     {
39501             (yyval.item)= new (thd->mem_root) Item_sum_count(thd, (yyvsp[-1].item));
39502             if (unlikely((yyval.item) == NULL))
39503               MYSQL_YYABORT;
39504           }
39505 #line 39506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39506     break;
39507 
39508   case 1739:
39509 #line 11567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39510     { Select->in_sum_expr++; }
39511 #line 39512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39512     break;
39513 
39514   case 1740:
39515 #line 11569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39516     { Select->in_sum_expr--; }
39517 #line 39518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39518     break;
39519 
39520   case 1741:
39521 #line 11571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39522     {
39523             (yyval.item)= new (thd->mem_root) Item_sum_count(thd, *(yyvsp[-2].item_list));
39524             if (unlikely((yyval.item) == NULL))
39525               MYSQL_YYABORT;
39526           }
39527 #line 39528 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39528     break;
39529 
39530   case 1742:
39531 #line 11577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39532     {
39533             (yyval.item)= new (thd->mem_root) Item_sum_min(thd, (yyvsp[-1].item));
39534             if (unlikely((yyval.item) == NULL))
39535               MYSQL_YYABORT;
39536           }
39537 #line 39538 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39538     break;
39539 
39540   case 1743:
39541 #line 11588 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39542     {
39543             (yyval.item)= new (thd->mem_root) Item_sum_min(thd, (yyvsp[-1].item));
39544             if (unlikely((yyval.item) == NULL))
39545               MYSQL_YYABORT;
39546           }
39547 #line 39548 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39548     break;
39549 
39550   case 1744:
39551 #line 11594 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39552     {
39553             (yyval.item)= new (thd->mem_root) Item_sum_max(thd, (yyvsp[-1].item));
39554             if (unlikely((yyval.item) == NULL))
39555               MYSQL_YYABORT;
39556           }
39557 #line 39558 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39558     break;
39559 
39560   case 1745:
39561 #line 11600 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39562     {
39563             (yyval.item)= new (thd->mem_root) Item_sum_max(thd, (yyvsp[-1].item));
39564             if (unlikely((yyval.item) == NULL))
39565               MYSQL_YYABORT;
39566           }
39567 #line 39568 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39568     break;
39569 
39570   case 1746:
39571 #line 11606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39572     {
39573             (yyval.item)= new (thd->mem_root) Item_sum_std(thd, (yyvsp[-1].item), 0);
39574             if (unlikely((yyval.item) == NULL))
39575               MYSQL_YYABORT;
39576           }
39577 #line 39578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39578     break;
39579 
39580   case 1747:
39581 #line 11612 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39582     {
39583             (yyval.item)= new (thd->mem_root) Item_sum_variance(thd, (yyvsp[-1].item), 0);
39584             if (unlikely((yyval.item) == NULL))
39585               MYSQL_YYABORT;
39586           }
39587 #line 39588 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39588     break;
39589 
39590   case 1748:
39591 #line 11618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39592     {
39593             (yyval.item)= new (thd->mem_root) Item_sum_std(thd, (yyvsp[-1].item), 1);
39594             if (unlikely((yyval.item) == NULL))
39595               MYSQL_YYABORT;
39596           }
39597 #line 39598 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39598     break;
39599 
39600   case 1749:
39601 #line 11624 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39602     {
39603             (yyval.item)= new (thd->mem_root) Item_sum_variance(thd, (yyvsp[-1].item), 1);
39604             if (unlikely((yyval.item) == NULL))
39605               MYSQL_YYABORT;
39606           }
39607 #line 39608 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39608     break;
39609 
39610   case 1750:
39611 #line 11630 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39612     {
39613             (yyval.item)= new (thd->mem_root) Item_sum_sum(thd, (yyvsp[-1].item), FALSE);
39614             if (unlikely((yyval.item) == NULL))
39615               MYSQL_YYABORT;
39616           }
39617 #line 39618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39618     break;
39619 
39620   case 1751:
39621 #line 11636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39622     {
39623             (yyval.item)= new (thd->mem_root) Item_sum_sum(thd, (yyvsp[-1].item), TRUE);
39624             if (unlikely((yyval.item) == NULL))
39625               MYSQL_YYABORT;
39626           }
39627 #line 39628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39628     break;
39629 
39630   case 1752:
39631 #line 11642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39632     { Select->in_sum_expr++; }
39633 #line 39634 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39634     break;
39635 
39636   case 1753:
39637 #line 11646 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39638     {
39639             SELECT_LEX *sel= Select;
39640             sel->in_sum_expr--;
39641             (yyval.item)= new (thd->mem_root)
39642                   Item_func_group_concat(thd, Lex->current_context(),
39643                                         (yyvsp[-6].num), (yyvsp[-4].item_list),
39644                                         sel->gorder_list, (yyvsp[-2].string), (yyvsp[-1].num),
39645                                         sel->select_limit,
39646                                         sel->offset_limit);
39647             if (unlikely((yyval.item) == NULL))
39648               MYSQL_YYABORT;
39649             sel->select_limit= NULL;
39650             sel->offset_limit= NULL;
39651             sel->explicit_limit= 0;
39652             (yyvsp[-4].item_list)->empty();
39653             sel->gorder_list.empty();
39654           }
39655 #line 39656 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39656     break;
39657 
39658   case 1754:
39659 #line 11667 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39660     {
39661             (yyval.item)= new (thd->mem_root) Item_window_func(thd, (Item_sum *) (yyvsp[-2].item), (yyvsp[0].lex_str_ptr));
39662             if (unlikely((yyval.item) == NULL))
39663               MYSQL_YYABORT;
39664             if (unlikely(Select->add_window_func((Item_window_func *) (yyval.item))))
39665               MYSQL_YYABORT;
39666           }
39667 #line 39668 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39668     break;
39669 
39670   case 1755:
39671 #line 11676 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39672     {
39673             LEX *lex= Lex;
39674             if (unlikely(Select->add_window_spec(thd, lex->win_ref,
39675                                                  Select->group_list,
39676                                                  Select->order_list,
39677                                                  lex->win_frame)))
39678               MYSQL_YYABORT;
39679             (yyval.item)= new (thd->mem_root) Item_window_func(thd, (Item_sum *) (yyvsp[-2].item),
39680                                                       thd->lex->win_spec);
39681             if (unlikely((yyval.item) == NULL))
39682               MYSQL_YYABORT;
39683             if (unlikely(Select->add_window_func((Item_window_func *) (yyval.item))))
39684               MYSQL_YYABORT;
39685           }
39686 #line 39687 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39687     break;
39688 
39689   case 1758:
39690 #line 11698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39691     {
39692             Item* item = (Item*)(yyvsp[0].item);
39693             /* Only UDF aggregate here possible */
39694             if ((item == NULL) ||
39695                 (item->type() != Item::SUM_FUNC_ITEM)
39696                 || (((Item_sum *)item)->sum_func() != Item_sum::UDF_SUM_FUNC))
39697             {
39698               thd->parse_error();
39699               MYSQL_YYABORT;
39700             }
39701           }
39702 #line 39703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39703     break;
39704 
39705   case 1759:
39706 #line 11713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39707     {
39708             (yyval.item)= new (thd->mem_root) Item_sum_row_number(thd);
39709             if (unlikely((yyval.item) == NULL))
39710               MYSQL_YYABORT;
39711           }
39712 #line 39713 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39713     break;
39714 
39715   case 1760:
39716 #line 11720 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39717     {
39718             (yyval.item)= new (thd->mem_root) Item_sum_rank(thd);
39719             if (unlikely((yyval.item) == NULL))
39720               MYSQL_YYABORT;
39721           }
39722 #line 39723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39723     break;
39724 
39725   case 1761:
39726 #line 11727 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39727     {
39728             (yyval.item)= new (thd->mem_root) Item_sum_dense_rank(thd);
39729             if (unlikely((yyval.item) == NULL))
39730               MYSQL_YYABORT;
39731           }
39732 #line 39733 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39733     break;
39734 
39735   case 1762:
39736 #line 11734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39737     {
39738             (yyval.item)= new (thd->mem_root) Item_sum_percent_rank(thd);
39739             if (unlikely((yyval.item) == NULL))
39740               MYSQL_YYABORT;
39741           }
39742 #line 39743 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39743     break;
39744 
39745   case 1763:
39746 #line 11741 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39747     {
39748             (yyval.item)= new (thd->mem_root) Item_sum_cume_dist(thd);
39749             if (unlikely((yyval.item) == NULL))
39750               MYSQL_YYABORT;
39751           }
39752 #line 39753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39753     break;
39754 
39755   case 1764:
39756 #line 11748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39757     {
39758             (yyval.item)= new (thd->mem_root) Item_sum_ntile(thd, (yyvsp[-1].item));
39759             if (unlikely((yyval.item) == NULL))
39760               MYSQL_YYABORT;
39761           }
39762 #line 39763 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39763     break;
39764 
39765   case 1765:
39766 #line 11755 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39767     {
39768             (yyval.item)= new (thd->mem_root) Item_sum_first_value(thd, (yyvsp[-1].item));
39769             if (unlikely((yyval.item) == NULL))
39770               MYSQL_YYABORT;
39771           }
39772 #line 39773 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39773     break;
39774 
39775   case 1766:
39776 #line 11762 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39777     {
39778             (yyval.item)= new (thd->mem_root) Item_sum_last_value(thd, (yyvsp[-1].item));
39779             if (unlikely((yyval.item) == NULL))
39780               MYSQL_YYABORT;
39781           }
39782 #line 39783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39783     break;
39784 
39785   case 1767:
39786 #line 11769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39787     {
39788             (yyval.item)= new (thd->mem_root) Item_sum_nth_value(thd, (yyvsp[-3].item), (yyvsp[-1].item));
39789             if (unlikely((yyval.item) == NULL))
39790               MYSQL_YYABORT;
39791           }
39792 #line 39793 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39793     break;
39794 
39795   case 1768:
39796 #line 11776 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39797     {
39798             /* No second argument defaults to 1. */
39799             Item* item_offset= new (thd->mem_root) Item_uint(thd, 1);
39800             if (unlikely(item_offset == NULL))
39801               MYSQL_YYABORT;
39802             (yyval.item)= new (thd->mem_root) Item_sum_lead(thd, (yyvsp[-1].item), item_offset);
39803             if (unlikely((yyval.item) == NULL))
39804               MYSQL_YYABORT;
39805           }
39806 #line 39807 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39807     break;
39808 
39809   case 1769:
39810 #line 11787 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39811     {
39812             (yyval.item)= new (thd->mem_root) Item_sum_lead(thd, (yyvsp[-3].item), (yyvsp[-1].item));
39813             if (unlikely((yyval.item) == NULL))
39814               MYSQL_YYABORT;
39815           }
39816 #line 39817 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39817     break;
39818 
39819   case 1770:
39820 #line 11794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39821     {
39822             /* No second argument defaults to 1. */
39823             Item* item_offset= new (thd->mem_root) Item_uint(thd, 1);
39824             if (unlikely(item_offset == NULL))
39825               MYSQL_YYABORT;
39826             (yyval.item)= new (thd->mem_root) Item_sum_lag(thd, (yyvsp[-1].item), item_offset);
39827             if (unlikely((yyval.item) == NULL))
39828               MYSQL_YYABORT;
39829           }
39830 #line 39831 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39831     break;
39832 
39833   case 1771:
39834 #line 11805 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39835     {
39836             (yyval.item)= new (thd->mem_root) Item_sum_lag(thd, (yyvsp[-3].item), (yyvsp[-1].item));
39837             if (unlikely((yyval.item) == NULL))
39838               MYSQL_YYABORT;
39839           }
39840 #line 39841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39841     break;
39842 
39843   case 1772:
39844 #line 11817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39845     {
39846             LEX *lex= Lex;
39847             if (unlikely(Select->add_window_spec(thd, lex->win_ref,
39848                                                  Select->group_list,
39849                                                  Select->order_list,
39850                                                  NULL)))
39851               MYSQL_YYABORT;
39852             (yyval.item)= new (thd->mem_root) Item_window_func(thd, (Item_sum *) (yyvsp[-4].item),
39853                                                      thd->lex->win_spec);
39854             if (unlikely((yyval.item) == NULL))
39855               MYSQL_YYABORT;
39856             if (unlikely(Select->add_window_func((Item_window_func *) (yyval.item))))
39857               MYSQL_YYABORT;
39858           }
39859 #line 39860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39860     break;
39861 
39862   case 1773:
39863 #line 11835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39864     { Select->prepare_add_window_spec(thd); }
39865 #line 39866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39866     break;
39867 
39868   case 1774:
39869 #line 11837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39870     {
39871              (yyval.item)= (yyvsp[-6].item);
39872            }
39873 #line 39874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39874     break;
39875 
39876   case 1775:
39877 #line 11841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39878     {
39879             Item *args= new (thd->mem_root) Item_decimal(thd, "0.5", 3,
39880                                                    thd->charset());
39881             if (unlikely(args == NULL) || unlikely(thd->is_error()))
39882               MYSQL_YYABORT;
39883             Select->prepare_add_window_spec(thd);
39884             if (unlikely(add_order_to_list(thd, (yyvsp[-1].item),FALSE)))
39885               MYSQL_YYABORT;
39886 
39887             (yyval.item)= new (thd->mem_root) Item_sum_percentile_cont(thd, args);
39888             if (unlikely((yyval.item) == NULL))
39889               MYSQL_YYABORT;
39890           }
39891 #line 39892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39892     break;
39893 
39894   case 1776:
39895 #line 11858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39896     {
39897             (yyval.item)= new (thd->mem_root) Item_sum_percentile_cont(thd, (yyvsp[-1].item));
39898             if (unlikely((yyval.item) == NULL))
39899               MYSQL_YYABORT;
39900           }
39901 #line 39902 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39902     break;
39903 
39904   case 1777:
39905 #line 11864 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39906     {
39907             (yyval.item)= new (thd->mem_root) Item_sum_percentile_disc(thd, (yyvsp[-1].item));
39908             if (unlikely((yyval.item) == NULL))
39909               MYSQL_YYABORT;
39910           }
39911 #line 39912 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39912     break;
39913 
39914   case 1778:
39915 #line 11873 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39916     {
39917             if (unlikely(add_order_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
39918               MYSQL_YYABORT;
39919           }
39920 #line 39921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39921     break;
39922 
39923   case 1779:
39924 #line 11882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39925     {
39926             (yyval.lex_str_ptr)= (LEX_CSTRING *) thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING));
39927             if (unlikely((yyval.lex_str_ptr) == NULL))
39928               MYSQL_YYABORT;
39929           }
39930 #line 39931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39931     break;
39932 
39933   case 1780:
39934 #line 11891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39935     {
39936             if (unlikely(! Lex->parsing_options.allows_variable))
39937               my_yyabort_error((ER_VIEW_SELECT_VARIABLE, MYF(0)));
39938           }
39939 #line 39940 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39940     break;
39941 
39942   case 1781:
39943 #line 11896 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39944     {
39945             (yyval.item)= (yyvsp[0].item);
39946           }
39947 #line 39948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39948     break;
39949 
39950   case 1782:
39951 #line 11903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39952     {
39953             Item_func_set_user_var *item;
39954             (yyval.item)= item= new (thd->mem_root) Item_func_set_user_var(thd, &(yyvsp[-2].lex_str), (yyvsp[0].item));
39955             if (unlikely((yyval.item) == NULL))
39956               MYSQL_YYABORT;
39957             LEX *lex= Lex;
39958             lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
39959             lex->set_var_list.push_back(item, thd->mem_root);
39960           }
39961 #line 39962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39962     break;
39963 
39964   case 1783:
39965 #line 11913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39966     {
39967             (yyval.item)= new (thd->mem_root) Item_func_get_user_var(thd, &(yyvsp[0].lex_str));
39968             if (unlikely((yyval.item) == NULL))
39969               MYSQL_YYABORT;
39970             LEX *lex= Lex;
39971             lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
39972           }
39973 #line 39974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39974     break;
39975 
39976   case 1784:
39977 #line 11921 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39978     {
39979             if (unlikely(!((yyval.item)= Lex->make_item_sysvar(thd, (yyvsp[-1].var_type), &(yyvsp[0].ident_sys)))))
39980               MYSQL_YYABORT;
39981           }
39982 #line 39983 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39983     break;
39984 
39985   case 1785:
39986 #line 11926 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39987     {
39988             if (unlikely(!((yyval.item)= Lex->make_item_sysvar(thd, (yyvsp[-3].var_type), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
39989               MYSQL_YYABORT;
39990           }
39991 #line 39992 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39992     break;
39993 
39994   case 1786:
39995 #line 11933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
39996     { (yyval.num) = 0; }
39997 #line 39998 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
39998     break;
39999 
40000   case 1787:
40001 #line 11934 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40002     { (yyval.num) = 1; }
40003 #line 40004 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40004     break;
40005 
40006   case 1788:
40007 #line 11939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40008     {
40009             (yyval.string)= new (thd->mem_root) String(",", 1, &my_charset_latin1);
40010             if (unlikely((yyval.string) == NULL))
40011               MYSQL_YYABORT;
40012           }
40013 #line 40014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40014     break;
40015 
40016   case 1789:
40017 #line 11944 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40018     { (yyval.string) = (yyvsp[0].string); }
40019 #line 40020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40020     break;
40021 
40022   case 1792:
40023 #line 11954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40024     {
40025             if (unlikely(add_gorder_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
40026               MYSQL_YYABORT;
40027            }
40028 #line 40029 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40029     break;
40030 
40031   case 1793:
40032 #line 11959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40033     {
40034             if (unlikely(add_gorder_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
40035               MYSQL_YYABORT;
40036            }
40037 #line 40038 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40038     break;
40039 
40040   case 1794:
40041 #line 11966 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40042     { (yyval.num) = 0; }
40043 #line 40044 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40044     break;
40045 
40046   case 1795:
40047 #line 11967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40048     { (yyval.num) = 1; }
40049 #line 40050 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40050     break;
40051 
40052   case 1796:
40053 #line 11971 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40054     {}
40055 #line 40056 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40056     break;
40057 
40058   case 1797:
40059 #line 11976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40060     {
40061             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
40062           }
40063 #line 40064 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40064     break;
40065 
40066   case 1798:
40067 #line 11983 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40068     {
40069             SELECT_LEX *sel= Select;
40070             sel->select_limit= (yyvsp[0].item);
40071             sel->offset_limit= 0;
40072             sel->explicit_limit= 1;
40073           }
40074 #line 40075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40075     break;
40076 
40077   case 1799:
40078 #line 11990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40079     {
40080             SELECT_LEX *sel= Select;
40081             sel->select_limit= (yyvsp[0].item);
40082             sel->offset_limit= (yyvsp[-2].item);
40083             sel->explicit_limit= 1;
40084           }
40085 #line 40086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40086     break;
40087 
40088   case 1800:
40089 #line 11997 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40090     {
40091             SELECT_LEX *sel= Select;
40092             sel->select_limit= (yyvsp[-2].item);
40093             sel->offset_limit= (yyvsp[0].item);
40094             sel->explicit_limit= 1;
40095           }
40096 #line 40097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40097     break;
40098 
40099   case 1801:
40100 #line 12009 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40101     {
40102             LEX *lex= Lex;
40103             if (unlikely(lex->current_select->inc_in_sum_expr()))
40104             {
40105               thd->parse_error();
40106               MYSQL_YYABORT;
40107             }
40108           }
40109 #line 40110 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40110     break;
40111 
40112   case 1802:
40113 #line 12018 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40114     {
40115             Select->in_sum_expr--;
40116             (yyval.item)= (yyvsp[0].item);
40117           }
40118 #line 40119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40119     break;
40120 
40121   case 1803:
40122 #line 12026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40123     { (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[0].const_simple_string)); Lex->charset= &my_charset_bin; }
40124 #line 40125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40125     break;
40126 
40127   case 1804:
40128 #line 12028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40129     { Lex->charset= thd->variables.collation_connection; }
40130 #line 40131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40131     break;
40132 
40133   case 1805:
40134 #line 12030 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40135     { (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[-2].const_simple_string)); }
40136 #line 40137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40137     break;
40138 
40139   case 1806:
40140 #line 12032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40141     { Lex->charset= thd->variables.collation_connection; }
40142 #line 40143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40143     break;
40144 
40145   case 1807:
40146 #line 12034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40147     { (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[-2].const_simple_string)); }
40148 #line 40149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40149     break;
40150 
40151   case 1808:
40152 #line 12036 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40153     { Lex->charset= thd->variables.collation_connection; }
40154 #line 40155 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40155     break;
40156 
40157   case 1809:
40158 #line 12038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40159     { (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[-2].const_simple_string)); }
40160 #line 40161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40161     break;
40162 
40163   case 1810:
40164 #line 12040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40165     {
40166             Lex->charset= national_charset_info;
40167             (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[0].const_simple_string), 0);
40168           }
40169 #line 40170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40170     break;
40171 
40172   case 1811:
40173 #line 12044 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40174     { (yyval.Lex_cast_type)= (yyvsp[0].Lex_cast_type); Lex->charset= NULL; }
40175 #line 40176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40176     break;
40177 
40178   case 1812:
40179 #line 12045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40180     { (yyval.Lex_cast_type)= (yyvsp[0].Lex_cast_type); Lex->charset= NULL; }
40181 #line 40182 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40182     break;
40183 
40184   case 1813:
40185 #line 12049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40186     { (yyval.Lex_cast_type).set(&type_handler_longlong); }
40187 #line 40188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40188     break;
40189 
40190   case 1814:
40191 #line 12050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40192     { (yyval.Lex_cast_type).set(&type_handler_longlong); }
40193 #line 40194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40194     break;
40195 
40196   case 1815:
40197 #line 12051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40198     { (yyval.Lex_cast_type).set(&type_handler_longlong); }
40199 #line 40200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40200     break;
40201 
40202   case 1816:
40203 #line 12052 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40204     { (yyval.Lex_cast_type).set(&type_handler_ulonglong); }
40205 #line 40206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40206     break;
40207 
40208   case 1817:
40209 #line 12053 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40210     { (yyval.Lex_cast_type).set(&type_handler_ulonglong); }
40211 #line 40212 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40212     break;
40213 
40214   case 1818:
40215 #line 12054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40216     { (yyval.Lex_cast_type).set(&type_handler_newdecimal, (yyvsp[0].Lex_length_and_dec)); }
40217 #line 40218 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40218     break;
40219 
40220   case 1819:
40221 #line 12055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40222     { (yyval.Lex_cast_type).set(&type_handler_float); }
40223 #line 40224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40224     break;
40225 
40226   case 1820:
40227 #line 12056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40228     { (yyval.Lex_cast_type).set(&type_handler_double, (yyvsp[0].Lex_length_and_dec));  }
40229 #line 40230 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40230     break;
40231 
40232   case 1821:
40233 #line 12060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40234     { (yyval.Lex_cast_type).set(&type_handler_newdate); }
40235 #line 40236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40236     break;
40237 
40238   case 1822:
40239 #line 12061 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40240     { (yyval.Lex_cast_type).set(&type_handler_time2, 0, (yyvsp[0].const_simple_string)); }
40241 #line 40242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40242     break;
40243 
40244   case 1823:
40245 #line 12062 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40246     { (yyval.Lex_cast_type).set(&type_handler_datetime2, 0, (yyvsp[0].const_simple_string)); }
40247 #line 40248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40248     break;
40249 
40250   case 1824:
40251 #line 12064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40252     {
40253             (yyval.Lex_cast_type).set(&type_handler_interval_DDhhmmssff, 0, (yyvsp[0].const_simple_string));
40254           }
40255 #line 40256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40256     break;
40257 
40258   case 1825:
40259 #line 12070 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40260     { (yyval.item_list)= NULL; }
40261 #line 40262 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40262     break;
40263 
40264   case 1826:
40265 #line 12071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40266     { (yyval.item_list)= (yyvsp[0].item_list);}
40267 #line 40268 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40268     break;
40269 
40270   case 1827:
40271 #line 12076 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40272     {
40273             if (unlikely(!((yyval.item_list)= List<Item>::make(thd->mem_root, (yyvsp[0].item)))))
40274               MYSQL_YYABORT;
40275           }
40276 #line 40277 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40277     break;
40278 
40279   case 1828:
40280 #line 12081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40281     {
40282             (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
40283             (yyval.item_list)= (yyvsp[-2].item_list);
40284           }
40285 #line 40286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40286     break;
40287 
40288   case 1829:
40289 #line 12088 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40290     { (yyval.item_list)= (yyvsp[0].item_list); }
40291 #line 40292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40292     break;
40293 
40294   case 1830:
40295 #line 12089 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40296     { (yyval.item_list)= (yyvsp[-1].item_list); }
40297 #line 40298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40298     break;
40299 
40300   case 1831:
40301 #line 12094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40302     {
40303             (yyval.item_list)= new (thd->mem_root) List<Item>;
40304             if (unlikely((yyval.item_list) == NULL) ||
40305                 unlikely((yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root)))
40306               MYSQL_YYABORT;
40307           }
40308 #line 40309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40309     break;
40310 
40311   case 1832:
40312 #line 12101 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40313     {
40314             (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
40315             (yyval.item_list)= (yyvsp[-2].item_list);
40316           }
40317 #line 40318 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40318     break;
40319 
40320   case 1833:
40321 #line 12109 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40322     {
40323             (yyval.item_list)= new (thd->mem_root) List<Item>;
40324             if (unlikely((yyval.item_list) == NULL))
40325               MYSQL_YYABORT;
40326             if (unlikely((yyval.item_list)->push_back((yyvsp[-2].item), thd->mem_root) ||
40327                          (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root)))
40328               MYSQL_YYABORT;
40329           }
40330 #line 40331 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40331     break;
40332 
40333   case 1834:
40334 #line 12118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40335     {
40336             if (unlikely((yyvsp[-4].item_list)->push_back((yyvsp[-2].item), thd->mem_root) ||
40337                          (yyvsp[-4].item_list)->push_back((yyvsp[0].item), thd->mem_root)))
40338               MYSQL_YYABORT;
40339             (yyval.item_list)= (yyvsp[-4].item_list);
40340           }
40341 #line 40342 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40342     break;
40343 
40344   case 1836:
40345 #line 12129 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40346     {
40347             if (unlikely((yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root)))
40348               MYSQL_YYABORT;
40349             (yyval.item_list)= (yyvsp[-2].item_list);
40350           }
40351 #line 40352 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40352     break;
40353 
40354   case 1837:
40355 #line 12138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40356     {
40357             (yyval.item_list)= new (thd->mem_root) List<Item>;
40358             if (unlikely((yyval.item_list) == NULL) ||
40359                 unlikely((yyval.item_list)->push_back((yyvsp[-2].item), thd->mem_root)) ||
40360                 unlikely((yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root)))
40361               MYSQL_YYABORT;
40362 
40363           }
40364 #line 40365 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40365     break;
40366 
40367   case 1838:
40368 #line 12147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40369     {
40370             (yyval.item_list)= (yyvsp[-2].item_list);
40371             if (unlikely((yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root)))
40372               MYSQL_YYABORT;
40373           }
40374 #line 40375 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40375     break;
40376 
40377   case 1839:
40378 #line 12158 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40379     { (yyval.table_list)= (yyvsp[0].table_list); }
40380 #line 40381 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40381     break;
40382 
40383   case 1840:
40384 #line 12160 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40385     {
40386             LEX *lex= Lex;
40387             if (unlikely(!((yyval.table_list)= lex->current_select->nest_last_join(thd))))
40388             {
40389               thd->parse_error();
40390               MYSQL_YYABORT;
40391             }
40392           }
40393 #line 40394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40394     break;
40395 
40396   case 1841:
40397 #line 12171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40398     { MYSQL_YYABORT_UNLESS((yyval.table_list)=(yyvsp[0].table_list)); }
40399 #line 40400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40400     break;
40401 
40402   case 1842:
40403 #line 12182 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40404     { (yyval.table_list)=(yyvsp[0].table_list); }
40405 #line 40406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40406     break;
40407 
40408   case 1843:
40409 #line 12183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40410     { (yyval.table_list)=(yyvsp[-1].table_list); }
40411 #line 40412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40412     break;
40413 
40414   case 1844:
40415 #line 12190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40416     {
40417             (yyval.table_list)=(yyvsp[0].table_list);
40418             Select->add_joined_table((yyvsp[0].table_list));
40419           }
40420 #line 40421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40421     break;
40422 
40423   case 1845:
40424 #line 12195 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40425     {
40426             MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
40427             Select->add_joined_table((yyvsp[0].table_list));
40428           }
40429 #line 40430 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40430     break;
40431 
40432   case 1846:
40433 #line 12209 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40434     {
40435             MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
40436             if (unlikely(Select->add_cross_joined_table((yyvsp[-2].table_list), (yyvsp[0].table_list), (yyvsp[-1].num))))
40437               MYSQL_YYABORT;
40438           }
40439 #line 40440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40440     break;
40441 
40442   case 1847:
40443 #line 12216 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40444     {
40445             MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && (yyvsp[-1].table_list));
40446             Select->add_joined_table((yyvsp[-3].table_list));
40447             Select->add_joined_table((yyvsp[-1].table_list));
40448             /* Change the current name resolution context to a local context. */
40449             if (unlikely(push_new_name_resolution_context(thd, (yyvsp[-3].table_list), (yyvsp[-1].table_list))))
40450               MYSQL_YYABORT;
40451             Select->parsing_place= IN_ON;
40452           }
40453 #line 40454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40454     break;
40455 
40456   case 1848:
40457 #line 12226 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40458     {
40459             (yyvsp[-3].table_list)->straight=(yyvsp[-4].num);
40460             add_join_on(thd, (yyvsp[-3].table_list), (yyvsp[0].item));
40461             (yyvsp[-3].table_list)->on_context= Lex->pop_context();
40462             Select->parsing_place= NO_MATTER;
40463           }
40464 #line 40465 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40465     break;
40466 
40467   case 1849:
40468 #line 12234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40469     {
40470             MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && (yyvsp[-1].table_list));
40471             Select->add_joined_table((yyvsp[-3].table_list));
40472             Select->add_joined_table((yyvsp[-1].table_list));
40473           }
40474 #line 40475 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40475     break;
40476 
40477   case 1850:
40478 #line 12240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40479     {
40480 	    (yyvsp[-5].table_list)->straight=(yyvsp[-6].num);
40481             add_join_natural((yyvsp[-7].table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
40482 	    (yyval.table_list)=(yyvsp[-5].table_list);
40483           }
40484 #line 40485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40485     break;
40486 
40487   case 1851:
40488 #line 12246 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40489     {
40490             MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
40491             Select->add_joined_table((yyvsp[-3].table_list));
40492             Select->add_joined_table((yyvsp[0].table_list));
40493 	    (yyvsp[0].table_list)->straight=(yyvsp[-1].num);
40494             add_join_natural((yyvsp[-3].table_list),(yyvsp[0].table_list),NULL,Select);
40495           }
40496 #line 40497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40497     break;
40498 
40499   case 1852:
40500 #line 12257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40501     {
40502             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[-1].table_list));
40503             Select->add_joined_table((yyvsp[-5].table_list));
40504             Select->add_joined_table((yyvsp[-1].table_list));
40505             /* Change the current name resolution context to a local context. */
40506             if (unlikely(push_new_name_resolution_context(thd, (yyvsp[-5].table_list), (yyvsp[-1].table_list))))
40507               MYSQL_YYABORT;
40508             Select->parsing_place= IN_ON;
40509           }
40510 #line 40511 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40511     break;
40512 
40513   case 1853:
40514 #line 12267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40515     {
40516             add_join_on(thd, (yyvsp[-3].table_list), (yyvsp[0].item));
40517             (yyvsp[-3].table_list)->on_context= Lex->pop_context();
40518             (yyvsp[-3].table_list)->outer_join|=JOIN_TYPE_LEFT;
40519             (yyval.table_list)=(yyvsp[-3].table_list);
40520             Select->parsing_place= NO_MATTER;
40521           }
40522 #line 40523 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40523     break;
40524 
40525   case 1854:
40526 #line 12275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40527     {
40528             MYSQL_YYABORT_UNLESS((yyvsp[-4].table_list) && (yyvsp[0].table_list));
40529             Select->add_joined_table((yyvsp[-4].table_list));
40530             Select->add_joined_table((yyvsp[0].table_list));
40531           }
40532 #line 40533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40533     break;
40534 
40535   case 1855:
40536 #line 12281 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40537     {
40538             add_join_natural((yyvsp[-9].table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
40539             (yyvsp[-5].table_list)->outer_join|=JOIN_TYPE_LEFT;
40540             (yyval.table_list)=(yyvsp[-5].table_list);
40541           }
40542 #line 40543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40543     break;
40544 
40545   case 1856:
40546 #line 12287 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40547     {
40548             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[0].table_list));
40549             Select->add_joined_table((yyvsp[-5].table_list));
40550             Select->add_joined_table((yyvsp[0].table_list));
40551             add_join_natural((yyvsp[-5].table_list),(yyvsp[0].table_list),NULL,Select);
40552             (yyvsp[0].table_list)->outer_join|=JOIN_TYPE_LEFT;
40553             (yyval.table_list)=(yyvsp[0].table_list);
40554           }
40555 #line 40556 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40556     break;
40557 
40558   case 1857:
40559 #line 12299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40560     {
40561             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[-1].table_list));
40562             Select->add_joined_table((yyvsp[-5].table_list));
40563             Select->add_joined_table((yyvsp[-1].table_list));
40564             /* Change the current name resolution context to a local context. */
40565             if (unlikely(push_new_name_resolution_context(thd, (yyvsp[-5].table_list), (yyvsp[-1].table_list))))
40566               MYSQL_YYABORT;
40567             Select->parsing_place= IN_ON;
40568           }
40569 #line 40570 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40570     break;
40571 
40572   case 1858:
40573 #line 12309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40574     {
40575             LEX *lex= Lex;
40576             if (unlikely(!((yyval.table_list)= lex->current_select->convert_right_join())))
40577               MYSQL_YYABORT;
40578             add_join_on(thd, (yyval.table_list), (yyvsp[0].item));
40579             (yyvsp[-7].table_list)->on_context= Lex->pop_context();
40580             Select->parsing_place= NO_MATTER;
40581           }
40582 #line 40583 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40583     break;
40584 
40585   case 1859:
40586 #line 12318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40587     {
40588             MYSQL_YYABORT_UNLESS((yyvsp[-4].table_list) && (yyvsp[0].table_list));
40589             Select->add_joined_table((yyvsp[-4].table_list));
40590             Select->add_joined_table((yyvsp[0].table_list));
40591           }
40592 #line 40593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40593     break;
40594 
40595   case 1860:
40596 #line 12324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40597     {
40598             LEX *lex= Lex;
40599             if (unlikely(!((yyval.table_list)= lex->current_select->convert_right_join())))
40600               MYSQL_YYABORT;
40601             add_join_natural((yyval.table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
40602           }
40603 #line 40604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40604     break;
40605 
40606   case 1861:
40607 #line 12331 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40608     {
40609             MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[0].table_list));
40610             Select->add_joined_table((yyvsp[-5].table_list));
40611             Select->add_joined_table((yyvsp[0].table_list));
40612             add_join_natural((yyvsp[0].table_list),(yyvsp[-5].table_list),NULL,Select);
40613             LEX *lex= Lex;
40614             if (unlikely(!((yyval.table_list)= lex->current_select->convert_right_join())))
40615               MYSQL_YYABORT;
40616           }
40617 #line 40618 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40618     break;
40619 
40620   case 1862:
40621 #line 12344 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40622     { (yyval.num) = 0; }
40623 #line 40624 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40624     break;
40625 
40626   case 1863:
40627 #line 12345 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40628     { (yyval.num) = 0; }
40629 #line 40630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40630     break;
40631 
40632   case 1864:
40633 #line 12346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40634     { (yyval.num) = 1; }
40635 #line 40636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40636     break;
40637 
40638   case 1865:
40639 #line 12350 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40640     { (yyval.num) = (yyvsp[0].num); }
40641 #line 40642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40642     break;
40643 
40644   case 1866:
40645 #line 12351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40646     { (yyval.num) = 0; }
40647 #line 40648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40648     break;
40649 
40650   case 1867:
40651 #line 12359 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40652     { (yyval.string_list)= 0;}
40653 #line 40654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40654     break;
40655 
40656   case 1869:
40657 #line 12365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40658     {
40659             (yyval.string_list)= (yyvsp[-2].string_list);
40660             Select->parsing_place= Select->save_parsing_place;
40661             Select->save_parsing_place= NO_MATTER;
40662           }
40663 #line 40664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40664     break;
40665 
40666   case 1870:
40667 #line 12373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40668     { (yyval.table_list)= (yyvsp[0].table_list); }
40669 #line 40670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40670     break;
40671 
40672   case 1871:
40673 #line 12374 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40674     { (yyval.table_list)= (yyvsp[0].table_list); }
40675 #line 40676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40676     break;
40677 
40678   case 1872:
40679 #line 12376 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40680     {
40681             (yyvsp[0].table_list)->nested_join->nest_type= 0;
40682             (yyval.table_list)= (yyvsp[0].table_list);
40683           }
40684 #line 40685 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40685     break;
40686 
40687   case 1873:
40688 #line 12380 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40689     { (yyval.table_list)= (yyvsp[0].table_list); }
40690 #line 40691 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40691     break;
40692 
40693   case 1874:
40694 #line 12384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40695     { (yyval.table_list)= (yyvsp[0].table_list); }
40696 #line 40697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40697     break;
40698 
40699   case 1875:
40700 #line 12385 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40701     { (yyval.table_list)= (yyvsp[-1].table_list); }
40702 #line 40703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40703     break;
40704 
40705   case 1876:
40706 #line 12389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40707     { (yyval.table_list)= (yyvsp[0].table_list); }
40708 #line 40709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40709     break;
40710 
40711   case 1877:
40712 #line 12390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40713     { (yyval.table_list)= (yyvsp[-1].table_list); }
40714 #line 40715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40715     break;
40716 
40717   case 1878:
40718 #line 12394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40719     { (yyval.table_list)= (yyvsp[-1].table_list); }
40720 #line 40721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40721     break;
40722 
40723   case 1879:
40724 #line 12396 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40725     {
40726             if (!((yyval.table_list)= Select->end_nested_join(thd)))
40727               MYSQL_YYABORT;
40728           }
40729 #line 40730 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40730     break;
40731 
40732   case 1880:
40733 #line 12404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40734     {
40735             if (Select->init_nested_join(thd))
40736               MYSQL_YYABORT;
40737             Select->add_joined_table((yyvsp[-2].table_list));
40738             Select->add_joined_table((yyvsp[0].table_list));
40739             (yyval.table_list)= (yyvsp[-2].table_list)->embedding;
40740           }
40741 #line 40742 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40742     break;
40743 
40744   case 1881:
40745 #line 12412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40746     {
40747             Select->add_joined_table((yyvsp[0].table_list));
40748             (yyval.table_list)= (yyvsp[-2].table_list);
40749           }
40750 #line 40751 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40751     break;
40752 
40753   case 1882:
40754 #line 12419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40755     { (yyval.table_list)= (yyvsp[-1].table_list); }
40756 #line 40757 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40757     break;
40758 
40759   case 1883:
40760 #line 12421 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40761     {
40762             LEX *lex= Lex;
40763             if (!((yyval.table_list)= lex->current_select->nest_last_join(thd)))
40764             {
40765               thd->parse_error();
40766               MYSQL_YYABORT;
40767             }
40768           }
40769 #line 40770 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40770     break;
40771 
40772   case 1884:
40773 #line 12435 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40774     {
40775             SELECT_LEX *sel= Select;
40776             sel->table_join_options= 0;
40777             if (!((yyval.table_list)= Select->add_table_to_list(thd, (yyvsp[-4].table), (yyvsp[-1].lex_str_ptr),
40778                                                 Select->get_table_join_options(),
40779                                                 YYPS->m_lock_type,
40780                                                 YYPS->m_mdl_type,
40781                                                 Select->pop_index_hints(),
40782                                                 (yyvsp[-3].string_list))))
40783               MYSQL_YYABORT;
40784             if ((yyvsp[-2].num))
40785               (yyval.table_list)->vers_conditions= Lex->vers_conditions;
40786           }
40787 #line 40788 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40788     break;
40789 
40790   case 1885:
40791 #line 12453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40792     {
40793             if (!((yyval.table_list)= Lex->parsed_derived_table((yyvsp[-2].select_lex)->master_unit(), (yyvsp[-1].num), (yyvsp[0].lex_str_ptr))))
40794               MYSQL_YYABORT;
40795           }
40796 #line 40797 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40797     break;
40798 
40799   case 1886:
40800 #line 12460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40801     {}
40802 #line 40803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40803     break;
40804 
40805   case 1887:
40806 #line 12461 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40807     {}
40808 #line 40809 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40809     break;
40810 
40811   case 1888:
40812 #line 12466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40813     {
40814             (yyval.num)= thd->variables.old_mode ?  INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL;
40815           }
40816 #line 40817 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40817     break;
40818 
40819   case 1889:
40820 #line 12469 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40821     { (yyval.num)= INDEX_HINT_MASK_JOIN;  }
40822 #line 40823 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40823     break;
40824 
40825   case 1890:
40826 #line 12470 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40827     { (yyval.num)= INDEX_HINT_MASK_ORDER; }
40828 #line 40829 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40829     break;
40830 
40831   case 1891:
40832 #line 12471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40833     { (yyval.num)= INDEX_HINT_MASK_GROUP; }
40834 #line 40835 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40835     break;
40836 
40837   case 1892:
40838 #line 12475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40839     { (yyval.index_hint)= INDEX_HINT_FORCE; }
40840 #line 40841 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40841     break;
40842 
40843   case 1893:
40844 #line 12476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40845     { (yyval.index_hint)= INDEX_HINT_IGNORE; }
40846 #line 40847 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40847     break;
40848 
40849   case 1894:
40850 #line 12481 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40851     {
40852             Select->set_index_hint_type((yyvsp[-2].index_hint), (yyvsp[0].num));
40853           }
40854 #line 40855 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40855     break;
40856 
40857   case 1896:
40858 #line 12486 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40859     {
40860             Select->set_index_hint_type(INDEX_HINT_USE, (yyvsp[0].num));
40861           }
40862 #line 40863 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40863     break;
40864 
40865   case 1901:
40866 #line 12499 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40867     { Select->alloc_index_hints(thd); }
40868 #line 40869 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40869     break;
40870 
40871   case 1903:
40872 #line 12503 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40873     {  Select->clear_index_hints(); }
40874 #line 40875 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40875     break;
40876 
40877   case 1905:
40878 #line 12508 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40879     { Select->add_index_hint(thd, NULL, 0); }
40880 #line 40881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40881     break;
40882 
40883   case 1906:
40884 #line 12509 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40885     {}
40886 #line 40887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40887     break;
40888 
40889   case 1907:
40890 #line 12514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40891     { Select->add_index_hint(thd, (yyvsp[0].ident_sys).str, (yyvsp[0].ident_sys).length); }
40892 #line 40893 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40893     break;
40894 
40895   case 1908:
40896 #line 12516 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40897     { Select->add_index_hint(thd, "PRIMARY", 7); }
40898 #line 40899 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40899     break;
40900 
40901   case 1911:
40902 #line 12526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40903     {
40904             if (unlikely(!((yyval.string_list)= new (thd->mem_root) List<String>)))
40905               MYSQL_YYABORT;
40906             String *s= new (thd->mem_root) String((const char *) (yyvsp[0].ident_sys).str,
40907                                                     (yyvsp[0].ident_sys).length,
40908                                                     system_charset_info);
40909             if (unlikely(unlikely(s == NULL)))
40910               MYSQL_YYABORT;
40911             (yyval.string_list)->push_back(s, thd->mem_root);
40912           }
40913 #line 40914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40914     break;
40915 
40916   case 1912:
40917 #line 12537 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40918     {
40919             String *s= new (thd->mem_root) String((const char *) (yyvsp[0].ident_sys).str,
40920                                                     (yyvsp[0].ident_sys).length,
40921                                                     system_charset_info);
40922             if (unlikely(unlikely(s == NULL)))
40923               MYSQL_YYABORT;
40924             if (unlikely((yyvsp[-2].string_list)->push_back(s, thd->mem_root)))
40925               MYSQL_YYABORT;
40926             (yyval.string_list)= (yyvsp[-2].string_list);
40927           }
40928 #line 40929 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40929     break;
40930 
40931   case 1913:
40932 #line 12550 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40933     {}
40934 #line 40935 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40935     break;
40936 
40937   case 1914:
40938 #line 12551 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40939     { (yyval.interval)=INTERVAL_DAY_HOUR; }
40940 #line 40941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40941     break;
40942 
40943   case 1915:
40944 #line 12552 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40945     { (yyval.interval)=INTERVAL_DAY_MICROSECOND; }
40946 #line 40947 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40947     break;
40948 
40949   case 1916:
40950 #line 12553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40951     { (yyval.interval)=INTERVAL_DAY_MINUTE; }
40952 #line 40953 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40953     break;
40954 
40955   case 1917:
40956 #line 12554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40957     { (yyval.interval)=INTERVAL_DAY_SECOND; }
40958 #line 40959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40959     break;
40960 
40961   case 1918:
40962 #line 12555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40963     { (yyval.interval)=INTERVAL_HOUR_MICROSECOND; }
40964 #line 40965 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40965     break;
40966 
40967   case 1919:
40968 #line 12556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40969     { (yyval.interval)=INTERVAL_HOUR_MINUTE; }
40970 #line 40971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40971     break;
40972 
40973   case 1920:
40974 #line 12557 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40975     { (yyval.interval)=INTERVAL_HOUR_SECOND; }
40976 #line 40977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40977     break;
40978 
40979   case 1921:
40980 #line 12558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40981     { (yyval.interval)=INTERVAL_MINUTE_MICROSECOND; }
40982 #line 40983 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40983     break;
40984 
40985   case 1922:
40986 #line 12559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40987     { (yyval.interval)=INTERVAL_MINUTE_SECOND; }
40988 #line 40989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40989     break;
40990 
40991   case 1923:
40992 #line 12560 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40993     { (yyval.interval)=INTERVAL_SECOND_MICROSECOND; }
40994 #line 40995 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
40995     break;
40996 
40997   case 1924:
40998 #line 12561 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
40999     { (yyval.interval)=INTERVAL_YEAR_MONTH; }
41000 #line 41001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41001     break;
41002 
41003   case 1925:
41004 #line 12565 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41005     { (yyval.interval_time_st)=INTERVAL_DAY; }
41006 #line 41007 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41007     break;
41008 
41009   case 1926:
41010 #line 12566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41011     { (yyval.interval_time_st)=INTERVAL_WEEK; }
41012 #line 41013 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41013     break;
41014 
41015   case 1927:
41016 #line 12567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41017     { (yyval.interval_time_st)=INTERVAL_HOUR; }
41018 #line 41019 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41019     break;
41020 
41021   case 1928:
41022 #line 12568 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41023     { (yyval.interval_time_st)=INTERVAL_MINUTE; }
41024 #line 41025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41025     break;
41026 
41027   case 1929:
41028 #line 12569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41029     { (yyval.interval_time_st)=INTERVAL_MONTH; }
41030 #line 41031 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41031     break;
41032 
41033   case 1930:
41034 #line 12570 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41035     { (yyval.interval_time_st)=INTERVAL_QUARTER; }
41036 #line 41037 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41037     break;
41038 
41039   case 1931:
41040 #line 12571 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41041     { (yyval.interval_time_st)=INTERVAL_SECOND; }
41042 #line 41043 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41043     break;
41044 
41045   case 1932:
41046 #line 12572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41047     { (yyval.interval_time_st)=INTERVAL_MICROSECOND; }
41048 #line 41049 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41049     break;
41050 
41051   case 1933:
41052 #line 12573 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41053     { (yyval.interval_time_st)=INTERVAL_YEAR; }
41054 #line 41055 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41055     break;
41056 
41057   case 1934:
41058 #line 12577 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41059     {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATE;}
41060 #line 41061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41061     break;
41062 
41063   case 1935:
41064 #line 12578 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41065     {(yyval.date_time_type)=MYSQL_TIMESTAMP_TIME;}
41066 #line 41067 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41067     break;
41068 
41069   case 1936:
41070 #line 12579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41071     {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
41072 #line 41073 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41073     break;
41074 
41075   case 1937:
41076 #line 12580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41077     {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
41078 #line 41079 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41079     break;
41080 
41081   case 1941:
41082 #line 12590 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41083     { (yyval.lex_str_ptr)=0; }
41084 #line 41085 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41085     break;
41086 
41087   case 1942:
41088 #line 12591 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41089     { (yyval.lex_str_ptr)= (yyvsp[0].lex_str_ptr); }
41090 #line 41091 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41091     break;
41092 
41093   case 1943:
41094 #line 12596 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41095     {
41096             (yyval.lex_str_ptr)= (LEX_CSTRING*) thd->memdup(&(yyvsp[0].ident_sys),sizeof(LEX_STRING));
41097             if (unlikely((yyval.lex_str_ptr) == NULL))
41098               MYSQL_YYABORT;
41099           }
41100 #line 41101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41101     break;
41102 
41103   case 1946:
41104 #line 12609 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41105     { Select->where= 0; }
41106 #line 41107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41107     break;
41108 
41109   case 1947:
41110 #line 12611 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41111     {
41112             Select->parsing_place= IN_WHERE;
41113           }
41114 #line 41115 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41115     break;
41116 
41117   case 1948:
41118 #line 12615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41119     {
41120             SELECT_LEX *select= Select;
41121             select->where= normalize_cond(thd, (yyvsp[0].item));
41122             select->parsing_place= NO_MATTER;
41123             if ((yyvsp[0].item))
41124               (yyvsp[0].item)->top_level_item();
41125           }
41126 #line 41127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41127     break;
41128 
41129   case 1950:
41130 #line 12627 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41131     {
41132             Select->parsing_place= IN_HAVING;
41133           }
41134 #line 41135 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41135     break;
41136 
41137   case 1951:
41138 #line 12631 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41139     {
41140             SELECT_LEX *sel= Select;
41141             sel->having= normalize_cond(thd, (yyvsp[0].item));
41142             sel->parsing_place= NO_MATTER;
41143             if ((yyvsp[0].item))
41144               (yyvsp[0].item)->top_level_item();
41145           }
41146 #line 41147 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41147     break;
41148 
41149   case 1954:
41150 #line 12651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41151     {
41152              if (unlikely(add_group_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
41153                MYSQL_YYABORT;
41154            }
41155 #line 41156 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41156     break;
41157 
41158   case 1955:
41159 #line 12656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41160     {
41161             if (unlikely(add_group_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
41162               MYSQL_YYABORT;
41163            }
41164 #line 41165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41165     break;
41166 
41167   case 1956:
41168 #line 12663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41169     {}
41170 #line 41171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41171     break;
41172 
41173   case 1957:
41174 #line 12665 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41175     {
41176             /*
41177               'WITH CUBE' is reserved in the MySQL syntax, but not implemented,
41178               and cause LALR(2) conflicts.
41179               This syntax is not standard.
41180               MySQL syntax: GROUP BY col1, col2, col3 WITH CUBE
41181               SQL-2003: GROUP BY ... CUBE(col1, col2, col3)
41182             */
41183             LEX *lex=Lex;
41184             if (unlikely(lex->current_select->get_linkage() == GLOBAL_OPTIONS_TYPE))
41185               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "WITH CUBE",
41186                                 "global union parameters"));
41187             lex->current_select->olap= CUBE_TYPE;
41188 
41189             my_yyabort_error((ER_NOT_SUPPORTED_YET, MYF(0), "CUBE"));
41190           }
41191 #line 41192 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41192     break;
41193 
41194   case 1958:
41195 #line 12682 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41196     {
41197             /*
41198               'WITH ROLLUP' is needed for backward compatibility,
41199               and cause LALR(2) conflicts.
41200               This syntax is not standard.
41201               MySQL syntax: GROUP BY col1, col2, col3 WITH ROLLUP
41202               SQL-2003: GROUP BY ... ROLLUP(col1, col2, col3)
41203             */
41204             LEX *lex= Lex;
41205             if (unlikely(lex->current_select->get_linkage() == GLOBAL_OPTIONS_TYPE))
41206               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "WITH ROLLUP",
41207                                 "global union parameters"));
41208             lex->current_select->olap= ROLLUP_TYPE;
41209           }
41210 #line 41211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41211     break;
41212 
41213   case 1959:
41214 #line 12704 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41215     {}
41216 #line 41217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41217     break;
41218 
41219   case 1960:
41220 #line 12707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41221     {}
41222 #line 41223 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41223     break;
41224 
41225   case 1963:
41226 #line 12717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41227     {
41228             LEX *lex= Lex;
41229             if (unlikely(Select->add_window_def(thd, (yyvsp[-2].lex_str_ptr), lex->win_ref,
41230                                                 Select->group_list,
41231                                                 Select->order_list,
41232                                                 lex->win_frame)))
41233               MYSQL_YYABORT;
41234           }
41235 #line 41236 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41236     break;
41237 
41238   case 1964:
41239 #line 12729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41240     { Select->prepare_add_window_spec(thd); }
41241 #line 41242 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41242     break;
41243 
41244   case 1965:
41245 #line 12733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41246     { }
41247 #line 41248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41248     break;
41249 
41250   case 1966:
41251 #line 12737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41252     {}
41253 #line 41254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41254     break;
41255 
41256   case 1967:
41257 #line 12739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41258     {
41259             thd->lex->win_ref= (LEX_CSTRING *) thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING));
41260             if (unlikely(thd->lex->win_ref == NULL))
41261               MYSQL_YYABORT;
41262           }
41263 #line 41264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41264     break;
41265 
41266   case 1968:
41267 #line 12747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41268     { }
41269 #line 41270 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41270     break;
41271 
41272   case 1970:
41273 #line 12752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41274     { }
41275 #line 41276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41276     break;
41277 
41278   case 1971:
41279 #line 12753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41280     { Select->order_list= *((yyvsp[0].select_order)); }
41281 #line 41282 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41282     break;
41283 
41284   case 1972:
41285 #line 12757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41286     {}
41287 #line 41288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41288     break;
41289 
41290   case 1973:
41291 #line 12759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41292     {
41293             LEX *lex= Lex;
41294             lex->win_frame=
41295               new (thd->mem_root) Window_frame((yyvsp[-2].frame_units),
41296                                                lex->frame_top_bound,
41297                                                lex->frame_bottom_bound,
41298                                                (yyvsp[0].frame_exclusion));
41299             if (unlikely(lex->win_frame == NULL))
41300               MYSQL_YYABORT;
41301           }
41302 #line 41303 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41303     break;
41304 
41305   case 1974:
41306 #line 12772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41307     { (yyval.frame_units)= Window_frame::UNITS_ROWS; }
41308 #line 41309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41309     break;
41310 
41311   case 1975:
41312 #line 12773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41313     { (yyval.frame_units)= Window_frame::UNITS_RANGE; }
41314 #line 41315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41315     break;
41316 
41317   case 1976:
41318 #line 12778 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41319     {
41320             LEX *lex= Lex;
41321             lex->frame_top_bound= (yyvsp[0].window_frame_bound);
41322             lex->frame_bottom_bound=
41323               new (thd->mem_root)
41324                 Window_frame_bound(Window_frame_bound::CURRENT, NULL);
41325             if (unlikely(lex->frame_bottom_bound == NULL))
41326               MYSQL_YYABORT;
41327           }
41328 #line 41329 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41329     break;
41330 
41331   case 1977:
41332 #line 12788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41333     {
41334             LEX *lex= Lex;
41335             lex->frame_top_bound= (yyvsp[-2].window_frame_bound);
41336             lex->frame_bottom_bound= (yyvsp[0].window_frame_bound);
41337           }
41338 #line 41339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41339     break;
41340 
41341   case 1978:
41342 #line 12797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41343     {
41344             (yyval.window_frame_bound)= new (thd->mem_root)
41345                   Window_frame_bound(Window_frame_bound::PRECEDING, NULL);
41346             if (unlikely((yyval.window_frame_bound) == NULL))
41347               MYSQL_YYABORT;
41348           }
41349 #line 41350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41350     break;
41351 
41352   case 1979:
41353 #line 12804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41354     {
41355             (yyval.window_frame_bound)= new (thd->mem_root)
41356                   Window_frame_bound(Window_frame_bound::CURRENT, NULL);
41357             if (unlikely((yyval.window_frame_bound) == NULL))
41358               MYSQL_YYABORT;
41359           }
41360 #line 41361 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41361     break;
41362 
41363   case 1980:
41364 #line 12811 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41365     {
41366             (yyval.window_frame_bound)= new (thd->mem_root)
41367                   Window_frame_bound(Window_frame_bound::PRECEDING, (yyvsp[-1].item));
41368             if (unlikely((yyval.window_frame_bound) == NULL))
41369               MYSQL_YYABORT;
41370           }
41371 #line 41372 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41372     break;
41373 
41374   case 1981:
41375 #line 12820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41376     { (yyval.window_frame_bound)= (yyvsp[0].window_frame_bound); }
41377 #line 41378 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41378     break;
41379 
41380   case 1982:
41381 #line 12822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41382     {
41383             (yyval.window_frame_bound)= new (thd->mem_root)
41384                   Window_frame_bound(Window_frame_bound::FOLLOWING, NULL);
41385             if (unlikely((yyval.window_frame_bound) == NULL))
41386               MYSQL_YYABORT;
41387           }
41388 #line 41389 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41389     break;
41390 
41391   case 1983:
41392 #line 12829 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41393     {
41394             (yyval.window_frame_bound)= new (thd->mem_root)
41395                   Window_frame_bound(Window_frame_bound::FOLLOWING, (yyvsp[-1].item));
41396             if (unlikely((yyval.window_frame_bound) == NULL))
41397               MYSQL_YYABORT;
41398           }
41399 #line 41400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41400     break;
41401 
41402   case 1984:
41403 #line 12838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41404     { (yyval.frame_exclusion)= Window_frame::EXCL_NONE; }
41405 #line 41406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41406     break;
41407 
41408   case 1985:
41409 #line 12840 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41410     { (yyval.frame_exclusion)= Window_frame::EXCL_CURRENT_ROW; }
41411 #line 41412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41412     break;
41413 
41414   case 1986:
41415 #line 12842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41416     { (yyval.frame_exclusion)= Window_frame::EXCL_GROUP; }
41417 #line 41418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41418     break;
41419 
41420   case 1987:
41421 #line 12844 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41422     { (yyval.frame_exclusion)= Window_frame::EXCL_TIES; }
41423 #line 41424 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41424     break;
41425 
41426   case 1988:
41427 #line 12846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41428     { (yyval.frame_exclusion)= Window_frame::EXCL_NONE; }
41429 #line 41430 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41430     break;
41431 
41432   case 1989:
41433 #line 12848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41434     { (yyval.frame_exclusion)= Window_frame::EXCL_NONE; }
41435 #line 41436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41436     break;
41437 
41438   case 1993:
41439 #line 12866 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41440     {
41441             bool ascending= ((yyvsp[0].num) == 1) ? true : false;
41442             if (unlikely(add_order_to_list(thd, (yyvsp[-1].item), ascending)))
41443               MYSQL_YYABORT;
41444           }
41445 #line 41446 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41446     break;
41447 
41448   case 1994:
41449 #line 12879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41450     { (yyval.select_order)= NULL; }
41451 #line 41452 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41452     break;
41453 
41454   case 1995:
41455 #line 12881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41456     { (yyval.select_order)= (yyvsp[0].select_order); }
41457 #line 41458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41458     break;
41459 
41460   case 1996:
41461 #line 12886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41462     {
41463             thd->where= "ORDER clause";
41464           }
41465 #line 41466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41466     break;
41467 
41468   case 1997:
41469 #line 12890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41470     {
41471             (yyval.select_order)= (yyvsp[0].select_order);
41472           }
41473 #line 41474 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41474     break;
41475 
41476   case 1998:
41477 #line 12897 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41478     {
41479             (yyval.select_order)= (yyvsp[-3].select_order);
41480             if (add_to_list(thd, *(yyval.select_order), (yyvsp[-1].item),(bool) (yyvsp[0].num)))
41481               MYSQL_YYABORT;
41482           }
41483 #line 41484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41484     break;
41485 
41486   case 1999:
41487 #line 12903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41488     {
41489             (yyval.select_order)= new (thd->mem_root) SQL_I_List<ORDER>();
41490             if (add_to_list(thd, *(yyval.select_order), (yyvsp[-1].item), (bool) (yyvsp[0].num)))
41491               MYSQL_YYABORT;
41492           }
41493 #line 41494 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41494     break;
41495 
41496   case 2000:
41497 #line 12911 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41498     { (yyval.num) =  1; }
41499 #line 41500 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41500     break;
41501 
41502   case 2001:
41503 #line 12912 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41504     { (yyval.num) =1; }
41505 #line 41506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41506     break;
41507 
41508   case 2002:
41509 #line 12913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41510     { (yyval.num) =0; }
41511 #line 41512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41512     break;
41513 
41514   case 2003:
41515 #line 12918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41516     { (yyval.select_limit).empty(); }
41517 #line 41518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41518     break;
41519 
41520   case 2004:
41521 #line 12920 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41522     { (yyval.select_limit)= (yyvsp[0].select_limit); }
41523 #line 41524 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41524     break;
41525 
41526   case 2005:
41527 #line 12925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41528     {
41529             (yyval.select_limit)= (yyvsp[0].select_limit);
41530             if (!(yyval.select_limit).select_limit->basic_const_item() ||
41531                 (yyval.select_limit).select_limit->val_int() > 0)
41532               Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
41533           }
41534 #line 41535 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41535     break;
41536 
41537   case 2006:
41538 #line 12933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41539     {
41540             (yyval.select_limit)= (yyvsp[-3].select_limit);
41541             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
41542           }
41543 #line 41544 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41544     break;
41545 
41546   case 2007:
41547 #line 12938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41548     {
41549             (yyval.select_limit).select_limit= 0;
41550             (yyval.select_limit).offset_limit= 0;
41551             (yyval.select_limit).explicit_limit= 0;
41552             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
41553           }
41554 #line 41555 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41555     break;
41556 
41557   case 2008:
41558 #line 12948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41559     {
41560             Select->explicit_limit= (yyvsp[0].select_limit).explicit_limit;
41561             Select->select_limit= (yyvsp[0].select_limit).select_limit;
41562             Select->offset_limit= (yyvsp[0].select_limit).offset_limit;
41563           }
41564 #line 41565 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41565     break;
41566 
41567   case 2009:
41568 #line 12957 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41569     {
41570             (yyval.select_limit).select_limit= (yyvsp[0].item);
41571             (yyval.select_limit).offset_limit= 0;
41572             (yyval.select_limit).explicit_limit= 1;
41573           }
41574 #line 41575 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41575     break;
41576 
41577   case 2010:
41578 #line 12963 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41579     {
41580             (yyval.select_limit).select_limit= (yyvsp[0].item);
41581             (yyval.select_limit).offset_limit= (yyvsp[-2].item);
41582             (yyval.select_limit).explicit_limit= 1;
41583           }
41584 #line 41585 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41585     break;
41586 
41587   case 2011:
41588 #line 12969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41589     {
41590             (yyval.select_limit).select_limit= (yyvsp[-2].item);
41591             (yyval.select_limit).offset_limit= (yyvsp[0].item);
41592             (yyval.select_limit).explicit_limit= 1;
41593           }
41594 #line 41595 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41595     break;
41596 
41597   case 2012:
41598 #line 12978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41599     {
41600             if (unlikely(!((yyval.item)= Lex->create_item_limit(thd, &(yyvsp[0].ident_cli)))))
41601               MYSQL_YYABORT;
41602           }
41603 #line 41604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41604     break;
41605 
41606   case 2013:
41607 #line 12983 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41608     {
41609             if (unlikely(!((yyval.item)= Lex->create_item_limit(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
41610               MYSQL_YYABORT;
41611           }
41612 #line 41613 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41613     break;
41614 
41615   case 2014:
41616 #line 12988 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41617     {
41618             (yyvsp[0].item_param)->limit_clause_param= TRUE;
41619           }
41620 #line 41621 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41621     break;
41622 
41623   case 2015:
41624 #line 12992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41625     {
41626             (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
41627             if (unlikely((yyval.item) == NULL))
41628               MYSQL_YYABORT;
41629           }
41630 #line 41631 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41631     break;
41632 
41633   case 2016:
41634 #line 12998 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41635     {
41636             (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
41637             if (unlikely((yyval.item) == NULL))
41638               MYSQL_YYABORT;
41639           }
41640 #line 41641 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41641     break;
41642 
41643   case 2017:
41644 #line 13004 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41645     {
41646             (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
41647             if (unlikely((yyval.item) == NULL))
41648               MYSQL_YYABORT;
41649           }
41650 #line 41651 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41651     break;
41652 
41653   case 2018:
41654 #line 13013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41655     {
41656             LEX *lex=Lex;
41657             lex->limit_rows_examined= (yyvsp[0].item);
41658           }
41659 #line 41660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41660     break;
41661 
41662   case 2019:
41663 #line 13021 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41664     {
41665             LEX *lex=Lex;
41666             lex->current_select->select_limit= 0;
41667           }
41668 #line 41669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41669     break;
41670 
41671   case 2020:
41672 #line 13026 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41673     {
41674             SELECT_LEX *sel= Select;
41675             sel->select_limit= (yyvsp[0].item);
41676             Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
41677             sel->explicit_limit= 1;
41678           }
41679 #line 41680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41680     break;
41681 
41682   case 2021:
41683 #line 13032 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41684     { thd->parse_error(); MYSQL_YYABORT; }
41685 #line 41686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41686     break;
41687 
41688   case 2022:
41689 #line 13033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41690     { thd->parse_error(); MYSQL_YYABORT; }
41691 #line 41692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41692     break;
41693 
41694   case 2023:
41695 #line 13038 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41696     {
41697             (yyval.order_limit_lock)= (yyvsp[0].order_limit_lock);
41698             (yyval.order_limit_lock)->lock.empty();
41699           }
41700 #line 41701 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41701     break;
41702 
41703   case 2024:
41704 #line 13043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41705     {
41706             (yyval.order_limit_lock)= (yyvsp[-1].order_limit_lock);
41707             (yyval.order_limit_lock)->lock= (yyvsp[0].select_lock);
41708           }
41709 #line 41710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41710     break;
41711 
41712   case 2025:
41713 #line 13048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41714     {
41715             (yyval.order_limit_lock)= new(thd->mem_root) Lex_order_limit_lock;
41716             if (!(yyval.order_limit_lock))
41717               YYABORT;
41718             (yyval.order_limit_lock)->order_list= NULL;
41719             (yyval.order_limit_lock)->limit.empty();
41720             (yyval.order_limit_lock)->lock= (yyvsp[0].select_lock);
41721           }
41722 #line 41723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41723     break;
41724 
41725   case 2026:
41726 #line 13060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41727     {
41728             Lex->pop_select();
41729             (yyval.order_limit_lock)= NULL;
41730           }
41731 #line 41732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41732     break;
41733 
41734   case 2027:
41735 #line 13064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41736     { (yyval.order_limit_lock)= (yyvsp[0].order_limit_lock); }
41737 #line 41738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41738     break;
41739 
41740   case 2030:
41741 #line 13077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41742     {
41743             (yyval.select_lock).empty();
41744           }
41745 #line 41746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41746     break;
41747 
41748   case 2031:
41749 #line 13081 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41750     {
41751             (yyval.select_lock)= (yyvsp[0].select_lock);
41752           }
41753 #line 41754 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41754     break;
41755 
41756   case 2032:
41757 #line 13085 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41758     {
41759             push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
41760                                 ER_WARN_DEPRECATED_SYNTAX,
41761                                 ER_THD(thd, ER_WARN_DEPRECATED_SYNTAX),
41762                                 "<select expression> INTO <destination>;",
41763                                 "'SELECT <select list> INTO <destination>"
41764                                 " FROM...'");
41765             (yyval.select_lock)= (yyvsp[0].select_lock);
41766           }
41767 #line 41768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41768     break;
41769 
41770   case 2033:
41771 #line 13098 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41772     {
41773             (yyval.order_limit_lock)= new(thd->mem_root) Lex_order_limit_lock;
41774             if (!(yyval.order_limit_lock))
41775               YYABORT;
41776             (yyval.order_limit_lock)->order_list= (yyvsp[-1].select_order);
41777             (yyval.order_limit_lock)->limit= (yyvsp[0].select_limit);
41778           }
41779 #line 41780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41780     break;
41781 
41782   case 2034:
41783 #line 13106 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41784     {
41785             Lex_order_limit_lock *op= (yyval.order_limit_lock)= new(thd->mem_root) Lex_order_limit_lock;
41786             if (!(yyval.order_limit_lock))
41787               YYABORT;
41788             op->order_list= NULL;
41789             op->limit= (yyvsp[0].select_limit);
41790             (yyval.order_limit_lock)->order_list= NULL;
41791             (yyval.order_limit_lock)->limit= (yyvsp[0].select_limit);
41792           }
41793 #line 41794 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41794     break;
41795 
41796   case 2037:
41797 #line 13124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41798     { int error; (yyval.num)= (int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41799 #line 41800 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41800     break;
41801 
41802   case 2038:
41803 #line 13125 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41804     { int error; (yyval.num)= -(int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41805 #line 41806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41806     break;
41807 
41808   case 2039:
41809 #line 13129 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41810     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41811 #line 41812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41812     break;
41813 
41814   case 2040:
41815 #line 13130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41816     { (yyval.ulong_num)= (ulong) strtol((yyvsp[0].lex_str).str, (char**) 0, 16); }
41817 #line 41818 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41818     break;
41819 
41820   case 2041:
41821 #line 13131 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41822     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41823 #line 41824 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41824     break;
41825 
41826   case 2042:
41827 #line 13132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41828     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41829 #line 41830 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41830     break;
41831 
41832   case 2043:
41833 #line 13133 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41834     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41835 #line 41836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41836     break;
41837 
41838   case 2044:
41839 #line 13134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41840     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41841 #line 41842 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41842     break;
41843 
41844   case 2045:
41845 #line 13138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41846     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41847 #line 41848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41848     break;
41849 
41850   case 2046:
41851 #line 13139 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41852     { (yyval.ulong_num)= (ulong) strtol((yyvsp[0].lex_str).str, (char**) 0, 16); }
41853 #line 41854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41854     break;
41855 
41856   case 2047:
41857 #line 13140 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41858     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41859 #line 41860 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41860     break;
41861 
41862   case 2048:
41863 #line 13141 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41864     { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41865 #line 41866 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41866     break;
41867 
41868   case 2049:
41869 #line 13142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41870     { MYSQL_YYABORT; }
41871 #line 41872 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41872     break;
41873 
41874   case 2050:
41875 #line 13146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41876     { int error; (yyval.longlong_number)= (longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41877 #line 41878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41878     break;
41879 
41880   case 2051:
41881 #line 13147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41882     { int error; (yyval.longlong_number)= (longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41883 #line 41884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41884     break;
41885 
41886   case 2052:
41887 #line 13148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41888     { int error; (yyval.longlong_number)= -(longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41889 #line 41890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41890     break;
41891 
41892   case 2053:
41893 #line 13149 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41894     { int error; (yyval.longlong_number)= -(longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41895 #line 41896 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41896     break;
41897 
41898   case 2054:
41899 #line 13153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41900     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41901 #line 41902 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41902     break;
41903 
41904   case 2055:
41905 #line 13154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41906     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41907 #line 41908 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41908     break;
41909 
41910   case 2056:
41911 #line 13155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41912     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41913 #line 41914 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41914     break;
41915 
41916   case 2057:
41917 #line 13156 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41918     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41919 #line 41920 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41920     break;
41921 
41922   case 2058:
41923 #line 13157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41924     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41925 #line 41926 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41926     break;
41927 
41928   case 2059:
41929 #line 13161 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41930     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41931 #line 41932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41932     break;
41933 
41934   case 2060:
41935 #line 13162 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41936     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41937 #line 41938 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41938     break;
41939 
41940   case 2061:
41941 #line 13163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41942     { (yyval.ulonglong_number)= strtoull((yyvsp[0].lex_str).str, (char**) 0, 16); }
41943 #line 41944 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41944     break;
41945 
41946   case 2062:
41947 #line 13164 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41948     { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
41949 #line 41950 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41950     break;
41951 
41952   case 2063:
41953 #line 13165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41954     { MYSQL_YYABORT; }
41955 #line 41956 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41956     break;
41957 
41958   case 2064:
41959 #line 13170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41960     { thd->parse_error(ER_ONLY_INTEGERS_ALLOWED); }
41961 #line 41962 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41962     break;
41963 
41964   case 2067:
41965 #line 13179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41966     { (yyval.choice)= (yyvsp[0].ulong_num) != 0 ? HA_CHOICE_YES : HA_CHOICE_NO; }
41967 #line 41968 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41968     break;
41969 
41970   case 2068:
41971 #line 13180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41972     { (yyval.choice)= HA_CHOICE_UNDEF; }
41973 #line 41974 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41974     break;
41975 
41976   case 2069:
41977 #line 13184 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41978     { (yyval.ulong_num)= (yyvsp[0].ulong_num) != 0; }
41979 #line 41980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41980     break;
41981 
41982   case 2070:
41983 #line 13185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41984     { (yyval.ulong_num)= 1; }
41985 #line 41986 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41986     break;
41987 
41988   case 2071:
41989 #line 13186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41990     { (yyval.ulong_num)= 0; }
41991 #line 41992 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
41992     break;
41993 
41994   case 2072:
41995 #line 13191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
41996     {
41997             LEX *lex=Lex;
41998 
41999             lex->proc_list.elements=0;
42000             lex->proc_list.first=0;
42001             lex->proc_list.next= &lex->proc_list.first;
42002             Item_field *item= new (thd->mem_root)
42003                                 Item_field(thd, &lex->current_select->context,
42004                                            NULL, NULL, &(yyvsp[0].ident_sys));
42005             if (unlikely(item == NULL))
42006               MYSQL_YYABORT;
42007             if (unlikely(add_proc_to_list(thd, item)))
42008               MYSQL_YYABORT;
42009             Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
42010 
42011             /*
42012               PROCEDURE CLAUSE cannot handle subquery as one of its parameter,
42013               so disallow any subqueries further.
42014               Alow subqueries back once the parameters are reduced.
42015             */
42016             Lex->clause_that_disallows_subselect= "PROCEDURE";
42017             Select->options|= OPTION_PROCEDURE_CLAUSE;
42018           }
42019 #line 42020 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42020     break;
42021 
42022   case 2073:
42023 #line 13215 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42024     {
42025             /* Subqueries are allowed from now.*/
42026             Lex->clause_that_disallows_subselect= NULL;
42027           }
42028 #line 42029 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42029     break;
42030 
42031   case 2074:
42032 #line 13222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42033     {}
42034 #line 42035 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42035     break;
42036 
42037   case 2075:
42038 #line 13223 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42039     {}
42040 #line 42041 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42041     break;
42042 
42043   case 2078:
42044 #line 13233 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42045     {
42046             if (unlikely(add_proc_to_list(thd, (yyvsp[-1].item))))
42047               MYSQL_YYABORT;
42048             if (!(yyvsp[-1].item)->name.str || (yyvsp[-1].item)->name.str == item_empty_name)
42049               (yyvsp[-1].item)->set_name(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
42050           }
42051 #line 42052 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42052     break;
42053 
42054   case 2079:
42055 #line 13242 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42056     {
42057             LEX *lex=Lex;
42058             if (!lex->describe &&
42059                 unlikely((!(lex->result= new (thd->mem_root)
42060                             select_dumpvar(thd)))))
42061               MYSQL_YYABORT;
42062           }
42063 #line 42064 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42064     break;
42065 
42066   case 2080:
42067 #line 13250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42068     {}
42069 #line 42070 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42070     break;
42071 
42072   case 2082:
42073 #line 13255 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42074     {}
42075 #line 42076 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42076     break;
42077 
42078   case 2083:
42079 #line 13259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42080     {
42081             if (Lex->result)
42082             {
42083               if (unlikely((yyvsp[0].myvar) == NULL))
42084                 MYSQL_YYABORT;
42085               ((select_dumpvar *)Lex->result)->var_list.push_back((yyvsp[0].myvar), thd->mem_root);
42086             }
42087             else
42088             {
42089               /*
42090                 The parser won't create select_result instance only
42091                 if it's an EXPLAIN.
42092               */
42093               DBUG_ASSERT(Lex->describe);
42094             }
42095           }
42096 #line 42097 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42097     break;
42098 
42099   case 2084:
42100 #line 13279 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42101     {
42102             (yyval.myvar) = Lex->result ? new (thd->mem_root) my_var_user(&(yyvsp[0].lex_str)) : NULL;
42103           }
42104 #line 42105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42105     break;
42106 
42107   case 2085:
42108 #line 13283 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42109     {
42110             if (unlikely(!((yyval.myvar)= Lex->create_outvar(thd, &(yyvsp[0].lex_str))) && Lex->result))
42111               MYSQL_YYABORT;
42112           }
42113 #line 42114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42114     break;
42115 
42116   case 2086:
42117 #line 13288 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42118     {
42119             if (unlikely(!((yyval.myvar)= Lex->create_outvar(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys))) && Lex->result))
42120               MYSQL_YYABORT;
42121           }
42122 #line 42123 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42123     break;
42124 
42125   case 2087:
42126 #line 13296 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42127     {}
42128 #line 42129 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42129     break;
42130 
42131   case 2088:
42132 #line 13301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42133     {
42134             LEX *lex= Lex;
42135             lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
42136             if (unlikely(!(lex->exchange=
42137                          new (thd->mem_root) sql_exchange((yyvsp[0].lex_str).str, 0))) ||
42138                 unlikely(!(lex->result=
42139                          new (thd->mem_root)
42140                          select_export(thd, lex->exchange))))
42141               MYSQL_YYABORT;
42142           }
42143 #line 42144 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42144     break;
42145 
42146   case 2089:
42147 #line 13312 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42148     { Lex->exchange->cs= (yyvsp[0].charset); }
42149 #line 42150 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42150     break;
42151 
42152   case 2091:
42153 #line 13315 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42154     {
42155             LEX *lex=Lex;
42156             if (!lex->describe)
42157             {
42158               lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
42159               if (unlikely(!(lex->exchange=
42160                              new (thd->mem_root) sql_exchange((yyvsp[0].lex_str).str,1))))
42161                 MYSQL_YYABORT;
42162               if (unlikely(!(lex->result=
42163                            new (thd->mem_root)
42164                            select_dump(thd, lex->exchange))))
42165                 MYSQL_YYABORT;
42166             }
42167           }
42168 #line 42169 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42169     break;
42170 
42171   case 2092:
42172 #line 13330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42173     {
42174             Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
42175           }
42176 #line 42177 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42177     break;
42178 
42179   case 2093:
42180 #line 13341 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42181     {
42182             LEX *lex=Lex;
42183             lex->sql_command = SQLCOM_DO;
42184             if (lex->main_select_push(true))
42185               MYSQL_YYABORT;
42186             mysql_init_select(lex);
42187           }
42188 #line 42189 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42189     break;
42190 
42191   case 2094:
42192 #line 13349 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42193     {
42194             Lex->insert_list= (yyvsp[0].item_list);
42195             Lex->pop_select(); //main select
42196             if (Lex->check_cte_dependencies_and_resolve_references())
42197               MYSQL_YYABORT;
42198           }
42199 #line 42200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42200     break;
42201 
42202   case 2095:
42203 #line 13363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42204     {
42205             LEX *lex=Lex;
42206             lex->set_command(SQLCOM_DROP_TABLE, (yyvsp[-2].num), (yyvsp[0].object_ddl_options));
42207             YYPS->m_lock_type= TL_UNLOCK;
42208             YYPS->m_mdl_type= MDL_EXCLUSIVE;
42209           }
42210 #line 42211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42211     break;
42212 
42213   case 2096:
42214 #line 13370 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42215     {}
42216 #line 42217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42217     break;
42218 
42219   case 2097:
42220 #line 13372 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42221     {
42222             if (Lex->main_select_push())
42223               MYSQL_YYABORT;
42224           }
42225 #line 42226 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42226     break;
42227 
42228   case 2098:
42229 #line 13377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42230     {
42231             LEX *lex=Lex;
42232             Alter_drop *ad= (new (thd->mem_root)
42233                              Alter_drop(Alter_drop::KEY, (yyvsp[-3].ident_sys).str, (yyvsp[-4].num)));
42234             if (unlikely(ad == NULL))
42235               MYSQL_YYABORT;
42236             lex->sql_command= SQLCOM_DROP_INDEX;
42237             lex->alter_info.reset();
42238             lex->alter_info.flags= ALTER_DROP_INDEX;
42239             lex->alter_info.drop_list.push_back(ad, thd->mem_root);
42240             if (unlikely(!lex->current_select->
42241                          add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
42242                                            TL_READ_NO_INSERT,
42243                                            MDL_SHARED_UPGRADABLE)))
42244               MYSQL_YYABORT;
42245             Lex->pop_select(); //main select
42246           }
42247 #line 42248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42248     break;
42249 
42250   case 2099:
42251 #line 13395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42252     {
42253             LEX *lex=Lex;
42254             lex->set_command(SQLCOM_DROP_DB, (yyvsp[-1].object_ddl_options));
42255             lex->name= (yyvsp[0].ident_sys);
42256           }
42257 #line 42258 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42258     break;
42259 
42260   case 2100:
42261 #line 13401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42262     {
42263             LEX *lex= thd->lex;
42264             sp_name *spname;
42265             if (unlikely((yyvsp[-2].ident_sys).str && check_db_name((LEX_STRING*) &(yyvsp[-2].ident_sys))))
42266               my_yyabort_error((ER_WRONG_DB_NAME, MYF(0), (yyvsp[-2].ident_sys).str));
42267             if (unlikely(lex->sphead))
42268               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"));
42269             lex->set_command(SQLCOM_DROP_FUNCTION, (yyvsp[-3].object_ddl_options));
42270             spname= new (thd->mem_root) sp_name(&(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys), true);
42271             if (unlikely(spname == NULL))
42272               MYSQL_YYABORT;
42273             lex->spname= spname;
42274           }
42275 #line 42276 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42276     break;
42277 
42278   case 2101:
42279 #line 13415 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42280     {
42281             LEX *lex= thd->lex;
42282             LEX_CSTRING db= {0, 0};
42283             sp_name *spname;
42284             if (unlikely(lex->sphead))
42285               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"));
42286             if (thd->db.str && unlikely(lex->copy_db_to(&db)))
42287               MYSQL_YYABORT;
42288             lex->set_command(SQLCOM_DROP_FUNCTION, (yyvsp[-1].object_ddl_options));
42289             spname= new (thd->mem_root) sp_name(&db, &(yyvsp[0].ident_sys), false);
42290             if (unlikely(spname == NULL))
42291               MYSQL_YYABORT;
42292             lex->spname= spname;
42293           }
42294 #line 42295 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42295     break;
42296 
42297   case 2102:
42298 #line 13430 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42299     {
42300             LEX *lex=Lex;
42301             if (unlikely(lex->sphead))
42302               my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE"));
42303             lex->set_command(SQLCOM_DROP_PROCEDURE, (yyvsp[-1].object_ddl_options));
42304             lex->spname= (yyvsp[0].spname);
42305           }
42306 #line 42307 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42307     break;
42308 
42309   case 2103:
42310 #line 13438 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42311     {
42312             Lex->set_command(SQLCOM_DROP_USER, (yyvsp[-2].object_ddl_options));
42313           }
42314 #line 42315 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42315     break;
42316 
42317   case 2104:
42318 #line 13442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42319     {
42320             Lex->set_command(SQLCOM_DROP_ROLE, (yyvsp[-2].object_ddl_options));
42321           }
42322 #line 42323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42323     break;
42324 
42325   case 2105:
42326 #line 13446 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42327     {
42328             LEX *lex= Lex;
42329             lex->set_command(SQLCOM_DROP_VIEW, (yyvsp[0].object_ddl_options));
42330             YYPS->m_lock_type= TL_UNLOCK;
42331             YYPS->m_mdl_type= MDL_EXCLUSIVE;
42332           }
42333 #line 42334 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42334     break;
42335 
42336   case 2106:
42337 #line 13453 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42338     {}
42339 #line 42340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42340     break;
42341 
42342   case 2107:
42343 #line 13455 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42344     {
42345             Lex->spname= (yyvsp[0].spname);
42346             Lex->set_command(SQLCOM_DROP_EVENT, (yyvsp[-1].object_ddl_options));
42347           }
42348 #line 42349 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42349     break;
42350 
42351   case 2108:
42352 #line 13460 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42353     {
42354             LEX *lex= Lex;
42355             lex->set_command(SQLCOM_DROP_TRIGGER, (yyvsp[-1].object_ddl_options));
42356             lex->spname= (yyvsp[0].spname);
42357           }
42358 #line 42359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42359     break;
42360 
42361   case 2109:
42362 #line 13466 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42363     {
42364             LEX *lex= Lex;
42365             lex->alter_tablespace_info->ts_cmd_type= DROP_TABLESPACE;
42366           }
42367 #line 42368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42368     break;
42369 
42370   case 2110:
42371 #line 13471 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42372     {
42373             LEX *lex= Lex;
42374             lex->alter_tablespace_info->ts_cmd_type= DROP_LOGFILE_GROUP;
42375           }
42376 #line 42377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42377     break;
42378 
42379   case 2111:
42380 #line 13476 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42381     {
42382             Lex->set_command(SQLCOM_DROP_SERVER, (yyvsp[-1].object_ddl_options));
42383             Lex->server_options.reset((yyvsp[0].lex_str));
42384           }
42385 #line 42386 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42386     break;
42387 
42388   case 2112:
42389 #line 13482 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42390     {
42391             LEX *lex= Lex;
42392             lex->set_command(SQLCOM_DROP_SEQUENCE, (yyvsp[-2].num), (yyvsp[0].object_ddl_options));
42393             lex->table_type= TABLE_TYPE_SEQUENCE;
42394             YYPS->m_lock_type= TL_UNLOCK;
42395             YYPS->m_mdl_type= MDL_EXCLUSIVE;
42396           }
42397 #line 42398 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42398     break;
42399 
42400   case 2113:
42401 #line 13490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42402     {}
42403 #line 42404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42404     break;
42405 
42406   case 2116:
42407 #line 13500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42408     {
42409             if (!thd->lex->current_select_or_default()->
42410                                            add_table_to_list(thd, (yyvsp[0].table), NULL,
42411                                            TL_OPTION_UPDATING,
42412                                            YYPS->m_lock_type,
42413                                            YYPS->m_mdl_type))
42414               MYSQL_YYABORT;
42415           }
42416 #line 42417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42417     break;
42418 
42419   case 2117:
42420 #line 13512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42421     {
42422             if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL,
42423                                                     TL_OPTION_UPDATING,
42424                                                     YYPS->m_lock_type,
42425                                                     YYPS->m_mdl_type,
42426                                                     NULL,
42427                                                     (yyvsp[0].string_list))))
42428               MYSQL_YYABORT;
42429           }
42430 #line 42431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42431     break;
42432 
42433   case 2120:
42434 #line 13530 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42435     {
42436             if (unlikely(!Select->
42437                          add_table_to_list(thd, (yyvsp[0].table), NULL,
42438                                            (TL_OPTION_UPDATING |
42439                                             TL_OPTION_ALIAS),
42440                                            YYPS->m_lock_type,
42441                                            YYPS->m_mdl_type)))
42442               MYSQL_YYABORT;
42443           }
42444 #line 42445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42445     break;
42446 
42447   case 2121:
42448 #line 13543 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42449     {
42450           Lex->check_exists= FALSE;
42451           (yyval.num)= 0;
42452         }
42453 #line 42454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42454     break;
42455 
42456   case 2122:
42457 #line 13548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42458     {
42459           Lex->check_exists= TRUE;
42460           (yyval.num)= 1;
42461         }
42462 #line 42463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42463     break;
42464 
42465   case 2123:
42466 #line 13556 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42467     {
42468           (yyval.object_ddl_options).set(DDL_options_st::OPT_NONE);
42469         }
42470 #line 42471 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42471     break;
42472 
42473   case 2124:
42474 #line 13560 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42475     {
42476           (yyval.object_ddl_options).set(DDL_options_st::OPT_IF_EXISTS);
42477         }
42478 #line 42479 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42479     break;
42480 
42481   case 2125:
42482 #line 13566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42483     { (yyval.num)= 0; }
42484 #line 42485 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42485     break;
42486 
42487   case 2126:
42488 #line 13567 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42489     { (yyval.num)= HA_LEX_CREATE_TMP_TABLE; }
42490 #line 42491 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42491     break;
42492 
42493   case 2127:
42494 #line 13575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42495     {
42496             LEX *lex= Lex;
42497             lex->sql_command= SQLCOM_INSERT;
42498             lex->duplicates= DUP_ERROR;
42499             if (Lex->main_select_push())
42500               MYSQL_YYABORT;
42501             mysql_init_select(lex);
42502             lex->current_select->parsing_place= BEFORE_OPT_LIST;
42503           }
42504 #line 42505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42505     break;
42506 
42507   case 2128:
42508 #line 13586 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42509     {
42510             Select->set_lock_for_tables((yyvsp[-2].lock_type), true);
42511             Lex->current_select= Lex->first_select_lex();
42512           }
42513 #line 42514 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42514     break;
42515 
42516   case 2129:
42517 #line 13591 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42518     {
42519             Lex->pop_select(); //main select
42520             if (Lex->check_main_unit_semantics())
42521               MYSQL_YYABORT;
42522             Lex->mark_first_table_as_inserting();
42523           }
42524 #line 42525 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42525     break;
42526 
42527   case 2130:
42528 #line 13601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42529     {
42530             LEX *lex=Lex;
42531             lex->sql_command = SQLCOM_REPLACE;
42532             lex->duplicates= DUP_REPLACE;
42533             if (Lex->main_select_push())
42534               MYSQL_YYABORT;
42535             mysql_init_select(lex);
42536             lex->current_select->parsing_place= BEFORE_OPT_LIST;
42537           }
42538 #line 42539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42539     break;
42540 
42541   case 2131:
42542 #line 13611 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42543     {
42544             Select->set_lock_for_tables((yyvsp[-1].lock_type), true);
42545             Lex->current_select= Lex->first_select_lex();
42546           }
42547 #line 42548 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42548     break;
42549 
42550   case 2132:
42551 #line 13616 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42552     {
42553             Lex->pop_select(); //main select
42554             if (Lex->check_main_unit_semantics())
42555               MYSQL_YYABORT;
42556             Lex->mark_first_table_as_inserting();
42557           }
42558 #line 42559 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42559     break;
42560 
42561   case 2133:
42562 #line 13626 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42563     {
42564             /*
42565               If it is SP we do not allow insert optimisation when result of
42566               insert visible only after the table unlocking but everyone can
42567               read table.
42568             */
42569             (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
42570           }
42571 #line 42572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42572     break;
42573 
42574   case 2134:
42575 #line 13634 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42576     { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
42577 #line 42578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42578     break;
42579 
42580   case 2135:
42581 #line 13636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42582     {
42583          // QQ: why was +1?
42584           Lex->keyword_delayed_begin_offset= (uint)((yyvsp[0].kwd).pos() - thd->query());
42585           Lex->keyword_delayed_end_offset= (uint)((yyvsp[0].kwd).end() - thd->query());
42586           (yyval.lock_type)= TL_WRITE_DELAYED;
42587         }
42588 #line 42589 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42589     break;
42590 
42591   case 2136:
42592 #line 13642 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42593     { (yyval.lock_type)= TL_WRITE; }
42594 #line 42595 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42595     break;
42596 
42597   case 2137:
42598 #line 13646 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42599     { (yyval.lock_type)= (yyvsp[0].lock_type); }
42600 #line 42601 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42601     break;
42602 
42603   case 2138:
42604 #line 13648 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42605     {
42606           Lex->keyword_delayed_begin_offset= (uint)((yyvsp[0].kwd).pos() - thd->query());
42607           Lex->keyword_delayed_end_offset= (uint)((yyvsp[0].kwd).end() - thd->query());
42608           (yyval.lock_type)= TL_WRITE_DELAYED;
42609         }
42610 #line 42611 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42611     break;
42612 
42613   case 2139:
42614 #line 13656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42615     {}
42616 #line 42617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42617     break;
42618 
42619   case 2140:
42620 #line 13657 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42621     {}
42622 #line 42623 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42623     break;
42624 
42625   case 2141:
42626 #line 13661 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42627     {
42628             Select->save_parsing_place= Select->parsing_place;
42629           }
42630 #line 42631 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42631     break;
42632 
42633   case 2142:
42634 #line 13665 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42635     {
42636             LEX *lex=Lex;
42637             //lex->field_list.empty();
42638             lex->many_values.empty();
42639             lex->insert_list=0;
42640           }
42641 #line 42642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42642     break;
42643 
42644   case 2143:
42645 #line 13674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42646     {}
42647 #line 42648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42648     break;
42649 
42650   case 2144:
42651 #line 13675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42652     {}
42653 #line 42654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42654     break;
42655 
42656   case 2145:
42657 #line 13677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42658     {
42659             LEX *lex=Lex;
42660             if (unlikely(!(lex->insert_list= new (thd->mem_root) List_item)) ||
42661                 unlikely(lex->many_values.push_back(lex->insert_list,
42662                          thd->mem_root)))
42663               MYSQL_YYABORT;
42664             lex->current_select->parsing_place= NO_MATTER;
42665           }
42666 #line 42667 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42667     break;
42668 
42669   case 2147:
42670 #line 13690 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42671     {
42672             Lex->current_select->parsing_place= AFTER_LIST;
42673           }
42674 #line 42675 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42675     break;
42676 
42677   case 2150:
42678 #line 13702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42679     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
42680 #line 42681 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42681     break;
42682 
42683   case 2151:
42684 #line 13703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42685     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
42686 #line 42687 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42687     break;
42688 
42689   case 2152:
42690 #line 13709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42691     {}
42692 #line 42693 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42693     break;
42694 
42695   case 2157:
42696 #line 13724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42697     {
42698             LEX *lex=Lex;
42699             if (unlikely(lex->field_list.push_back((yyvsp[-2].item), thd->mem_root)) ||
42700                 unlikely(lex->insert_list->push_back((yyvsp[0].item), thd->mem_root)))
42701               MYSQL_YYABORT;
42702           }
42703 #line 42704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42704     break;
42705 
42706   case 2158:
42707 #line 13733 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42708     {}
42709 #line 42710 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42710     break;
42711 
42712   case 2159:
42713 #line 13734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42714     {}
42715 #line 42716 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42716     break;
42717 
42718   case 2160:
42719 #line 13738 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42720     {}
42721 #line 42722 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42722     break;
42723 
42724   case 2161:
42725 #line 13739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42726     {}
42727 #line 42728 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42728     break;
42729 
42730   case 2162:
42731 #line 13743 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42732     {}
42733 #line 42734 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42734     break;
42735 
42736   case 2163:
42737 #line 13744 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42738     {}
42739 #line 42740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42740     break;
42741 
42742   case 2164:
42743 #line 13748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42744     {}
42745 #line 42746 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42746     break;
42747 
42748   case 2165:
42749 #line 13749 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42750     {}
42751 #line 42752 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42752     break;
42753 
42754   case 2166:
42755 #line 13754 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42756     {
42757             if (unlikely(!(Lex->insert_list= new (thd->mem_root) List_item)))
42758               MYSQL_YYABORT;
42759           }
42760 #line 42761 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42761     break;
42762 
42763   case 2167:
42764 #line 13759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42765     {
42766             LEX *lex=Lex;
42767             if (unlikely(lex->many_values.push_back(lex->insert_list,
42768                                                     thd->mem_root)))
42769               MYSQL_YYABORT;
42770           }
42771 #line 42772 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42772     break;
42773 
42774   case 2168:
42775 #line 13769 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42776     {
42777             if (unlikely(!(Lex->insert_list= new (thd->mem_root) List_item)))
42778               MYSQL_YYABORT;
42779           }
42780 #line 42781 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42781     break;
42782 
42783   case 2169:
42784 #line 13774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42785     {
42786             LEX *lex=Lex;
42787             if (unlikely(lex->many_values.push_back(lex->insert_list,
42788                                                     thd->mem_root)))
42789               MYSQL_YYABORT;
42790           }
42791 #line 42792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42792     break;
42793 
42794   case 2170:
42795 #line 13783 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42796     {}
42797 #line 42798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42798     break;
42799 
42800   case 2172:
42801 #line 13788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42802     {}
42803 #line 42804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42804     break;
42805 
42806   case 2174:
42807 #line 13794 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42808     {
42809             if (unlikely(Lex->insert_list->push_back((yyvsp[0].item), thd->mem_root)))
42810               MYSQL_YYABORT;
42811           }
42812 #line 42813 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42813     break;
42814 
42815   case 2175:
42816 #line 13799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42817     {
42818             if (unlikely(Lex->insert_list->push_back((yyvsp[0].item), thd->mem_root)))
42819               MYSQL_YYABORT;
42820           }
42821 #line 42822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42822     break;
42823 
42824   case 2176:
42825 #line 13807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42826     {
42827             if (unlikely(Lex->insert_list->push_back((yyvsp[-1].item), thd->mem_root)))
42828                MYSQL_YYABORT;
42829             // give some name in case of using in table value constuctor (TVC)
42830             if (!(yyvsp[-1].item)->name.str || (yyvsp[-1].item)->name.str == item_empty_name)
42831               (yyvsp[-1].item)->set_name(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
42832            }
42833 #line 42834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42834     break;
42835 
42836   case 2177:
42837 #line 13815 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42838     {
42839             if (unlikely(Lex->insert_list->push_back((yyvsp[-1].item), thd->mem_root)))
42840                MYSQL_YYABORT;
42841             // give some name in case of using in table value constuctor (TVC)
42842             if (!(yyvsp[-1].item)->name.str || (yyvsp[-1].item)->name.str == item_empty_name)
42843               (yyvsp[-1].item)->set_name(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
42844           }
42845 #line 42846 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42846     break;
42847 
42848   case 2178:
42849 #line 13825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42850     { (yyval.item)= (yyvsp[0].item);}
42851 #line 42852 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42852     break;
42853 
42854   case 2179:
42855 #line 13827 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42856     {
42857             (yyval.item)= new (thd->mem_root) Item_ignore_specification(thd);
42858             if (unlikely((yyval.item) == NULL))
42859               MYSQL_YYABORT;
42860           }
42861 #line 42862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42862     break;
42863 
42864   case 2180:
42865 #line 13835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42866     { (yyval.item)= (yyvsp[0].item);}
42867 #line 42868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42868     break;
42869 
42870   case 2181:
42871 #line 13837 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42872     {
42873             (yyval.item)= new (thd->mem_root) Item_default_specification(thd);
42874             if (unlikely((yyval.item) == NULL))
42875               MYSQL_YYABORT;
42876           }
42877 #line 42878 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42878     break;
42879 
42880   case 2183:
42881 #line 13846 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42882     { Lex->duplicates= DUP_UPDATE; }
42883 #line 42884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42884     break;
42885 
42886   case 2184:
42887 #line 13848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42888     {
42889 	    Select->parsing_place= IN_UPDATE_ON_DUP_KEY;
42890           }
42891 #line 42892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42892     break;
42893 
42894   case 2185:
42895 #line 13852 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42896     {
42897 	    Select->parsing_place= NO_MATTER;
42898           }
42899 #line 42900 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42900     break;
42901 
42902   case 2186:
42903 #line 13860 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42904     {
42905             SELECT_LEX *sel= Select;
42906             sel->table_join_options= 0;
42907             if (!((yyval.table_list)= Select->add_table_to_list(thd, (yyvsp[-4].table), (yyvsp[-1].lex_str_ptr),
42908                                                 Select->get_table_join_options(),
42909                                                 YYPS->m_lock_type,
42910                                                 YYPS->m_mdl_type,
42911                                                 Select->pop_index_hints(),
42912                                                 (yyvsp[-3].string_list))))
42913               MYSQL_YYABORT;
42914             (yyval.table_list)->period_conditions= Lex->period_conditions;
42915           }
42916 #line 42917 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42917     break;
42918 
42919   case 2187:
42920 #line 13872 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42921     { (yyval.table_list)= (yyvsp[0].table_list); }
42922 #line 42923 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42923     break;
42924 
42925   case 2188:
42926 #line 13879 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42927     {
42928             LEX *lex= Lex;
42929             if (Lex->main_select_push())
42930               MYSQL_YYABORT;
42931             mysql_init_select(lex);
42932             lex->sql_command= SQLCOM_UPDATE;
42933             lex->duplicates= DUP_ERROR;
42934           }
42935 #line 42936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42936     break;
42937 
42938   case 2189:
42939 #line 13889 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42940     {
42941             SELECT_LEX *slex= Lex->first_select_lex();
42942             if (slex->table_list.elements > 1)
42943               Lex->sql_command= SQLCOM_UPDATE_MULTI;
42944             else if (slex->get_table_list()->derived)
42945             {
42946               /* it is single table update and it is update of derived table */
42947               my_error(ER_NON_UPDATABLE_TABLE, MYF(0),
42948                        slex->get_table_list()->alias.str, "UPDATE");
42949               MYSQL_YYABORT;
42950             }
42951             /*
42952               In case of multi-update setting write lock for all tables may
42953               be too pessimistic. We will decrease lock level if possible in
42954               mysql_multi_update().
42955             */
42956             slex->set_lock_for_tables((yyvsp[-4].lock_type), slex->table_list.elements == 1);
42957           }
42958 #line 42959 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42959     break;
42960 
42961   case 2190:
42962 #line 13908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42963     {
42964             if ((yyvsp[-1].select_order))
42965               Select->order_list= *((yyvsp[-1].select_order));
42966             Lex->pop_select(); //main select
42967             if (Lex->check_main_unit_semantics())
42968               MYSQL_YYABORT;
42969           }
42970 #line 42971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42971     break;
42972 
42973   case 2193:
42974 #line 13924 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42975     {
42976             Item *def= new (thd->mem_root) Item_default_value(thd,
42977                                              Lex->current_context(), (yyvsp[-2].item), 1);
42978             if (!def || add_item_to_list(thd, (yyvsp[-2].item)) || add_value_to_list(thd, def))
42979               MYSQL_YYABORT;
42980           }
42981 #line 42982 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42982     break;
42983 
42984   case 2194:
42985 #line 13931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42986     {
42987             if (add_item_to_list(thd, (yyvsp[-2].item)) || add_value_to_list(thd, (yyvsp[0].item)))
42988               MYSQL_YYABORT;
42989           }
42990 #line 42991 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
42991     break;
42992 
42993   case 2197:
42994 #line 13944 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
42995     {
42996           LEX *lex= Lex;
42997           if (unlikely(lex->update_list.push_back((yyvsp[-2].item), thd->mem_root)) ||
42998               unlikely(lex->value_list.push_back((yyvsp[0].item), thd->mem_root)))
42999               MYSQL_YYABORT;
43000           }
43001 #line 43002 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43002     break;
43003 
43004   case 2198:
43005 #line 13953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43006     { (yyval.lock_type)= TL_WRITE_DEFAULT; }
43007 #line 43008 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43008     break;
43009 
43010   case 2199:
43011 #line 13954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43012     { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
43013 #line 43014 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43014     break;
43015 
43016   case 2200:
43017 #line 13961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43018     {
43019             LEX *lex= Lex;
43020             lex->sql_command= SQLCOM_DELETE;
43021             YYPS->m_lock_type= TL_WRITE_DEFAULT;
43022             YYPS->m_mdl_type= MDL_SHARED_WRITE;
43023             if (Lex->main_select_push())
43024               MYSQL_YYABORT;
43025             mysql_init_select(lex);
43026             lex->ignore= 0;
43027             lex->first_select_lex()->order_list.empty();
43028           }
43029 #line 43030 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43030     break;
43031 
43032   case 2201:
43033 #line 13973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43034     {
43035             if (Lex->check_cte_dependencies_and_resolve_references())
43036               MYSQL_YYABORT;
43037           }
43038 #line 43039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43039     break;
43040 
43041   case 2202:
43042 #line 13981 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43043     {
43044             Lex->vers_conditions.init(SYSTEM_TIME_HISTORY);
43045           }
43046 #line 43047 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43047     break;
43048 
43049   case 2203:
43050 #line 13985 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43051     {
43052             Lex->vers_conditions.init(SYSTEM_TIME_BEFORE, (yyvsp[0].vers_history_point));
43053           }
43054 #line 43055 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43055     break;
43056 
43057   case 2204:
43058 #line 13991 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43059     {}
43060 #line 43061 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43061     break;
43062 
43063   case 2205:
43064 #line 13993 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43065     {
43066             Lex->last_table()->vers_conditions= Lex->vers_conditions;
43067             Lex->pop_select(); //main select
43068           }
43069 #line 43070 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43070     break;
43071 
43072   case 2206:
43073 #line 14001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43074     {
43075             if (unlikely(!Select->
43076                          add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
43077                                            YYPS->m_lock_type,
43078                                            YYPS->m_mdl_type,
43079                                            NULL,
43080                                            (yyvsp[0].string_list))))
43081               MYSQL_YYABORT;
43082             YYPS->m_lock_type= TL_READ_DEFAULT;
43083             YYPS->m_mdl_type= MDL_SHARED_READ;
43084           }
43085 #line 43086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43086     break;
43087 
43088   case 2207:
43089 #line 14016 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43090     {
43091           if ((yyvsp[0].num))
43092             Lex->last_table()->period_conditions= Lex->period_conditions;
43093         }
43094 #line 43095 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43095     break;
43096 
43097   case 2208:
43098 #line 14028 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43099     {
43100             if ((yyvsp[-2].select_order))
43101               Select->order_list= *((yyvsp[-2].select_order));
43102             Lex->pop_select(); //main select
43103           }
43104 #line 43105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43105     break;
43106 
43107   case 2209:
43108 #line 14034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43109     {
43110             mysql_init_multi_delete(Lex);
43111             YYPS->m_lock_type= TL_READ_DEFAULT;
43112             YYPS->m_mdl_type= MDL_SHARED_READ;
43113           }
43114 #line 43115 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43115     break;
43116 
43117   case 2210:
43118 #line 14040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43119     {
43120             if (unlikely(multi_delete_set_locks_and_link_aux_tables(Lex)))
43121               MYSQL_YYABORT;
43122             Lex->pop_select(); //main select
43123             if (Lex->check_main_unit_semantics())
43124               MYSQL_YYABORT;
43125           }
43126 #line 43127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43127     break;
43128 
43129   case 2211:
43130 #line 14048 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43131     {
43132             mysql_init_multi_delete(Lex);
43133             YYPS->m_lock_type= TL_READ_DEFAULT;
43134             YYPS->m_mdl_type= MDL_SHARED_READ;
43135           }
43136 #line 43137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43137     break;
43138 
43139   case 2212:
43140 #line 14054 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43141     {
43142             if (unlikely(multi_delete_set_locks_and_link_aux_tables(Lex)))
43143               MYSQL_YYABORT;
43144             Lex->pop_select(); //main select
43145             if (Lex->check_main_unit_semantics())
43146               MYSQL_YYABORT;
43147           }
43148 #line 43149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43149     break;
43150 
43151   case 2217:
43152 #line 14075 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43153     {
43154             Table_ident *ti= new (thd->mem_root) Table_ident(&(yyvsp[-1].ident_sys));
43155             if (unlikely(ti == NULL))
43156               MYSQL_YYABORT;
43157             if (unlikely(!Select->
43158                          add_table_to_list(thd,
43159                                            ti,
43160                                            NULL,
43161                                            (TL_OPTION_UPDATING |
43162                                             TL_OPTION_ALIAS),
43163                                            YYPS->m_lock_type,
43164                                            YYPS->m_mdl_type)))
43165               MYSQL_YYABORT;
43166           }
43167 #line 43168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43168     break;
43169 
43170   case 2218:
43171 #line 14090 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43172     {
43173             Table_ident *ti= new (thd->mem_root) Table_ident(thd, &(yyvsp[-3].ident_sys), &(yyvsp[-1].ident_sys), 0);
43174             if (unlikely(ti == NULL))
43175               MYSQL_YYABORT;
43176             if (unlikely(!Select->
43177                          add_table_to_list(thd,
43178                                            ti,
43179                                            NULL,
43180                                            (TL_OPTION_UPDATING |
43181                                             TL_OPTION_ALIAS),
43182                                            YYPS->m_lock_type,
43183                                            YYPS->m_mdl_type)))
43184               MYSQL_YYABORT;
43185           }
43186 #line 43187 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43187     break;
43188 
43189   case 2219:
43190 #line 14107 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43191     {}
43192 #line 43193 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43193     break;
43194 
43195   case 2220:
43196 #line 14108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43197     {}
43198 #line 43199 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43199     break;
43200 
43201   case 2221:
43202 #line 14112 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43203     {}
43204 #line 43205 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43205     break;
43206 
43207   case 2222:
43208 #line 14113 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43209     {}
43210 #line 43211 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43211     break;
43212 
43213   case 2223:
43214 #line 14117 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43215     { Select->options|= OPTION_QUICK; }
43216 #line 43217 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43217     break;
43218 
43219   case 2224:
43220 #line 14118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43221     { YYPS->m_lock_type= TL_WRITE_LOW_PRIORITY; }
43222 #line 43223 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43223     break;
43224 
43225   case 2225:
43226 #line 14119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43227     { Lex->ignore= 1; }
43228 #line 43229 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43229     break;
43230 
43231   case 2226:
43232 #line 14124 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43233     {
43234             LEX* lex= Lex;
43235             lex->sql_command= SQLCOM_TRUNCATE;
43236             lex->alter_info.reset();
43237             lex->first_select_lex()->options= 0;
43238             lex->sql_cache= LEX::SQL_CACHE_UNSPECIFIED;
43239             lex->first_select_lex()->order_list.empty();
43240             YYPS->m_lock_type= TL_WRITE;
43241             YYPS->m_mdl_type= MDL_EXCLUSIVE;
43242           }
43243 #line 43244 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43244     break;
43245 
43246   case 2227:
43247 #line 14135 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43248     {
43249             LEX* lex= thd->lex;
43250             DBUG_ASSERT(!lex->m_sql_cmd);
43251             lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_truncate_table();
43252             if (unlikely(lex->m_sql_cmd == NULL))
43253               MYSQL_YYABORT;
43254           }
43255 #line 43256 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43256     break;
43257 
43258   case 2234:
43259 #line 14159 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43260     {
43261       Lex->profile_options|= PROFILE_CPU;
43262     }
43263 #line 43264 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43264     break;
43265 
43266   case 2235:
43267 #line 14163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43268     {
43269       Lex->profile_options|= PROFILE_MEMORY;
43270     }
43271 #line 43272 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43272     break;
43273 
43274   case 2236:
43275 #line 14167 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43276     {
43277       Lex->profile_options|= PROFILE_BLOCK_IO;
43278     }
43279 #line 43280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43280     break;
43281 
43282   case 2237:
43283 #line 14171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43284     {
43285       Lex->profile_options|= PROFILE_CONTEXT;
43286     }
43287 #line 43288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43288     break;
43289 
43290   case 2238:
43291 #line 14175 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43292     {
43293       Lex->profile_options|= PROFILE_PAGE_FAULTS;
43294     }
43295 #line 43296 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43296     break;
43297 
43298   case 2239:
43299 #line 14179 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43300     {
43301       Lex->profile_options|= PROFILE_IPC;
43302     }
43303 #line 43304 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43304     break;
43305 
43306   case 2240:
43307 #line 14183 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43308     {
43309       Lex->profile_options|= PROFILE_SWAPS;
43310     }
43311 #line 43312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43312     break;
43313 
43314   case 2241:
43315 #line 14187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43316     {
43317       Lex->profile_options|= PROFILE_SOURCE;
43318     }
43319 #line 43320 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43320     break;
43321 
43322   case 2242:
43323 #line 14191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43324     {
43325       Lex->profile_options|= PROFILE_ALL;
43326     }
43327 #line 43328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43328     break;
43329 
43330   case 2243:
43331 #line 14198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43332     {
43333       Lex->profile_query_id= 0;
43334     }
43335 #line 43336 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43336     break;
43337 
43338   case 2244:
43339 #line 14202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43340     {
43341       Lex->profile_query_id= atoi((yyvsp[0].lex_str).str);
43342     }
43343 #line 43344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43344     break;
43345 
43346   case 2245:
43347 #line 14211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43348     {
43349             LEX *lex=Lex;
43350             lex->wild=0;
43351             lex->ident= null_clex_str;
43352             if (Lex->main_select_push())
43353               MYSQL_YYABORT;
43354             mysql_init_select(lex);
43355             lex->current_select->parsing_place= SELECT_LIST;
43356             lex->create_info.init();
43357           }
43358 #line 43359 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43359     break;
43360 
43361   case 2246:
43362 #line 14222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43363     {
43364             Select->parsing_place= NO_MATTER;
43365             Lex->pop_select(); //main select
43366           }
43367 #line 43368 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43368     break;
43369 
43370   case 2247:
43371 #line 14230 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43372     {
43373              LEX *lex= Lex;
43374              lex->sql_command= SQLCOM_SHOW_DATABASES;
43375              if (unlikely(prepare_schema_table(thd, lex, 0, SCH_SCHEMATA)))
43376                MYSQL_YYABORT;
43377            }
43378 #line 43379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43379     break;
43380 
43381   case 2248:
43382 #line 14237 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43383     {
43384              LEX *lex= Lex;
43385              lex->sql_command= SQLCOM_SHOW_TABLES;
43386              lex->first_select_lex()->db= (yyvsp[-1].lex_str);
43387              if (prepare_schema_table(thd, lex, 0, SCH_TABLE_NAMES))
43388                MYSQL_YYABORT;
43389            }
43390 #line 43391 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43391     break;
43392 
43393   case 2249:
43394 #line 14245 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43395     {
43396              LEX *lex= Lex;
43397              lex->sql_command= SQLCOM_SHOW_TRIGGERS;
43398              lex->first_select_lex()->db= (yyvsp[-1].lex_str);
43399              if (prepare_schema_table(thd, lex, 0, SCH_TRIGGERS))
43400                MYSQL_YYABORT;
43401            }
43402 #line 43403 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43403     break;
43404 
43405   case 2250:
43406 #line 14253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43407     {
43408              LEX *lex= Lex;
43409              lex->sql_command= SQLCOM_SHOW_EVENTS;
43410              lex->first_select_lex()->db= (yyvsp[-1].lex_str);
43411              if (prepare_schema_table(thd, lex, 0, SCH_EVENTS))
43412                MYSQL_YYABORT;
43413            }
43414 #line 43415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43415     break;
43416 
43417   case 2251:
43418 #line 14261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43419     {
43420              LEX *lex= Lex;
43421              lex->sql_command= SQLCOM_SHOW_TABLE_STATUS;
43422              lex->first_select_lex()->db= (yyvsp[-1].lex_str);
43423              if (prepare_schema_table(thd, lex, 0, SCH_TABLES))
43424                MYSQL_YYABORT;
43425            }
43426 #line 43427 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43427     break;
43428 
43429   case 2252:
43430 #line 14269 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43431     {
43432             LEX *lex= Lex;
43433             lex->sql_command= SQLCOM_SHOW_OPEN_TABLES;
43434             lex->first_select_lex()->db= (yyvsp[-1].lex_str);
43435             if (prepare_schema_table(thd, lex, 0, SCH_OPEN_TABLES))
43436               MYSQL_YYABORT;
43437           }
43438 #line 43439 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43439     break;
43440 
43441   case 2253:
43442 #line 14277 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43443     {
43444             LEX *lex= Lex;
43445             lex->sql_command= SQLCOM_SHOW_PLUGINS;
43446             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PLUGINS)))
43447               MYSQL_YYABORT;
43448           }
43449 #line 43450 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43450     break;
43451 
43452   case 2254:
43453 #line 14284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43454     {
43455             Lex->ident= (yyvsp[0].lex_str);
43456             Lex->sql_command= SQLCOM_SHOW_PLUGINS;
43457             if (unlikely(prepare_schema_table(thd, Lex, 0, SCH_ALL_PLUGINS)))
43458               MYSQL_YYABORT;
43459           }
43460 #line 43461 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43461     break;
43462 
43463   case 2255:
43464 #line 14291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43465     {
43466             Lex->sql_command= SQLCOM_SHOW_PLUGINS;
43467             if (unlikely(prepare_schema_table(thd, Lex, 0, SCH_ALL_PLUGINS)))
43468               MYSQL_YYABORT;
43469           }
43470 #line 43471 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43471     break;
43472 
43473   case 2256:
43474 #line 14297 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43475     { Lex->create_info.db_type= (yyvsp[-1].db_type); }
43476 #line 43477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43477     break;
43478 
43479   case 2257:
43480 #line 14299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43481     { Lex->create_info.db_type= NULL; }
43482 #line 43483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43483     break;
43484 
43485   case 2258:
43486 #line 14301 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43487     {
43488             LEX *lex= Lex;
43489             lex->sql_command= SQLCOM_SHOW_FIELDS;
43490             if ((yyvsp[-1].lex_str).str)
43491               (yyvsp[-2].table)->change_db(&(yyvsp[-1].lex_str));
43492             if (unlikely(prepare_schema_table(thd, lex, (yyvsp[-2].table), SCH_COLUMNS)))
43493               MYSQL_YYABORT;
43494           }
43495 #line 43496 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43496     break;
43497 
43498   case 2259:
43499 #line 14310 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43500     {
43501             Lex->sql_command = SQLCOM_SHOW_BINLOGS;
43502           }
43503 #line 43504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43504     break;
43505 
43506   case 2260:
43507 #line 14314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43508     {
43509             Lex->sql_command = SQLCOM_SHOW_SLAVE_HOSTS;
43510           }
43511 #line 43512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43512     break;
43513 
43514   case 2261:
43515 #line 14318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43516     {
43517             LEX *lex= Lex;
43518             lex->sql_command= SQLCOM_SHOW_BINLOG_EVENTS;
43519           }
43520 #line 43521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43521     break;
43522 
43523   case 2263:
43524 #line 14324 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43525     {
43526             LEX *lex= Lex;
43527             lex->sql_command= SQLCOM_SHOW_RELAYLOG_EVENTS;
43528           }
43529 #line 43530 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43530     break;
43531 
43532   case 2265:
43533 #line 14330 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43534     {
43535             LEX *lex= Lex;
43536             lex->sql_command= SQLCOM_SHOW_KEYS;
43537             if ((yyvsp[-1].lex_str).str)
43538               (yyvsp[-2].table)->change_db(&(yyvsp[-1].lex_str));
43539             if (unlikely(prepare_schema_table(thd, lex, (yyvsp[-2].table), SCH_STATISTICS)))
43540               MYSQL_YYABORT;
43541           }
43542 #line 43543 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43543     break;
43544 
43545   case 2266:
43546 #line 14339 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43547     {
43548             LEX *lex=Lex;
43549             lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES;
43550             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_ENGINES)))
43551               MYSQL_YYABORT;
43552           }
43553 #line 43554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43554     break;
43555 
43556   case 2267:
43557 #line 14346 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43558     {
43559             LEX *lex=Lex;
43560             lex->sql_command= SQLCOM_SHOW_AUTHORS;
43561           }
43562 #line 43563 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43563     break;
43564 
43565   case 2268:
43566 #line 14351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43567     {
43568             LEX *lex=Lex;
43569             lex->sql_command= SQLCOM_SHOW_CONTRIBUTORS;
43570           }
43571 #line 43572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43572     break;
43573 
43574   case 2269:
43575 #line 14356 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43576     {
43577             LEX *lex=Lex;
43578             lex->sql_command= SQLCOM_SHOW_PRIVILEGES;
43579           }
43580 #line 43581 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43581     break;
43582 
43583   case 2270:
43584 #line 14361 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43585     {
43586             LEX_CSTRING var= {STRING_WITH_LEN("warning_count")};
43587             (void) create_select_for_variable(thd, &var);
43588           }
43589 #line 43590 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43590     break;
43591 
43592   case 2271:
43593 #line 14366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43594     {
43595             LEX_CSTRING var= {STRING_WITH_LEN("error_count")};
43596             (void) create_select_for_variable(thd, &var);
43597           }
43598 #line 43599 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43599     break;
43600 
43601   case 2272:
43602 #line 14371 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43603     { Lex->sql_command = SQLCOM_SHOW_WARNS;}
43604 #line 43605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43605     break;
43606 
43607   case 2273:
43608 #line 14373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43609     { Lex->sql_command = SQLCOM_SHOW_ERRORS;}
43610 #line 43611 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43611     break;
43612 
43613   case 2274:
43614 #line 14375 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43615     { Lex->sql_command = SQLCOM_SHOW_PROFILES; }
43616 #line 43617 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43617     break;
43618 
43619   case 2275:
43620 #line 14377 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43621     {
43622             LEX *lex= Lex;
43623             lex->sql_command= SQLCOM_SHOW_PROFILE;
43624             if (unlikely(prepare_schema_table(thd, lex, NULL, SCH_PROFILES)))
43625               MYSQL_YYABORT;
43626           }
43627 #line 43628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43628     break;
43629 
43630   case 2276:
43631 #line 14384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43632     {
43633             LEX *lex= Lex;
43634             lex->sql_command= SQLCOM_SHOW_STATUS;
43635             lex->option_type= (yyvsp[-2].var_type);
43636             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_SESSION_STATUS)))
43637               MYSQL_YYABORT;
43638           }
43639 #line 43640 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43640     break;
43641 
43642   case 2277:
43643 #line 14392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43644     { Lex->sql_command= SQLCOM_SHOW_PROCESSLIST;}
43645 #line 43646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43646     break;
43647 
43648   case 2278:
43649 #line 14394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43650     {
43651             LEX *lex= Lex;
43652             lex->sql_command= SQLCOM_SHOW_VARIABLES;
43653             lex->option_type= (yyvsp[-2].var_type);
43654             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_SESSION_VARIABLES)))
43655               MYSQL_YYABORT;
43656           }
43657 #line 43658 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43658     break;
43659 
43660   case 2279:
43661 #line 14402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43662     {
43663             LEX *lex= Lex;
43664             lex->sql_command= SQLCOM_SHOW_CHARSETS;
43665             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_CHARSETS)))
43666               MYSQL_YYABORT;
43667           }
43668 #line 43669 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43669     break;
43670 
43671   case 2280:
43672 #line 14409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43673     {
43674             LEX *lex= Lex;
43675             lex->sql_command= SQLCOM_SHOW_COLLATIONS;
43676             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_COLLATIONS)))
43677               MYSQL_YYABORT;
43678           }
43679 #line 43680 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43680     break;
43681 
43682   case 2281:
43683 #line 14416 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43684     {
43685             Lex->sql_command= SQLCOM_SHOW_GRANTS;
43686             if (unlikely(!(Lex->grant_user=
43687                           (LEX_USER*)thd->alloc(sizeof(LEX_USER)))))
43688               MYSQL_YYABORT;
43689             Lex->grant_user->user= current_user_and_current_role;
43690           }
43691 #line 43692 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43692     break;
43693 
43694   case 2282:
43695 #line 14424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43696     {
43697             LEX *lex=Lex;
43698             lex->sql_command= SQLCOM_SHOW_GRANTS;
43699             lex->grant_user=(yyvsp[-1].lex_user);
43700           }
43701 #line 43702 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43702     break;
43703 
43704   case 2283:
43705 #line 14430 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43706     {
43707             Lex->set_command(SQLCOM_SHOW_CREATE_DB, (yyvsp[-1].object_ddl_options));
43708             Lex->name= (yyvsp[0].ident_sys);
43709           }
43710 #line 43711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43711     break;
43712 
43713   case 2284:
43714 #line 14435 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43715     {
43716             LEX *lex= Lex;
43717             lex->sql_command = SQLCOM_SHOW_CREATE;
43718             if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), NULL,0))
43719               MYSQL_YYABORT;
43720             lex->create_info.storage_media= HA_SM_DEFAULT;
43721           }
43722 #line 43723 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43723     break;
43724 
43725   case 2285:
43726 #line 14443 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43727     {
43728             LEX *lex= Lex;
43729             lex->sql_command = SQLCOM_SHOW_CREATE;
43730             if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), NULL, 0))
43731               MYSQL_YYABORT;
43732             lex->table_type= TABLE_TYPE_VIEW;
43733           }
43734 #line 43735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43735     break;
43736 
43737   case 2286:
43738 #line 14451 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43739     {
43740             LEX *lex= Lex;
43741             lex->sql_command = SQLCOM_SHOW_CREATE;
43742             if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), NULL, 0))
43743               MYSQL_YYABORT;
43744             lex->table_type= TABLE_TYPE_SEQUENCE;
43745           }
43746 #line 43747 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43747     break;
43748 
43749   case 2287:
43750 #line 14459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43751     {
43752             Lex->sql_command = SQLCOM_SHOW_MASTER_STAT;
43753           }
43754 #line 43755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43755     break;
43756 
43757   case 2288:
43758 #line 14463 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43759     {
43760             Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
43761             Lex->verbose= 1;
43762           }
43763 #line 43764 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43764     break;
43765 
43766   case 2289:
43767 #line 14468 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43768     {
43769             LEX *lex= thd->lex;
43770             lex->mi.connection_name= null_clex_str;
43771             lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
43772             lex->verbose= 0;
43773           }
43774 #line 43775 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43775     break;
43776 
43777   case 2290:
43778 #line 14475 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43779     {
43780             Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
43781             Lex->verbose= 0;
43782           }
43783 #line 43784 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43784     break;
43785 
43786   case 2291:
43787 #line 14480 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43788     {
43789             LEX *lex= Lex;
43790 
43791             lex->sql_command = SQLCOM_SHOW_CREATE_PROC;
43792             lex->spname= (yyvsp[0].spname);
43793           }
43794 #line 43795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43795     break;
43796 
43797   case 2292:
43798 #line 14487 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43799     {
43800             LEX *lex= Lex;
43801 
43802             lex->sql_command = SQLCOM_SHOW_CREATE_FUNC;
43803             lex->spname= (yyvsp[0].spname);
43804           }
43805 #line 43806 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43806     break;
43807 
43808   case 2293:
43809 #line 14494 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43810     {
43811             LEX *lex= Lex;
43812             lex->sql_command = SQLCOM_SHOW_CREATE_PACKAGE;
43813             lex->spname= (yyvsp[0].spname);
43814           }
43815 #line 43816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43816     break;
43817 
43818   case 2294:
43819 #line 14500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43820     {
43821             LEX *lex= Lex;
43822             lex->sql_command = SQLCOM_SHOW_CREATE_PACKAGE_BODY;
43823             lex->spname= (yyvsp[0].spname);
43824           }
43825 #line 43826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43826     break;
43827 
43828   case 2295:
43829 #line 14506 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43830     {
43831             LEX *lex= Lex;
43832             lex->sql_command= SQLCOM_SHOW_CREATE_TRIGGER;
43833             lex->spname= (yyvsp[0].spname);
43834           }
43835 #line 43836 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43836     break;
43837 
43838   case 2296:
43839 #line 14512 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43840     {
43841             Lex->sql_command= SQLCOM_SHOW_CREATE_USER;
43842             if (unlikely(!(Lex->grant_user=
43843                           (LEX_USER*)thd->alloc(sizeof(LEX_USER)))))
43844               MYSQL_YYABORT;
43845             Lex->grant_user->user= current_user;
43846           }
43847 #line 43848 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43848     break;
43849 
43850   case 2297:
43851 #line 14520 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43852     {
43853              Lex->sql_command= SQLCOM_SHOW_CREATE_USER;
43854              Lex->grant_user= (yyvsp[0].lex_user);
43855           }
43856 #line 43857 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43857     break;
43858 
43859   case 2298:
43860 #line 14525 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43861     {
43862             LEX *lex= Lex;
43863             lex->sql_command= SQLCOM_SHOW_STATUS_PROC;
43864             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
43865               MYSQL_YYABORT;
43866           }
43867 #line 43868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43868     break;
43869 
43870   case 2299:
43871 #line 14532 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43872     {
43873             LEX *lex= Lex;
43874             lex->sql_command= SQLCOM_SHOW_STATUS_FUNC;
43875             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
43876               MYSQL_YYABORT;
43877           }
43878 #line 43879 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43879     break;
43880 
43881   case 2300:
43882 #line 14539 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43883     {
43884             LEX *lex= Lex;
43885             lex->sql_command= SQLCOM_SHOW_STATUS_PACKAGE;
43886             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
43887               MYSQL_YYABORT;
43888           }
43889 #line 43890 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43890     break;
43891 
43892   case 2301:
43893 #line 14546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43894     {
43895             LEX *lex= Lex;
43896             lex->sql_command= SQLCOM_SHOW_STATUS_PACKAGE_BODY;
43897             if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
43898               MYSQL_YYABORT;
43899           }
43900 #line 43901 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43901     break;
43902 
43903   case 2302:
43904 #line 14553 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43905     {
43906             Lex->sql_command= SQLCOM_SHOW_PROC_CODE;
43907             Lex->spname= (yyvsp[0].spname);
43908           }
43909 #line 43910 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43910     break;
43911 
43912   case 2303:
43913 #line 14558 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43914     {
43915             Lex->sql_command= SQLCOM_SHOW_FUNC_CODE;
43916             Lex->spname= (yyvsp[0].spname);
43917           }
43918 #line 43919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43919     break;
43920 
43921   case 2304:
43922 #line 14563 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43923     {
43924             Lex->sql_command= SQLCOM_SHOW_PACKAGE_BODY_CODE;
43925             Lex->spname= (yyvsp[0].spname);
43926           }
43927 #line 43928 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43928     break;
43929 
43930   case 2305:
43931 #line 14568 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43932     {
43933             Lex->spname= (yyvsp[0].spname);
43934             Lex->sql_command = SQLCOM_SHOW_CREATE_EVENT;
43935           }
43936 #line 43937 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43937     break;
43938 
43939   case 2306:
43940 #line 14573 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43941     {
43942             Lex->sql_command= SQLCOM_SHOW_EXPLAIN;
43943             if (unlikely(prepare_schema_table(thd, Lex, 0, SCH_EXPLAIN)))
43944               MYSQL_YYABORT;
43945             add_value_to_list(thd, (yyvsp[0].item));
43946           }
43947 #line 43948 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43948     break;
43949 
43950   case 2307:
43951 #line 14580 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43952     {
43953              LEX *lex= Lex;
43954              bool in_plugin;
43955              lex->sql_command= SQLCOM_SHOW_GENERIC;
43956              ST_SCHEMA_TABLE *table= find_schema_table(thd, &(yyvsp[-2].ident_sys), &in_plugin);
43957              if (unlikely(!table || !table->old_format || !in_plugin))
43958              {
43959                thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[-1].simple_string));
43960                MYSQL_YYABORT;
43961              }
43962              if (unlikely(lex->wild && table->idx_field1 < 0))
43963              {
43964                thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[0].simple_string));
43965                MYSQL_YYABORT;
43966              }
43967              if (unlikely(make_schema_select(thd, Lex->current_select, table)))
43968                MYSQL_YYABORT;
43969            }
43970 #line 43971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43971     break;
43972 
43973   case 2308:
43974 #line 14602 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43975     { Lex->sql_command= SQLCOM_SHOW_ENGINE_STATUS; }
43976 #line 43977 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43977     break;
43978 
43979   case 2309:
43980 #line 14604 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43981     { Lex->sql_command= SQLCOM_SHOW_ENGINE_MUTEX; }
43982 #line 43983 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43983     break;
43984 
43985   case 2310:
43986 #line 14606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43987     { Lex->sql_command= SQLCOM_SHOW_ENGINE_LOGS; }
43988 #line 43989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43989     break;
43990 
43991   case 2315:
43992 #line 14620 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43993     { (yyval.lex_str)= null_clex_str; }
43994 #line 43995 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
43995     break;
43996 
43997   case 2316:
43998 #line 14621 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
43999     { (yyval.lex_str)= (yyvsp[0].ident_sys); }
44000 #line 44001 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44001     break;
44002 
44003   case 2317:
44004 #line 14625 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44005     { Lex->verbose=0; }
44006 #line 44007 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44007     break;
44008 
44009   case 2318:
44010 #line 14626 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44011     { Lex->verbose=1; }
44012 #line 44013 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44013     break;
44014 
44015   case 2321:
44016 #line 14635 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44017     { Lex->mi.log_file_name = 0; }
44018 #line 44019 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44019     break;
44020 
44021   case 2322:
44022 #line 14636 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44023     { Lex->mi.log_file_name = (yyvsp[0].lex_str).str; }
44024 #line 44025 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44025     break;
44026 
44027   case 2323:
44028 #line 14640 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44029     { Lex->mi.pos = 4; /* skip magic number */ }
44030 #line 44031 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44031     break;
44032 
44033   case 2324:
44034 #line 14641 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44035     { Lex->mi.pos = (yyvsp[0].ulonglong_number); }
44036 #line 44037 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44037     break;
44038 
44039   case 2325:
44040 #line 14645 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44041     { (yyval.simple_string)= 0; }
44042 #line 44043 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44043     break;
44044 
44045   case 2326:
44046 #line 14647 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44047     {
44048             Lex->wild= new (thd->mem_root) String((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length,
44049                                                     system_charset_info);
44050             if (unlikely(Lex->wild == NULL))
44051               MYSQL_YYABORT;
44052             (yyval.simple_string)= (yyvsp[-1].simple_string);
44053           }
44054 #line 44055 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44055     break;
44056 
44057   case 2327:
44058 #line 14655 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44059     {
44060             Select->where= normalize_cond(thd, (yyvsp[0].item));
44061             if ((yyvsp[0].item))
44062               (yyvsp[0].item)->top_level_item();
44063             (yyval.simple_string)= (yyvsp[-1].simple_string);
44064           }
44065 #line 44066 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44066     break;
44067 
44068   case 2328:
44069 #line 14666 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44070     {
44071             LEX *lex= Lex;
44072             if (lex->main_select_push())
44073               MYSQL_YYABORT;
44074             mysql_init_select(lex);
44075             lex->current_select->parsing_place= SELECT_LIST;
44076             lex->sql_command= SQLCOM_SHOW_FIELDS;
44077             lex->first_select_lex()->db= null_clex_str;
44078             lex->verbose= 0;
44079             if (unlikely(prepare_schema_table(thd, lex, (yyvsp[0].table), SCH_COLUMNS)))
44080               MYSQL_YYABORT;
44081           }
44082 #line 44083 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44083     break;
44084 
44085   case 2329:
44086 #line 14679 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44087     {
44088             Select->parsing_place= NO_MATTER;
44089             Lex->pop_select(); //main select
44090           }
44091 #line 44092 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44092     break;
44093 
44094   case 2330:
44095 #line 14684 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44096     { Lex->describe|= DESCRIBE_NORMAL; }
44097 #line 44098 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44098     break;
44099 
44100   case 2331:
44101 #line 14686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44102     {
44103             LEX *lex=Lex;
44104             lex->first_select_lex()->options|= SELECT_DESCRIBE;
44105           }
44106 #line 44107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44107     break;
44108 
44109   case 2340:
44110 #line 14708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44111     {
44112             Lex->analyze_stmt= true;
44113           }
44114 #line 44115 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44115     break;
44116 
44117   case 2341:
44118 #line 14714 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44119     { Lex->describe|= DESCRIBE_EXTENDED; }
44120 #line 44121 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44121     break;
44122 
44123   case 2342:
44124 #line 14716 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44125     { Lex->describe|= DESCRIBE_EXTENDED | DESCRIBE_EXTENDED2; }
44126 #line 44127 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44127     break;
44128 
44129   case 2343:
44130 #line 14717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44131     { Lex->describe|= DESCRIBE_PARTITIONS; }
44132 #line 44133 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44133     break;
44134 
44135   case 2344:
44136 #line 14718 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44137     {}
44138 #line 44139 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44139     break;
44140 
44141   case 2345:
44142 #line 14722 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44143     {}
44144 #line 44145 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44145     break;
44146 
44147   case 2346:
44148 #line 14724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44149     {
44150             if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("JSON")))
44151               Lex->explain_json= true;
44152             else if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("TRADITIONAL")))
44153               DBUG_ASSERT(Lex->explain_json==false);
44154             else
44155               my_yyabort_error((ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0), "EXPLAIN",
44156                                (yyvsp[0].lex_str).str));
44157           }
44158 #line 44159 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44159     break;
44160 
44161   case 2347:
44162 #line 14736 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44163     {}
44164 #line 44165 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44165     break;
44166 
44167   case 2348:
44168 #line 14737 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44169     { Lex->wild= (yyvsp[0].string); }
44170 #line 44171 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44171     break;
44172 
44173   case 2349:
44174 #line 14739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44175     {
44176             Lex->wild= new (thd->mem_root) String((const char*) (yyvsp[0].ident_sys).str,
44177                                                     (yyvsp[0].ident_sys).length,
44178                                                     system_charset_info);
44179             if (unlikely(Lex->wild == NULL))
44180               MYSQL_YYABORT;
44181           }
44182 #line 44183 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44183     break;
44184 
44185   case 2350:
44186 #line 14753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44187     {
44188             LEX *lex=Lex;
44189             lex->sql_command= SQLCOM_FLUSH;
44190             lex->type= 0;
44191             lex->no_write_to_binlog= (yyvsp[0].num);
44192           }
44193 #line 44194 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44194     break;
44195 
44196   case 2351:
44197 #line 14759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44198     {}
44199 #line 44200 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44200     break;
44201 
44202   case 2352:
44203 #line 14764 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44204     {
44205             Lex->type|= REFRESH_TABLES;
44206             /*
44207               Set type of metadata and table locks for
44208               FLUSH TABLES table_list [WITH READ LOCK].
44209             */
44210             YYPS->m_lock_type= TL_READ_NO_INSERT;
44211             YYPS->m_mdl_type= MDL_SHARED_HIGH_PRIO;
44212           }
44213 #line 44214 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44214     break;
44215 
44216   case 2353:
44217 #line 14774 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44218     {}
44219 #line 44220 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44220     break;
44221 
44222   case 2354:
44223 #line 14776 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44224     {}
44225 #line 44226 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44226     break;
44227 
44228   case 2355:
44229 #line 14780 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44230     {}
44231 #line 44232 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44232     break;
44233 
44234   case 2356:
44235 #line 14782 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44236     {
44237           TABLE_LIST *tables= Lex->query_tables;
44238           for (; tables; tables= tables->next_global)
44239           {
44240             tables->mdl_request.set_type(MDL_SHARED_NO_WRITE);
44241             /* Don't try to flush views. */
44242             tables->required_type= TABLE_TYPE_NORMAL;
44243             /* Ignore temporary tables. */
44244             tables->open_type= OT_BASE_ONLY;
44245           }
44246         }
44247 #line 44248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44248     break;
44249 
44250   case 2357:
44251 #line 14797 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44252     { Lex->type|= REFRESH_READ_LOCK | (yyvsp[0].num); }
44253 #line 44254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44254     break;
44255 
44256   case 2358:
44257 #line 14799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44258     {
44259             if (unlikely(Lex->query_tables == NULL))
44260             {
44261               // Table list can't be empty
44262               thd->parse_error(ER_NO_TABLES_USED);
44263               MYSQL_YYABORT;
44264             }
44265             Lex->type|= REFRESH_FOR_EXPORT;
44266           }
44267 #line 44268 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44268     break;
44269 
44270   case 2359:
44271 #line 14807 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44272     {}
44273 #line 44274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44274     break;
44275 
44276   case 2361:
44277 #line 14813 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44278     {}
44279 #line 44280 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44280     break;
44281 
44282   case 2362:
44283 #line 14818 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44284     { Lex->type|= REFRESH_ERROR_LOG; }
44285 #line 44286 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44286     break;
44287 
44288   case 2363:
44289 #line 14820 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44290     { Lex->type|= REFRESH_ENGINE_LOG; }
44291 #line 44292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44292     break;
44293 
44294   case 2364:
44295 #line 14822 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44296     { Lex->type|= REFRESH_GENERAL_LOG; }
44297 #line 44298 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44298     break;
44299 
44300   case 2365:
44301 #line 14824 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44302     { Lex->type|= REFRESH_SLOW_LOG; }
44303 #line 44304 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44304     break;
44305 
44306   case 2366:
44307 #line 14826 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44308     { Lex->type|= REFRESH_BINARY_LOG; }
44309 #line 44310 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44310     break;
44311 
44312   case 2367:
44313 #line 14828 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44314     {
44315             LEX *lex= Lex;
44316             if (unlikely(lex->type & REFRESH_RELAY_LOG))
44317               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "FLUSH", "RELAY LOGS"));
44318             lex->type|= REFRESH_RELAY_LOG;
44319             lex->relay_log_connection_name= lex->mi.connection_name;
44320            }
44321 #line 44322 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44322     break;
44323 
44324   case 2368:
44325 #line 14836 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44326     { Lex->type|= REFRESH_QUERY_CACHE_FREE; }
44327 #line 44328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44328     break;
44329 
44330   case 2369:
44331 #line 14838 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44332     { Lex->type|= REFRESH_HOSTS; }
44333 #line 44334 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44334     break;
44335 
44336   case 2370:
44337 #line 14840 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44338     { Lex->type|= REFRESH_GRANT; }
44339 #line 44340 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44340     break;
44341 
44342   case 2371:
44343 #line 14842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44344     {
44345             Lex->type|= REFRESH_LOG;
44346             Lex->relay_log_connection_name= empty_clex_str;
44347           }
44348 #line 44349 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44349     break;
44350 
44351   case 2372:
44352 #line 14847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44353     { Lex->type|= REFRESH_STATUS; }
44354 #line 44355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44355     break;
44356 
44357   case 2373:
44358 #line 14849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44359     {
44360             LEX *lex= Lex;
44361             if (unlikely(lex->type & REFRESH_SLAVE))
44362               my_yyabort_error((ER_WRONG_USAGE, MYF(0), "FLUSH","SLAVE"));
44363             lex->type|= REFRESH_SLAVE;
44364             lex->reset_slave_info.all= false;
44365           }
44366 #line 44367 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44367     break;
44368 
44369   case 2374:
44370 #line 14857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44371     { Lex->type|= REFRESH_MASTER; }
44372 #line 44373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44373     break;
44374 
44375   case 2375:
44376 #line 14859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44377     { Lex->type|= REFRESH_DES_KEY_FILE; }
44378 #line 44379 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44379     break;
44380 
44381   case 2376:
44382 #line 14861 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44383     { Lex->type|= REFRESH_USER_RESOURCES; }
44384 #line 44385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44385     break;
44386 
44387   case 2377:
44388 #line 14863 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44389     { Lex->type|= REFRESH_SSL;}
44390 #line 44391 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44391     break;
44392 
44393   case 2378:
44394 #line 14865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44395     {
44396              Lex->type|= REFRESH_GENERIC;
44397              ST_SCHEMA_TABLE *table= find_schema_table(thd, &(yyvsp[-1].ident_sys));
44398              if (unlikely(!table || !table->reset_table))
44399              {
44400                thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[0].simple_string));
44401                MYSQL_YYABORT;
44402              }
44403              if (unlikely(Lex->view_list.push_back((LEX_CSTRING*)
44404                                                    thd->memdup(&(yyvsp[-1].ident_sys), sizeof(LEX_CSTRING)),
44405                                                    thd->mem_root)))
44406                MYSQL_YYABORT;
44407            }
44408 #line 44409 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44409     break;
44410 
44411   case 2379:
44412 #line 14881 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44413     {}
44414 #line 44415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44415     break;
44416 
44417   case 2380:
44418 #line 14882 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44419     {}
44420 #line 44421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44421     break;
44422 
44423   case 2381:
44424 #line 14886 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44425     {}
44426 #line 44427 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44427     break;
44428 
44429   case 2382:
44430 #line 14891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44431     {
44432           int type;
44433           if (unlikely(Lex->sphead))
44434             my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "BACKUP STAGE"));
44435           if ((type= find_type((yyvsp[0].ident_sys).str, &backup_stage_names,
44436                                FIND_TYPE_NO_PREFIX)) <= 0)
44437             my_yyabort_error((ER_BACKUP_UNKNOWN_STAGE, MYF(0), (yyvsp[0].ident_sys).str));
44438           Lex->sql_command= SQLCOM_BACKUP;
44439           Lex->backup_stage= (backup_stages) (type-1);
44440           break;
44441         }
44442 #line 44443 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44443     break;
44444 
44445   case 2383:
44446 #line 14903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44447     {
44448             if (unlikely(Lex->sphead))
44449               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "BACKUP LOCK"));
44450             if (Lex->main_select_push())
44451               MYSQL_YYABORT;
44452           }
44453 #line 44454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44454     break;
44455 
44456   case 2384:
44457 #line 14910 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44458     {
44459 	    if (unlikely(!Select->add_table_to_list(thd, (yyvsp[0].table), NULL, 0,
44460                                                     TL_READ, MDL_SHARED_HIGH_PRIO)))
44461              MYSQL_YYABORT;
44462             Lex->sql_command= SQLCOM_BACKUP_LOCK;
44463             Lex->pop_select(); //main select
44464           }
44465 #line 44466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44466     break;
44467 
44468   case 2385:
44469 #line 14918 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44470     {
44471             if (unlikely(Lex->sphead))
44472               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "BACKUP UNLOCK"));
44473 	    /* Table list is empty for unlock */
44474             Lex->sql_command= SQLCOM_BACKUP_LOCK;
44475           }
44476 #line 44477 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44477     break;
44478 
44479   case 2386:
44480 #line 14927 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44481     {}
44482 #line 44483 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44483     break;
44484 
44485   case 2387:
44486 #line 14929 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44487     {}
44488 #line 44489 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44489     break;
44490 
44491   case 2391:
44492 #line 14939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44493     {
44494             uint32 value= (uint32) (yyvsp[0].ulonglong_number);
44495             if ((yyvsp[0].ulonglong_number) > UINT_MAX32)
44496             {
44497               my_printf_error(ER_BINLOG_CANT_DELETE_GTID_DOMAIN,
44498                               "The value of gtid domain being deleted ('%llu') "
44499                               "exceeds its maximum size "
44500                               "of 32 bit unsigned integer", MYF(0), (yyvsp[0].ulonglong_number));
44501               MYSQL_YYABORT;
44502             }
44503             insert_dynamic(&Lex->delete_gtid_domain, (uchar*) &value);
44504           }
44505 #line 44506 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44506     break;
44507 
44508   case 2392:
44509 #line 14954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44510     {(yyval.num)= 0;}
44511 #line 44512 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44512     break;
44513 
44514   case 2393:
44515 #line 14955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44516     {(yyval.num)= REFRESH_CHECKPOINT; }
44517 #line 44518 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44518     break;
44519 
44520   case 2394:
44521 #line 14960 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44522     {
44523             LEX *lex=Lex;
44524             lex->sql_command= SQLCOM_RESET; lex->type=0;
44525           }
44526 #line 44527 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44527     break;
44528 
44529   case 2395:
44530 #line 14965 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44531     {}
44532 #line 44533 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44533     break;
44534 
44535   case 2398:
44536 #line 14974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44537     { Lex->type|= REFRESH_SLAVE; }
44538 #line 44539 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44539     break;
44540 
44541   case 2399:
44542 #line 14976 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44543     { }
44544 #line 44545 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44545     break;
44546 
44547   case 2400:
44548 #line 14978 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44549     {
44550              Lex->type|= REFRESH_MASTER;
44551              Lex->next_binlog_file_number= 0;
44552           }
44553 #line 44554 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44554     break;
44555 
44556   case 2402:
44557 #line 14983 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44558     { Lex->type|= REFRESH_QUERY_CACHE;}
44559 #line 44560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44560     break;
44561 
44562   case 2403:
44563 #line 14987 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44564     { Lex->reset_slave_info.all= false; }
44565 #line 44566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44566     break;
44567 
44568   case 2404:
44569 #line 14988 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44570     { Lex->reset_slave_info.all= true; }
44571 #line 44572 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44572     break;
44573 
44574   case 2405:
44575 #line 14992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44576     {}
44577 #line 44578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44578     break;
44579 
44580   case 2406:
44581 #line 14994 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44582     {
44583             Lex->next_binlog_file_number = (yyvsp[0].ulong_num);
44584           }
44585 #line 44586 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44586     break;
44587 
44588   case 2407:
44589 #line 15001 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44590     {
44591             Lex->stmt_purge_to((yyvsp[0].lex_str));
44592           }
44593 #line 44594 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44594     break;
44595 
44596   case 2408:
44597 #line 15005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44598     { Lex->clause_that_disallows_subselect= "PURGE..BEFORE"; }
44599 #line 44600 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44600     break;
44601 
44602   case 2409:
44603 #line 15007 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44604     {
44605             Lex->clause_that_disallows_subselect= NULL;
44606             if (Lex->stmt_purge_before((yyvsp[0].item)))
44607               MYSQL_YYABORT;
44608           }
44609 #line 44610 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44610     break;
44611 
44612   case 2410:
44613 #line 15019 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44614     {
44615             LEX *lex=Lex;
44616             lex->value_list.empty();
44617             lex->users_list.empty();
44618             lex->sql_command= SQLCOM_KILL;
44619             lex->kill_type= KILL_TYPE_ID;
44620           }
44621 #line 44622 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44622     break;
44623 
44624   case 2411:
44625 #line 15027 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44626     {
44627             Lex->kill_signal= (killed_state) ((yyvsp[-1].num) | (yyvsp[0].num));
44628           }
44629 #line 44630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44630     break;
44631 
44632   case 2412:
44633 #line 15033 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44634     { (yyval.num)= (int) KILL_HARD_BIT; }
44635 #line 44636 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44636     break;
44637 
44638   case 2413:
44639 #line 15034 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44640     { (yyval.num)= (int) KILL_HARD_BIT; }
44641 #line 44642 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44642     break;
44643 
44644   case 2414:
44645 #line 15035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44646     { (yyval.num)= 0; }
44647 #line 44648 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44648     break;
44649 
44650   case 2415:
44651 #line 15039 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44652     { (yyval.num)= (int) KILL_CONNECTION; }
44653 #line 44654 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44654     break;
44655 
44656   case 2416:
44657 #line 15040 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44658     { (yyval.num)= (int) KILL_QUERY; }
44659 #line 44660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44660     break;
44661 
44662   case 2417:
44663 #line 15042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44664     {
44665             (yyval.num)= (int) KILL_QUERY;
44666             Lex->kill_type= KILL_TYPE_QUERY;
44667             Lex->value_list.push_front((yyvsp[0].item), thd->mem_root);
44668           }
44669 #line 44670 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44670     break;
44671 
44672   case 2418:
44673 #line 15050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44674     { }
44675 #line 44676 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44676     break;
44677 
44678   case 2419:
44679 #line 15051 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44680     { }
44681 #line 44682 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44682     break;
44683 
44684   case 2420:
44685 #line 15056 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44686     {
44687           Lex->value_list.push_front((yyval.item), thd->mem_root);
44688          }
44689 #line 44690 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44690     break;
44691 
44692   case 2421:
44693 #line 15060 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44694     {
44695             Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root);
44696             Lex->kill_type= KILL_TYPE_USER;
44697           }
44698 #line 44699 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44699     break;
44700 
44701   case 2422:
44702 #line 15067 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44703     { Lex->sql_command= SQLCOM_SHUTDOWN; }
44704 #line 44705 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44705     break;
44706 
44707   case 2423:
44708 #line 15068 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44709     {}
44710 #line 44711 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44711     break;
44712 
44713   case 2424:
44714 #line 15072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44715     { Lex->is_shutdown_wait_for_slaves= false; }
44716 #line 44717 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44717     break;
44718 
44719   case 2425:
44720 #line 15074 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44721     {
44722           Lex->is_shutdown_wait_for_slaves= true;
44723         }
44724 #line 44725 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44725     break;
44726 
44727   case 2426:
44728 #line 15083 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44729     {
44730             LEX *lex=Lex;
44731             lex->sql_command=SQLCOM_CHANGE_DB;
44732             lex->first_select_lex()->db= (yyvsp[0].ident_sys);
44733           }
44734 #line 44735 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44735     break;
44736 
44737   case 2427:
44738 #line 15094 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44739     {
44740             LEX *lex= thd->lex;
44741 
44742             if (unlikely(lex->sphead))
44743             {
44744               my_error(ER_SP_BADSTATEMENT, MYF(0),
44745                        (yyvsp[0].filetype) == FILETYPE_CSV ? "LOAD DATA" : "LOAD XML");
44746               MYSQL_YYABORT;
44747             }
44748             if (lex->main_select_push())
44749               MYSQL_YYABORT;
44750             mysql_init_select(lex);
44751           }
44752 #line 44753 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44753     break;
44754 
44755   case 2428:
44756 #line 15108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44757     {
44758             LEX *lex=Lex;
44759             lex->sql_command= SQLCOM_LOAD;
44760             lex->local_file=  (yyvsp[-2].num);
44761             lex->duplicates= DUP_ERROR;
44762             lex->ignore= 0;
44763             if (unlikely(!(lex->exchange= new (thd->mem_root)
44764                          sql_exchange((yyvsp[0].lex_str).str, 0, (yyvsp[-5].filetype)))))
44765               MYSQL_YYABORT;
44766           }
44767 #line 44768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44768     break;
44769 
44770   case 2429:
44771 #line 15119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44772     {
44773             LEX *lex=Lex;
44774             if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL,
44775                                                    TL_OPTION_UPDATING,
44776                                                    (yyvsp[-9].lock_type), MDL_SHARED_WRITE,
44777                                                    NULL, (yyvsp[0].string_list))))
44778               MYSQL_YYABORT;
44779             lex->field_list.empty();
44780             lex->update_list.empty();
44781             lex->value_list.empty();
44782             lex->many_values.empty();
44783           }
44784 #line 44785 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44785     break;
44786 
44787   case 2430:
44788 #line 15132 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44789     { Lex->exchange->cs= (yyvsp[0].charset); }
44790 #line 44791 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44791     break;
44792 
44793   case 2431:
44794 #line 15136 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44795     {
44796             Lex->pop_select(); //main select
44797             if (Lex->check_main_unit_semantics())
44798               MYSQL_YYABORT;
44799             Lex->mark_first_table_as_inserting();
44800           }
44801 #line 44802 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44802     break;
44803 
44804   case 2432:
44805 #line 15145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44806     { (yyval.filetype)= FILETYPE_CSV; }
44807 #line 44808 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44808     break;
44809 
44810   case 2433:
44811 #line 15146 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44812     { (yyval.filetype)= FILETYPE_XML; }
44813 #line 44814 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44814     break;
44815 
44816   case 2434:
44817 #line 15150 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44818     { (yyval.num)=0;}
44819 #line 44820 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44820     break;
44821 
44822   case 2435:
44823 #line 15151 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44824     { (yyval.num)=1;}
44825 #line 44826 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44826     break;
44827 
44828   case 2436:
44829 #line 15155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44830     { (yyval.lock_type)= TL_WRITE_DEFAULT; }
44831 #line 44832 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44832     break;
44833 
44834   case 2437:
44835 #line 15157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44836     {
44837             /*
44838               Ignore this option in SP to avoid problem with query cache and
44839               triggers with non default priority locks
44840             */
44841             (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
44842           }
44843 #line 44844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44844     break;
44845 
44846   case 2438:
44847 #line 15164 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44848     { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
44849 #line 44850 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44850     break;
44851 
44852   case 2439:
44853 #line 15168 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44854     { Lex->duplicates=DUP_ERROR; }
44855 #line 44856 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44856     break;
44857 
44858   case 2440:
44859 #line 15169 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44860     { Lex->duplicates=DUP_REPLACE; }
44861 #line 44862 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44862     break;
44863 
44864   case 2441:
44865 #line 15170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44866     { Lex->ignore= 1; }
44867 #line 44868 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44868     break;
44869 
44870   case 2446:
44871 #line 15185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44872     {
44873             DBUG_ASSERT(Lex->exchange != 0);
44874             Lex->exchange->field_term= (yyvsp[0].string);
44875           }
44876 #line 44877 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44877     break;
44878 
44879   case 2447:
44880 #line 15190 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44881     {
44882             LEX *lex= Lex;
44883             DBUG_ASSERT(lex->exchange != 0);
44884             lex->exchange->enclosed= (yyvsp[0].string);
44885             lex->exchange->opt_enclosed= 1;
44886           }
44887 #line 44888 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44888     break;
44889 
44890   case 2448:
44891 #line 15197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44892     {
44893             DBUG_ASSERT(Lex->exchange != 0);
44894             Lex->exchange->enclosed= (yyvsp[0].string);
44895           }
44896 #line 44897 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44897     break;
44898 
44899   case 2449:
44900 #line 15202 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44901     {
44902             DBUG_ASSERT(Lex->exchange != 0);
44903             Lex->exchange->escaped= (yyvsp[0].string);
44904           }
44905 #line 44906 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44906     break;
44907 
44908   case 2454:
44909 #line 15220 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44910     {
44911             DBUG_ASSERT(Lex->exchange != 0);
44912             Lex->exchange->line_term= (yyvsp[0].string);
44913           }
44914 #line 44915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44915     break;
44916 
44917   case 2455:
44918 #line 15225 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44919     {
44920             DBUG_ASSERT(Lex->exchange != 0);
44921             Lex->exchange->line_start= (yyvsp[0].string);
44922           }
44923 #line 44924 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44924     break;
44925 
44926   case 2456:
44927 #line 15232 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44928     { }
44929 #line 44930 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44930     break;
44931 
44932   case 2457:
44933 #line 15234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44934     { Lex->exchange->line_term = (yyvsp[0].string); }
44935 #line 44936 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44936     break;
44937 
44938   case 2459:
44939 #line 15240 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44940     {
44941             DBUG_ASSERT(Lex->exchange != 0);
44942             Lex->exchange->skip_lines= atol((yyvsp[-1].lex_str).str);
44943           }
44944 #line 44945 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44945     break;
44946 
44947   case 2460:
44948 #line 15247 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44949     { }
44950 #line 44951 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44951     break;
44952 
44953   case 2461:
44954 #line 15248 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44955     { }
44956 #line 44957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44957     break;
44958 
44959   case 2462:
44960 #line 15252 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44961     {}
44962 #line 44963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44963     break;
44964 
44965   case 2463:
44966 #line 15253 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44967     {}
44968 #line 44969 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44969     break;
44970 
44971   case 2464:
44972 #line 15254 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44973     {}
44974 #line 44975 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44975     break;
44976 
44977   case 2465:
44978 #line 15259 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44979     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
44980 #line 44981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44981     break;
44982 
44983   case 2466:
44984 #line 15261 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44985     { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
44986 #line 44987 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44987     break;
44988 
44989   case 2467:
44990 #line 15265 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44991     {(yyval.item)= (yyvsp[0].item);}
44992 #line 44993 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
44993     break;
44994 
44995   case 2468:
44996 #line 15267 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
44997     {
44998             (yyval.item)= new (thd->mem_root) Item_user_var_as_out_param(thd, &(yyvsp[0].lex_str));
44999             if (unlikely((yyval.item) == NULL))
45000               MYSQL_YYABORT;
45001           }
45002 #line 45003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45003     break;
45004 
45005   case 2469:
45006 #line 15275 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45007     {}
45008 #line 45009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45009     break;
45010 
45011   case 2470:
45012 #line 15276 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45013     {}
45014 #line 45015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45015     break;
45016 
45017   case 2473:
45018 #line 15286 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45019     {
45020             LEX *lex= Lex;
45021             if (unlikely(lex->update_list.push_back((yyvsp[-4].item), thd->mem_root)) ||
45022                 unlikely(lex->value_list.push_back((yyvsp[-1].item), thd->mem_root)))
45023                 MYSQL_YYABORT;
45024             (yyvsp[-1].item)->set_name_no_truncate(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
45025           }
45026 #line 45027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45027     break;
45028 
45029   case 2474:
45030 #line 15299 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45031     {
45032             if (unlikely(!((yyval.item_basic_constant)= thd->make_string_literal((yyvsp[0].lex_string_with_metadata)))))
45033               MYSQL_YYABORT;
45034           }
45035 #line 45036 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45036     break;
45037 
45038   case 2475:
45039 #line 15304 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45040     {
45041             if (unlikely(!((yyval.item_basic_constant)= thd->make_string_literal_nchar((yyvsp[0].lex_string_with_metadata)))))
45042               MYSQL_YYABORT;
45043           }
45044 #line 45045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45045     break;
45046 
45047   case 2476:
45048 #line 15309 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45049     {
45050             if (unlikely(!((yyval.item_basic_constant)= thd->make_string_literal_charset((yyvsp[0].lex_string_with_metadata), (yyvsp[-1].charset)))))
45051               MYSQL_YYABORT;
45052           }
45053 #line 45054 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45054     break;
45055 
45056   case 2477:
45057 #line 15314 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45058     {
45059             if (unlikely(!((yyval.item_basic_constant)= (yyvsp[-1].item_basic_constant)->make_string_literal_concat(thd, &(yyvsp[0].lex_str)))))
45060               MYSQL_YYABORT;
45061           }
45062 #line 45063 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45063     break;
45064 
45065   case 2478:
45066 #line 15322 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45067     {
45068             (yyval.string)= new (thd->mem_root) String((yyvsp[0].lex_str).str,
45069                                              (yyvsp[0].lex_str).length,
45070                                              thd->variables.collation_connection);
45071             if (unlikely((yyval.string) == NULL))
45072               MYSQL_YYABORT;
45073           }
45074 #line 45075 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45075     break;
45076 
45077   case 2479:
45078 #line 15329 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45079     { (yyval.string)= (yyvsp[0].string); }
45080 #line 45081 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45081     break;
45082 
45083   case 2480:
45084 #line 15335 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45085     {
45086             Item *tmp= new (thd->mem_root) Item_hex_hybrid(thd, (yyvsp[0].lex_str).str,
45087                                                            (yyvsp[0].lex_str).length);
45088             if (unlikely(tmp == NULL))
45089               MYSQL_YYABORT;
45090             (yyval.string)= tmp->val_str((String*) 0);
45091           }
45092 #line 45093 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45093     break;
45094 
45095   case 2481:
45096 #line 15343 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45097     {
45098             Item *tmp= new (thd->mem_root) Item_hex_string(thd, (yyvsp[0].lex_str).str,
45099                                                            (yyvsp[0].lex_str).length);
45100             if (unlikely(tmp == NULL))
45101               MYSQL_YYABORT;
45102             (yyval.string)= tmp->val_str((String*) 0);
45103           }
45104 #line 45105 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45105     break;
45106 
45107   case 2482:
45108 #line 15351 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45109     {
45110             Item *tmp= new (thd->mem_root) Item_bin_string(thd, (yyvsp[0].lex_str).str,
45111                                                            (yyvsp[0].lex_str).length);
45112             if (unlikely(tmp == NULL))
45113               MYSQL_YYABORT;
45114             /*
45115               it is OK only emulate fix_fields, because we need only
45116               value of constant
45117             */
45118             (yyval.string)= tmp->val_str((String*) 0);
45119           }
45120 #line 45121 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45121     break;
45122 
45123   case 2483:
45124 #line 15366 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45125     {
45126             if (unlikely(!((yyval.item_param)= Lex->add_placeholder(thd, &param_clex_str,
45127                                                     YYLIP->get_tok_start(),
45128                                                     YYLIP->get_tok_start() + 1))))
45129               MYSQL_YYABORT;
45130           }
45131 #line 45132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45132     break;
45133 
45134   case 2484:
45135 #line 15373 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45136     {
45137             if (unlikely(!((yyval.item_param)= Lex->add_placeholder(thd, &null_clex_str,
45138                                                     (yyvsp[-1].kwd).pos(), (yyvsp[0].ident_cli).end()))))
45139               MYSQL_YYABORT;
45140           }
45141 #line 45142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45142     break;
45143 
45144   case 2485:
45145 #line 15379 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45146     {
45147             if (unlikely(!((yyval.item_param)= Lex->add_placeholder(thd, &null_clex_str,
45148                                                     (yyvsp[-1].kwd).pos(),
45149                                                     YYLIP->get_ptr()))))
45150               MYSQL_YYABORT;
45151           }
45152 #line 45153 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45153     break;
45154 
45155   case 2486:
45156 #line 15388 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45157     { (yyval.item) = (yyvsp[0].item_num); }
45158 #line 45159 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45159     break;
45160 
45161   case 2487:
45162 #line 15390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45163     {
45164             (yyvsp[0].item_num)->max_length++;
45165             (yyval.item)= (yyvsp[0].item_num)->neg(thd);
45166           }
45167 #line 45168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45168     break;
45169 
45170   case 2488:
45171 #line 15397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45172     { (yyval.item) = (yyvsp[0].item_basic_constant); }
45173 #line 45174 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45174     break;
45175 
45176   case 2489:
45177 #line 15398 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45178     { (yyval.item) = (yyvsp[0].item_num); }
45179 #line 45180 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45180     break;
45181 
45182   case 2490:
45183 #line 15399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45184     { (yyval.item)= (yyvsp[0].item); }
45185 #line 45186 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45186     break;
45187 
45188   case 2491:
45189 #line 15401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45190     {
45191             /*
45192               For the digest computation, in this context only,
45193               NULL is considered a literal, hence reduced to '?'
45194               REDUCE:
45195                 TOK_GENERIC_VALUE := NULL_SYM
45196             */
45197             YYLIP->reduce_digest_token(TOK_GENERIC_VALUE, NULL_SYM);
45198             (yyval.item)= new (thd->mem_root) Item_null(thd);
45199             if (unlikely((yyval.item) == NULL))
45200               MYSQL_YYABORT;
45201             YYLIP->next_state= MY_LEX_OPERATOR_OR_IDENT;
45202           }
45203 #line 45204 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45204     break;
45205 
45206   case 2492:
45207 #line 15415 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45208     {
45209             (yyval.item)= new (thd->mem_root) Item_bool(thd, (char*) "FALSE",0);
45210             if (unlikely((yyval.item) == NULL))
45211               MYSQL_YYABORT;
45212           }
45213 #line 45214 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45214     break;
45215 
45216   case 2493:
45217 #line 15421 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45218     {
45219             (yyval.item)= new (thd->mem_root) Item_bool(thd, (char*) "TRUE",1);
45220             if (unlikely((yyval.item) == NULL))
45221               MYSQL_YYABORT;
45222           }
45223 #line 45224 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45224     break;
45225 
45226   case 2494:
45227 #line 15427 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45228     {
45229             (yyval.item)= new (thd->mem_root) Item_hex_hybrid(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
45230             if (unlikely((yyval.item) == NULL))
45231               MYSQL_YYABORT;
45232           }
45233 #line 45234 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45234     break;
45235 
45236   case 2495:
45237 #line 15433 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45238     {
45239             (yyval.item)= new (thd->mem_root) Item_hex_string(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
45240             if (unlikely((yyval.item) == NULL))
45241               MYSQL_YYABORT;
45242           }
45243 #line 45244 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45244     break;
45245 
45246   case 2496:
45247 #line 15439 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45248     {
45249             (yyval.item)= new (thd->mem_root) Item_bin_string(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
45250             if (unlikely((yyval.item) == NULL))
45251               MYSQL_YYABORT;
45252           }
45253 #line 45254 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45254     break;
45255 
45256   case 2497:
45257 #line 15445 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45258     {
45259             Item_string_with_introducer *item_str;
45260             /*
45261               Pass NULL as name. Name will be set in the "select_item" rule and
45262               will include the introducer and the original hex/bin notation.
45263             */
45264             item_str= new (thd->mem_root)
45265                Item_string_with_introducer(thd, NULL, (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length(),
45266                                            (yyvsp[-1].charset));
45267             if (unlikely(!item_str ||
45268                          !item_str->check_well_formed_result(true)))
45269               MYSQL_YYABORT;
45270 
45271             (yyval.item)= item_str;
45272           }
45273 #line 45274 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45274     break;
45275 
45276   case 2498:
45277 #line 15464 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45278     {
45279             int error;
45280             (yyval.item_num)= new (thd->mem_root)
45281                   Item_int(thd, (yyvsp[0].lex_str).str,
45282                            (longlong) my_strtoll10((yyvsp[0].lex_str).str, NULL, &error),
45283                            (yyvsp[0].lex_str).length);
45284             if (unlikely((yyval.item_num) == NULL))
45285               MYSQL_YYABORT;
45286           }
45287 #line 45288 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45288     break;
45289 
45290   case 2499:
45291 #line 15474 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45292     {
45293             int error;
45294             (yyval.item_num)= new (thd->mem_root)
45295                   Item_int(thd, (yyvsp[0].lex_str).str,
45296                            (longlong) my_strtoll10((yyvsp[0].lex_str).str, NULL, &error),
45297                            (yyvsp[0].lex_str).length);
45298             if (unlikely((yyval.item_num) == NULL))
45299               MYSQL_YYABORT;
45300           }
45301 #line 45302 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45302     break;
45303 
45304   case 2500:
45305 #line 15484 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45306     {
45307             (yyval.item_num)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
45308             if (unlikely((yyval.item_num) == NULL))
45309               MYSQL_YYABORT;
45310           }
45311 #line 45312 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45312     break;
45313 
45314   case 2501:
45315 #line 15490 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45316     {
45317             (yyval.item_num)= new (thd->mem_root) Item_decimal(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length,
45318                                                    thd->charset());
45319             if (unlikely((yyval.item_num) == NULL) || unlikely(thd->is_error()))
45320               MYSQL_YYABORT;
45321           }
45322 #line 45323 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45323     break;
45324 
45325   case 2502:
45326 #line 15497 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45327     {
45328             (yyval.item_num)= new (thd->mem_root) Item_float(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
45329             if (unlikely((yyval.item_num) == NULL) || unlikely(thd->is_error()))
45330               MYSQL_YYABORT;
45331           }
45332 #line 45333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45333     break;
45334 
45335   case 2503:
45336 #line 15507 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45337     {
45338             if (unlikely(!((yyval.item)= type_handler_newdate.create_literal_item(thd,
45339                                                            (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
45340                                                            YYCSCL, true))))
45341               MYSQL_YYABORT;
45342           }
45343 #line 45344 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45344     break;
45345 
45346   case 2504:
45347 #line 15514 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45348     {
45349             if (unlikely(!((yyval.item)= type_handler_time2.create_literal_item(thd,
45350                                                          (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
45351                                                          YYCSCL, true))))
45352               MYSQL_YYABORT;
45353           }
45354 #line 45355 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45355     break;
45356 
45357   case 2505:
45358 #line 15521 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45359     {
45360             if (unlikely(!((yyval.item)= type_handler_datetime.create_literal_item(thd,
45361                                                             (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
45362                                                             YYCSCL, true))))
45363               MYSQL_YYABORT;
45364           }
45365 #line 45366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45366     break;
45367 
45368   case 2506:
45369 #line 15531 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45370     {
45371              LEX *lex= Lex;
45372              With_clause *with_clause=
45373              new With_clause((yyvsp[0].num), Lex->curr_with_clause);
45374              if (unlikely(with_clause == NULL))
45375                MYSQL_YYABORT;
45376              lex->derived_tables|= DERIVED_WITH;
45377              lex->with_cte_resolution= true;
45378              lex->curr_with_clause= with_clause;
45379              with_clause->add_to_list(Lex->with_clauses_list_last_next);
45380              if (lex->current_select &&
45381                  lex->current_select->parsing_place == BEFORE_OPT_LIST)
45382                lex->current_select->parsing_place= NO_MATTER;
45383           }
45384 #line 45385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45385     break;
45386 
45387   case 2507:
45388 #line 15546 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45389     {
45390             (yyval.with_clause)= Lex->curr_with_clause;
45391             Lex->curr_with_clause= Lex->curr_with_clause->pop();
45392           }
45393 #line 45394 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45394     break;
45395 
45396   case 2508:
45397 #line 15554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45398     { (yyval.num)= 0; }
45399 #line 45400 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45400     break;
45401 
45402   case 2509:
45403 #line 15555 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45404     { (yyval.num)= 1; }
45405 #line 45406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45406     break;
45407 
45408   case 2512:
45409 #line 15568 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45410     {
45411             (yyvsp[0].lex_str_list)= new List<LEX_CSTRING> (Lex->with_column_list);
45412             if (unlikely((yyvsp[0].lex_str_list) == NULL))
45413               MYSQL_YYABORT;
45414             Lex->with_column_list.empty();
45415           }
45416 #line 45417 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45417     break;
45418 
45419   case 2513:
45420 #line 15575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45421     {
45422             LEX *lex= thd->lex;
45423             const char *query_start= lex->sphead ? lex->sphead->m_tmp_query
45424                                                  : thd->query();
45425             const char *spec_start= (yyvsp[-2].kwd).pos() + 1;
45426             With_element *elem= new With_element((yyvsp[-6].with_element_head), *(yyvsp[-5].lex_str_list), (yyvsp[-1].select_lex_unit));
45427 	    if (elem == NULL || Lex->curr_with_clause->add_with_element(elem))
45428 	      MYSQL_YYABORT;
45429             if (elem->set_unparsed_spec(thd, spec_start, (yyvsp[0].kwd).pos(),
45430                                         spec_start - query_start))
45431               MYSQL_YYABORT;
45432             elem->set_tables_end_pos(lex->query_tables_last);
45433 	  }
45434 #line 45435 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45435     break;
45436 
45437   case 2514:
45438 #line 15593 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45439     { (yyval.lex_str_list)= NULL; }
45440 #line 45441 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45441     break;
45442 
45443   case 2515:
45444 #line 15595 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45445     { (yyval.lex_str_list)= NULL; }
45446 #line 45447 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45447     break;
45448 
45449   case 2516:
45450 #line 15601 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45451     {
45452             Lex->with_column_list.push_back((LEX_CSTRING*)
45453                     thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING)));
45454 	  }
45455 #line 45456 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45456     break;
45457 
45458   case 2517:
45459 #line 15606 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45460     {
45461             Lex->with_column_list.push_back((LEX_CSTRING*)
45462                     thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING)));
45463           }
45464 #line 45465 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45465     break;
45466 
45467   case 2518:
45468 #line 15615 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45469     {
45470             LEX_CSTRING *name=
45471               (LEX_CSTRING *) thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING));
45472             (yyval.with_element_head)= new (thd->mem_root) With_element_head(name);
45473             if (unlikely(name == NULL || (yyval.with_element_head) == NULL))
45474               MYSQL_YYABORT;
45475             (yyval.with_element_head)->tables_pos.set_start_pos(Lex->query_tables_last);
45476           }
45477 #line 45478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45478     break;
45479 
45480   case 2519:
45481 #line 15632 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45482     { (yyval.item)=(yyvsp[0].item); }
45483 #line 45484 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45484     break;
45485 
45486   case 2520:
45487 #line 15633 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45488     { (yyval.item)=(yyvsp[0].item); }
45489 #line 45490 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45490     break;
45491 
45492   case 2521:
45493 #line 15638 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45494     {
45495             if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-2].ident_sys)))))
45496               MYSQL_YYABORT;
45497           }
45498 #line 45499 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45499     break;
45500 
45501   case 2522:
45502 #line 15643 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45503     {
45504             if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys)))))
45505               MYSQL_YYABORT;
45506           }
45507 #line 45508 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45508     break;
45509 
45510   case 2523:
45511 #line 15651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45512     {
45513             if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-2].ident_cli)))))
45514               MYSQL_YYABORT;
45515           }
45516 #line 45517 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45517     break;
45518 
45519   case 2524:
45520 #line 15656 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45521     {
45522             if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-4].ident_cli), &(yyvsp[-2].ident_cli)))))
45523               MYSQL_YYABORT;
45524           }
45525 #line 45526 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45526     break;
45527 
45528   case 2525:
45529 #line 15663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45530     { (yyval.item)=(yyvsp[0].item); }
45531 #line 45532 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45532     break;
45533 
45534   case 2526:
45535 #line 15669 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45536     {
45537             if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[0].ident_cli)))))
45538               MYSQL_YYABORT;
45539           }
45540 #line 45541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45541     break;
45542 
45543   case 2527:
45544 #line 15674 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45545     {
45546             if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
45547               MYSQL_YYABORT;
45548           }
45549 #line 45550 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45550     break;
45551 
45552   case 2528:
45553 #line 15679 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45554     {
45555             Lex_ident_cli empty((yyvsp[-2].ident_cli).pos(), 0);
45556             if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &empty, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
45557               MYSQL_YYABORT;
45558           }
45559 #line 45560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45560     break;
45561 
45562   case 2529:
45563 #line 15685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45564     {
45565             if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[-4].ident_cli), &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
45566               MYSQL_YYABORT;
45567           }
45568 #line 45569 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45569     break;
45570 
45571   case 2530:
45572 #line 15690 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45573     {
45574             if (unlikely(!((yyval.item)= Lex->make_item_colon_ident_ident(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
45575               MYSQL_YYABORT;
45576           }
45577 #line 45578 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45578     break;
45579 
45580   case 2531:
45581 #line 15698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45582     {
45583             if (unlikely(!((yyval.item)= Lex->create_item_ident_nosp(thd, &(yyvsp[0].ident_sys)))))
45584               MYSQL_YYABORT;
45585           }
45586 #line 45587 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45587     break;
45588 
45589   case 2532:
45590 #line 15703 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45591     {
45592             if (unlikely(!((yyval.item)= Lex->create_item_ident_nospvar(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
45593               MYSQL_YYABORT;
45594           }
45595 #line 45596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45596     break;
45597 
45598   case 2533:
45599 #line 15708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45600     {
45601             if (unlikely(!((yyval.item)= Lex->make_item_colon_ident_ident(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
45602               MYSQL_YYABORT;
45603           }
45604 #line 45605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45605     break;
45606 
45607   case 2534:
45608 #line 15713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45609     {
45610             Lex_ident_sys none;
45611             if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &none, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
45612               MYSQL_YYABORT;
45613           }
45614 #line 45615 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45615     break;
45616 
45617   case 2535:
45618 #line 15719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45619     {
45620             if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
45621               MYSQL_YYABORT;
45622           }
45623 #line 45624 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45624     break;
45625 
45626   case 2536:
45627 #line 15726 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45628     { (yyval.lex_str)=(yyvsp[0].ident_sys);}
45629 #line 45630 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45630     break;
45631 
45632   case 2537:
45633 #line 15728 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45634     {
45635             TABLE_LIST *table= Select->table_list.first;
45636             if (unlikely(my_strcasecmp(table_alias_charset, (yyvsp[-4].ident_sys).str,
45637                                        table->db.str)))
45638               my_yyabort_error((ER_WRONG_DB_NAME, MYF(0), (yyvsp[-4].ident_sys).str));
45639             if (unlikely(my_strcasecmp(table_alias_charset, (yyvsp[-2].ident_sys).str,
45640                                        table->table_name.str)))
45641               my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].ident_sys).str));
45642             (yyval.lex_str)=(yyvsp[0].ident_sys);
45643           }
45644 #line 45645 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45645     break;
45646 
45647   case 2538:
45648 #line 15739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45649     {
45650             TABLE_LIST *table= Select->table_list.first;
45651             if (unlikely(my_strcasecmp(table_alias_charset, (yyvsp[-2].ident_sys).str,
45652                          table->alias.str)))
45653               my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].ident_sys).str));
45654             (yyval.lex_str)=(yyvsp[0].ident_sys);
45655           }
45656 #line 45657 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45657     break;
45658 
45659   case 2539:
45660 #line 15746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45661     { (yyval.lex_str)=(yyvsp[0].ident_sys);}
45662 #line 45663 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45663     break;
45664 
45665   case 2540:
45666 #line 15751 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45667     {
45668             (yyval.table)= new (thd->mem_root) Table_ident(&(yyvsp[0].ident_sys));
45669             if (unlikely((yyval.table) == NULL))
45670               MYSQL_YYABORT;
45671           }
45672 #line 45673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45673     break;
45674 
45675   case 2541:
45676 #line 15757 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45677     {
45678             (yyval.table)= new (thd->mem_root) Table_ident(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys), 0);
45679             if (unlikely((yyval.table) == NULL))
45680               MYSQL_YYABORT;
45681           }
45682 #line 45683 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45683     break;
45684 
45685   case 2542:
45686 #line 15763 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45687     {
45688             /* For Delphi */
45689             (yyval.table)= new (thd->mem_root) Table_ident(&(yyvsp[0].ident_sys));
45690             if (unlikely((yyval.table) == NULL))
45691               MYSQL_YYABORT;
45692           }
45693 #line 45694 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45694     break;
45695 
45696   case 2543:
45697 #line 15773 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45698     {
45699             (yyval.table)= new (thd->mem_root) Table_ident(&(yyvsp[-1].ident_sys));
45700             if (unlikely((yyval.table) == NULL))
45701               MYSQL_YYABORT;
45702           }
45703 #line 45704 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45704     break;
45705 
45706   case 2544:
45707 #line 15779 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45708     {
45709             (yyval.table)= new (thd->mem_root) Table_ident(thd, &(yyvsp[-3].ident_sys), &(yyvsp[-1].ident_sys), 0);
45710             if (unlikely((yyval.table) == NULL))
45711               MYSQL_YYABORT;
45712           }
45713 #line 45714 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45714     break;
45715 
45716   case 2545:
45717 #line 15788 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45718     {
45719             LEX_CSTRING db={(char*) any_db,3};
45720             (yyval.table)= new (thd->mem_root) Table_ident(thd, &db, &(yyvsp[0].ident_sys), 0);
45721             if (unlikely((yyval.table) == NULL))
45722               MYSQL_YYABORT;
45723           }
45724 #line 45725 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45725     break;
45726 
45727   case 2550:
45728 #line 15804 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45729     { (yyval.ident_cli)= (yyvsp[0].kwd); }
45730 #line 45731 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45731     break;
45732 
45733   case 2551:
45734 #line 15809 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45735     {
45736             if (unlikely(thd->to_ident_sys_alloc(&(yyval.ident_sys), &(yyvsp[0].ident_cli))))
45737               MYSQL_YYABORT;
45738           }
45739 #line 45740 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45740     break;
45741 
45742   case 2552:
45743 #line 15817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45744     {
45745             if (thd->make_text_string_sys(&(yyval.lex_str), &(yyvsp[0].lex_string_with_metadata)))
45746               MYSQL_YYABORT;
45747           }
45748 #line 45749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45749     break;
45750 
45751   case 2553:
45752 #line 15825 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45753     {
45754             if (thd->make_text_string_connection(&(yyval.lex_str), &(yyvsp[0].lex_string_with_metadata)))
45755               MYSQL_YYABORT;
45756           }
45757 #line 45758 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45758     break;
45759 
45760   case 2554:
45761 #line 15833 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45762     {
45763             if (thd->make_text_string_filesystem(&(yyval.lex_str), &(yyvsp[0].lex_string_with_metadata)))
45764               MYSQL_YYABORT;
45765           }
45766 #line 45767 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45767     break;
45768 
45769   case 2556:
45770 #line 15842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45771     {
45772             if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
45773               MYSQL_YYABORT;
45774           }
45775 #line 45776 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45776     break;
45777 
45778   case 2558:
45779 #line 15851 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45780     {
45781             if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
45782               MYSQL_YYABORT;
45783           }
45784 #line 45785 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45785     break;
45786 
45787   case 2560:
45788 #line 15860 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45789     {
45790             if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
45791               MYSQL_YYABORT;
45792           }
45793 #line 45794 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45794     break;
45795 
45796   case 2561:
45797 #line 15865 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45798     {
45799             if (unlikely((yyval.ident_sys).copy_sys(thd, &(yyvsp[0].lex_str))))
45800               MYSQL_YYABORT;
45801           }
45802 #line 45803 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45803     break;
45804 
45805   case 2563:
45806 #line 15875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45807     {
45808             if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
45809               MYSQL_YYABORT;
45810           }
45811 #line 45812 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45812     break;
45813 
45814   case 2565:
45815 #line 15884 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45816     {
45817             if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
45818               MYSQL_YYABORT;
45819           }
45820 #line 45821 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45821     break;
45822 
45823   case 2566:
45824 #line 15891 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45825     { (yyval.lex_str)=(yyvsp[0].ident_sys);}
45826 #line 45827 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45827     break;
45828 
45829   case 2567:
45830 #line 15892 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45831     { (yyval.lex_str)=(yyvsp[0].lex_str);}
45832 #line 45833 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45833     break;
45834 
45835   case 2568:
45836 #line 15893 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45837     { (yyval.lex_str)=(yyvsp[0].lex_str);}
45838 #line 45839 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45839     break;
45840 
45841   case 2569:
45842 #line 15898 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45843     {
45844             if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
45845               MYSQL_YYABORT;
45846             (yyval.lex_user)->user = (yyvsp[0].lex_str);
45847 
45848             if (unlikely(check_string_char_length(&(yyval.lex_user)->user, ER_USERNAME,
45849                                                   username_char_length,
45850                                                   system_charset_info, 0)))
45851               MYSQL_YYABORT;
45852           }
45853 #line 45854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45854     break;
45855 
45856   case 2570:
45857 #line 15909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45858     {
45859             if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
45860               MYSQL_YYABORT;
45861             (yyval.lex_user)->user = (yyvsp[-2].lex_str); (yyval.lex_user)->host=(yyvsp[0].lex_str);
45862 
45863             if (unlikely(check_string_char_length(&(yyval.lex_user)->user, ER_USERNAME,
45864                                                   username_char_length,
45865                                                  system_charset_info, 0)) ||
45866                 unlikely(check_host_name(&(yyval.lex_user)->host)))
45867               MYSQL_YYABORT;
45868             if ((yyval.lex_user)->host.str[0])
45869             {
45870               /*
45871                 Convert hostname part of username to lowercase.
45872                 It's OK to use in-place lowercase as long as
45873                 the character set is utf8.
45874               */
45875               my_casedn_str(system_charset_info, (char*) (yyval.lex_user)->host.str);
45876             }
45877             else
45878             {
45879               /*
45880                 fix historical undocumented convention that empty host is the
45881                 same as '%'
45882               */
45883               (yyval.lex_user)->host= host_not_specified;
45884             }
45885           }
45886 #line 45887 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45887     break;
45888 
45889   case 2571:
45890 #line 15938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45891     {
45892             if (unlikely(!((yyval.lex_user)=(LEX_USER*)thd->calloc(sizeof(LEX_USER)))))
45893               MYSQL_YYABORT;
45894             (yyval.lex_user)->user= current_user;
45895             (yyval.lex_user)->auth= new (thd->mem_root) USER_AUTH();
45896           }
45897 #line 45898 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45898     break;
45899 
45900   case 2574:
45901 #line 15949 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45902     {
45903            if ((yyvsp[0].lex_user)->user.str != current_user.str && (yyvsp[0].lex_user)->host.str == 0)
45904              (yyvsp[0].lex_user)->host= host_not_specified;
45905            (yyval.lex_user)= (yyvsp[0].lex_user);
45906          }
45907 #line 45908 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45908     break;
45909 
45910   case 3052:
45911 #line 16559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45912     {
45913             LEX *lex=Lex;
45914             if (lex->main_select_push(true))
45915               MYSQL_YYABORT;
45916             lex->set_stmt_init();
45917             lex->var_list.empty();
45918             if (sp_create_assignment_lex(thd, yychar == YYEMPTY))
45919               MYSQL_YYABORT;
45920           }
45921 #line 45922 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45922     break;
45923 
45924   case 3053:
45925 #line 16569 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45926     {
45927             Lex->pop_select(); //main select
45928             if (Lex->check_main_unit_semantics())
45929               MYSQL_YYABORT;
45930           }
45931 #line 45932 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45932     break;
45933 
45934   case 3054:
45935 #line 16575 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45936     {
45937             if (Lex->main_select_push())
45938               MYSQL_YYABORT;
45939             Lex->set_stmt_init();
45940           }
45941 #line 45942 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45942     break;
45943 
45944   case 3055:
45945 #line 16581 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45946     {
45947             LEX *lex= Lex;
45948             if (unlikely(lex->table_or_sp_used()))
45949               my_yyabort_error((ER_SUBQUERIES_NOT_SUPPORTED, MYF(0), "SET STATEMENT"));
45950             lex->stmt_var_list= lex->var_list;
45951             lex->var_list.empty();
45952             Lex->pop_select(); //main select
45953             if (Lex->check_main_unit_semantics())
45954               MYSQL_YYABORT;
45955           }
45956 #line 45957 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45957     break;
45958 
45959   case 3056:
45960 #line 16592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45961     {}
45962 #line 45963 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45963     break;
45964 
45965   case 3059:
45966 #line 16608 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45967     {
45968             if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
45969               MYSQL_YYABORT;
45970           }
45971 #line 45972 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45972     break;
45973 
45974   case 3061:
45975 #line 16614 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45976     {
45977             Lex->option_type= OPT_DEFAULT;
45978           }
45979 #line 45980 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45980     break;
45981 
45982   case 3062:
45983 #line 16618 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45984     {
45985             if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
45986               MYSQL_YYABORT;
45987           }
45988 #line 45989 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45989     break;
45990 
45991   case 3063:
45992 #line 16623 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
45993     {
45994             Lex->option_type= (yyvsp[0].var_type);
45995           }
45996 #line 45997 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
45997     break;
45998 
45999   case 3065:
46000 #line 16633 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46001     {
46002             if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
46003               MYSQL_YYABORT;
46004           }
46005 #line 46006 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46006     break;
46007 
46008   case 3067:
46009 #line 16639 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46010     {
46011             if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
46012               MYSQL_YYABORT;
46013           }
46014 #line 46015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46015     break;
46016 
46017   case 3070:
46018 #line 16653 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46019     {
46020             if (sp_create_assignment_lex(thd, yychar == YYEMPTY))
46021               MYSQL_YYABORT;
46022           }
46023 #line 46024 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46024     break;
46025 
46026   case 3071:
46027 #line 16658 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46028     {
46029             if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
46030               MYSQL_YYABORT;
46031           }
46032 #line 46033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46033     break;
46034 
46035   case 3072:
46036 #line 16663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46037     {
46038             if (sp_create_assignment_lex(thd, yychar == YYEMPTY))
46039               MYSQL_YYABORT;
46040           }
46041 #line 46042 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46042     break;
46043 
46044   case 3073:
46045 #line 16668 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46046     {
46047             if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
46048               MYSQL_YYABORT;
46049           }
46050 #line 46051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46051     break;
46052 
46053   case 3074:
46054 #line 16677 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46055     {
46056             Lex->option_type= (yyvsp[0].var_type);
46057           }
46058 #line 46059 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46059     break;
46060 
46061   case 3077:
46062 #line 16685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46063     { (yyval.var_type)=OPT_GLOBAL; }
46064 #line 46065 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46065     break;
46066 
46067   case 3078:
46068 #line 16686 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46069     { (yyval.var_type)=OPT_SESSION; }
46070 #line 46071 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46071     break;
46072 
46073   case 3079:
46074 #line 16687 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46075     { (yyval.var_type)=OPT_SESSION; }
46076 #line 46077 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46077     break;
46078 
46079   case 3080:
46080 #line 16691 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46081     { (yyval.var_type)=OPT_SESSION; }
46082 #line 46083 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46083     break;
46084 
46085   case 3081:
46086 #line 16692 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46087     { (yyval.var_type)=OPT_GLOBAL; }
46088 #line 46089 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46089     break;
46090 
46091   case 3082:
46092 #line 16693 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46093     { (yyval.var_type)=OPT_SESSION; }
46094 #line 46095 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46095     break;
46096 
46097   case 3083:
46098 #line 16694 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46099     { (yyval.var_type)=OPT_SESSION; }
46100 #line 46101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46101     break;
46102 
46103   case 3084:
46104 #line 16698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46105     { (yyval.var_type)=OPT_DEFAULT; }
46106 #line 46107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46107     break;
46108 
46109   case 3085:
46110 #line 16699 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46111     { (yyval.var_type)=OPT_GLOBAL; }
46112 #line 46113 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46113     break;
46114 
46115   case 3086:
46116 #line 16700 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46117     { (yyval.var_type)=OPT_SESSION; }
46118 #line 46119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46119     break;
46120 
46121   case 3087:
46122 #line 16701 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46123     { (yyval.var_type)=OPT_SESSION; }
46124 #line 46125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46125     break;
46126 
46127   case 3088:
46128 #line 16707 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46129     {
46130             if (unlikely(Lex->set_system_variable(Lex->option_type, &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46131               MYSQL_YYABORT;
46132           }
46133 #line 46134 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46134     break;
46135 
46136   case 3089:
46137 #line 16712 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46138     {
46139             if (unlikely(Lex->set_system_variable(thd, Lex->option_type, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46140               MYSQL_YYABORT;
46141           }
46142 #line 46143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46143     break;
46144 
46145   case 3090:
46146 #line 16717 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46147     {
46148             if (unlikely(Lex->set_default_system_variable(Lex->option_type, &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46149               MYSQL_YYABORT;
46150           }
46151 #line 46152 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46152     break;
46153 
46154   case 3091:
46155 #line 16726 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46156     {
46157             if (unlikely(Lex->set_variable(&(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46158               MYSQL_YYABORT;
46159           }
46160 #line 46161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46161     break;
46162 
46163   case 3092:
46164 #line 16731 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46165     {
46166             if (unlikely(Lex->set_variable(&(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46167               MYSQL_YYABORT;
46168           }
46169 #line 46170 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46170     break;
46171 
46172   case 3093:
46173 #line 16736 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46174     {
46175             if (unlikely(Lex->set_default_system_variable(Lex->option_type, &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46176               MYSQL_YYABORT;
46177           }
46178 #line 46179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46179     break;
46180 
46181   case 3094:
46182 #line 16741 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46183     {
46184             if (unlikely(Lex->set_user_variable(thd, &(yyvsp[-2].lex_str), (yyvsp[0].item))))
46185               MYSQL_YYABORT;
46186           }
46187 #line 46188 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46188     break;
46189 
46190   case 3095:
46191 #line 16746 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46192     {
46193             if (unlikely(Lex->set_system_variable((yyvsp[-3].var_type), &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46194               MYSQL_YYABORT;
46195           }
46196 #line 46197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46197     break;
46198 
46199   case 3096:
46200 #line 16751 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46201     {
46202             if (unlikely(Lex->set_system_variable(thd, (yyvsp[-5].var_type), &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46203               MYSQL_YYABORT;
46204           }
46205 #line 46206 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46206     break;
46207 
46208   case 3097:
46209 #line 16756 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46210     {
46211             if (unlikely(Lex->set_default_system_variable((yyvsp[-5].var_type), &(yyvsp[-2].ident_sys), (yyvsp[0].item))))
46212               MYSQL_YYABORT;
46213           }
46214 #line 46215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46215     break;
46216 
46217   case 3098:
46218 #line 16761 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46219     {
46220             LEX *lex= thd->lex;
46221             CHARSET_INFO *cs2;
46222             cs2= (yyvsp[0].charset) ? (yyvsp[0].charset): global_system_variables.character_set_client;
46223             set_var_collation_client *var;
46224             var= (new (thd->mem_root)
46225                   set_var_collation_client(cs2,
46226                                            thd->variables.collation_database,
46227                                             cs2));
46228             if (unlikely(var == NULL))
46229               MYSQL_YYABORT;
46230             lex->var_list.push_back(var, thd->mem_root);
46231           }
46232 #line 46233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46233     break;
46234 
46235   case 3099:
46236 #line 16775 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46237     {
46238             LEX *lex= Lex;
46239             sp_pcontext *spc= lex->spcont;
46240             LEX_CSTRING names= { STRING_WITH_LEN("names") };
46241             if (unlikely(spc && spc->find_variable(&names, false)))
46242               my_error(ER_SP_BAD_VAR_SHADOW, MYF(0), names.str);
46243             else
46244               thd->parse_error();
46245             MYSQL_YYABORT;
46246           }
46247 #line 46248 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46248     break;
46249 
46250   case 3100:
46251 #line 16786 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46252     {
46253             LEX *lex= Lex;
46254             CHARSET_INFO *cs2;
46255             CHARSET_INFO *cs3;
46256             cs2= (yyvsp[-1].charset) ? (yyvsp[-1].charset) : global_system_variables.character_set_client;
46257             cs3= (yyvsp[0].charset) ? (yyvsp[0].charset) : cs2;
46258             if (unlikely(!my_charset_same(cs2, cs3)))
46259             {
46260               my_error(ER_COLLATION_CHARSET_MISMATCH, MYF(0),
46261                        cs3->name, cs2->csname);
46262               MYSQL_YYABORT;
46263             }
46264             set_var_collation_client *var;
46265             var= new (thd->mem_root) set_var_collation_client(cs3, cs3, cs3);
46266             if (unlikely(var == NULL) ||
46267                 unlikely(lex->var_list.push_back(var, thd->mem_root)))
46268               MYSQL_YYABORT;
46269           }
46270 #line 46271 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46271     break;
46272 
46273   case 3101:
46274 #line 16805 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46275     {
46276             LEX *lex = Lex;
46277             LEX_USER *user;
46278             if (unlikely(!(user=(LEX_USER *) thd->calloc(sizeof(LEX_USER)))))
46279               MYSQL_YYABORT;
46280             user->user= current_user;
46281             set_var_default_role *var= (new (thd->mem_root)
46282                                         set_var_default_role(user,
46283                                                              (yyvsp[0].lex_user)->user));
46284             if (unlikely(var == NULL) ||
46285                 unlikely(lex->var_list.push_back(var, thd->mem_root)))
46286               MYSQL_YYABORT;
46287 
46288             thd->lex->autocommit= TRUE;
46289             if (lex->sphead)
46290               lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
46291           }
46292 #line 46293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46293     break;
46294 
46295   case 3102:
46296 #line 16823 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46297     {
46298             LEX *lex = Lex;
46299             set_var_default_role *var= (new (thd->mem_root)
46300                                         set_var_default_role((yyvsp[0].lex_user), (yyvsp[-2].lex_user)->user));
46301             if (unlikely(var == NULL) ||
46302                 unlikely(lex->var_list.push_back(var, thd->mem_root)))
46303               MYSQL_YYABORT;
46304             thd->lex->autocommit= TRUE;
46305             if (lex->sphead)
46306               lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
46307           }
46308 #line 46309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46309     break;
46310 
46311   case 3103:
46312 #line 16835 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46313     {
46314             LEX *lex = Lex;
46315             set_var_role *var= new (thd->mem_root) set_var_role((yyvsp[0].lex_str));
46316             if (unlikely(var == NULL) ||
46317                 unlikely(lex->var_list.push_back(var, thd->mem_root)))
46318               MYSQL_YYABORT;
46319           }
46320 #line 46321 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46321     break;
46322 
46323   case 3104:
46324 #line 16843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46325     {
46326             if (unlikely(Lex->set_variable(&(yyvsp[-2].kwd), (yyvsp[0].item))))
46327               MYSQL_YYABORT;
46328           }
46329 #line 46330 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46330     break;
46331 
46332   case 3105:
46333 #line 16848 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46334     {
46335             LEX *lex = Lex;
46336             set_var_password *var= (new (thd->mem_root)
46337                                     set_var_password(lex->definer));
46338             if (unlikely(var == NULL) ||
46339                 unlikely(lex->var_list.push_back(var, thd->mem_root)))
46340               MYSQL_YYABORT;
46341             lex->autocommit= TRUE;
46342             if (lex->sphead)
46343               lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
46344           }
46345 #line 46346 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46346     break;
46347 
46348   case 3110:
46349 #line 16871 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46350     {
46351             LEX *lex=Lex;
46352             Item *item= new (thd->mem_root) Item_int(thd, (int32) (yyvsp[0].num));
46353             if (unlikely(item == NULL))
46354               MYSQL_YYABORT;
46355             set_var *var= (new (thd->mem_root)
46356                            set_var(thd, lex->option_type,
46357                                    find_sys_var(thd, "tx_read_only"),
46358                                    &null_clex_str,
46359                                    item));
46360             if (unlikely(var == NULL))
46361               MYSQL_YYABORT;
46362             if (unlikely(lex->var_list.push_back(var, thd->mem_root)))
46363               MYSQL_YYABORT;
46364           }
46365 #line 46366 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46366     break;
46367 
46368   case 3111:
46369 #line 16890 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46370     {
46371             LEX *lex=Lex;
46372             Item *item= new (thd->mem_root) Item_int(thd, (int32) (yyvsp[0].tx_isolation));
46373             if (unlikely(item == NULL))
46374               MYSQL_YYABORT;
46375             set_var *var= (new (thd->mem_root)
46376                            set_var(thd, lex->option_type,
46377                                    find_sys_var(thd, "tx_isolation"),
46378                                    &null_clex_str,
46379                                    item));
46380             if (unlikely(var == NULL) ||
46381                 unlikely(lex->var_list.push_back(var, thd->mem_root)))
46382               MYSQL_YYABORT;
46383           }
46384 #line 46385 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46385     break;
46386 
46387   case 3112:
46388 #line 16907 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46389     { (yyval.num)= true; }
46390 #line 46391 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46391     break;
46392 
46393   case 3113:
46394 #line 16908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46395     { (yyval.num)= false; }
46396 #line 46397 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46397     break;
46398 
46399   case 3114:
46400 #line 16912 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46401     { (yyval.tx_isolation)= ISO_READ_UNCOMMITTED; }
46402 #line 46403 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46403     break;
46404 
46405   case 3115:
46406 #line 16913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46407     { (yyval.tx_isolation)= ISO_READ_COMMITTED; }
46408 #line 46409 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46409     break;
46410 
46411   case 3116:
46412 #line 16914 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46413     { (yyval.tx_isolation)= ISO_REPEATABLE_READ; }
46414 #line 46415 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46415     break;
46416 
46417   case 3117:
46418 #line 16915 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46419     { (yyval.tx_isolation)= ISO_SERIALIZABLE; }
46420 #line 46421 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46421     break;
46422 
46423   case 3118:
46424 #line 16920 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46425     {
46426             LEX *lex= thd->lex;
46427             sp_pcontext *spc= lex->spcont;
46428             LEX_CSTRING pw= { STRING_WITH_LEN("password") };
46429 
46430             if (unlikely(spc && spc->find_variable(&pw, false)))
46431               my_yyabort_error((ER_SP_BAD_VAR_SHADOW, MYF(0), pw.str));
46432             if (unlikely(!(lex->definer= (LEX_USER*)
46433                            thd->calloc(sizeof(LEX_USER)))))
46434               MYSQL_YYABORT;
46435             lex->definer->user= current_user;
46436             lex->definer->auth= new (thd->mem_root) USER_AUTH();
46437           }
46438 #line 46439 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46439     break;
46440 
46441   case 3119:
46442 #line 16933 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46443     { Lex->definer= (yyvsp[-1].lex_user); }
46444 #line 46445 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46445     break;
46446 
46447   case 3120:
46448 #line 16938 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46449     {
46450             Lex->definer->auth= new (thd->mem_root) USER_AUTH();
46451             Lex->definer->auth->auth_str= (yyvsp[0].lex_string_with_metadata);
46452           }
46453 #line 46454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46454     break;
46455 
46456   case 3121:
46457 #line 16943 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46458     {
46459             Lex->definer->auth= new (thd->mem_root) USER_AUTH();
46460             Lex->definer->auth->pwtext= (yyvsp[-1].lex_string_with_metadata);
46461           }
46462 #line 46463 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46463     break;
46464 
46465   case 3122:
46466 #line 16948 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46467     {
46468             Lex->definer->auth= new (thd->mem_root) USER_AUTH();
46469             Lex->definer->auth->pwtext= (yyvsp[-1].lex_string_with_metadata);
46470             Lex->definer->auth->auth_str.str= Item_func_password::alloc(thd,
46471                                    (yyvsp[-1].lex_string_with_metadata).str, (yyvsp[-1].lex_string_with_metadata).length, Item_func_password::OLD);
46472             Lex->definer->auth->auth_str.length=  SCRAMBLED_PASSWORD_CHAR_LENGTH_323;
46473           }
46474 #line 46475 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46475     break;
46476 
46477   case 3123:
46478 #line 16958 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46479     { (yyval.item)=(yyvsp[0].item); }
46480 #line 46481 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46481     break;
46482 
46483   case 3124:
46484 #line 16959 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46485     { (yyval.item)=0; }
46486 #line 46487 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46487     break;
46488 
46489   case 3125:
46490 #line 16961 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46491     {
46492             (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "ON",  2);
46493             if (unlikely((yyval.item) == NULL))
46494               MYSQL_YYABORT;
46495           }
46496 #line 46497 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46497     break;
46498 
46499   case 3126:
46500 #line 16967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46501     {
46502             (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "ALL", 3);
46503             if (unlikely((yyval.item) == NULL))
46504               MYSQL_YYABORT;
46505           }
46506 #line 46507 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46507     break;
46508 
46509   case 3127:
46510 #line 16973 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46511     {
46512             (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "binary", 6);
46513             if (unlikely((yyval.item) == NULL))
46514               MYSQL_YYABORT;
46515           }
46516 #line 46517 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46517     break;
46518 
46519   case 3128:
46520 #line 16984 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46521     {
46522             LEX *lex= Lex;
46523 
46524             if (unlikely(lex->sphead))
46525               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "LOCK"));
46526             lex->sql_command= SQLCOM_LOCK_TABLES;
46527           }
46528 #line 46529 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46529     break;
46530 
46531   case 3129:
46532 #line 16992 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46533     {}
46534 #line 46535 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46535     break;
46536 
46537   case 3130:
46538 #line 16997 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46539     {}
46540 #line 46541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46541     break;
46542 
46543   case 3131:
46544 #line 16999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46545     {
46546           if (unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("lock_wait_timeout"), (yyvsp[0].ulong_num))) ||
46547               unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("innodb_lock_wait_timeout"), (yyvsp[0].ulong_num))))
46548             MYSQL_YYABORT;
46549         }
46550 #line 46551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46551     break;
46552 
46553   case 3132:
46554 #line 17005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46555     {
46556           if (unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("lock_wait_timeout"), 0)) ||
46557               unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("innodb_lock_wait_timeout"), 0)))
46558             MYSQL_YYABORT;
46559         }
46560 #line 46561 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46561     break;
46562 
46563   case 3133:
46564 #line 17013 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46565     { }
46566 #line 46567 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46567     break;
46568 
46569   case 3134:
46570 #line 17014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46571     { }
46572 #line 46573 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46573     break;
46574 
46575   case 3137:
46576 #line 17024 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46577     {
46578             thr_lock_type lock_type= (thr_lock_type) (yyvsp[0].num);
46579             bool lock_for_write= (lock_type >= TL_WRITE_ALLOW_WRITE);
46580             ulong table_options= lock_for_write ? TL_OPTION_UPDATING : 0;
46581             enum_mdl_type mdl_type= !lock_for_write
46582                                     ? MDL_SHARED_READ
46583                                     : lock_type == TL_WRITE_CONCURRENT_INSERT
46584                                       ? MDL_SHARED_WRITE
46585                                       : MDL_SHARED_NO_READ_WRITE;
46586 
46587             if (unlikely(!Lex->current_select_or_default()->
46588                          add_table_to_list(thd, (yyvsp[-2].table), (yyvsp[-1].lex_str_ptr), table_options,
46589                                            lock_type, mdl_type)))
46590               MYSQL_YYABORT;
46591           }
46592 #line 46593 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46593     break;
46594 
46595   case 3138:
46596 #line 17042 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46597     { (yyval.num)= TL_READ_NO_INSERT; }
46598 #line 46599 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46599     break;
46600 
46601   case 3139:
46602 #line 17043 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46603     { (yyval.num)= TL_WRITE_DEFAULT; }
46604 #line 46605 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46605     break;
46606 
46607   case 3140:
46608 #line 17045 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46609     {
46610             (yyval.num)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
46611           }
46612 #line 46613 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46613     break;
46614 
46615   case 3141:
46616 #line 17049 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46617     { (yyval.num)= TL_WRITE_LOW_PRIORITY; }
46618 #line 46619 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46619     break;
46620 
46621   case 3142:
46622 #line 17050 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46623     { (yyval.num)= TL_READ; }
46624 #line 46625 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46625     break;
46626 
46627   case 3143:
46628 #line 17055 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46629     {
46630             LEX *lex= Lex;
46631 
46632             if (unlikely(lex->sphead))
46633               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "UNLOCK"));
46634             lex->sql_command= SQLCOM_UNLOCK_TABLES;
46635           }
46636 #line 46637 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46637     break;
46638 
46639   case 3144:
46640 #line 17063 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46641     {}
46642 #line 46643 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46643     break;
46644 
46645   case 3145:
46646 #line 17072 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46647     {
46648             if (Lex->main_select_push())
46649               MYSQL_YYABORT;
46650           }
46651 #line 46652 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46652     break;
46653 
46654   case 3146:
46655 #line 17077 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46656     {
46657             Lex->pop_select(); //main select
46658           }
46659 #line 46660 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46660     break;
46661 
46662   case 3147:
46663 #line 17084 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46664     {
46665             LEX *lex= Lex;
46666             if (unlikely(lex->sphead))
46667               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HANDLER"));
46668             lex->sql_command = SQLCOM_HA_OPEN;
46669             if (!lex->current_select->add_table_to_list(thd, (yyvsp[-2].table), (yyvsp[0].lex_str_ptr), 0))
46670               MYSQL_YYABORT;
46671           }
46672 #line 46673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46673     break;
46674 
46675   case 3148:
46676 #line 17093 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46677     {
46678             LEX *lex= Lex;
46679             if (unlikely(lex->sphead))
46680               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HANDLER"));
46681             lex->sql_command = SQLCOM_HA_CLOSE;
46682             if (!lex->current_select->add_table_to_list(thd, (yyvsp[-1].table), 0, 0))
46683               MYSQL_YYABORT;
46684           }
46685 #line 46686 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46686     break;
46687 
46688   case 3149:
46689 #line 17102 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46690     {
46691             LEX *lex=Lex;
46692             if (unlikely(lex->sphead))
46693               my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HANDLER"));
46694             lex->clause_that_disallows_subselect= "HANDLER..READ";
46695             lex->sql_command = SQLCOM_HA_READ;
46696             lex->ha_rkey_mode= HA_READ_KEY_EXACT; /* Avoid purify warnings */
46697             Item *one= new (thd->mem_root) Item_int(thd, (int32) 1);
46698             if (unlikely(one == NULL))
46699               MYSQL_YYABORT;
46700             lex->current_select->select_limit= one;
46701             lex->current_select->offset_limit= 0;
46702             lex->limit_rows_examined= 0;
46703             if (!lex->current_select->add_table_to_list(thd, (yyvsp[-1].table), 0, 0))
46704               MYSQL_YYABORT;
46705           }
46706 #line 46707 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46707     break;
46708 
46709   case 3150:
46710 #line 17119 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46711     {
46712             LEX *lex=Lex;
46713             lex->clause_that_disallows_subselect= NULL;
46714             if (!lex->current_select->explicit_limit)
46715             {
46716               Item *one= new (thd->mem_root) Item_int(thd, (int32) 1);
46717               if (one == NULL)
46718                 MYSQL_YYABORT;
46719               lex->current_select->select_limit= one;
46720               lex->current_select->offset_limit= 0;
46721               lex->limit_rows_examined= 0;
46722             }
46723             /* Stored functions are not supported for HANDLER READ. */
46724             if (lex->uses_stored_routines())
46725             {
46726               my_error(ER_NOT_SUPPORTED_YET, MYF(0),
46727                        "stored functions in HANDLER ... READ");
46728               MYSQL_YYABORT;
46729             }
46730           }
46731 #line 46732 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46732     break;
46733 
46734   case 3151:
46735 #line 17142 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46736     { Lex->ident= null_clex_str; }
46737 #line 46738 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46738     break;
46739 
46740   case 3152:
46741 #line 17143 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46742     { Lex->ident= (yyvsp[-1].ident_sys); }
46743 #line 46744 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46744     break;
46745 
46746   case 3153:
46747 #line 17147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46748     { Lex->ha_read_mode = RFIRST; }
46749 #line 46750 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46750     break;
46751 
46752   case 3154:
46753 #line 17148 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46754     { Lex->ha_read_mode = RNEXT;  }
46755 #line 46756 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46756     break;
46757 
46758   case 3155:
46759 #line 17152 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46760     { Lex->ha_read_mode = RFIRST; }
46761 #line 46762 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46762     break;
46763 
46764   case 3156:
46765 #line 17153 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46766     { Lex->ha_read_mode = RNEXT;  }
46767 #line 46768 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46768     break;
46769 
46770   case 3157:
46771 #line 17154 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46772     { Lex->ha_read_mode = RPREV;  }
46773 #line 46774 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46774     break;
46775 
46776   case 3158:
46777 #line 17155 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46778     { Lex->ha_read_mode = RLAST;  }
46779 #line 46780 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46780     break;
46781 
46782   case 3159:
46783 #line 17157 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46784     {
46785             LEX *lex=Lex;
46786             lex->ha_read_mode = RKEY;
46787             lex->ha_rkey_mode=(yyvsp[0].ha_rkey_mode);
46788             if (unlikely(!(lex->insert_list= new (thd->mem_root) List_item)))
46789               MYSQL_YYABORT;
46790           }
46791 #line 46792 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46792     break;
46793 
46794   case 3160:
46795 #line 17165 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46796     {}
46797 #line 46798 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46798     break;
46799 
46800   case 3161:
46801 #line 17169 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46802     { (yyval.ha_rkey_mode)=HA_READ_KEY_EXACT;   }
46803 #line 46804 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46804     break;
46805 
46806   case 3162:
46807 #line 17170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46808     { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_NEXT; }
46809 #line 46810 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46810     break;
46811 
46812   case 3163:
46813 #line 17171 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46814     { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_PREV; }
46815 #line 46816 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46816     break;
46817 
46818   case 3164:
46819 #line 17172 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46820     { (yyval.ha_rkey_mode)=HA_READ_AFTER_KEY;   }
46821 #line 46822 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46822     break;
46823 
46824   case 3165:
46825 #line 17173 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46826     { (yyval.ha_rkey_mode)=HA_READ_BEFORE_KEY;  }
46827 #line 46828 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46828     break;
46829 
46830   case 3166:
46831 #line 17180 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46832     {}
46833 #line 46834 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46834     break;
46835 
46836   case 3167:
46837 #line 17185 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46838     {
46839             LEX *lex= Lex;
46840             lex->sql_command= SQLCOM_REVOKE;
46841             lex->type= 0;
46842           }
46843 #line 46844 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46844     break;
46845 
46846   case 3168:
46847 #line 17191 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46848     {
46849             if (unlikely(Lex->add_grant_command(thd, SQLCOM_REVOKE,
46850                                                 TYPE_ENUM_FUNCTION)))
46851               MYSQL_YYABORT;
46852           }
46853 #line 46854 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46854     break;
46855 
46856   case 3169:
46857 #line 17197 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46858     {
46859             if (unlikely(Lex->add_grant_command(thd, SQLCOM_REVOKE,
46860                          TYPE_ENUM_PROCEDURE)))
46861               MYSQL_YYABORT;
46862           }
46863 #line 46864 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46864     break;
46865 
46866   case 3170:
46867 #line 17204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46868     {
46869             if (unlikely(Lex->add_grant_command(thd, SQLCOM_REVOKE,
46870                                                 TYPE_ENUM_PACKAGE)))
46871               MYSQL_YYABORT;
46872           }
46873 #line 46874 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46874     break;
46875 
46876   case 3171:
46877 #line 17211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46878     {
46879             if (unlikely(Lex->add_grant_command(thd, SQLCOM_REVOKE,
46880                                                 TYPE_ENUM_PACKAGE_BODY)))
46881               MYSQL_YYABORT;
46882           }
46883 #line 46884 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46884     break;
46885 
46886   case 3172:
46887 #line 17217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46888     {
46889             Lex->sql_command = SQLCOM_REVOKE_ALL;
46890           }
46891 #line 46892 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46892     break;
46893 
46894   case 3173:
46895 #line 17221 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46896     {
46897             LEX *lex= Lex;
46898             lex->users_list.push_front ((yyvsp[-2].lex_user));
46899             lex->sql_command= SQLCOM_REVOKE;
46900             lex->type= TYPE_ENUM_PROXY;
46901           }
46902 #line 46903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46903     break;
46904 
46905   case 3174:
46906 #line 17228 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46907     {
46908             Lex->sql_command= SQLCOM_REVOKE_ROLE;
46909             if (unlikely(Lex->users_list.push_front((yyvsp[-2].lex_user), thd->mem_root)))
46910               MYSQL_YYABORT;
46911           }
46912 #line 46913 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46913     break;
46914 
46915   case 3175:
46916 #line 17237 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46917     { Lex->with_admin_option= true; (yyval.lex_user)= (yyvsp[0].lex_user); }
46918 #line 46919 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46919     break;
46920 
46921   case 3176:
46922 #line 17239 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46923     { Lex->with_admin_option= false; (yyval.lex_user)= (yyvsp[0].lex_user); }
46924 #line 46925 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46925     break;
46926 
46927   case 3177:
46928 #line 17244 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46929     {}
46930 #line 46931 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46931     break;
46932 
46933   case 3178:
46934 #line 17250 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46935     {
46936             LEX *lex= Lex;
46937             lex->sql_command= SQLCOM_GRANT;
46938             lex->type= 0;
46939           }
46940 #line 46941 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46941     break;
46942 
46943   case 3179:
46944 #line 17257 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46945     {
46946             if (unlikely(Lex->add_grant_command(thd, SQLCOM_GRANT,
46947                                                 TYPE_ENUM_FUNCTION)))
46948               MYSQL_YYABORT;
46949           }
46950 #line 46951 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46951     break;
46952 
46953   case 3180:
46954 #line 17264 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46955     {
46956             if (unlikely(Lex->add_grant_command(thd, SQLCOM_GRANT,
46957                                                 TYPE_ENUM_PROCEDURE)))
46958               MYSQL_YYABORT;
46959           }
46960 #line 46961 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46961     break;
46962 
46963   case 3181:
46964 #line 17271 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46965     {
46966             if (unlikely(Lex->add_grant_command(thd, SQLCOM_GRANT,
46967                                                 TYPE_ENUM_PACKAGE)))
46968               MYSQL_YYABORT;
46969           }
46970 #line 46971 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46971     break;
46972 
46973   case 3182:
46974 #line 17278 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46975     {
46976             if (unlikely(Lex->add_grant_command(thd, SQLCOM_GRANT,
46977                                                 TYPE_ENUM_PACKAGE_BODY)))
46978               MYSQL_YYABORT;
46979           }
46980 #line 46981 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46981     break;
46982 
46983   case 3183:
46984 #line 17284 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46985     {
46986             LEX *lex= Lex;
46987             lex->users_list.push_front ((yyvsp[-3].lex_user));
46988             lex->sql_command= SQLCOM_GRANT;
46989             lex->type= TYPE_ENUM_PROXY;
46990           }
46991 #line 46992 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
46992     break;
46993 
46994   case 3184:
46995 #line 17291 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
46996     {
46997             LEX *lex= Lex;
46998             lex->sql_command= SQLCOM_GRANT_ROLE;
46999             /* The first role is the one that is granted */
47000             if (unlikely(Lex->users_list.push_front((yyvsp[-3].lex_user), thd->mem_root)))
47001               MYSQL_YYABORT;
47002           }
47003 #line 47004 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47004     break;
47005 
47006   case 3185:
47007 #line 17302 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47008     { Lex->definer = 0; }
47009 #line 47010 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47010     break;
47011 
47012   case 3186:
47013 #line 17303 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47014     { Lex->definer = (yyvsp[0].lex_user); }
47015 #line 47016 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47016     break;
47017 
47018   case 3187:
47019 #line 17307 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47020     { Lex->with_admin_option= false; }
47021 #line 47022 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47022     break;
47023 
47024   case 3188:
47025 #line 17308 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47026     { Lex->with_admin_option= true; }
47027 #line 47028 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47028     break;
47029 
47030   case 3189:
47031 #line 17313 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47032     {
47033             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47034               MYSQL_YYABORT;
47035           }
47036 #line 47037 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47037     break;
47038 
47039   case 3190:
47040 #line 17318 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47041     {
47042             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47043               MYSQL_YYABORT;
47044           }
47045 #line 47046 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47046     break;
47047 
47048   case 3191:
47049 #line 17326 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47050     {
47051             if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
47052               MYSQL_YYABORT;
47053             (yyval.lex_user)->user= current_role;
47054             (yyval.lex_user)->auth= NULL;
47055           }
47056 #line 47057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47057     break;
47058 
47059   case 3192:
47060 #line 17336 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47061     {
47062             CHARSET_INFO *cs= system_charset_info;
47063             /* trim end spaces (as they'll be lost in mysql.user anyway) */
47064             (yyvsp[0].lex_str).length= cs->cset->lengthsp(cs, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
47065             ((char*) (yyvsp[0].lex_str).str)[(yyvsp[0].lex_str).length] = '\0';
47066             if (unlikely((yyvsp[0].lex_str).length == 0))
47067               my_yyabort_error((ER_INVALID_ROLE, MYF(0), ""));
47068             if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(LEX_USER)))))
47069               MYSQL_YYABORT;
47070             (yyval.lex_user)->user= (yyvsp[0].lex_str);
47071             (yyval.lex_user)->host= empty_clex_str;
47072             (yyval.lex_user)->auth= NULL;
47073 
47074             if (unlikely(check_string_char_length(&(yyval.lex_user)->user, ER_USERNAME,
47075                                                   username_char_length,
47076                                                   cs, 0)))
47077               MYSQL_YYABORT;
47078           }
47079 #line 47080 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47080     break;
47081 
47082   case 3196:
47083 #line 17363 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47084     {}
47085 #line 47086 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47086     break;
47087 
47088   case 3197:
47089 #line 17365 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47090     {
47091             Lex->all_privileges= 1;
47092             Lex->grant= GLOBAL_ACLS;
47093           }
47094 #line 47095 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47095     break;
47096 
47097   case 3202:
47098 #line 17383 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47099     { Lex->which_columns = SELECT_ACL;}
47100 #line 47101 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47101     break;
47102 
47103   case 3203:
47104 #line 17384 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47105     {}
47106 #line 47107 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47107     break;
47108 
47109   case 3204:
47110 #line 17386 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47111     { Lex->which_columns = INSERT_ACL;}
47112 #line 47113 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47113     break;
47114 
47115   case 3205:
47116 #line 17387 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47117     {}
47118 #line 47119 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47119     break;
47120 
47121   case 3206:
47122 #line 17389 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47123     { Lex->which_columns = UPDATE_ACL; }
47124 #line 47125 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47125     break;
47126 
47127   case 3207:
47128 #line 17390 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47129     {}
47130 #line 47131 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47131     break;
47132 
47133   case 3208:
47134 #line 17392 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47135     { Lex->which_columns = REFERENCES_ACL;}
47136 #line 47137 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47137     break;
47138 
47139   case 3209:
47140 #line 17393 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47141     {}
47142 #line 47143 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47143     break;
47144 
47145   case 3210:
47146 #line 17394 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47147     { Lex->grant |= DELETE_ACL;}
47148 #line 47149 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47149     break;
47150 
47151   case 3211:
47152 #line 17395 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47153     {}
47154 #line 47155 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47155     break;
47156 
47157   case 3212:
47158 #line 17396 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47159     { Lex->grant |= INDEX_ACL;}
47160 #line 47161 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47161     break;
47162 
47163   case 3213:
47164 #line 17397 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47165     { Lex->grant |= ALTER_ACL;}
47166 #line 47167 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47167     break;
47168 
47169   case 3214:
47170 #line 17398 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47171     { Lex->grant |= CREATE_ACL;}
47172 #line 47173 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47173     break;
47174 
47175   case 3215:
47176 #line 17399 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47177     { Lex->grant |= DROP_ACL;}
47178 #line 47179 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47179     break;
47180 
47181   case 3216:
47182 #line 17400 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47183     { Lex->grant |= EXECUTE_ACL;}
47184 #line 47185 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47185     break;
47186 
47187   case 3217:
47188 #line 17401 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47189     { Lex->grant |= RELOAD_ACL;}
47190 #line 47191 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47191     break;
47192 
47193   case 3218:
47194 #line 17402 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47195     { Lex->grant |= SHUTDOWN_ACL;}
47196 #line 47197 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47197     break;
47198 
47199   case 3219:
47200 #line 17403 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47201     { Lex->grant |= PROCESS_ACL;}
47202 #line 47203 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47203     break;
47204 
47205   case 3220:
47206 #line 17404 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47207     { Lex->grant |= FILE_ACL;}
47208 #line 47209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47209     break;
47210 
47211   case 3221:
47212 #line 17405 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47213     { Lex->grant |= GRANT_ACL;}
47214 #line 47215 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47215     break;
47216 
47217   case 3222:
47218 #line 17406 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47219     { Lex->grant |= SHOW_DB_ACL;}
47220 #line 47221 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47221     break;
47222 
47223   case 3223:
47224 #line 17407 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47225     { Lex->grant |= SUPER_ACL;}
47226 #line 47227 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47227     break;
47228 
47229   case 3224:
47230 #line 17408 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47231     { Lex->grant |= CREATE_TMP_ACL;}
47232 #line 47233 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47233     break;
47234 
47235   case 3225:
47236 #line 17409 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47237     { Lex->grant |= LOCK_TABLES_ACL; }
47238 #line 47239 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47239     break;
47240 
47241   case 3226:
47242 #line 17410 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47243     { Lex->grant |= REPL_SLAVE_ACL; }
47244 #line 47245 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47245     break;
47246 
47247   case 3227:
47248 #line 17411 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47249     { Lex->grant |= REPL_CLIENT_ACL; }
47250 #line 47251 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47251     break;
47252 
47253   case 3228:
47254 #line 17412 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47255     { Lex->grant |= CREATE_VIEW_ACL; }
47256 #line 47257 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47257     break;
47258 
47259   case 3229:
47260 #line 17413 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47261     { Lex->grant |= SHOW_VIEW_ACL; }
47262 #line 47263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47263     break;
47264 
47265   case 3230:
47266 #line 17414 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47267     { Lex->grant |= CREATE_PROC_ACL; }
47268 #line 47269 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47269     break;
47270 
47271   case 3231:
47272 #line 17415 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47273     { Lex->grant |= ALTER_PROC_ACL; }
47274 #line 47275 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47275     break;
47276 
47277   case 3232:
47278 #line 17416 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47279     { Lex->grant |= CREATE_USER_ACL; }
47280 #line 47281 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47281     break;
47282 
47283   case 3233:
47284 #line 17417 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47285     { Lex->grant |= EVENT_ACL;}
47286 #line 47287 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47287     break;
47288 
47289   case 3234:
47290 #line 17418 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47291     { Lex->grant |= TRIGGER_ACL; }
47292 #line 47293 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47293     break;
47294 
47295   case 3235:
47296 #line 17419 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47297     { Lex->grant |= CREATE_TABLESPACE_ACL; }
47298 #line 47299 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47299     break;
47300 
47301   case 3236:
47302 #line 17420 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47303     { Lex->grant |= DELETE_HISTORY_ACL; }
47304 #line 47305 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47305     break;
47306 
47307   case 3237:
47308 #line 17424 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47309     {}
47310 #line 47311 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47311     break;
47312 
47313   case 3238:
47314 #line 17425 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47315     {}
47316 #line 47317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47317     break;
47318 
47319   case 3241:
47320 #line 17435 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47321     {
47322             LEX *lex=Lex;
47323             if (lex->account_options.x509_subject.str)
47324               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SUBJECT"));
47325             lex->account_options.x509_subject= (yyvsp[0].lex_string_with_metadata);
47326           }
47327 #line 47328 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47328     break;
47329 
47330   case 3242:
47331 #line 17442 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47332     {
47333             LEX *lex=Lex;
47334             if (lex->account_options.x509_issuer.str)
47335               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "ISSUER"));
47336             lex->account_options.x509_issuer= (yyvsp[0].lex_string_with_metadata);
47337           }
47338 #line 47339 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47339     break;
47340 
47341   case 3243:
47342 #line 17449 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47343     {
47344             LEX *lex=Lex;
47345             if (lex->account_options.ssl_cipher.str)
47346               my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CIPHER"));
47347             lex->account_options.ssl_cipher= (yyvsp[0].lex_string_with_metadata);
47348           }
47349 #line 47350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47350     break;
47351 
47352   case 3244:
47353 #line 17459 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47354     {
47355             LEX *lex= Lex;
47356             if (unlikely(lex->copy_db_to(&lex->first_select_lex()->db)))
47357               MYSQL_YYABORT;
47358             if (lex->grant == GLOBAL_ACLS)
47359               lex->grant = DB_ACLS & ~GRANT_ACL;
47360             else if (unlikely(lex->columns.elements))
47361               my_yyabort_error((ER_ILLEGAL_GRANT_FOR_TABLE, MYF(0)));
47362           }
47363 #line 47364 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47364     break;
47365 
47366   case 3245:
47367 #line 17469 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47368     {
47369             LEX *lex= Lex;
47370             lex->first_select_lex()->db= (yyvsp[-2].ident_sys);
47371             if (lex->grant == GLOBAL_ACLS)
47372               lex->grant = DB_ACLS & ~GRANT_ACL;
47373             else if (unlikely(lex->columns.elements))
47374               my_yyabort_error((ER_ILLEGAL_GRANT_FOR_TABLE, MYF(0)));
47375           }
47376 #line 47377 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47377     break;
47378 
47379   case 3246:
47380 #line 17478 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47381     {
47382             LEX *lex= Lex;
47383             lex->first_select_lex()->db= null_clex_str;
47384             if (lex->grant == GLOBAL_ACLS)
47385               lex->grant= GLOBAL_ACLS & ~GRANT_ACL;
47386             else if (unlikely(lex->columns.elements))
47387               my_yyabort_error((ER_ILLEGAL_GRANT_FOR_TABLE, MYF(0)));
47388           }
47389 #line 47390 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47390     break;
47391 
47392   case 3247:
47393 #line 17487 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47394     {
47395             LEX *lex=Lex;
47396             if (unlikely(!lex->first_select_lex()->
47397                          add_table_to_list(thd, (yyvsp[0].table),NULL,
47398                                            TL_OPTION_UPDATING)))
47399               MYSQL_YYABORT;
47400             if (lex->grant == GLOBAL_ACLS)
47401               lex->grant =  TABLE_ACLS & ~GRANT_ACL;
47402           }
47403 #line 47404 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47404     break;
47405 
47406   case 3248:
47407 #line 17500 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47408     {
47409             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47410               MYSQL_YYABORT;
47411           }
47412 #line 47413 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47413     break;
47414 
47415   case 3249:
47416 #line 17505 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47417     {
47418             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47419               MYSQL_YYABORT;
47420           }
47421 #line 47422 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47422     break;
47423 
47424   case 3250:
47425 #line 17513 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47426     {
47427             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47428               MYSQL_YYABORT;
47429           }
47430 #line 47431 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47431     break;
47432 
47433   case 3251:
47434 #line 17518 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47435     {
47436             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47437               MYSQL_YYABORT;
47438           }
47439 #line 47440 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47440     break;
47441 
47442   case 3252:
47443 #line 17526 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47444     {
47445             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47446               MYSQL_YYABORT;
47447           }
47448 #line 47449 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47449     break;
47450 
47451   case 3253:
47452 #line 17531 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47453     {
47454             if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
47455               MYSQL_YYABORT;
47456           }
47457 #line 47458 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47458     break;
47459 
47460   case 3258:
47461 #line 17542 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47462     {
47463             (yyval.lex_user)= (yyvsp[-3].lex_user);
47464             (yyvsp[-3].lex_user)->auth= new (thd->mem_root) USER_AUTH();
47465             (yyvsp[-3].lex_user)->auth->pwtext= (yyvsp[0].lex_string_with_metadata);
47466           }
47467 #line 47468 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47468     break;
47469 
47470   case 3259:
47471 #line 17548 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47472     {
47473             (yyval.lex_user)= (yyvsp[-4].lex_user);
47474             (yyvsp[-4].lex_user)->auth= new (thd->mem_root) USER_AUTH();
47475             (yyvsp[-4].lex_user)->auth->auth_str= (yyvsp[0].lex_string_with_metadata);
47476           }
47477 #line 47478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47478     break;
47479 
47480   case 3260:
47481 #line 17554 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47482     {
47483             (yyval.lex_user)= (yyvsp[-3].lex_user);
47484             (yyvsp[-3].lex_user)->auth= (yyvsp[0].user_auth);
47485           }
47486 #line 47487 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47487     break;
47488 
47489   case 3261:
47490 #line 17559 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47491     {
47492             (yyval.lex_user)= (yyvsp[0].lex_user);
47493           }
47494 #line 47495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47495     break;
47496 
47497   case 3262:
47498 #line 17566 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47499     {
47500             (yyval.user_auth)= (yyvsp[-2].user_auth);
47501             DBUG_ASSERT((yyval.user_auth)->next == NULL);
47502             (yyval.user_auth)->next= (yyvsp[0].user_auth);
47503           }
47504 #line 47505 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47505     break;
47506 
47507   case 3263:
47508 #line 17572 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47509     {
47510             (yyval.user_auth)= (yyvsp[0].user_auth);
47511           }
47512 #line 47513 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47513     break;
47514 
47515   case 3264:
47516 #line 17579 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47517     {
47518           (yyval.user_auth)= (yyvsp[0].user_auth);
47519           (yyval.user_auth)->plugin= (yyvsp[-1].lex_str);
47520         }
47521 #line 47522 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47522     break;
47523 
47524   case 3265:
47525 #line 17587 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47526     {
47527           if (!((yyval.user_auth)=(USER_AUTH*) thd->calloc(sizeof(USER_AUTH))))
47528             MYSQL_YYABORT;
47529         }
47530 #line 47531 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47531     break;
47532 
47533   case 3266:
47534 #line 17592 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47535     {
47536           if (!((yyval.user_auth)=(USER_AUTH*) thd->calloc(sizeof(USER_AUTH))))
47537             MYSQL_YYABORT;
47538           (yyval.user_auth)->auth_str= (yyvsp[0].lex_str);
47539         }
47540 #line 47541 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47541     break;
47542 
47543   case 3267:
47544 #line 17598 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47545     {
47546           if (!((yyval.user_auth)=(USER_AUTH*) thd->calloc(sizeof(USER_AUTH))))
47547             MYSQL_YYABORT;
47548           (yyval.user_auth)->pwtext= (yyvsp[-1].lex_string_with_metadata);
47549         }
47550 #line 47551 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47551     break;
47552 
47553   case 3268:
47554 #line 17607 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47555     {
47556             LEX *lex=Lex;
47557             lex->grant |= lex->which_columns;
47558           }
47559 #line 47560 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47560     break;
47561 
47562   case 3269:
47563 #line 17611 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47564     { }
47565 #line 47566 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47566     break;
47567 
47568   case 3272:
47569 #line 17621 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47570     {
47571             String *new_str= new (thd->mem_root) String((const char*) (yyvsp[0].ident_sys).str,(yyvsp[0].ident_sys).length,system_charset_info);
47572             if (unlikely(new_str == NULL))
47573               MYSQL_YYABORT;
47574             List_iterator <LEX_COLUMN> iter(Lex->columns);
47575             class LEX_COLUMN *point;
47576             LEX *lex=Lex;
47577             while ((point=iter++))
47578             {
47579               if (!my_strcasecmp(system_charset_info,
47580                                  point->column.c_ptr(), new_str->c_ptr()))
47581                 break;
47582             }
47583             lex->grant_tot_col|= lex->which_columns;
47584             if (point)
47585               point->rights |= lex->which_columns;
47586             else
47587             {
47588               LEX_COLUMN *col= (new (thd->mem_root)
47589                                 LEX_COLUMN(*new_str,lex->which_columns));
47590               if (unlikely(col == NULL))
47591                 MYSQL_YYABORT;
47592               lex->columns.push_back(col, thd->mem_root);
47593             }
47594           }
47595 #line 47596 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47596     break;
47597 
47598   case 3274:
47599 #line 17651 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47600     {
47601             Lex->account_options.ssl_type= SSL_TYPE_SPECIFIED;
47602           }
47603 #line 47604 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47604     break;
47605 
47606   case 3275:
47607 #line 17655 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47608     {
47609             Lex->account_options.ssl_type= SSL_TYPE_ANY;
47610           }
47611 #line 47612 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47612     break;
47613 
47614   case 3276:
47615 #line 17659 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47616     {
47617             Lex->account_options.ssl_type= SSL_TYPE_X509;
47618           }
47619 #line 47620 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47620     break;
47621 
47622   case 3277:
47623 #line 17663 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47624     {
47625             Lex->account_options.ssl_type= SSL_TYPE_NONE;
47626           }
47627 #line 47628 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47628     break;
47629 
47630   case 3278:
47631 #line 17670 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47632     {
47633             Lex->account_options.questions=(yyvsp[0].ulong_num);
47634             Lex->account_options.specified_limits|= USER_RESOURCES::QUERIES_PER_HOUR;
47635           }
47636 #line 47637 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47637     break;
47638 
47639   case 3279:
47640 #line 17675 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47641     {
47642             Lex->account_options.updates=(yyvsp[0].ulong_num);
47643             Lex->account_options.specified_limits|= USER_RESOURCES::UPDATES_PER_HOUR;
47644           }
47645 #line 47646 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47646     break;
47647 
47648   case 3280:
47649 #line 17680 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47650     {
47651             Lex->account_options.conn_per_hour= (yyvsp[0].ulong_num);
47652             Lex->account_options.specified_limits|= USER_RESOURCES::CONNECTIONS_PER_HOUR;
47653           }
47654 #line 47655 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47655     break;
47656 
47657   case 3281:
47658 #line 17685 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47659     {
47660             Lex->account_options.user_conn= (yyvsp[0].num);
47661             Lex->account_options.specified_limits|= USER_RESOURCES::USER_CONNECTIONS;
47662           }
47663 #line 47664 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47664     break;
47665 
47666   case 3282:
47667 #line 17690 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47668     {
47669             Lex->account_options.max_statement_time= (yyvsp[0].item_num)->val_real();
47670             Lex->account_options.specified_limits|= USER_RESOURCES::MAX_STATEMENT_TIME;
47671           }
47672 #line 47673 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47673     break;
47674 
47675   case 3283:
47676 #line 17697 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47677     {}
47678 #line 47679 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47679     break;
47680 
47681   case 3284:
47682 #line 17698 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47683     {}
47684 #line 47685 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47685     break;
47686 
47687   case 3285:
47688 #line 17702 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47689     {}
47690 #line 47691 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47691     break;
47692 
47693   case 3287:
47694 #line 17708 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47695     {}
47696 #line 47697 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47697     break;
47698 
47699   case 3288:
47700 #line 17709 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47701     {}
47702 #line 47703 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47703     break;
47704 
47705   case 3289:
47706 #line 17713 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47707     {}
47708 #line 47709 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47709     break;
47710 
47711   case 3290:
47712 #line 17714 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47713     { Lex->grant |= GRANT_ACL;}
47714 #line 47715 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47715     break;
47716 
47717   case 3291:
47718 #line 17718 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47719     {}
47720 #line 47721 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47721     break;
47722 
47723   case 3292:
47724 #line 17719 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47725     {}
47726 #line 47727 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47727     break;
47728 
47729   case 3293:
47730 #line 17723 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47731     { Lex->grant |= GRANT_ACL;}
47732 #line 47733 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47733     break;
47734 
47735   case 3294:
47736 #line 17724 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47737     {}
47738 #line 47739 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47739     break;
47740 
47741   case 3295:
47742 #line 17729 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47743     {
47744             LEX *lex=Lex;
47745             lex->sql_command = SQLCOM_BEGIN;
47746             lex->start_transaction_opt= 0;
47747           }
47748 #line 47749 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47749     break;
47750 
47751   case 3296:
47752 #line 17734 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47753     {}
47754 #line 47755 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47755     break;
47756 
47757   case 3297:
47758 #line 17739 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47759     {
47760             Lex->sql_command= SQLCOM_COMPOUND;
47761             if (Lex->sp_body_finalize_procedure(thd))
47762               MYSQL_YYABORT;
47763           }
47764 #line 47765 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47765     break;
47766 
47767   case 3298:
47768 #line 17747 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47769     { (yyval.num)= 0; }
47770 #line 47771 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47771     break;
47772 
47773   case 3299:
47774 #line 17748 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47775     { (yyval.num)= 1; }
47776 #line 47777 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47777     break;
47778 
47779   case 3300:
47780 #line 17752 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47781     {}
47782 #line 47783 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47783     break;
47784 
47785   case 3301:
47786 #line 17753 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47787     {}
47788 #line 47789 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47789     break;
47790 
47791   case 3302:
47792 #line 17758 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47793     { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
47794 #line 47795 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47795     break;
47796 
47797   case 3303:
47798 #line 17759 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47799     { (yyval.m_yes_no_unk)= TVL_NO; }
47800 #line 47801 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47801     break;
47802 
47803   case 3304:
47804 #line 17760 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47805     { (yyval.m_yes_no_unk)= TVL_YES; }
47806 #line 47807 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47807     break;
47808 
47809   case 3305:
47810 #line 17765 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47811     { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
47812 #line 47813 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47813     break;
47814 
47815   case 3306:
47816 #line 17766 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47817     { (yyval.m_yes_no_unk)= TVL_YES; }
47818 #line 47819 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47819     break;
47820 
47821   case 3307:
47822 #line 17767 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47823     { (yyval.m_yes_no_unk)= TVL_NO; }
47824 #line 47825 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47825     break;
47826 
47827   case 3308:
47828 #line 17772 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47829     {
47830             LEX *lex=Lex;
47831             lex->sql_command= SQLCOM_COMMIT;
47832             /* Don't allow AND CHAIN RELEASE. */
47833             MYSQL_YYABORT_UNLESS((yyvsp[-1].m_yes_no_unk) != TVL_YES || (yyvsp[0].m_yes_no_unk) != TVL_YES);
47834             lex->tx_chain= (yyvsp[-1].m_yes_no_unk);
47835             lex->tx_release= (yyvsp[0].m_yes_no_unk);
47836           }
47837 #line 47838 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47838     break;
47839 
47840   case 3309:
47841 #line 17784 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47842     {
47843             LEX *lex=Lex;
47844             lex->sql_command= SQLCOM_ROLLBACK;
47845             /* Don't allow AND CHAIN RELEASE. */
47846             MYSQL_YYABORT_UNLESS((yyvsp[-1].m_yes_no_unk) != TVL_YES || (yyvsp[0].m_yes_no_unk) != TVL_YES);
47847             lex->tx_chain= (yyvsp[-1].m_yes_no_unk);
47848             lex->tx_release= (yyvsp[0].m_yes_no_unk);
47849           }
47850 #line 47851 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47851     break;
47852 
47853   case 3310:
47854 #line 17793 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47855     {
47856             LEX *lex=Lex;
47857             lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
47858             lex->ident= (yyvsp[0].ident_sys);
47859           }
47860 #line 47861 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47861     break;
47862 
47863   case 3311:
47864 #line 17799 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47865     {
47866             LEX *lex=Lex;
47867             lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
47868             lex->ident= (yyvsp[0].ident_sys);
47869           }
47870 #line 47871 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47871     break;
47872 
47873   case 3312:
47874 #line 17808 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47875     {
47876             LEX *lex=Lex;
47877             lex->sql_command= SQLCOM_SAVEPOINT;
47878             lex->ident= (yyvsp[0].ident_sys);
47879           }
47880 #line 47881 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47881     break;
47882 
47883   case 3313:
47884 #line 17817 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47885     {
47886             LEX *lex=Lex;
47887             lex->sql_command= SQLCOM_RELEASE_SAVEPOINT;
47888             lex->ident= (yyvsp[0].ident_sys);
47889           }
47890 #line 47891 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47891     break;
47892 
47893   case 3314:
47894 #line 17830 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47895     { (yyval.unit_operation).unit_type= UNION_TYPE; (yyval.unit_operation).distinct= (yyvsp[0].num); }
47896 #line 47897 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47897     break;
47898 
47899   case 3315:
47900 #line 17832 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47901     { (yyval.unit_operation).unit_type= INTERSECT_TYPE; (yyval.unit_operation).distinct= 1; }
47902 #line 47903 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47903     break;
47904 
47905   case 3316:
47906 #line 17834 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47907     { (yyval.unit_operation).unit_type= EXCEPT_TYPE; (yyval.unit_operation).distinct= 1; }
47908 #line 47909 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47909     break;
47910 
47911   case 3317:
47912 #line 17841 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47913     { (yyval.num)=1; }
47914 #line 47915 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47915     break;
47916 
47917   case 3318:
47918 #line 17842 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47919     { (yyval.num)=1; }
47920 #line 47921 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47921     break;
47922 
47923   case 3319:
47924 #line 17843 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47925     { (yyval.num)=0; }
47926 #line 47927 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47927     break;
47928 
47929   case 3320:
47930 #line 17847 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47931     { Select->options|= SELECT_STRAIGHT_JOIN; }
47932 #line 47933 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47933     break;
47934 
47935   case 3321:
47936 #line 17849 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47937     {
47938             YYPS->m_lock_type= TL_READ_HIGH_PRIORITY;
47939             YYPS->m_mdl_type= MDL_SHARED_READ;
47940             Select->options|= SELECT_HIGH_PRIORITY;
47941           }
47942 #line 47943 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47943     break;
47944 
47945   case 3322:
47946 #line 17854 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47947     { Select->options|= SELECT_DISTINCT; }
47948 #line 47949 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47949     break;
47950 
47951   case 3323:
47952 #line 17855 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47953     { Select->options|= SELECT_SMALL_RESULT; }
47954 #line 47955 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47955     break;
47956 
47957   case 3324:
47958 #line 17856 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47959     { Select->options|= SELECT_BIG_RESULT; }
47960 #line 47961 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47961     break;
47962 
47963   case 3325:
47964 #line 17857 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47965     { Select->options|= OPTION_BUFFER_RESULT; }
47966 #line 47967 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47967     break;
47968 
47969   case 3326:
47970 #line 17858 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47971     { Select->options|= OPTION_FOUND_ROWS; }
47972 #line 47973 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47973     break;
47974 
47975   case 3327:
47976 #line 17859 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47977     { Select->options|= SELECT_ALL; }
47978 #line 47979 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47979     break;
47980 
47981   case 3330:
47982 #line 17875 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47983     {
47984             /*
47985               We have to distinguish missing DEFINER-clause from case when
47986               CURRENT_USER specified as definer explicitly in order to properly
47987               handle CREATE TRIGGER statements which come to replication thread
47988               from older master servers (i.e. to create non-suid trigger in this
47989               case).
47990             */
47991             thd->lex->definer= 0;
47992           }
47993 #line 47994 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
47994     break;
47995 
47996   case 3331:
47997 #line 17889 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
47998     {
47999             Lex->definer= (yyvsp[0].lex_user);
48000             Lex->account_options.reset();
48001           }
48002 #line 48003 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48003     break;
48004 
48005   case 3332:
48006 #line 17902 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48007     { (yyval.num)= DTYPE_ALGORITHM_UNDEFINED; }
48008 #line 48009 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48009     break;
48010 
48011   case 3333:
48012 #line 17903 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48013     { (yyval.num)= VIEW_ALGORITHM_MERGE; }
48014 #line 48015 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48015     break;
48016 
48017   case 3334:
48018 #line 17904 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48019     { (yyval.num)= VIEW_ALGORITHM_TMPTABLE; }
48020 #line 48021 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48021     break;
48022 
48023   case 3335:
48024 #line 17908 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48025     { (yyval.view_suid)= VIEW_SUID_DEFAULT; }
48026 #line 48027 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48027     break;
48028 
48029   case 3336:
48030 #line 17909 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48031     { (yyval.view_suid)= (yyvsp[0].view_suid); }
48032 #line 48033 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48033     break;
48034 
48035   case 3337:
48036 #line 17913 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48037     { (yyval.view_suid)= VIEW_SUID_DEFINER; }
48038 #line 48039 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48039     break;
48040 
48041   case 3338:
48042 #line 17914 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48043     { (yyval.view_suid)= VIEW_SUID_INVOKER; }
48044 #line 48045 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48045     break;
48046 
48047   case 3339:
48048 #line 17919 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48049     {}
48050 #line 48051 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48051     break;
48052 
48053   case 3340:
48054 #line 17920 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48055     { }
48056 #line 48057 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48057     break;
48058 
48059   case 3341:
48060 #line 17925 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48061     {
48062             Lex->view_list.push_back((LEX_CSTRING*)
48063                                      thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING)),
48064                                      thd->mem_root);
48065           }
48066 #line 48067 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48067     break;
48068 
48069   case 3342:
48070 #line 17931 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48071     {
48072             Lex->view_list.push_back((LEX_CSTRING*)
48073                                      thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING)),
48074                                      thd->mem_root);
48075           }
48076 #line 48077 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48077     break;
48078 
48079   case 3343:
48080 #line 17939 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48081     {
48082             LEX *lex= Lex;
48083             lex->parsing_options.allows_variable= FALSE;
48084             lex->create_view->select.str= (char *) YYLIP->get_cpp_ptr();
48085           }
48086 #line 48087 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48087     break;
48088 
48089   case 3344:
48090 #line 17946 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48091     {
48092             if (Lex->parsed_create_view((yyvsp[-1].select_lex_unit), (yyvsp[0].num)))
48093               MYSQL_YYABORT;
48094           }
48095 #line 48096 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48096     break;
48097 
48098   case 3345:
48099 #line 17953 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48100     { (yyval.num)= VIEW_CHECK_NONE; }
48101 #line 48102 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48102     break;
48103 
48104   case 3346:
48105 #line 17954 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48106     { (yyval.num)= VIEW_CHECK_CASCADED; }
48107 #line 48108 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48108     break;
48109 
48110   case 3347:
48111 #line 17955 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48112     { (yyval.num)= VIEW_CHECK_CASCADED; }
48113 #line 48114 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48114     break;
48115 
48116   case 3348:
48117 #line 17956 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48118     { (yyval.num)= VIEW_CHECK_LOCAL; }
48119 #line 48120 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48120     break;
48121 
48122   case 3349:
48123 #line 17967 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48124     { (yyval.trigger_action_order_type)= TRG_ORDER_FOLLOWS; }
48125 #line 48126 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48126     break;
48127 
48128   case 3350:
48129 #line 17969 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48130     { (yyval.trigger_action_order_type)= TRG_ORDER_PRECEDES; }
48131 #line 48132 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48132     break;
48133 
48134   case 3351:
48135 #line 17974 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48136     {
48137               (yyval.trg_execution_order).ordering_clause= TRG_ORDER_NONE;
48138               (yyval.trg_execution_order).anchor_trigger_name.str= NULL;
48139               (yyval.trg_execution_order).anchor_trigger_name.length= 0;
48140             }
48141 #line 48142 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48142     break;
48143 
48144   case 3352:
48145 #line 17981 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48146     {
48147               (yyval.trg_execution_order).ordering_clause= (yyvsp[-1].trigger_action_order_type);
48148               (yyval.trg_execution_order).anchor_trigger_name= (yyvsp[0].lex_str);
48149             }
48150 #line 48151 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48151     break;
48152 
48153   case 3353:
48154 #line 17990 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48155     {
48156             if (unlikely(Lex->add_create_options_with_check((yyvsp[0].object_ddl_options))))
48157               MYSQL_YYABORT;
48158           }
48159 #line 48160 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48160     break;
48161 
48162   case 3354:
48163 #line 17999 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48164     { /* $9 */
48165             Lex->raw_trg_on_table_name_begin= YYLIP->get_tok_start();
48166           }
48167 #line 48168 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48168     break;
48169 
48170   case 3355:
48171 #line 18005 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48172     { /* $13 */
48173             Lex->raw_trg_on_table_name_end= YYLIP->get_tok_start();
48174           }
48175 #line 48176 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48176     break;
48177 
48178   case 3356:
48179 #line 18010 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48180     {
48181             Lex->trg_chistics.ordering_clause_begin= YYLIP->get_cpp_ptr();
48182           }
48183 #line 48184 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48184     break;
48185 
48186   case 3357:
48187 #line 18014 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48188     { /* $18 */
48189             LEX *lex= thd->lex;
48190             Lex_input_stream *lip= YYLIP;
48191 
48192             if (unlikely(lex->sphead))
48193               my_yyabort_error((ER_SP_NO_RECURSIVE_CREATE, MYF(0), "TRIGGER"));
48194 
48195             lex->stmt_definition_begin= (yyvsp[-16].simple_string);
48196             lex->ident.str= (yyvsp[-9].simple_string);
48197             lex->ident.length= (yyvsp[-5].simple_string) - (yyvsp[-9].simple_string);
48198             lex->spname= (yyvsp[-13].spname);
48199             (*static_cast<st_trg_execution_order*>(&lex->trg_chistics))= ((yyvsp[0].trg_execution_order));
48200             lex->trg_chistics.ordering_clause_end= lip->get_cpp_ptr();
48201 
48202             if (unlikely(!lex->make_sp_head(thd, (yyvsp[-13].spname), &sp_handler_trigger,
48203                                             DEFAULT_AGGREGATE)))
48204               MYSQL_YYABORT;
48205 
48206             lex->sphead->set_body_start(thd, lip->get_cpp_tok_start());
48207           }
48208 #line 48209 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48209     break;
48210 
48211   case 3358:
48212 #line 18035 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48213     { /* $20 */
48214             LEX *lex= Lex;
48215 
48216             lex->sql_command= SQLCOM_CREATE_TRIGGER;
48217             if (lex->sp_body_finalize_trigger(thd))
48218               MYSQL_YYABORT;
48219 
48220             /*
48221               We have to do it after parsing trigger body, because some of
48222               sp_proc_stmt alternatives are not saving/restoring LEX, so
48223               lex->query_tables can be wiped out.
48224             */
48225             if (!lex->first_select_lex()->
48226                  add_table_to_list(thd, (yyvsp[-9].table), (LEX_CSTRING*) 0,
48227                                    TL_OPTION_UPDATING, TL_READ_NO_INSERT,
48228                                    MDL_SHARED_NO_WRITE))
48229               MYSQL_YYABORT;
48230           }
48231 #line 48232 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48232     break;
48233 
48234   case 3359:
48235 #line 18064 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48236     {
48237             LEX *lex= Lex;
48238             lex->init_last_field(&lex->sphead->m_return_field_def,
48239                                  &empty_clex_str,
48240                                  thd->variables.collation_database);
48241           }
48242 #line 48243 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48243     break;
48244 
48245   case 3360:
48246 #line 18071 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48247     {
48248             if (unlikely(Lex->sphead->fill_field_definition(thd,
48249                                                             Lex->last_field)))
48250               MYSQL_YYABORT;
48251           }
48252 #line 48253 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48253     break;
48254 
48255   case 3361:
48256 #line 18080 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48257     {
48258             LEX *lex= thd->lex;
48259             lex->sphead->set_c_chistics(lex->sp_chistics);
48260             lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
48261           }
48262 #line 48263 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48263     break;
48264 
48265   case 3362:
48266 #line 18086 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48267     {
48268             if (unlikely(Lex->sp_body_finalize_function(thd)))
48269               MYSQL_YYABORT;
48270           }
48271 #line 48272 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48272     break;
48273 
48274   case 3363:
48275 #line 18095 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48276     {
48277             if (unlikely(!Lex->make_sp_head_no_recursive(thd, (yyvsp[0].spname),
48278                                                          &sp_handler_procedure,
48279                                                          DEFAULT_AGGREGATE)))
48280               MYSQL_YYABORT;
48281           }
48282 #line 48283 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48283     break;
48284 
48285   case 3364:
48286 #line 18103 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48287     {
48288             Lex->sphead->set_c_chistics(Lex->sp_chistics);
48289             Lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
48290           }
48291 #line 48292 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48292     break;
48293 
48294   case 3365:
48295 #line 18108 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48296     {
48297             if (unlikely(Lex->sp_body_finalize_procedure(thd)))
48298               MYSQL_YYABORT;
48299           }
48300 #line 48301 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48301     break;
48302 
48303   case 3366:
48304 #line 18118 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48305     {
48306             Lex->sql_command = SQLCOM_XA_START;
48307           }
48308 #line 48309 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48309     break;
48310 
48311   case 3367:
48312 #line 18122 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48313     {
48314             Lex->sql_command = SQLCOM_XA_END;
48315           }
48316 #line 48317 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48317     break;
48318 
48319   case 3368:
48320 #line 18126 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48321     {
48322             Lex->sql_command = SQLCOM_XA_PREPARE;
48323           }
48324 #line 48325 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48325     break;
48326 
48327   case 3369:
48328 #line 18130 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48329     {
48330             Lex->sql_command = SQLCOM_XA_COMMIT;
48331           }
48332 #line 48333 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48333     break;
48334 
48335   case 3370:
48336 #line 18134 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48337     {
48338             Lex->sql_command = SQLCOM_XA_ROLLBACK;
48339           }
48340 #line 48341 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48341     break;
48342 
48343   case 3371:
48344 #line 18138 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48345     {
48346             Lex->sql_command = SQLCOM_XA_RECOVER;
48347             Lex->verbose= (yyvsp[0].num);
48348           }
48349 #line 48350 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48350     break;
48351 
48352   case 3372:
48353 #line 18145 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48354     { (yyval.num)= false; }
48355 #line 48356 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48356     break;
48357 
48358   case 3373:
48359 #line 18147 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48360     {
48361             if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("SQL")))
48362               (yyval.num)= true;
48363             else if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("RAW")))
48364               (yyval.num)= false;
48365             else
48366             {
48367               my_yyabort_error((ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0),
48368                                "XA RECOVER", (yyvsp[0].lex_str).str));
48369               (yyval.num)= false;
48370             }
48371           }
48372 #line 48373 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48373     break;
48374 
48375   case 3374:
48376 #line 18163 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48377     {
48378             MYSQL_YYABORT_UNLESS((yyvsp[0].string)->length() <= MAXGTRIDSIZE);
48379             if (unlikely(!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))))
48380               MYSQL_YYABORT;
48381             Lex->xid->set(1L, (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length(), 0, 0);
48382           }
48383 #line 48384 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48384     break;
48385 
48386   case 3375:
48387 #line 18170 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48388     {
48389             MYSQL_YYABORT_UNLESS((yyvsp[-2].string)->length() <= MAXGTRIDSIZE && (yyvsp[0].string)->length() <= MAXBQUALSIZE);
48390             if (unlikely(!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))))
48391               MYSQL_YYABORT;
48392             Lex->xid->set(1L, (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length(), (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length());
48393           }
48394 #line 48395 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48395     break;
48396 
48397   case 3376:
48398 #line 18177 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48399     {
48400             MYSQL_YYABORT_UNLESS((yyvsp[-4].string)->length() <= MAXGTRIDSIZE && (yyvsp[-2].string)->length() <= MAXBQUALSIZE);
48401             if (unlikely(!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))))
48402               MYSQL_YYABORT;
48403             Lex->xid->set((yyvsp[0].ulong_num), (yyvsp[-4].string)->ptr(), (yyvsp[-4].string)->length(), (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length());
48404           }
48405 #line 48406 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48406     break;
48407 
48408   case 3377:
48409 #line 18186 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48410     {}
48411 #line 48412 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48412     break;
48413 
48414   case 3378:
48415 #line 18187 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48416     {}
48417 #line 48418 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48418     break;
48419 
48420   case 3379:
48421 #line 18188 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48422     {}
48423 #line 48424 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48424     break;
48425 
48426   case 3380:
48427 #line 18192 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48428     { Lex->xa_opt=XA_NONE;        }
48429 #line 48430 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48430     break;
48431 
48432   case 3381:
48433 #line 18193 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48434     { Lex->xa_opt=XA_JOIN;        }
48435 #line 48436 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48436     break;
48437 
48438   case 3382:
48439 #line 18194 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48440     { Lex->xa_opt=XA_RESUME;      }
48441 #line 48442 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48442     break;
48443 
48444   case 3383:
48445 #line 18198 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48446     { Lex->xa_opt=XA_NONE;        }
48447 #line 48448 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48448     break;
48449 
48450   case 3384:
48451 #line 18199 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48452     { Lex->xa_opt=XA_ONE_PHASE;   }
48453 #line 48454 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48454     break;
48455 
48456   case 3385:
48457 #line 18204 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48458     { Lex->xa_opt=XA_NONE;        }
48459 #line 48460 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48460     break;
48461 
48462   case 3386:
48463 #line 18206 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48464     { Lex->xa_opt=XA_SUSPEND;     }
48465 #line 48466 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48466     break;
48467 
48468   case 3388:
48469 #line 18211 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48470     {}
48471 #line 48472 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48472     break;
48473 
48474   case 3389:
48475 #line 18212 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48476     { Lex->xa_opt=XA_FOR_MIGRATE; }
48477 #line 48478 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48478     break;
48479 
48480   case 3390:
48481 #line 18217 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48482     {
48483             if (Lex->stmt_install_plugin((yyvsp[-3].object_ddl_options), (yyvsp[-2].ident_sys), (yyvsp[0].lex_str)))
48484               MYSQL_YYABORT;
48485           }
48486 #line 48487 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48487     break;
48488 
48489   case 3391:
48490 #line 18222 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48491     {
48492             Lex->stmt_install_plugin((yyvsp[0].lex_str));
48493           }
48494 #line 48495 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48495     break;
48496 
48497   case 3392:
48498 #line 18229 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48499     {
48500             if (Lex->stmt_uninstall_plugin_by_name((yyvsp[-1].object_ddl_options), (yyvsp[0].ident_sys)))
48501               MYSQL_YYABORT;
48502           }
48503 #line 48504 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48504     break;
48505 
48506   case 3393:
48507 #line 18234 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48508     {
48509             if (Lex->stmt_uninstall_plugin_by_soname((yyvsp[-1].object_ddl_options), (yyvsp[0].lex_str)))
48510               MYSQL_YYABORT;
48511           }
48512 #line 48513 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48513     break;
48514 
48515   case 3394:
48516 #line 18243 "/home/buildbot/git/sql/sql_yacc.yy" /* yacc.c:1646  */
48517     {
48518             YYERROR;
48519           }
48520 #line 48521 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48521     break;
48522 
48523 
48524 #line 48525 "/home/buildbot/git/mkdist/sql/sql_yacc.cc" /* yacc.c:1646  */
48525       default: break;
48526     }
48527   /* User semantic actions sometimes alter yychar, and that requires
48528      that yytoken be updated with the new translation.  We take the
48529      approach of translating immediately before every use of yytoken.
48530      One alternative is translating here after every semantic action,
48531      but that translation would be missed if the semantic action invokes
48532      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
48533      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
48534      incorrect destructor might then be invoked immediately.  In the
48535      case of YYERROR or YYBACKUP, subsequent parser actions might lead
48536      to an incorrect destructor call or verbose syntax error message
48537      before the lookahead is translated.  */
48538   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
48539 
48540   YYPOPSTACK (yylen);
48541   yylen = 0;
48542   YY_STACK_PRINT (yyss, yyssp);
48543 
48544   *++yyvsp = yyval;
48545 
48546   /* Now 'shift' the result of the reduction.  Determine what state
48547      that goes to, based on the state we popped back to and the rule
48548      number reduced by.  */
48549 
48550   yyn = yyr1[yyn];
48551 
48552   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
48553   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
48554     yystate = yytable[yystate];
48555   else
48556     yystate = yydefgoto[yyn - YYNTOKENS];
48557 
48558   goto yynewstate;
48559 
48560 
48561 /*--------------------------------------.
48562 | yyerrlab -- here on detecting error.  |
48563 `--------------------------------------*/
48564 yyerrlab:
48565   /* Make sure we have latest lookahead translation.  See comments at
48566      user semantic actions for why this is necessary.  */
48567   yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
48568 
48569   /* If not already recovering from an error, report this error.  */
48570   if (!yyerrstatus)
48571     {
48572       ++yynerrs;
48573 #if ! YYERROR_VERBOSE
48574       yyerror (thd, YY_("syntax error"));
48575 #else
48576 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
48577                                         yyssp, yytoken)
48578       {
48579         char const *yymsgp = YY_("syntax error");
48580         int yysyntax_error_status;
48581         yysyntax_error_status = YYSYNTAX_ERROR;
48582         if (yysyntax_error_status == 0)
48583           yymsgp = yymsg;
48584         else if (yysyntax_error_status == 1)
48585           {
48586             if (yymsg != yymsgbuf)
48587               YYSTACK_FREE (yymsg);
48588             yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
48589             if (!yymsg)
48590               {
48591                 yymsg = yymsgbuf;
48592                 yymsg_alloc = sizeof yymsgbuf;
48593                 yysyntax_error_status = 2;
48594               }
48595             else
48596               {
48597                 yysyntax_error_status = YYSYNTAX_ERROR;
48598                 yymsgp = yymsg;
48599               }
48600           }
48601         yyerror (thd, yymsgp);
48602         if (yysyntax_error_status == 2)
48603           goto yyexhaustedlab;
48604       }
48605 # undef YYSYNTAX_ERROR
48606 #endif
48607     }
48608 
48609 
48610 
48611   if (yyerrstatus == 3)
48612     {
48613       /* If just tried and failed to reuse lookahead token after an
48614          error, discard it.  */
48615 
48616       if (yychar <= YYEOF)
48617         {
48618           /* Return failure if at end of input.  */
48619           if (yychar == YYEOF)
48620             YYABORT;
48621         }
48622       else
48623         {
48624           yydestruct ("Error: discarding",
48625                       yytoken, &yylval, thd);
48626           yychar = YYEMPTY;
48627         }
48628     }
48629 
48630   /* Else will try to reuse lookahead token after shifting the error
48631      token.  */
48632   goto yyerrlab1;
48633 
48634 
48635 /*---------------------------------------------------.
48636 | yyerrorlab -- error raised explicitly by YYERROR.  |
48637 `---------------------------------------------------*/
48638 yyerrorlab:
48639 
48640   /* Pacify compilers like GCC when the user code never invokes
48641      YYERROR and the label yyerrorlab therefore never appears in user
48642      code.  */
48643   if (/*CONSTCOND*/ 0)
48644      goto yyerrorlab;
48645 
48646   /* Do not reclaim the symbols of the rule whose action triggered
48647      this YYERROR.  */
48648   YYPOPSTACK (yylen);
48649   yylen = 0;
48650   YY_STACK_PRINT (yyss, yyssp);
48651   yystate = *yyssp;
48652   goto yyerrlab1;
48653 
48654 
48655 /*-------------------------------------------------------------.
48656 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
48657 `-------------------------------------------------------------*/
48658 yyerrlab1:
48659   yyerrstatus = 3;      /* Each real token shifted decrements this.  */
48660 
48661   for (;;)
48662     {
48663       yyn = yypact[yystate];
48664       if (!yypact_value_is_default (yyn))
48665         {
48666           yyn += YYTERROR;
48667           if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
48668             {
48669               yyn = yytable[yyn];
48670               if (0 < yyn)
48671                 break;
48672             }
48673         }
48674 
48675       /* Pop the current state because it cannot handle the error token.  */
48676       if (yyssp == yyss)
48677         YYABORT;
48678 
48679 
48680       yydestruct ("Error: popping",
48681                   yystos[yystate], yyvsp, thd);
48682       YYPOPSTACK (1);
48683       yystate = *yyssp;
48684       YY_STACK_PRINT (yyss, yyssp);
48685     }
48686 
48687   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
48688   *++yyvsp = yylval;
48689   YY_IGNORE_MAYBE_UNINITIALIZED_END
48690 
48691 
48692   /* Shift the error token.  */
48693   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
48694 
48695   yystate = yyn;
48696   goto yynewstate;
48697 
48698 
48699 /*-------------------------------------.
48700 | yyacceptlab -- YYACCEPT comes here.  |
48701 `-------------------------------------*/
48702 yyacceptlab:
48703   yyresult = 0;
48704   goto yyreturn;
48705 
48706 /*-----------------------------------.
48707 | yyabortlab -- YYABORT comes here.  |
48708 `-----------------------------------*/
48709 yyabortlab:
48710   yyresult = 1;
48711   goto yyreturn;
48712 
48713 #if !defined yyoverflow || YYERROR_VERBOSE
48714 /*-------------------------------------------------.
48715 | yyexhaustedlab -- memory exhaustion comes here.  |
48716 `-------------------------------------------------*/
48717 yyexhaustedlab:
48718   yyerror (thd, YY_("memory exhausted"));
48719   yyresult = 2;
48720   /* Fall through.  */
48721 #endif
48722 
48723 yyreturn:
48724   if (yychar != YYEMPTY)
48725     {
48726       /* Make sure we have latest lookahead translation.  See comments at
48727          user semantic actions for why this is necessary.  */
48728       yytoken = YYTRANSLATE (yychar);
48729       yydestruct ("Cleanup: discarding lookahead",
48730                   yytoken, &yylval, thd);
48731     }
48732   /* Do not reclaim the symbols of the rule whose action triggered
48733      this YYABORT or YYACCEPT.  */
48734   YYPOPSTACK (yylen);
48735   YY_STACK_PRINT (yyss, yyssp);
48736   while (yyssp != yyss)
48737     {
48738       yydestruct ("Cleanup: popping",
48739                   yystos[*yyssp], yyvsp, thd);
48740       YYPOPSTACK (1);
48741     }
48742 #ifndef yyoverflow
48743   if (yyss != yyssa)
48744     YYSTACK_FREE (yyss);
48745 #endif
48746 #if YYERROR_VERBOSE
48747   if (yymsg != yymsgbuf)
48748     YYSTACK_FREE (yymsg);
48749 #endif
48750   return yyresult;
48751 }
48752