MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
sql_yacc.cc
1 
2 /* A Bison parser, made by GNU Bison 2.4.1. */
3 
4 /* Skeleton implementation for Bison's Yacc-like parsers in C
5 
6  Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
7  Free Software Foundation, Inc.
8 
9  This program is free software: you can redistribute it and/or modify
10  it under the terms of the GNU General Public License as published by
11  the Free Software Foundation, either version 3 of the License, or
12  (at your option) any later version.
13 
14  This program is distributed in the hope that it will be useful,
15  but WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  GNU General Public License for more details.
18 
19  You should have received a copy of the GNU General Public License
20  along with this program. If not, see <http://www.gnu.org/licenses/>. */
21 
22 /* As a special exception, you may create a larger work that contains
23  part or all of the Bison parser skeleton and distribute that work
24  under terms of your choice, so long as that work isn't itself a
25  parser generator using the skeleton or a modified version thereof
26  as a parser skeleton. Alternatively, if you modify or redistribute
27  the parser skeleton itself, you may (at your option) remove this
28  special exception, which will cause the skeleton and the resulting
29  Bison output files to be licensed under the GNU General Public
30  License without this special exception.
31 
32  This special exception was added by the Free Software Foundation in
33  version 2.2 of Bison. */
34 
35 /* C LALR(1) parser skeleton written by Richard Stallman, by
36  simplifying the original so-called "semantic" parser. */
37 
38 /* All symbols defined below should begin with yy or YY, to avoid
39  infringing on user name space. This should be done even for local
40  variables, as they might otherwise be expanded by user macros.
41  There are some unavoidable exceptions within include files to
42  define necessary library symbols; they are noted "INFRINGES ON
43  USER NAME SPACE" below. */
44 
45 /* Identify Bison output. */
46 #define YYBISON 1
47 
48 /* Bison version. */
49 #define YYBISON_VERSION "2.4.1"
50 
51 /* Skeleton name. */
52 #define YYSKELETON_NAME "yacc.c"
53 
54 /* Pure parsers. */
55 #define YYPURE 1
56 
57 /* Push parsers. */
58 #define YYPUSH 0
59 
60 /* Pull parsers. */
61 #define YYPULL 1
62 
63 /* Using locations. */
64 #define YYLSP_NEEDED 0
65 
66 /* Substitute the variable and function names. */
67 #define yyparse MYSQLparse
68 #define yylex MYSQLlex
69 #define yyerror MYSQLerror
70 #define yylval MYSQLlval
71 #define yychar MYSQLchar
72 #define yydebug MYSQLdebug
73 #define yynerrs MYSQLnerrs
74 
75 
76 /* Copy the first part of user declarations. */
77 
78 /* Line 189 of yacc.c */
79 #line 24 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
80 
81 /* thd is passed as an argument to yyparse(), and subsequently to yylex().
82 ** The type will be void*, so it must be cast to (THD*) when used.
83 ** Use the YYTHD macro for this.
84 */
85 #define YYPARSE_PARAM yythd
86 #define YYLEX_PARAM yythd
87 #define YYTHD ((THD *)yythd)
88 #define YYLIP (& YYTHD->m_parser_state->m_lip)
89 #define YYPS (& YYTHD->m_parser_state->m_yacc)
90 #define YYCSCL YYTHD->variables.character_set_client
91 
92 #define MYSQL_YACC
93 #define YYINITDEPTH 100
94 #define YYMAXDEPTH 3200 /* Because of 64K stack */
95 #define Lex (YYTHD->lex)
96 #define Select Lex->current_select
97 #include "sql_priv.h"
98 #include "unireg.h" // REQUIRED: for other includes
99 #include "sql_parse.h" /* comp_*_creator */
100 #include "sql_table.h" /* primary_key_name */
101 #include "sql_partition.h" /* mem_alloc_error, partition_info, HASH_PARTITION */
102 #include "sql_acl.h" /* *_ACL */
103 #include "password.h" /* my_make_scrambled_password_323, my_make_scrambled_password */
104 #include "sql_class.h" /* Key_part_spec, enum_filetype, Diag_condition_item_name */
105 #include "rpl_slave.h"
106 #include "lex_symbol.h"
107 #include "item_create.h"
108 #include "sp_head.h"
109 #include "sp_instr.h"
110 #include "sp_pcontext.h"
111 #include "sp_rcontext.h"
112 #include "sp.h"
113 #include "sql_alter.h" // Sql_cmd_alter_table*
114 #include "sql_truncate.h" // Sql_cmd_truncate_table
115 #include "sql_admin.h" // Sql_cmd_analyze/Check..._table
116 #include "sql_partition_admin.h" // Sql_cmd_alter_table_*_part.
117 #include "sql_handler.h" // Sql_cmd_handler_*
118 #include "sql_signal.h"
119 #include "sql_get_diagnostics.h" // Sql_cmd_get_diagnostics
120 #include "event_parse_data.h"
121 #include <myisam.h>
122 #include <myisammrg.h>
123 #include "keycaches.h"
124 #include "set_var.h"
125 #include "opt_explain_traditional.h"
126 #include "opt_explain_json.h"
127 
128 /* this is to get the bison compilation windows warnings out */
129 #ifdef _MSC_VER
130 /* warning C4065: switch statement contains 'default' but no 'case' labels */
131 #pragma warning (disable : 4065)
132 #endif
133 
134 using std::min;
135 using std::max;
136 
137 int yylex(void *yylval, void *yythd);
138 
139 #define yyoverflow(A,B,C,D,E,F) \
140  { \
141  ulong val= *(F); \
142  if (my_yyoverflow((B), (D), &val)) \
143  { \
144  yyerror((char*) (A)); \
145  return 2; \
146  } \
147  else \
148  { \
149  *(F)= (YYSIZE_T)val; \
150  } \
151  }
152 
153 #define MYSQL_YYABORT \
154  do \
155  { \
156  LEX::cleanup_lex_after_parse_error(YYTHD);\
157  YYABORT; \
158  } while (0)
159 
160 #define MYSQL_YYABORT_UNLESS(A) \
161  if (!(A)) \
162  { \
163  my_parse_error(ER(ER_SYNTAX_ERROR));\
164  MYSQL_YYABORT; \
165  }
166 
167 /*
168  Work around for broken code generated by bison 1.875.
169 
170  The code generated by bison 1.875a and later, bison 2.1 and bison 2.2 is ok.
171  With bison 1.875 however, the generated code contains:
172 <pre>
173  yyerrlab1:
174  #if defined (__GNUC_MINOR__) && 2093 <= (__GNUC__ * 1000 + __GNUC_MINOR__)
175  __attribute__ ((__unused__))
176  #endif
177 </pre>
178  This usage of __attribute__ is illegal, so we remove it.
179  See the following references for details:
180  http://lists.gnu.org/archive/html/bug-bison/2004-02/msg00014.html
181  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14273
182 */
183 
184 #if defined (__GNUC_MINOR__) && 2093 <= (__GNUC__ * 1000 + __GNUC_MINOR__)
185 #undef __attribute__
186 #define __attribute__(X)
187 #endif
188 
189 
190 #ifndef DBUG_OFF
191 #define YYDEBUG 1
192 #else
193 #define YYDEBUG 0
194 #endif
195 
207 void my_parse_error(const char *s)
208 {
209  THD *thd= current_thd;
210  Lex_input_stream *lip= & thd->m_parser_state->m_lip;
211 
212  const char *yytext= lip->get_tok_start();
213  if (!yytext)
214  yytext= "";
215 
216  /* Push an error into the error stack */
217  ErrConvString err(yytext, thd->variables.character_set_client);
218  my_printf_error(ER_PARSE_ERROR, ER(ER_PARSE_ERROR), MYF(0), s,
219  err.ptr(), lip->yylineno);
220 }
221 
242 void MYSQLerror(const char *s)
243 {
244  THD *thd= current_thd;
245 
246  /*
247  Restore the original LEX if it was replaced when parsing
248  a stored procedure. We must ensure that a parsing error
249  does not leave any side effects in the THD.
250  */
251  LEX::cleanup_lex_after_parse_error(thd);
252 
253  /* "parse error" changed into "syntax error" between bison 1.75 and 1.875 */
254  if (strcmp(s,"parse error") == 0 || strcmp(s,"syntax error") == 0)
255  s= ER(ER_SYNTAX_ERROR);
256  my_parse_error(s);
257 }
258 
259 
260 #ifndef DBUG_OFF
261 void turn_parser_debug_on()
262 {
263  /*
264  MYSQLdebug is in sql/sql_yacc.cc, in bison generated code.
265  Turning this option on is **VERY** verbose, and should be
266  used when investigating a syntax error problem only.
267 
268  The syntax to run with bison traces is as follows :
269  - Starting a server manually :
270  mysqld --debug="d,parser_debug" ...
271  - Running a test :
272  mysql-test-run.pl --mysqld="--debug=d,parser_debug" ...
273 
274  The result will be in the process stderr (var/log/master.err)
275  */
276 
277  extern int yydebug;
278  yydebug= 1;
279 }
280 #endif
281 
282 static bool is_native_function(THD *thd, const LEX_STRING *name)
283 {
284  if (find_native_function_builder(thd, *name))
285  return true;
286 
287  if (is_lex_native_function(name))
288  return true;
289 
290  return false;
291 }
292 
293 
336 void case_stmt_action_case(THD *thd)
337 {
338  LEX *lex= thd->lex;
339  sp_head *sp= lex->sphead;
340  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
341 
343 
344  /*
345  BACKPATCH: Creating target label for the jump to
346  "case_stmt_action_end_case"
347  (Instruction 12 in the example)
348  */
349 
350  pctx->push_label(thd, EMPTY_STR, sp->instructions());
351 }
352 
359 bool case_stmt_action_then(THD *thd, LEX *lex)
360 {
361  sp_head *sp= lex->sphead;
362  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
363 
364  sp_instr_jump *i =
365  new (thd->mem_root) sp_instr_jump(sp->instructions(), pctx);
366 
367  if (!i || sp->add_instr(thd, i))
368  return true;
369 
370  /*
371  BACKPATCH: Resolving forward jump from
372  "case_stmt_action_when" to "case_stmt_action_then"
373  (jump_if_not from instruction 2 to 5, 5 to 8 ... in the example)
374  */
375 
376  sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions());
377 
378  /*
379  BACKPATCH: Registering forward jump from
380  "case_stmt_action_then" to "case_stmt_action_end_case"
381  (jump from instruction 4 to 12, 7 to 12 ... in the example)
382  */
383 
384  return sp->m_parser_data.add_backpatch_entry(i, pctx->last_label());
385 }
386 
394 void case_stmt_action_end_case(LEX *lex, bool simple)
395 {
396  sp_head *sp= lex->sphead;
397  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
398 
399  /*
400  BACKPATCH: Resolving forward jump from
401  "case_stmt_action_then" to "case_stmt_action_end_case"
402  (jump from instruction 4 to 12, 7 to 12 ... in the example)
403  */
404  sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions());
405 
406  if (simple)
407  pctx->pop_case_expr_id();
408 
409  sp->m_parser_data.do_cont_backpatch(sp->instructions());
410 }
411 
412 
413 static bool
414 find_sys_var_null_base(THD *thd, struct sys_var_with_base *tmp)
415 {
416  tmp->var= find_sys_var(thd, tmp->base_name.str, tmp->base_name.length);
417 
418  if (tmp->var == NULL)
419  my_error(ER_UNKNOWN_SYSTEM_VARIABLE, MYF(0), tmp->base_name.str);
420  else
421  tmp->base_name= null_lex_str;
422 
423  return thd->is_error();
424 }
425 
426 
439 static bool
440 set_system_variable(THD *thd, struct sys_var_with_base *tmp,
441  enum enum_var_type var_type, Item *val)
442 {
443  set_var *var;
444  LEX *lex= thd->lex;
445  sp_head *sp= lex->sphead;
446  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
447 
448  /* No AUTOCOMMIT from a stored function or trigger. */
449  if (pctx && tmp->var == Sys_autocommit_ptr)
450  sp->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
451 
452 #ifdef HAVE_REPLICATION
453  if (lex->uses_stored_routines() &&
454  ((tmp->var == Sys_gtid_next_ptr
455 #ifdef HAVE_GTID_NEXT_LIST
456  || tmp->var == Sys_gtid_next_list_ptr
457 #endif
458  ) ||
459  Sys_gtid_purged_ptr == tmp->var))
460  {
461  my_error(ER_SET_STATEMENT_CANNOT_INVOKE_FUNCTION, MYF(0),
462  tmp->var->name.str);
463  return TRUE;
464  }
465 #endif
466 
467  if (! (var= new set_var(var_type, tmp->var, &tmp->base_name, val)))
468  return TRUE;
469 
470  return lex->var_list.push_back(var);
471 }
472 
473 
486 static bool set_trigger_new_row(THD *thd,
487  LEX_STRING trigger_field_name,
488  Item *expr_item,
489  LEX_STRING expr_query)
490 {
491  LEX *lex= thd->lex;
492  sp_head *sp= lex->sphead;
493 
494  DBUG_ASSERT(expr_item);
495  DBUG_ASSERT(sp->m_trg_chistics.action_time == TRG_ACTION_BEFORE &&
496  (sp->m_trg_chistics.event == TRG_EVENT_INSERT ||
497  sp->m_trg_chistics.event == TRG_EVENT_UPDATE));
498 
499  Item_trigger_field *trg_fld=
500  new (thd->mem_root) Item_trigger_field(lex->current_context(),
501  Item_trigger_field::NEW_ROW,
502  trigger_field_name.str,
503  UPDATE_ACL, false);
504 
505  if (!trg_fld)
506  return true;
507 
509  new (thd->mem_root)
510  sp_instr_set_trigger_field(sp->instructions(),
511  lex,
512  trigger_field_name,
513  trg_fld, expr_item,
514  expr_query);
515 
516  if (!i)
517  return true;
518 
519  /*
520  Let us add this item to list of all Item_trigger_field
521  objects in trigger.
522  */
523  sp->m_trg_table_fields.link_in_list(trg_fld, &trg_fld->next_trg_field);
524 
525  return sp->add_instr(thd, i);
526 }
527 
528 
545 static Item_splocal* create_item_for_sp_var(THD *thd,
546  LEX_STRING name,
547  sp_variable *spv,
548  const char *query_start_ptr,
549  const char *start_in_q,
550  const char *end_in_q)
551 {
552  LEX *lex= thd->lex;
553  uint spv_pos_in_query= 0;
554  uint spv_len_in_query= 0;
555  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
556 
557  /* If necessary, look for the variable. */
558  if (pctx && !spv)
559  spv= pctx->find_variable(name, false);
560 
561  if (!spv)
562  {
563  my_error(ER_SP_UNDECLARED_VAR, MYF(0), name.str);
564  return NULL;
565  }
566 
567  DBUG_ASSERT(pctx && spv);
568 
569  if (query_start_ptr)
570  {
571  /* Position and length of the SP variable name in the query. */
572  spv_pos_in_query= start_in_q - query_start_ptr;
573  spv_len_in_query= end_in_q - start_in_q;
574  }
575 
576  Item_splocal *item=
577  new (thd->mem_root) Item_splocal(
578  name, spv->offset, spv->type, spv_pos_in_query, spv_len_in_query);
579 
580 #ifndef DBUG_OFF
581  if (item)
582  item->m_sp= lex->sphead;
583 #endif
584 
585  return item;
586 }
587 
588 
600 Item* handle_sql2003_note184_exception(THD *thd, Item* left, bool equal,
601  Item *expr)
602 {
603  /*
604  Relevant references for this issue:
605  - SQL:2003, Part 2, section 8.4 <in predicate>, page 383,
606  - SQL:2003, Part 2, section 7.2 <row value expression>, page 296,
607  - SQL:2003, Part 2, section 6.3 <value expression primary>, page 174,
608  - SQL:2003, Part 2, section 7.15 <subquery>, page 370,
609  - SQL:2003 Feature F561, "Full value expressions".
610 
611  The exception in SQL:2003 Note 184 means:
612  Item_singlerow_subselect, which corresponds to a <scalar subquery>,
613  should be re-interpreted as an Item_in_subselect, which corresponds
614  to a <table subquery> when used inside an <in predicate>.
615 
616  Our reading of Note 184 is reccursive, so that all:
617  - IN (( <subquery> ))
618  - IN ((( <subquery> )))
619  - IN '('^N <subquery> ')'^N
620  - etc
621  should be interpreted as a <table subquery>, no matter how deep in the
622  expression the <subquery> is.
623  */
624 
625  Item *result;
626 
627  DBUG_ENTER("handle_sql2003_note184_exception");
628 
629  if (expr->type() == Item::SUBSELECT_ITEM)
630  {
631  Item_subselect *expr2 = (Item_subselect*) expr;
632 
633  if (expr2->substype() == Item_subselect::SINGLEROW_SUBS)
634  {
636  st_select_lex *subselect;
637 
638  /*
639  Implement the mandated change, by altering the semantic tree:
640  left IN Item_singlerow_subselect(subselect)
641  is modified to
642  left IN (subselect)
643  which is represented as
644  Item_in_subselect(left, subselect)
645  */
646  subselect= expr3->invalidate_and_restore_select_lex();
647  result= new (thd->mem_root) Item_in_subselect(left, subselect);
648 
649  if (! equal)
650  result = negate_expression(thd, result);
651 
652  DBUG_RETURN(result);
653  }
654  }
655 
656  if (equal)
657  result= new (thd->mem_root) Item_func_eq(left, expr);
658  else
659  result= new (thd->mem_root) Item_func_ne(left, expr);
660 
661  DBUG_RETURN(result);
662 }
663 
682 bool add_select_to_union_list(LEX *lex, bool is_union_distinct,
683  bool is_top_level)
684 {
685  /*
686  Only the last SELECT can have INTO. Since the grammar won't allow INTO in
687  a nested SELECT, we make this check only when creating a top-level SELECT.
688  */
689  if (is_top_level && lex->result)
690  {
691  my_error(ER_WRONG_USAGE, MYF(0), "UNION", "INTO");
692  return TRUE;
693  }
694  if (lex->proc_analyse)
695  {
696  my_error(ER_WRONG_USAGE, MYF(0), "UNION", "SELECT ... PROCEDURE ANALYSE()");
697  return TRUE;
698  }
699  if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE)
700  {
701  my_parse_error(ER(ER_SYNTAX_ERROR));
702  return TRUE;
703  }
704  /* This counter shouldn't be incremented for UNION parts */
705  lex->nest_level--;
706  if (mysql_new_select(lex, 0))
707  return TRUE;
708  mysql_init_select(lex);
709  lex->current_select->linkage=UNION_TYPE;
710  if (is_union_distinct) /* UNION DISTINCT - remember position */
711  lex->current_select->master_unit()->union_distinct=
712  lex->current_select;
713  return FALSE;
714 }
715 
723 bool setup_select_in_parentheses(LEX *lex)
724 {
725  SELECT_LEX * sel= lex->current_select;
726  if (sel->set_braces(1))
727  {
728  my_parse_error(ER(ER_SYNTAX_ERROR));
729  return TRUE;
730  }
731  if (sel->linkage == UNION_TYPE &&
732  !sel->master_unit()->first_select()->braces &&
733  sel->master_unit()->first_select()->linkage ==
734  UNION_TYPE)
735  {
736  my_parse_error(ER(ER_SYNTAX_ERROR));
737  return TRUE;
738  }
739  if (sel->linkage == UNION_TYPE &&
740  sel->olap != UNSPECIFIED_OLAP_TYPE &&
741  sel->master_unit()->fake_select_lex)
742  {
743  my_error(ER_WRONG_USAGE, MYF(0), "CUBE/ROLLUP", "ORDER BY");
744  return TRUE;
745  }
746  /* select in braces, can't contain global parameters */
747  if (sel->master_unit()->fake_select_lex)
748  sel->master_unit()->global_parameters=
749  sel->master_unit()->fake_select_lex;
750  return FALSE;
751 }
752 
753 static bool add_create_index_prepare (LEX *lex, Table_ident *table)
754 {
755  lex->sql_command= SQLCOM_CREATE_INDEX;
756  if (!lex->current_select->add_table_to_list(lex->thd, table, NULL,
757  TL_OPTION_UPDATING,
758  TL_READ_NO_INSERT,
759  MDL_SHARED_UPGRADABLE))
760  return TRUE;
761  lex->alter_info.reset();
762  lex->alter_info.flags= Alter_info::ALTER_ADD_INDEX;
763  lex->col_list.empty();
764  lex->change= NullS;
765  return FALSE;
766 }
767 
768 static bool add_create_index (LEX *lex, Key::Keytype type,
769  const LEX_STRING &name,
770  KEY_CREATE_INFO *info= NULL, bool generated= 0)
771 {
772  Key *key;
773  key= new Key(type, name, info ? info : &lex->key_create_info, generated,
774  lex->col_list);
775  if (key == NULL)
776  return TRUE;
777 
778  lex->alter_info.key_list.push_back(key);
779  lex->col_list.empty();
780  return FALSE;
781 }
782 
794 static LEX_STRING make_string(THD *thd,
795  const char *start_ptr,
796  const char *end_ptr)
797 {
798  LEX_STRING s;
799 
800  s.length= end_ptr - start_ptr;
801  s.str= (char *) thd->alloc(s.length + 1);
802 
803  if (s.str)
804  strmake(s.str, start_ptr, s.length);
805 
806  return s;
807 }
808 
809 /*
810  The start is either lip->ptr, if there was no lookahead, lip->tok_start
811  otherwise.
812 */
813 #define YY_TOKEN_START \
814  ((yychar == YYEMPTY) ? YYLIP->get_ptr() : YYLIP->get_tok_start())
815 
816 /*
817  The end is either lip->ptr, if there was no lookahead,
818  or lip->tok_end otherwise.
819 */
820 
821 #define YY_TOKEN_END \
822  ((yychar == YYEMPTY) ? YYLIP->get_ptr() : YYLIP->get_tok_end())
823 
840 static void sp_create_assignment_lex(THD *thd, const char *option_ptr)
841 {
842  LEX *lex= thd->lex;
843  sp_head *sp= lex->sphead;
844 
845  /*
846  We can come here in the following cases:
847 
848  1. it's a regular SET statement outside stored programs
849  (lex->sphead is NULL);
850 
851  2. we're parsing a stored program normally (loading from mysql.proc, ...);
852 
853  3. we're re-parsing SET-statement with a user variable after meta-data
854  change. It's guaranteed, that:
855  - this SET-statement deals with a user/system variable (otherwise, it
856  would be a different SP-instruction, and we would parse an expression);
857  - this SET-statement has a single user/system variable assignment
858  (that's how we generate sp_instr_stmt-instructions for SET-statements).
859  So, in this case, even if lex->sphead is set, we should not process
860  further.
861  */
862 
863  if (!sp || // case #1
864  sp->is_invoked()) // case #3
865  {
866  return;
867  }
868 
869  LEX *old_lex= lex;
870  sp->reset_lex(thd);
871  lex= thd->lex;
872 
873  /* Set new LEX as if we at start of set rule. */
874  mysql_init_select(lex);
875  lex->sql_command= SQLCOM_SET_OPTION;
876  lex->var_list.empty();
877  lex->one_shot_set= 0;
878  lex->autocommit= 0;
879 
880  /*
881  It's a SET statement within SP. It will be either translated
882  into one or more sp_instr_stmt instructions, or it will be
883  sp_instr_set / sp_instr_set_trigger_field instructions.
884  In any case, position of SP-variable can not be determined
885  reliably. So, we set the start pointer of the current statement
886  to NULL.
887  */
888  sp->m_parser_data.set_current_stmt_start_ptr(NULL);
889  sp->m_parser_data.set_option_start_ptr(option_ptr);
890 
891  /* Inherit from outer lex. */
892  lex->option_type= old_lex->option_type;
893 }
894 
895 
907 static bool sp_create_assignment_instr(THD *thd, const char *expr_end_ptr)
908 {
909  LEX *lex= thd->lex;
910  sp_head *sp= lex->sphead;
911 
912  /*
913  We can come here in the following cases:
914 
915  1. it's a regular SET statement outside stored programs
916  (lex->sphead is NULL);
917 
918  2. we're parsing a stored program normally (loading from mysql.proc, ...);
919 
920  3. we're re-parsing SET-statement with a user variable after meta-data
921  change. It's guaranteed, that:
922  - this SET-statement deals with a user/system variable (otherwise, it
923  would be a different SP-instruction, and we would parse an expression);
924  - this SET-statement has a single user/system variable assignment
925  (that's how we generate sp_instr_stmt-instructions for SET-statements).
926  So, in this case, even if lex->sphead is set, we should not process
927  further.
928  */
929 
930  if (!sp || // case #1
931  sp->is_invoked()) // case #3
932  {
933  return false;
934  }
935 
936  if (!lex->var_list.is_empty())
937  {
938  /* Extract expression string. */
939 
940  const char *expr_start_ptr= sp->m_parser_data.get_option_start_ptr();
941 
942  LEX_STRING expr;
943  expr.str= (char *) expr_start_ptr;
944  expr.length= expr_end_ptr - expr_start_ptr;
945 
946  /* Construct SET-statement query. */
947 
948  LEX_STRING set_stmt_query;
949 
950  set_stmt_query.length= expr.length + 3;
951  set_stmt_query.str= (char *) thd->alloc(set_stmt_query.length + 1);
952 
953  if (!set_stmt_query.str)
954  return true;
955 
956  strmake(strmake(set_stmt_query.str, "SET", 3),
957  expr.str, expr.length);
958 
959  /*
960  We have assignment to user or system variable or option setting, so we
961  should construct sp_instr_stmt for it.
962  */
963 
964  sp_instr_stmt *i=
965  new (thd->mem_root)
966  sp_instr_stmt(sp->instructions(), lex, set_stmt_query);
967 
968  if (!i || sp->add_instr(thd, i))
969  return true;
970  }
971 
972  /* Remember option_type of the currently parsed LEX. */
973  enum_var_type inner_option_type= lex->option_type;
974 
975  if (sp->restore_lex(thd))
976  return true;
977 
978  /* Copy option_type to outer lex in case it has changed. */
979  thd->lex->option_type= inner_option_type;
980 
981  return false;
982 }
983 
997 bool match_authorized_user(Security_context *ctx, LEX_USER *user)
998 {
999  if(user->user.str && my_strcasecmp(system_charset_info,
1000  ctx->priv_user,
1001  user->user.str) == 0)
1002  {
1003  /*
1004  users match; let's compare hosts.
1005  1. first compare with the host we actually authorized,
1006  2. then see if we match the host mask of the priv_host
1007  */
1008  if (user->host.str && my_strcasecmp(system_charset_info,
1009  user->host.str,
1010  ctx->priv_host) == 0)
1011  {
1012  /* specified user exactly match the authorized user */
1013  return true;
1014  }
1015  }
1016  return false;
1017 }
1018 
1019 
1020 
1021 
1022 /* Line 189 of yacc.c */
1023 #line 1024 "/export/home/pb2/build/sb_0-10188203-1378798362.68/dist_GPL/sql/sql_yacc.cc"
1024 
1025 /* Enabling traces. */
1026 #ifndef YYDEBUG
1027 # define YYDEBUG 0
1028 #endif
1029 
1030 /* Enabling verbose error messages. */
1031 #ifdef YYERROR_VERBOSE
1032 # undef YYERROR_VERBOSE
1033 # define YYERROR_VERBOSE 1
1034 #else
1035 # define YYERROR_VERBOSE 0
1036 #endif
1037 
1038 /* Enabling the token table. */
1039 #ifndef YYTOKEN_TABLE
1040 # define YYTOKEN_TABLE 0
1041 #endif
1042 
1043 
1044 /* Tokens. */
1045 #ifndef YYTOKENTYPE
1046 # define YYTOKENTYPE
1047  /* Put the tokens into the symbol table, so that GDB and other debuggers
1048  know about them. */
1049  enum yytokentype {
1050  ABORT_SYM = 258,
1051  ACCESSIBLE_SYM = 259,
1052  ACTION = 260,
1053  ADD = 261,
1054  ADDDATE_SYM = 262,
1055  AFTER_SYM = 263,
1056  AGAINST = 264,
1057  AGGREGATE_SYM = 265,
1058  ALGORITHM_SYM = 266,
1059  ALL = 267,
1060  ALTER = 268,
1061  ANALYSE_SYM = 269,
1062  ANALYZE_SYM = 270,
1063  AND_AND_SYM = 271,
1064  AND_SYM = 272,
1065  ANY_SYM = 273,
1066  AS = 274,
1067  ASC = 275,
1068  ASCII_SYM = 276,
1069  ASENSITIVE_SYM = 277,
1070  AT_SYM = 278,
1071  AUTOEXTEND_SIZE_SYM = 279,
1072  AUTO_INC = 280,
1073  AVG_ROW_LENGTH = 281,
1074  AVG_SYM = 282,
1075  BACKUP_SYM = 283,
1076  BEFORE_SYM = 284,
1077  BEGIN_SYM = 285,
1078  BETWEEN_SYM = 286,
1079  BIGINT = 287,
1080  BINARY = 288,
1081  BINLOG_SYM = 289,
1082  BIN_NUM = 290,
1083  BIT_AND = 291,
1084  BIT_OR = 292,
1085  BIT_SYM = 293,
1086  BIT_XOR = 294,
1087  BLOB_SYM = 295,
1088  BLOCK_SYM = 296,
1089  BOOLEAN_SYM = 297,
1090  BOOL_SYM = 298,
1091  BOTH = 299,
1092  BTREE_SYM = 300,
1093  BY = 301,
1094  BYTE_SYM = 302,
1095  CACHE_SYM = 303,
1096  CALL_SYM = 304,
1097  CASCADE = 305,
1098  CASCADED = 306,
1099  CASE_SYM = 307,
1100  CAST_SYM = 308,
1101  CATALOG_NAME_SYM = 309,
1102  CHAIN_SYM = 310,
1103  CHANGE = 311,
1104  CHANGED = 312,
1105  CHARSET = 313,
1106  CHAR_SYM = 314,
1107  CHECKSUM_SYM = 315,
1108  CHECK_SYM = 316,
1109  CIPHER_SYM = 317,
1110  CLASS_ORIGIN_SYM = 318,
1111  CLIENT_SYM = 319,
1112  CLOSE_SYM = 320,
1113  COALESCE = 321,
1114  CODE_SYM = 322,
1115  COLLATE_SYM = 323,
1116  COLLATION_SYM = 324,
1117  COLUMNS = 325,
1118  COLUMN_SYM = 326,
1119  COLUMN_FORMAT_SYM = 327,
1120  COLUMN_NAME_SYM = 328,
1121  COMMENT_SYM = 329,
1122  COMMITTED_SYM = 330,
1123  COMMIT_SYM = 331,
1124  COMPACT_SYM = 332,
1125  COMPLETION_SYM = 333,
1126  COMPRESSED_SYM = 334,
1127  CONCURRENT = 335,
1128  CONDITION_SYM = 336,
1129  CONNECTION_SYM = 337,
1130  CONSISTENT_SYM = 338,
1131  CONSTRAINT = 339,
1132  CONSTRAINT_CATALOG_SYM = 340,
1133  CONSTRAINT_NAME_SYM = 341,
1134  CONSTRAINT_SCHEMA_SYM = 342,
1135  CONTAINS_SYM = 343,
1136  CONTEXT_SYM = 344,
1137  CONTINUE_SYM = 345,
1138  CONVERT_SYM = 346,
1139  COUNT_SYM = 347,
1140  CPU_SYM = 348,
1141  CREATE = 349,
1142  CROSS = 350,
1143  CUBE_SYM = 351,
1144  CURDATE = 352,
1145  CURRENT_SYM = 353,
1146  CURRENT_USER = 354,
1147  CURSOR_SYM = 355,
1148  CURSOR_NAME_SYM = 356,
1149  CURTIME = 357,
1150  DATABASE = 358,
1151  DATABASES = 359,
1152  DATAFILE_SYM = 360,
1153  DATA_SYM = 361,
1154  DATETIME = 362,
1155  DATE_ADD_INTERVAL = 363,
1156  DATE_SUB_INTERVAL = 364,
1157  DATE_SYM = 365,
1158  DAY_HOUR_SYM = 366,
1159  DAY_MICROSECOND_SYM = 367,
1160  DAY_MINUTE_SYM = 368,
1161  DAY_SECOND_SYM = 369,
1162  DAY_SYM = 370,
1163  DEALLOCATE_SYM = 371,
1164  DECIMAL_NUM = 372,
1165  DECIMAL_SYM = 373,
1166  DECLARE_SYM = 374,
1167  DEFAULT = 375,
1168  DEFAULT_AUTH_SYM = 376,
1169  DEFINER_SYM = 377,
1170  DELAYED_SYM = 378,
1171  DELAY_KEY_WRITE_SYM = 379,
1172  DELETE_SYM = 380,
1173  DESC = 381,
1174  DESCRIBE = 382,
1175  DES_KEY_FILE = 383,
1176  DETERMINISTIC_SYM = 384,
1177  DIAGNOSTICS_SYM = 385,
1178  DIRECTORY_SYM = 386,
1179  DISABLE_SYM = 387,
1180  DISCARD = 388,
1181  DISK_SYM = 389,
1182  DISTINCT = 390,
1183  DIV_SYM = 391,
1184  DOUBLE_SYM = 392,
1185  DO_SYM = 393,
1186  DROP = 394,
1187  DUAL_SYM = 395,
1188  DUMPFILE = 396,
1189  DUPLICATE_SYM = 397,
1190  DYNAMIC_SYM = 398,
1191  EACH_SYM = 399,
1192  ELSE = 400,
1193  ELSEIF_SYM = 401,
1194  ENABLE_SYM = 402,
1195  ENCLOSED = 403,
1196  END = 404,
1197  ENDS_SYM = 405,
1198  END_OF_INPUT = 406,
1199  ENGINES_SYM = 407,
1200  ENGINE_SYM = 408,
1201  ENUM = 409,
1202  EQ = 410,
1203  EQUAL_SYM = 411,
1204  ERROR_SYM = 412,
1205  ERRORS = 413,
1206  ESCAPED = 414,
1207  ESCAPE_SYM = 415,
1208  EVENTS_SYM = 416,
1209  EVENT_SYM = 417,
1210  EVERY_SYM = 418,
1211  EXCHANGE_SYM = 419,
1212  EXECUTE_SYM = 420,
1213  EXISTS = 421,
1214  EXIT_SYM = 422,
1215  EXPANSION_SYM = 423,
1216  EXPIRE_SYM = 424,
1217  EXPORT_SYM = 425,
1218  EXTENDED_SYM = 426,
1219  EXTENT_SIZE_SYM = 427,
1220  EXTRACT_SYM = 428,
1221  FALSE_SYM = 429,
1222  FAST_SYM = 430,
1223  FAULTS_SYM = 431,
1224  FETCH_SYM = 432,
1225  FILE_SYM = 433,
1226  FIRST_SYM = 434,
1227  FIXED_SYM = 435,
1228  FLOAT_NUM = 436,
1229  FLOAT_SYM = 437,
1230  FLUSH_SYM = 438,
1231  FORCE_SYM = 439,
1232  FOREIGN = 440,
1233  FOR_SYM = 441,
1234  FORMAT_SYM = 442,
1235  FOUND_SYM = 443,
1236  FROM = 444,
1237  FULL = 445,
1238  FULLTEXT_SYM = 446,
1239  FUNCTION_SYM = 447,
1240  GE = 448,
1241  GENERAL = 449,
1242  GEOMETRYCOLLECTION = 450,
1243  GEOMETRY_SYM = 451,
1244  GET_FORMAT = 452,
1245  GET_SYM = 453,
1246  GLOBAL_SYM = 454,
1247  GRANT = 455,
1248  GRANTS = 456,
1249  GROUP_SYM = 457,
1250  GROUP_CONCAT_SYM = 458,
1251  GT_SYM = 459,
1252  HANDLER_SYM = 460,
1253  HASH_SYM = 461,
1254  HAVING = 462,
1255  HELP_SYM = 463,
1256  HEX_NUM = 464,
1257  HIGH_PRIORITY = 465,
1258  HOST_SYM = 466,
1259  HOSTS_SYM = 467,
1260  HOUR_MICROSECOND_SYM = 468,
1261  HOUR_MINUTE_SYM = 469,
1262  HOUR_SECOND_SYM = 470,
1263  HOUR_SYM = 471,
1264  IDENT = 472,
1265  IDENTIFIED_SYM = 473,
1266  IDENT_QUOTED = 474,
1267  IF = 475,
1268  IGNORE_SYM = 476,
1269  IGNORE_SERVER_IDS_SYM = 477,
1270  IMPORT = 478,
1271  INDEXES = 479,
1272  INDEX_SYM = 480,
1273  INFILE = 481,
1274  INITIAL_SIZE_SYM = 482,
1275  INNER_SYM = 483,
1276  INOUT_SYM = 484,
1277  INSENSITIVE_SYM = 485,
1278  INSERT = 486,
1279  INSERT_METHOD = 487,
1280  INSTALL_SYM = 488,
1281  INTERVAL_SYM = 489,
1282  INTO = 490,
1283  INT_SYM = 491,
1284  INVOKER_SYM = 492,
1285  IN_SYM = 493,
1286  IO_AFTER_GTIDS = 494,
1287  IO_BEFORE_GTIDS = 495,
1288  IO_SYM = 496,
1289  IPC_SYM = 497,
1290  IS = 498,
1291  ISOLATION = 499,
1292  ISSUER_SYM = 500,
1293  ITERATE_SYM = 501,
1294  JOIN_SYM = 502,
1295  KEYS = 503,
1296  KEY_BLOCK_SIZE = 504,
1297  KEY_SYM = 505,
1298  KILL_SYM = 506,
1299  LANGUAGE_SYM = 507,
1300  LAST_SYM = 508,
1301  LE = 509,
1302  LEADING = 510,
1303  LEAVES = 511,
1304  LEAVE_SYM = 512,
1305  LEFT = 513,
1306  LESS_SYM = 514,
1307  LEVEL_SYM = 515,
1308  LEX_HOSTNAME = 516,
1309  LIKE = 517,
1310  LIMIT = 518,
1311  LINEAR_SYM = 519,
1312  LINES = 520,
1313  LINESTRING = 521,
1314  LIST_SYM = 522,
1315  LOAD = 523,
1316  LOCAL_SYM = 524,
1317  LOCATOR_SYM = 525,
1318  LOCKS_SYM = 526,
1319  LOCK_SYM = 527,
1320  LOGFILE_SYM = 528,
1321  LOGS_SYM = 529,
1322  LONGBLOB = 530,
1323  LONGTEXT = 531,
1324  LONG_NUM = 532,
1325  LONG_SYM = 533,
1326  LOOP_SYM = 534,
1327  LOW_PRIORITY = 535,
1328  LT = 536,
1329  MASTER_AUTO_POSITION_SYM = 537,
1330  MASTER_BIND_SYM = 538,
1331  MASTER_CONNECT_RETRY_SYM = 539,
1332  MASTER_DELAY_SYM = 540,
1333  MASTER_HOST_SYM = 541,
1334  MASTER_LOG_FILE_SYM = 542,
1335  MASTER_LOG_POS_SYM = 543,
1336  MASTER_PASSWORD_SYM = 544,
1337  MASTER_PORT_SYM = 545,
1338  MASTER_RETRY_COUNT_SYM = 546,
1339  MASTER_SERVER_ID_SYM = 547,
1340  MASTER_SSL_CAPATH_SYM = 548,
1341  MASTER_SSL_CA_SYM = 549,
1342  MASTER_SSL_CERT_SYM = 550,
1343  MASTER_SSL_CIPHER_SYM = 551,
1344  MASTER_SSL_CRL_SYM = 552,
1345  MASTER_SSL_CRLPATH_SYM = 553,
1346  MASTER_SSL_KEY_SYM = 554,
1347  MASTER_SSL_SYM = 555,
1348  MASTER_SSL_VERIFY_SERVER_CERT_SYM = 556,
1349  MASTER_SYM = 557,
1350  MASTER_USER_SYM = 558,
1351  MASTER_HEARTBEAT_PERIOD_SYM = 559,
1352  MATCH = 560,
1353  MAX_CONNECTIONS_PER_HOUR = 561,
1354  MAX_QUERIES_PER_HOUR = 562,
1355  MAX_ROWS = 563,
1356  MAX_SIZE_SYM = 564,
1357  MAX_SYM = 565,
1358  MAX_UPDATES_PER_HOUR = 566,
1359  MAX_USER_CONNECTIONS_SYM = 567,
1360  MAX_VALUE_SYM = 568,
1361  MEDIUMBLOB = 569,
1362  MEDIUMINT = 570,
1363  MEDIUMTEXT = 571,
1364  MEDIUM_SYM = 572,
1365  MEMORY_SYM = 573,
1366  MERGE_SYM = 574,
1367  MESSAGE_TEXT_SYM = 575,
1368  MICROSECOND_SYM = 576,
1369  MIGRATE_SYM = 577,
1370  MINUTE_MICROSECOND_SYM = 578,
1371  MINUTE_SECOND_SYM = 579,
1372  MINUTE_SYM = 580,
1373  MIN_ROWS = 581,
1374  MIN_SYM = 582,
1375  MODE_SYM = 583,
1376  MODIFIES_SYM = 584,
1377  MODIFY_SYM = 585,
1378  MOD_SYM = 586,
1379  MONTH_SYM = 587,
1380  MULTILINESTRING = 588,
1381  MULTIPOINT = 589,
1382  MULTIPOLYGON = 590,
1383  MUTEX_SYM = 591,
1384  MYSQL_ERRNO_SYM = 592,
1385  NAMES_SYM = 593,
1386  NAME_SYM = 594,
1387  NATIONAL_SYM = 595,
1388  NATURAL = 596,
1389  NCHAR_STRING = 597,
1390  NCHAR_SYM = 598,
1391  NDBCLUSTER_SYM = 599,
1392  NE = 600,
1393  NEG = 601,
1394  NEW_SYM = 602,
1395  NEXT_SYM = 603,
1396  NODEGROUP_SYM = 604,
1397  NONE_SYM = 605,
1398  NOT2_SYM = 606,
1399  NOT_SYM = 607,
1400  NOW_SYM = 608,
1401  NO_SYM = 609,
1402  NO_WAIT_SYM = 610,
1403  NO_WRITE_TO_BINLOG = 611,
1404  NULL_SYM = 612,
1405  NUM = 613,
1406  NUMBER_SYM = 614,
1407  NUMERIC_SYM = 615,
1408  NVARCHAR_SYM = 616,
1409  OFFSET_SYM = 617,
1410  OLD_PASSWORD = 618,
1411  ON = 619,
1412  ONE_SYM = 620,
1413  ONLY_SYM = 621,
1414  OPEN_SYM = 622,
1415  OPTIMIZE = 623,
1416  OPTIONS_SYM = 624,
1417  OPTION = 625,
1418  OPTIONALLY = 626,
1419  OR2_SYM = 627,
1420  ORDER_SYM = 628,
1421  OR_OR_SYM = 629,
1422  OR_SYM = 630,
1423  OUTER = 631,
1424  OUTFILE = 632,
1425  OUT_SYM = 633,
1426  OWNER_SYM = 634,
1427  PACK_KEYS_SYM = 635,
1428  PAGE_SYM = 636,
1429  PARAM_MARKER = 637,
1430  PARSER_SYM = 638,
1431  PARTIAL = 639,
1432  PARTITION_SYM = 640,
1433  PARTITIONS_SYM = 641,
1434  PARTITIONING_SYM = 642,
1435  PASSWORD = 643,
1436  PHASE_SYM = 644,
1437  PLUGIN_DIR_SYM = 645,
1438  PLUGIN_SYM = 646,
1439  PLUGINS_SYM = 647,
1440  POINT_SYM = 648,
1441  POLYGON = 649,
1442  PORT_SYM = 650,
1443  POSITION_SYM = 651,
1444  PRECISION = 652,
1445  PREPARE_SYM = 653,
1446  PRESERVE_SYM = 654,
1447  PREV_SYM = 655,
1448  PRIMARY_SYM = 656,
1449  PRIVILEGES = 657,
1450  PROCEDURE_SYM = 658,
1451  PROCESS = 659,
1452  PROCESSLIST_SYM = 660,
1453  PROFILE_SYM = 661,
1454  PROFILES_SYM = 662,
1455  PROXY_SYM = 663,
1456  PURGE = 664,
1457  QUARTER_SYM = 665,
1458  QUERY_SYM = 666,
1459  QUICK = 667,
1460  RANGE_SYM = 668,
1461  READS_SYM = 669,
1462  READ_ONLY_SYM = 670,
1463  READ_SYM = 671,
1464  READ_WRITE_SYM = 672,
1465  REAL = 673,
1466  REBUILD_SYM = 674,
1467  RECOVER_SYM = 675,
1468  REDOFILE_SYM = 676,
1469  REDO_BUFFER_SIZE_SYM = 677,
1470  REDUNDANT_SYM = 678,
1471  REFERENCES = 679,
1472  REGEXP = 680,
1473  RELAY = 681,
1474  RELAYLOG_SYM = 682,
1475  RELAY_LOG_FILE_SYM = 683,
1476  RELAY_LOG_POS_SYM = 684,
1477  RELAY_THREAD = 685,
1478  RELEASE_SYM = 686,
1479  RELOAD = 687,
1480  REMOVE_SYM = 688,
1481  RENAME = 689,
1482  REORGANIZE_SYM = 690,
1483  REPAIR = 691,
1484  REPEATABLE_SYM = 692,
1485  REPEAT_SYM = 693,
1486  REPLACE = 694,
1487  REPLICATION = 695,
1488  REQUIRE_SYM = 696,
1489  RESET_SYM = 697,
1490  RESIGNAL_SYM = 698,
1491  RESOURCES = 699,
1492  RESTORE_SYM = 700,
1493  RESTRICT = 701,
1494  RESUME_SYM = 702,
1495  RETURNED_SQLSTATE_SYM = 703,
1496  RETURNS_SYM = 704,
1497  RETURN_SYM = 705,
1498  REVERSE_SYM = 706,
1499  REVOKE = 707,
1500  RIGHT = 708,
1501  ROLLBACK_SYM = 709,
1502  ROLLUP_SYM = 710,
1503  ROUTINE_SYM = 711,
1504  ROWS_SYM = 712,
1505  ROW_FORMAT_SYM = 713,
1506  ROW_SYM = 714,
1507  ROW_COUNT_SYM = 715,
1508  RTREE_SYM = 716,
1509  SAVEPOINT_SYM = 717,
1510  SCHEDULE_SYM = 718,
1511  SCHEMA_NAME_SYM = 719,
1512  SECOND_MICROSECOND_SYM = 720,
1513  SECOND_SYM = 721,
1514  SECURITY_SYM = 722,
1515  SELECT_SYM = 723,
1516  SENSITIVE_SYM = 724,
1517  SEPARATOR_SYM = 725,
1518  SERIALIZABLE_SYM = 726,
1519  SERIAL_SYM = 727,
1520  SESSION_SYM = 728,
1521  SERVER_SYM = 729,
1522  SERVER_OPTIONS = 730,
1523  SET = 731,
1524  SET_VAR = 732,
1525  SHARE_SYM = 733,
1526  SHIFT_LEFT = 734,
1527  SHIFT_RIGHT = 735,
1528  SHOW = 736,
1529  SHUTDOWN = 737,
1530  SIGNAL_SYM = 738,
1531  SIGNED_SYM = 739,
1532  SIMPLE_SYM = 740,
1533  SLAVE = 741,
1534  SLOW = 742,
1535  SMALLINT = 743,
1536  SNAPSHOT_SYM = 744,
1537  SOCKET_SYM = 745,
1538  SONAME_SYM = 746,
1539  SOUNDS_SYM = 747,
1540  SOURCE_SYM = 748,
1541  SPATIAL_SYM = 749,
1542  SPECIFIC_SYM = 750,
1543  SQLEXCEPTION_SYM = 751,
1544  SQLSTATE_SYM = 752,
1545  SQLWARNING_SYM = 753,
1546  SQL_AFTER_GTIDS = 754,
1547  SQL_AFTER_MTS_GAPS = 755,
1548  SQL_BEFORE_GTIDS = 756,
1549  SQL_BIG_RESULT = 757,
1550  SQL_BUFFER_RESULT = 758,
1551  SQL_CACHE_SYM = 759,
1552  SQL_CALC_FOUND_ROWS = 760,
1553  SQL_NO_CACHE_SYM = 761,
1554  SQL_SMALL_RESULT = 762,
1555  SQL_SYM = 763,
1556  SQL_THREAD = 764,
1557  SSL_SYM = 765,
1558  STARTING = 766,
1559  STARTS_SYM = 767,
1560  START_SYM = 768,
1561  STATS_AUTO_RECALC_SYM = 769,
1562  STATS_PERSISTENT_SYM = 770,
1563  STATS_SAMPLE_PAGES_SYM = 771,
1564  STATUS_SYM = 772,
1565  STDDEV_SAMP_SYM = 773,
1566  STD_SYM = 774,
1567  STOP_SYM = 775,
1568  STORAGE_SYM = 776,
1569  STRAIGHT_JOIN = 777,
1570  STRING_SYM = 778,
1571  SUBCLASS_ORIGIN_SYM = 779,
1572  SUBDATE_SYM = 780,
1573  SUBJECT_SYM = 781,
1574  SUBPARTITIONS_SYM = 782,
1575  SUBPARTITION_SYM = 783,
1576  SUBSTRING = 784,
1577  SUM_SYM = 785,
1578  SUPER_SYM = 786,
1579  SUSPEND_SYM = 787,
1580  SWAPS_SYM = 788,
1581  SWITCHES_SYM = 789,
1582  SYSDATE = 790,
1583  TABLES = 791,
1584  TABLESPACE = 792,
1585  TABLE_REF_PRIORITY = 793,
1586  TABLE_SYM = 794,
1587  TABLE_CHECKSUM_SYM = 795,
1588  TABLE_NAME_SYM = 796,
1589  TEMPORARY = 797,
1590  TEMPTABLE_SYM = 798,
1591  TERMINATED = 799,
1592  TEXT_STRING = 800,
1593  TEXT_SYM = 801,
1594  THAN_SYM = 802,
1595  THEN_SYM = 803,
1596  TIMESTAMP = 804,
1597  TIMESTAMP_ADD = 805,
1598  TIMESTAMP_DIFF = 806,
1599  TIME_SYM = 807,
1600  TINYBLOB = 808,
1601  TINYINT = 809,
1602  TINYTEXT = 810,
1603  TO_SYM = 811,
1604  TRAILING = 812,
1605  TRANSACTION_SYM = 813,
1606  TRIGGERS_SYM = 814,
1607  TRIGGER_SYM = 815,
1608  TRIM = 816,
1609  TRUE_SYM = 817,
1610  TRUNCATE_SYM = 818,
1611  TYPES_SYM = 819,
1612  TYPE_SYM = 820,
1613  UDF_RETURNS_SYM = 821,
1614  ULONGLONG_NUM = 822,
1615  UNCOMMITTED_SYM = 823,
1616  UNDEFINED_SYM = 824,
1617  UNDERSCORE_CHARSET = 825,
1618  UNDOFILE_SYM = 826,
1619  UNDO_BUFFER_SIZE_SYM = 827,
1620  UNDO_SYM = 828,
1621  UNICODE_SYM = 829,
1622  UNINSTALL_SYM = 830,
1623  UNION_SYM = 831,
1624  UNIQUE_SYM = 832,
1625  UNKNOWN_SYM = 833,
1626  UNLOCK_SYM = 834,
1627  UNSIGNED = 835,
1628  UNTIL_SYM = 836,
1629  UPDATE_SYM = 837,
1630  UPGRADE_SYM = 838,
1631  USAGE = 839,
1632  USER = 840,
1633  USE_FRM = 841,
1634  USE_SYM = 842,
1635  USING = 843,
1636  UTC_DATE_SYM = 844,
1637  UTC_TIMESTAMP_SYM = 845,
1638  UTC_TIME_SYM = 846,
1639  VALUES = 847,
1640  VALUE_SYM = 848,
1641  VARBINARY = 849,
1642  VARCHAR = 850,
1643  VARIABLES = 851,
1644  VARIANCE_SYM = 852,
1645  VARYING = 853,
1646  VAR_SAMP_SYM = 854,
1647  VIEW_SYM = 855,
1648  WAIT_SYM = 856,
1649  WARNINGS = 857,
1650  WEEK_SYM = 858,
1651  WEIGHT_STRING_SYM = 859,
1652  WHEN_SYM = 860,
1653  WHERE = 861,
1654  WHILE_SYM = 862,
1655  WITH = 863,
1656  WITH_CUBE_SYM = 864,
1657  WITH_ROLLUP_SYM = 865,
1658  WORK_SYM = 866,
1659  WRAPPER_SYM = 867,
1660  WRITE_SYM = 868,
1661  X509_SYM = 869,
1662  XA_SYM = 870,
1663  XML_SYM = 871,
1664  XOR = 872,
1665  YEAR_MONTH_SYM = 873,
1666  YEAR_SYM = 874,
1667  ZEROFILL = 875
1668  };
1669 #endif
1670 /* Tokens. */
1671 #define ABORT_SYM 258
1672 #define ACCESSIBLE_SYM 259
1673 #define ACTION 260
1674 #define ADD 261
1675 #define ADDDATE_SYM 262
1676 #define AFTER_SYM 263
1677 #define AGAINST 264
1678 #define AGGREGATE_SYM 265
1679 #define ALGORITHM_SYM 266
1680 #define ALL 267
1681 #define ALTER 268
1682 #define ANALYSE_SYM 269
1683 #define ANALYZE_SYM 270
1684 #define AND_AND_SYM 271
1685 #define AND_SYM 272
1686 #define ANY_SYM 273
1687 #define AS 274
1688 #define ASC 275
1689 #define ASCII_SYM 276
1690 #define ASENSITIVE_SYM 277
1691 #define AT_SYM 278
1692 #define AUTOEXTEND_SIZE_SYM 279
1693 #define AUTO_INC 280
1694 #define AVG_ROW_LENGTH 281
1695 #define AVG_SYM 282
1696 #define BACKUP_SYM 283
1697 #define BEFORE_SYM 284
1698 #define BEGIN_SYM 285
1699 #define BETWEEN_SYM 286
1700 #define BIGINT 287
1701 #define BINARY 288
1702 #define BINLOG_SYM 289
1703 #define BIN_NUM 290
1704 #define BIT_AND 291
1705 #define BIT_OR 292
1706 #define BIT_SYM 293
1707 #define BIT_XOR 294
1708 #define BLOB_SYM 295
1709 #define BLOCK_SYM 296
1710 #define BOOLEAN_SYM 297
1711 #define BOOL_SYM 298
1712 #define BOTH 299
1713 #define BTREE_SYM 300
1714 #define BY 301
1715 #define BYTE_SYM 302
1716 #define CACHE_SYM 303
1717 #define CALL_SYM 304
1718 #define CASCADE 305
1719 #define CASCADED 306
1720 #define CASE_SYM 307
1721 #define CAST_SYM 308
1722 #define CATALOG_NAME_SYM 309
1723 #define CHAIN_SYM 310
1724 #define CHANGE 311
1725 #define CHANGED 312
1726 #define CHARSET 313
1727 #define CHAR_SYM 314
1728 #define CHECKSUM_SYM 315
1729 #define CHECK_SYM 316
1730 #define CIPHER_SYM 317
1731 #define CLASS_ORIGIN_SYM 318
1732 #define CLIENT_SYM 319
1733 #define CLOSE_SYM 320
1734 #define COALESCE 321
1735 #define CODE_SYM 322
1736 #define COLLATE_SYM 323
1737 #define COLLATION_SYM 324
1738 #define COLUMNS 325
1739 #define COLUMN_SYM 326
1740 #define COLUMN_FORMAT_SYM 327
1741 #define COLUMN_NAME_SYM 328
1742 #define COMMENT_SYM 329
1743 #define COMMITTED_SYM 330
1744 #define COMMIT_SYM 331
1745 #define COMPACT_SYM 332
1746 #define COMPLETION_SYM 333
1747 #define COMPRESSED_SYM 334
1748 #define CONCURRENT 335
1749 #define CONDITION_SYM 336
1750 #define CONNECTION_SYM 337
1751 #define CONSISTENT_SYM 338
1752 #define CONSTRAINT 339
1753 #define CONSTRAINT_CATALOG_SYM 340
1754 #define CONSTRAINT_NAME_SYM 341
1755 #define CONSTRAINT_SCHEMA_SYM 342
1756 #define CONTAINS_SYM 343
1757 #define CONTEXT_SYM 344
1758 #define CONTINUE_SYM 345
1759 #define CONVERT_SYM 346
1760 #define COUNT_SYM 347
1761 #define CPU_SYM 348
1762 #define CREATE 349
1763 #define CROSS 350
1764 #define CUBE_SYM 351
1765 #define CURDATE 352
1766 #define CURRENT_SYM 353
1767 #define CURRENT_USER 354
1768 #define CURSOR_SYM 355
1769 #define CURSOR_NAME_SYM 356
1770 #define CURTIME 357
1771 #define DATABASE 358
1772 #define DATABASES 359
1773 #define DATAFILE_SYM 360
1774 #define DATA_SYM 361
1775 #define DATETIME 362
1776 #define DATE_ADD_INTERVAL 363
1777 #define DATE_SUB_INTERVAL 364
1778 #define DATE_SYM 365
1779 #define DAY_HOUR_SYM 366
1780 #define DAY_MICROSECOND_SYM 367
1781 #define DAY_MINUTE_SYM 368
1782 #define DAY_SECOND_SYM 369
1783 #define DAY_SYM 370
1784 #define DEALLOCATE_SYM 371
1785 #define DECIMAL_NUM 372
1786 #define DECIMAL_SYM 373
1787 #define DECLARE_SYM 374
1788 #define DEFAULT 375
1789 #define DEFAULT_AUTH_SYM 376
1790 #define DEFINER_SYM 377
1791 #define DELAYED_SYM 378
1792 #define DELAY_KEY_WRITE_SYM 379
1793 #define DELETE_SYM 380
1794 #define DESC 381
1795 #define DESCRIBE 382
1796 #define DES_KEY_FILE 383
1797 #define DETERMINISTIC_SYM 384
1798 #define DIAGNOSTICS_SYM 385
1799 #define DIRECTORY_SYM 386
1800 #define DISABLE_SYM 387
1801 #define DISCARD 388
1802 #define DISK_SYM 389
1803 #define DISTINCT 390
1804 #define DIV_SYM 391
1805 #define DOUBLE_SYM 392
1806 #define DO_SYM 393
1807 #define DROP 394
1808 #define DUAL_SYM 395
1809 #define DUMPFILE 396
1810 #define DUPLICATE_SYM 397
1811 #define DYNAMIC_SYM 398
1812 #define EACH_SYM 399
1813 #define ELSE 400
1814 #define ELSEIF_SYM 401
1815 #define ENABLE_SYM 402
1816 #define ENCLOSED 403
1817 #define END 404
1818 #define ENDS_SYM 405
1819 #define END_OF_INPUT 406
1820 #define ENGINES_SYM 407
1821 #define ENGINE_SYM 408
1822 #define ENUM 409
1823 #define EQ 410
1824 #define EQUAL_SYM 411
1825 #define ERROR_SYM 412
1826 #define ERRORS 413
1827 #define ESCAPED 414
1828 #define ESCAPE_SYM 415
1829 #define EVENTS_SYM 416
1830 #define EVENT_SYM 417
1831 #define EVERY_SYM 418
1832 #define EXCHANGE_SYM 419
1833 #define EXECUTE_SYM 420
1834 #define EXISTS 421
1835 #define EXIT_SYM 422
1836 #define EXPANSION_SYM 423
1837 #define EXPIRE_SYM 424
1838 #define EXPORT_SYM 425
1839 #define EXTENDED_SYM 426
1840 #define EXTENT_SIZE_SYM 427
1841 #define EXTRACT_SYM 428
1842 #define FALSE_SYM 429
1843 #define FAST_SYM 430
1844 #define FAULTS_SYM 431
1845 #define FETCH_SYM 432
1846 #define FILE_SYM 433
1847 #define FIRST_SYM 434
1848 #define FIXED_SYM 435
1849 #define FLOAT_NUM 436
1850 #define FLOAT_SYM 437
1851 #define FLUSH_SYM 438
1852 #define FORCE_SYM 439
1853 #define FOREIGN 440
1854 #define FOR_SYM 441
1855 #define FORMAT_SYM 442
1856 #define FOUND_SYM 443
1857 #define FROM 444
1858 #define FULL 445
1859 #define FULLTEXT_SYM 446
1860 #define FUNCTION_SYM 447
1861 #define GE 448
1862 #define GENERAL 449
1863 #define GEOMETRYCOLLECTION 450
1864 #define GEOMETRY_SYM 451
1865 #define GET_FORMAT 452
1866 #define GET_SYM 453
1867 #define GLOBAL_SYM 454
1868 #define GRANT 455
1869 #define GRANTS 456
1870 #define GROUP_SYM 457
1871 #define GROUP_CONCAT_SYM 458
1872 #define GT_SYM 459
1873 #define HANDLER_SYM 460
1874 #define HASH_SYM 461
1875 #define HAVING 462
1876 #define HELP_SYM 463
1877 #define HEX_NUM 464
1878 #define HIGH_PRIORITY 465
1879 #define HOST_SYM 466
1880 #define HOSTS_SYM 467
1881 #define HOUR_MICROSECOND_SYM 468
1882 #define HOUR_MINUTE_SYM 469
1883 #define HOUR_SECOND_SYM 470
1884 #define HOUR_SYM 471
1885 #define IDENT 472
1886 #define IDENTIFIED_SYM 473
1887 #define IDENT_QUOTED 474
1888 #define IF 475
1889 #define IGNORE_SYM 476
1890 #define IGNORE_SERVER_IDS_SYM 477
1891 #define IMPORT 478
1892 #define INDEXES 479
1893 #define INDEX_SYM 480
1894 #define INFILE 481
1895 #define INITIAL_SIZE_SYM 482
1896 #define INNER_SYM 483
1897 #define INOUT_SYM 484
1898 #define INSENSITIVE_SYM 485
1899 #define INSERT 486
1900 #define INSERT_METHOD 487
1901 #define INSTALL_SYM 488
1902 #define INTERVAL_SYM 489
1903 #define INTO 490
1904 #define INT_SYM 491
1905 #define INVOKER_SYM 492
1906 #define IN_SYM 493
1907 #define IO_AFTER_GTIDS 494
1908 #define IO_BEFORE_GTIDS 495
1909 #define IO_SYM 496
1910 #define IPC_SYM 497
1911 #define IS 498
1912 #define ISOLATION 499
1913 #define ISSUER_SYM 500
1914 #define ITERATE_SYM 501
1915 #define JOIN_SYM 502
1916 #define KEYS 503
1917 #define KEY_BLOCK_SIZE 504
1918 #define KEY_SYM 505
1919 #define KILL_SYM 506
1920 #define LANGUAGE_SYM 507
1921 #define LAST_SYM 508
1922 #define LE 509
1923 #define LEADING 510
1924 #define LEAVES 511
1925 #define LEAVE_SYM 512
1926 #define LEFT 513
1927 #define LESS_SYM 514
1928 #define LEVEL_SYM 515
1929 #define LEX_HOSTNAME 516
1930 #define LIKE 517
1931 #define LIMIT 518
1932 #define LINEAR_SYM 519
1933 #define LINES 520
1934 #define LINESTRING 521
1935 #define LIST_SYM 522
1936 #define LOAD 523
1937 #define LOCAL_SYM 524
1938 #define LOCATOR_SYM 525
1939 #define LOCKS_SYM 526
1940 #define LOCK_SYM 527
1941 #define LOGFILE_SYM 528
1942 #define LOGS_SYM 529
1943 #define LONGBLOB 530
1944 #define LONGTEXT 531
1945 #define LONG_NUM 532
1946 #define LONG_SYM 533
1947 #define LOOP_SYM 534
1948 #define LOW_PRIORITY 535
1949 #define LT 536
1950 #define MASTER_AUTO_POSITION_SYM 537
1951 #define MASTER_BIND_SYM 538
1952 #define MASTER_CONNECT_RETRY_SYM 539
1953 #define MASTER_DELAY_SYM 540
1954 #define MASTER_HOST_SYM 541
1955 #define MASTER_LOG_FILE_SYM 542
1956 #define MASTER_LOG_POS_SYM 543
1957 #define MASTER_PASSWORD_SYM 544
1958 #define MASTER_PORT_SYM 545
1959 #define MASTER_RETRY_COUNT_SYM 546
1960 #define MASTER_SERVER_ID_SYM 547
1961 #define MASTER_SSL_CAPATH_SYM 548
1962 #define MASTER_SSL_CA_SYM 549
1963 #define MASTER_SSL_CERT_SYM 550
1964 #define MASTER_SSL_CIPHER_SYM 551
1965 #define MASTER_SSL_CRL_SYM 552
1966 #define MASTER_SSL_CRLPATH_SYM 553
1967 #define MASTER_SSL_KEY_SYM 554
1968 #define MASTER_SSL_SYM 555
1969 #define MASTER_SSL_VERIFY_SERVER_CERT_SYM 556
1970 #define MASTER_SYM 557
1971 #define MASTER_USER_SYM 558
1972 #define MASTER_HEARTBEAT_PERIOD_SYM 559
1973 #define MATCH 560
1974 #define MAX_CONNECTIONS_PER_HOUR 561
1975 #define MAX_QUERIES_PER_HOUR 562
1976 #define MAX_ROWS 563
1977 #define MAX_SIZE_SYM 564
1978 #define MAX_SYM 565
1979 #define MAX_UPDATES_PER_HOUR 566
1980 #define MAX_USER_CONNECTIONS_SYM 567
1981 #define MAX_VALUE_SYM 568
1982 #define MEDIUMBLOB 569
1983 #define MEDIUMINT 570
1984 #define MEDIUMTEXT 571
1985 #define MEDIUM_SYM 572
1986 #define MEMORY_SYM 573
1987 #define MERGE_SYM 574
1988 #define MESSAGE_TEXT_SYM 575
1989 #define MICROSECOND_SYM 576
1990 #define MIGRATE_SYM 577
1991 #define MINUTE_MICROSECOND_SYM 578
1992 #define MINUTE_SECOND_SYM 579
1993 #define MINUTE_SYM 580
1994 #define MIN_ROWS 581
1995 #define MIN_SYM 582
1996 #define MODE_SYM 583
1997 #define MODIFIES_SYM 584
1998 #define MODIFY_SYM 585
1999 #define MOD_SYM 586
2000 #define MONTH_SYM 587
2001 #define MULTILINESTRING 588
2002 #define MULTIPOINT 589
2003 #define MULTIPOLYGON 590
2004 #define MUTEX_SYM 591
2005 #define MYSQL_ERRNO_SYM 592
2006 #define NAMES_SYM 593
2007 #define NAME_SYM 594
2008 #define NATIONAL_SYM 595
2009 #define NATURAL 596
2010 #define NCHAR_STRING 597
2011 #define NCHAR_SYM 598
2012 #define NDBCLUSTER_SYM 599
2013 #define NE 600
2014 #define NEG 601
2015 #define NEW_SYM 602
2016 #define NEXT_SYM 603
2017 #define NODEGROUP_SYM 604
2018 #define NONE_SYM 605
2019 #define NOT2_SYM 606
2020 #define NOT_SYM 607
2021 #define NOW_SYM 608
2022 #define NO_SYM 609
2023 #define NO_WAIT_SYM 610
2024 #define NO_WRITE_TO_BINLOG 611
2025 #define NULL_SYM 612
2026 #define NUM 613
2027 #define NUMBER_SYM 614
2028 #define NUMERIC_SYM 615
2029 #define NVARCHAR_SYM 616
2030 #define OFFSET_SYM 617
2031 #define OLD_PASSWORD 618
2032 #define ON 619
2033 #define ONE_SYM 620
2034 #define ONLY_SYM 621
2035 #define OPEN_SYM 622
2036 #define OPTIMIZE 623
2037 #define OPTIONS_SYM 624
2038 #define OPTION 625
2039 #define OPTIONALLY 626
2040 #define OR2_SYM 627
2041 #define ORDER_SYM 628
2042 #define OR_OR_SYM 629
2043 #define OR_SYM 630
2044 #define OUTER 631
2045 #define OUTFILE 632
2046 #define OUT_SYM 633
2047 #define OWNER_SYM 634
2048 #define PACK_KEYS_SYM 635
2049 #define PAGE_SYM 636
2050 #define PARAM_MARKER 637
2051 #define PARSER_SYM 638
2052 #define PARTIAL 639
2053 #define PARTITION_SYM 640
2054 #define PARTITIONS_SYM 641
2055 #define PARTITIONING_SYM 642
2056 #define PASSWORD 643
2057 #define PHASE_SYM 644
2058 #define PLUGIN_DIR_SYM 645
2059 #define PLUGIN_SYM 646
2060 #define PLUGINS_SYM 647
2061 #define POINT_SYM 648
2062 #define POLYGON 649
2063 #define PORT_SYM 650
2064 #define POSITION_SYM 651
2065 #define PRECISION 652
2066 #define PREPARE_SYM 653
2067 #define PRESERVE_SYM 654
2068 #define PREV_SYM 655
2069 #define PRIMARY_SYM 656
2070 #define PRIVILEGES 657
2071 #define PROCEDURE_SYM 658
2072 #define PROCESS 659
2073 #define PROCESSLIST_SYM 660
2074 #define PROFILE_SYM 661
2075 #define PROFILES_SYM 662
2076 #define PROXY_SYM 663
2077 #define PURGE 664
2078 #define QUARTER_SYM 665
2079 #define QUERY_SYM 666
2080 #define QUICK 667
2081 #define RANGE_SYM 668
2082 #define READS_SYM 669
2083 #define READ_ONLY_SYM 670
2084 #define READ_SYM 671
2085 #define READ_WRITE_SYM 672
2086 #define REAL 673
2087 #define REBUILD_SYM 674
2088 #define RECOVER_SYM 675
2089 #define REDOFILE_SYM 676
2090 #define REDO_BUFFER_SIZE_SYM 677
2091 #define REDUNDANT_SYM 678
2092 #define REFERENCES 679
2093 #define REGEXP 680
2094 #define RELAY 681
2095 #define RELAYLOG_SYM 682
2096 #define RELAY_LOG_FILE_SYM 683
2097 #define RELAY_LOG_POS_SYM 684
2098 #define RELAY_THREAD 685
2099 #define RELEASE_SYM 686
2100 #define RELOAD 687
2101 #define REMOVE_SYM 688
2102 #define RENAME 689
2103 #define REORGANIZE_SYM 690
2104 #define REPAIR 691
2105 #define REPEATABLE_SYM 692
2106 #define REPEAT_SYM 693
2107 #define REPLACE 694
2108 #define REPLICATION 695
2109 #define REQUIRE_SYM 696
2110 #define RESET_SYM 697
2111 #define RESIGNAL_SYM 698
2112 #define RESOURCES 699
2113 #define RESTORE_SYM 700
2114 #define RESTRICT 701
2115 #define RESUME_SYM 702
2116 #define RETURNED_SQLSTATE_SYM 703
2117 #define RETURNS_SYM 704
2118 #define RETURN_SYM 705
2119 #define REVERSE_SYM 706
2120 #define REVOKE 707
2121 #define RIGHT 708
2122 #define ROLLBACK_SYM 709
2123 #define ROLLUP_SYM 710
2124 #define ROUTINE_SYM 711
2125 #define ROWS_SYM 712
2126 #define ROW_FORMAT_SYM 713
2127 #define ROW_SYM 714
2128 #define ROW_COUNT_SYM 715
2129 #define RTREE_SYM 716
2130 #define SAVEPOINT_SYM 717
2131 #define SCHEDULE_SYM 718
2132 #define SCHEMA_NAME_SYM 719
2133 #define SECOND_MICROSECOND_SYM 720
2134 #define SECOND_SYM 721
2135 #define SECURITY_SYM 722
2136 #define SELECT_SYM 723
2137 #define SENSITIVE_SYM 724
2138 #define SEPARATOR_SYM 725
2139 #define SERIALIZABLE_SYM 726
2140 #define SERIAL_SYM 727
2141 #define SESSION_SYM 728
2142 #define SERVER_SYM 729
2143 #define SERVER_OPTIONS 730
2144 #define SET 731
2145 #define SET_VAR 732
2146 #define SHARE_SYM 733
2147 #define SHIFT_LEFT 734
2148 #define SHIFT_RIGHT 735
2149 #define SHOW 736
2150 #define SHUTDOWN 737
2151 #define SIGNAL_SYM 738
2152 #define SIGNED_SYM 739
2153 #define SIMPLE_SYM 740
2154 #define SLAVE 741
2155 #define SLOW 742
2156 #define SMALLINT 743
2157 #define SNAPSHOT_SYM 744
2158 #define SOCKET_SYM 745
2159 #define SONAME_SYM 746
2160 #define SOUNDS_SYM 747
2161 #define SOURCE_SYM 748
2162 #define SPATIAL_SYM 749
2163 #define SPECIFIC_SYM 750
2164 #define SQLEXCEPTION_SYM 751
2165 #define SQLSTATE_SYM 752
2166 #define SQLWARNING_SYM 753
2167 #define SQL_AFTER_GTIDS 754
2168 #define SQL_AFTER_MTS_GAPS 755
2169 #define SQL_BEFORE_GTIDS 756
2170 #define SQL_BIG_RESULT 757
2171 #define SQL_BUFFER_RESULT 758
2172 #define SQL_CACHE_SYM 759
2173 #define SQL_CALC_FOUND_ROWS 760
2174 #define SQL_NO_CACHE_SYM 761
2175 #define SQL_SMALL_RESULT 762
2176 #define SQL_SYM 763
2177 #define SQL_THREAD 764
2178 #define SSL_SYM 765
2179 #define STARTING 766
2180 #define STARTS_SYM 767
2181 #define START_SYM 768
2182 #define STATS_AUTO_RECALC_SYM 769
2183 #define STATS_PERSISTENT_SYM 770
2184 #define STATS_SAMPLE_PAGES_SYM 771
2185 #define STATUS_SYM 772
2186 #define STDDEV_SAMP_SYM 773
2187 #define STD_SYM 774
2188 #define STOP_SYM 775
2189 #define STORAGE_SYM 776
2190 #define STRAIGHT_JOIN 777
2191 #define STRING_SYM 778
2192 #define SUBCLASS_ORIGIN_SYM 779
2193 #define SUBDATE_SYM 780
2194 #define SUBJECT_SYM 781
2195 #define SUBPARTITIONS_SYM 782
2196 #define SUBPARTITION_SYM 783
2197 #define SUBSTRING 784
2198 #define SUM_SYM 785
2199 #define SUPER_SYM 786
2200 #define SUSPEND_SYM 787
2201 #define SWAPS_SYM 788
2202 #define SWITCHES_SYM 789
2203 #define SYSDATE 790
2204 #define TABLES 791
2205 #define TABLESPACE 792
2206 #define TABLE_REF_PRIORITY 793
2207 #define TABLE_SYM 794
2208 #define TABLE_CHECKSUM_SYM 795
2209 #define TABLE_NAME_SYM 796
2210 #define TEMPORARY 797
2211 #define TEMPTABLE_SYM 798
2212 #define TERMINATED 799
2213 #define TEXT_STRING 800
2214 #define TEXT_SYM 801
2215 #define THAN_SYM 802
2216 #define THEN_SYM 803
2217 #define TIMESTAMP 804
2218 #define TIMESTAMP_ADD 805
2219 #define TIMESTAMP_DIFF 806
2220 #define TIME_SYM 807
2221 #define TINYBLOB 808
2222 #define TINYINT 809
2223 #define TINYTEXT 810
2224 #define TO_SYM 811
2225 #define TRAILING 812
2226 #define TRANSACTION_SYM 813
2227 #define TRIGGERS_SYM 814
2228 #define TRIGGER_SYM 815
2229 #define TRIM 816
2230 #define TRUE_SYM 817
2231 #define TRUNCATE_SYM 818
2232 #define TYPES_SYM 819
2233 #define TYPE_SYM 820
2234 #define UDF_RETURNS_SYM 821
2235 #define ULONGLONG_NUM 822
2236 #define UNCOMMITTED_SYM 823
2237 #define UNDEFINED_SYM 824
2238 #define UNDERSCORE_CHARSET 825
2239 #define UNDOFILE_SYM 826
2240 #define UNDO_BUFFER_SIZE_SYM 827
2241 #define UNDO_SYM 828
2242 #define UNICODE_SYM 829
2243 #define UNINSTALL_SYM 830
2244 #define UNION_SYM 831
2245 #define UNIQUE_SYM 832
2246 #define UNKNOWN_SYM 833
2247 #define UNLOCK_SYM 834
2248 #define UNSIGNED 835
2249 #define UNTIL_SYM 836
2250 #define UPDATE_SYM 837
2251 #define UPGRADE_SYM 838
2252 #define USAGE 839
2253 #define USER 840
2254 #define USE_FRM 841
2255 #define USE_SYM 842
2256 #define USING 843
2257 #define UTC_DATE_SYM 844
2258 #define UTC_TIMESTAMP_SYM 845
2259 #define UTC_TIME_SYM 846
2260 #define VALUES 847
2261 #define VALUE_SYM 848
2262 #define VARBINARY 849
2263 #define VARCHAR 850
2264 #define VARIABLES 851
2265 #define VARIANCE_SYM 852
2266 #define VARYING 853
2267 #define VAR_SAMP_SYM 854
2268 #define VIEW_SYM 855
2269 #define WAIT_SYM 856
2270 #define WARNINGS 857
2271 #define WEEK_SYM 858
2272 #define WEIGHT_STRING_SYM 859
2273 #define WHEN_SYM 860
2274 #define WHERE 861
2275 #define WHILE_SYM 862
2276 #define WITH 863
2277 #define WITH_CUBE_SYM 864
2278 #define WITH_ROLLUP_SYM 865
2279 #define WORK_SYM 866
2280 #define WRAPPER_SYM 867
2281 #define WRITE_SYM 868
2282 #define X509_SYM 869
2283 #define XA_SYM 870
2284 #define XML_SYM 871
2285 #define XOR 872
2286 #define YEAR_MONTH_SYM 873
2287 #define YEAR_SYM 874
2288 #define ZEROFILL 875
2289 
2290 
2291 
2292 
2293 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
2294 typedef union YYSTYPE
2295 {
2296 
2297 /* Line 214 of yacc.c */
2298 #line 965 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
2299 
2300  int num;
2301  ulong ulong_num;
2302  ulonglong ulonglong_number;
2303  longlong longlong_number;
2304  LEX_STRING lex_str;
2305  LEX_STRING *lex_str_ptr;
2306  LEX_SYMBOL symbol;
2307  Table_ident *table;
2308  char *simple_string;
2309  Item *item;
2310  Item_num *item_num;
2311  List<Item> *item_list;
2312  List<String> *string_list;
2313  String *string;
2314  Key_part_spec *key_part;
2315  TABLE_LIST *table_list;
2316  udf_func *udf;
2317  LEX_USER *lex_user;
2318  struct sys_var_with_base variable;
2319  enum enum_var_type var_type;
2320  Key::Keytype key_type;
2321  enum ha_key_alg key_alg;
2322  handlerton *db_type;
2323  enum row_type row_type;
2324  enum ha_rkey_function ha_rkey_mode;
2325  enum enum_ha_read_modes ha_read_mode;
2326  enum enum_tx_isolation tx_isolation;
2327  enum Cast_target cast_type;
2328  enum Item_udftype udf_type;
2329  const CHARSET_INFO *charset;
2330  thr_lock_type lock_type;
2331  interval_type interval, interval_time_st;
2332  timestamp_type date_time_type;
2333  st_select_lex *select_lex;
2334  chooser_compare_func_creator boolfunc2creator;
2335  class sp_condition_value *spcondvalue;
2336  struct { int vars, conds, hndlrs, curs; } spblock;
2337  sp_name *spname;
2338  LEX *lex;
2339  sp_head *sphead;
2340  struct p_elem_val *p_elem_value;
2341  enum index_hint_type index_hint;
2342  enum enum_filetype filetype;
2343  enum Foreign_key::fk_option m_fk_option;
2344  enum enum_yes_no_unknown m_yes_no_unk;
2345  Diag_condition_item_name diag_condition_item_name;
2347  Diagnostics_information *diag_info;
2348  Statement_information_item *stmt_info_item;
2349  Statement_information_item::Name stmt_info_item_name;
2350  List<Statement_information_item> *stmt_info_list;
2351  Condition_information_item *cond_info_item;
2352  Condition_information_item::Name cond_info_item_name;
2353  List<Condition_information_item> *cond_info_list;
2354  bool is_not_empty;
2355 
2356 
2357 
2358 /* Line 214 of yacc.c */
2359 #line 2360 "/export/home/pb2/build/sb_0-10188203-1378798362.68/dist_GPL/sql/sql_yacc.cc"
2360 } YYSTYPE;
2361 # define YYSTYPE_IS_TRIVIAL 1
2362 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
2363 # define YYSTYPE_IS_DECLARED 1
2364 #endif
2365 
2366 
2367 /* Copy the second part of user declarations. */
2368 
2369 /* Line 264 of yacc.c */
2370 #line 1023 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
2371 
2372 bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
2373 
2374 
2375 /* Line 264 of yacc.c */
2376 #line 2377 "/export/home/pb2/build/sb_0-10188203-1378798362.68/dist_GPL/sql/sql_yacc.cc"
2377 
2378 #ifdef short
2379 # undef short
2380 #endif
2381 
2382 #ifdef YYTYPE_UINT8
2383 typedef YYTYPE_UINT8 yytype_uint8;
2384 #else
2385 typedef unsigned char yytype_uint8;
2386 #endif
2387 
2388 #ifdef YYTYPE_INT8
2389 typedef YYTYPE_INT8 yytype_int8;
2390 #elif (defined __STDC__ || defined __C99__FUNC__ \
2391  || defined __cplusplus || defined _MSC_VER)
2392 typedef signed char yytype_int8;
2393 #else
2394 typedef short int yytype_int8;
2395 #endif
2396 
2397 #ifdef YYTYPE_UINT16
2398 typedef YYTYPE_UINT16 yytype_uint16;
2399 #else
2400 typedef unsigned short int yytype_uint16;
2401 #endif
2402 
2403 #ifdef YYTYPE_INT16
2404 typedef YYTYPE_INT16 yytype_int16;
2405 #else
2406 typedef short int yytype_int16;
2407 #endif
2408 
2409 #ifndef YYSIZE_T
2410 # ifdef __SIZE_TYPE__
2411 # define YYSIZE_T __SIZE_TYPE__
2412 # elif defined size_t
2413 # define YYSIZE_T size_t
2414 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
2415  || defined __cplusplus || defined _MSC_VER)
2416 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
2417 # define YYSIZE_T size_t
2418 # else
2419 # define YYSIZE_T unsigned int
2420 # endif
2421 #endif
2422 
2423 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
2424 
2425 #ifndef YY_
2426 # if YYENABLE_NLS
2427 # if ENABLE_NLS
2428 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
2429 # define YY_(msgid) dgettext ("bison-runtime", msgid)
2430 # endif
2431 # endif
2432 # ifndef YY_
2433 # define YY_(msgid) msgid
2434 # endif
2435 #endif
2436 
2437 /* Suppress unused-variable warnings by "using" E. */
2438 #if ! defined lint || defined __GNUC__
2439 # define YYUSE(e) ((void) (e))
2440 #else
2441 # define YYUSE(e) /* empty */
2442 #endif
2443 
2444 /* Identity function, used to suppress warnings about constant conditions. */
2445 #ifndef lint
2446 # define YYID(n) (n)
2447 #else
2448 #if (defined __STDC__ || defined __C99__FUNC__ \
2449  || defined __cplusplus || defined _MSC_VER)
2450 static int
2451 YYID (int yyi)
2452 #else
2453 static int
2454 YYID (yyi)
2455  int yyi;
2456 #endif
2457 {
2458  return yyi;
2459 }
2460 #endif
2461 
2462 #if ! defined yyoverflow || YYERROR_VERBOSE
2463 
2464 /* The parser invokes alloca or malloc; define the necessary symbols. */
2465 
2466 # ifdef YYSTACK_USE_ALLOCA
2467 # if YYSTACK_USE_ALLOCA
2468 # ifdef __GNUC__
2469 # define YYSTACK_ALLOC __builtin_alloca
2470 # elif defined __BUILTIN_VA_ARG_INCR
2471 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
2472 # elif defined _AIX
2473 # define YYSTACK_ALLOC __alloca
2474 # elif defined _MSC_VER
2475 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
2476 # define alloca _alloca
2477 # else
2478 # define YYSTACK_ALLOC alloca
2479 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
2480  || defined __cplusplus || defined _MSC_VER)
2481 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
2482 # ifndef _STDLIB_H
2483 # define _STDLIB_H 1
2484 # endif
2485 # endif
2486 # endif
2487 # endif
2488 # endif
2489 
2490 # ifdef YYSTACK_ALLOC
2491  /* Pacify GCC's `empty if-body' warning. */
2492 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
2493 # ifndef YYSTACK_ALLOC_MAXIMUM
2494  /* The OS might guarantee only one guard page at the bottom of the stack,
2495  and a page size can be as small as 4096 bytes. So we cannot safely
2496  invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
2497  to allow for a few compiler-allocated temporary stack slots. */
2498 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
2499 # endif
2500 # else
2501 # define YYSTACK_ALLOC YYMALLOC
2502 # define YYSTACK_FREE YYFREE
2503 # ifndef YYSTACK_ALLOC_MAXIMUM
2504 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
2505 # endif
2506 # if (defined __cplusplus && ! defined _STDLIB_H \
2507  && ! ((defined YYMALLOC || defined malloc) \
2508  && (defined YYFREE || defined free)))
2509 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
2510 # ifndef _STDLIB_H
2511 # define _STDLIB_H 1
2512 # endif
2513 # endif
2514 # ifndef YYMALLOC
2515 # define YYMALLOC malloc
2516 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
2517  || defined __cplusplus || defined _MSC_VER)
2518 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
2519 # endif
2520 # endif
2521 # ifndef YYFREE
2522 # define YYFREE free
2523 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
2524  || defined __cplusplus || defined _MSC_VER)
2525 void free (void *); /* INFRINGES ON USER NAME SPACE */
2526 # endif
2527 # endif
2528 # endif
2529 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
2530 
2531 
2532 #if (! defined yyoverflow \
2533  && (! defined __cplusplus \
2534  || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
2535 
2536 /* A type that is properly aligned for any stack member. */
2537 union yyalloc
2538 {
2539  yytype_int16 yyss_alloc;
2540  YYSTYPE yyvs_alloc;
2541 };
2542 
2543 /* The size of the maximum gap between one aligned stack and the next. */
2544 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
2545 
2546 /* The size of an array large to enough to hold all stacks, each with
2547  N elements. */
2548 # define YYSTACK_BYTES(N) \
2549  ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
2550  + YYSTACK_GAP_MAXIMUM)
2551 
2552 /* Copy COUNT objects from FROM to TO. The source and destination do
2553  not overlap. */
2554 # ifndef YYCOPY
2555 # if defined __GNUC__ && 1 < __GNUC__
2556 # define YYCOPY(To, From, Count) \
2557  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
2558 # else
2559 # define YYCOPY(To, From, Count) \
2560  do \
2561  { \
2562  YYSIZE_T yyi; \
2563  for (yyi = 0; yyi < (Count); yyi++) \
2564  (To)[yyi] = (From)[yyi]; \
2565  } \
2566  while (YYID (0))
2567 # endif
2568 # endif
2569 
2570 /* Relocate STACK from its old location to the new one. The
2571  local variables YYSIZE and YYSTACKSIZE give the old and new number of
2572  elements in the stack, and YYPTR gives the new location of the
2573  stack. Advance YYPTR to a properly aligned location for the next
2574  stack. */
2575 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
2576  do \
2577  { \
2578  YYSIZE_T yynewbytes; \
2579  YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
2580  Stack = &yyptr->Stack_alloc; \
2581  yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
2582  yyptr += yynewbytes / sizeof (*yyptr); \
2583  } \
2584  while (YYID (0))
2585 
2586 #endif
2587 
2588 /* YYFINAL -- State number of the termination state. */
2589 #define YYFINAL 597
2590 /* YYLAST -- Last index in YYTABLE. */
2591 #define YYLAST 55552
2592 
2593 /* YYNTOKENS -- Number of terminals. */
2594 #define YYNTOKENS 640
2595 /* YYNNTS -- Number of nonterminals. */
2596 #define YYNNTS 952
2597 /* YYNRULES -- Number of rules. */
2598 #define YYNRULES 2670
2599 /* YYNRULES -- Number of states. */
2600 #define YYNSTATES 4530
2601 
2602 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
2603 #define YYUNDEFTOK 2
2604 #define YYMAXUTOK 875
2605 
2606 #define YYTRANSLATE(YYX) \
2607  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
2608 
2609 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
2610 static const yytype_uint16 yytranslate[] =
2611 {
2612  0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2613  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2614  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2615  2, 2, 2, 633, 2, 2, 2, 627, 622, 2,
2616  630, 631, 625, 624, 632, 623, 638, 626, 2, 2,
2617  2, 2, 2, 2, 2, 2, 2, 2, 639, 636,
2618  2, 2, 2, 2, 637, 2, 2, 2, 2, 2,
2619  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2620  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2621  2, 2, 2, 2, 628, 2, 2, 2, 2, 2,
2622  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2623  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2624  2, 2, 2, 634, 621, 635, 629, 2, 2, 2,
2625  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2626  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2627  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2628  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2629  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2630  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2631  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2632  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2633  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2634  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2635  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2636  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2637  2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
2638  5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
2639  15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
2640  25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
2641  35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2642  45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2643  55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
2644  65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
2645  75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
2646  85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
2647  95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
2648  105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2649  115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
2650  125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
2651  135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
2652  145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
2653  155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
2654  165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
2655  175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
2656  185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
2657  195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
2658  205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
2659  215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
2660  225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
2661  235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
2662  245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
2663  255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
2664  265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
2665  275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
2666  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
2667  295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
2668  305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
2669  315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
2670  325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
2671  335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
2672  345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
2673  355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
2674  365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
2675  375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
2676  385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
2677  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
2678  405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
2679  415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
2680  425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
2681  435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
2682  445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
2683  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
2684  465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
2685  475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
2686  485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
2687  495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
2688  505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
2689  515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
2690  525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
2691  535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
2692  545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
2693  555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
2694  565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
2695  575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
2696  585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
2697  595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
2698  605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
2699  615, 616, 617, 618, 619, 620
2700 };
2701 
2702 #if YYDEBUG
2703 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
2704  YYRHS. */
2705 static const yytype_uint16 yyprhs[] =
2706 {
2707  0, 0, 3, 5, 6, 11, 14, 15, 17, 19,
2708  21, 23, 25, 27, 29, 31, 33, 35, 37, 39,
2709  41, 43, 45, 47, 49, 51, 53, 55, 57, 59,
2710  61, 63, 65, 67, 69, 71, 73, 75, 77, 79,
2711  81, 83, 85, 87, 89, 91, 93, 95, 97, 99,
2712  101, 103, 105, 107, 109, 111, 113, 115, 117, 119,
2713  121, 123, 125, 129, 131, 133, 138, 140, 143, 144,
2714  149, 150, 153, 157, 159, 162, 163, 167, 168, 174,
2715  176, 180, 184, 188, 192, 196, 200, 204, 208, 212,
2716  216, 220, 224, 228, 232, 236, 240, 244, 248, 252,
2717  258, 262, 264, 265, 267, 271, 273, 277, 281, 285,
2718  289, 290, 298, 299, 300, 315, 316, 317, 332, 333,
2719  334, 349, 350, 357, 358, 362, 367, 372, 376, 379,
2720  390, 392, 396, 399, 402, 405, 408, 411, 414, 417,
2721  418, 432, 433, 440, 443, 444, 446, 450, 452, 453,
2722  456, 457, 460, 461, 463, 467, 472, 473, 476, 477,
2723  480, 482, 484, 486, 488, 490, 492, 494, 496, 498,
2724  500, 502, 504, 506, 507, 511, 513, 514, 517, 518,
2725  521, 524, 527, 530, 533, 537, 541, 543, 545, 547,
2726  550, 554, 558, 559, 564, 565, 569, 570, 572, 576,
2727  578, 579, 581, 585, 587, 588, 592, 593, 595, 599,
2728  601, 606, 607, 609, 611, 613, 614, 618, 621, 625,
2729  626, 630, 631, 637, 643, 644, 652, 653, 660, 662,
2730  664, 666, 670, 672, 674, 676, 680, 681, 683, 685,
2731  687, 689, 692, 694, 698, 700, 702, 703, 705, 706,
2732  709, 713, 719, 721, 723, 725, 727, 729, 731, 733,
2733  735, 737, 739, 741, 743, 745, 747, 749, 753, 758,
2734  759, 761, 763, 767, 769, 773, 777, 779, 782, 784,
2735  786, 788, 790, 794, 798, 800, 802, 804, 806, 808,
2736  810, 812, 814, 816, 818, 820, 822, 824, 826, 830,
2737  831, 832, 836, 838, 840, 842, 844, 846, 848, 850,
2738  852, 854, 856, 858, 860, 862, 863, 869, 870, 873,
2739  874, 878, 879, 882, 885, 888, 891, 892, 899, 902,
2740  903, 906, 908, 910, 914, 915, 916, 917, 925, 926,
2741  929, 932, 934, 936, 937, 938, 947, 948, 955, 957,
2742  960, 962, 965, 966, 967, 974, 975, 976, 983, 984,
2743  987, 988, 994, 995, 997, 998, 1004, 1005, 1008, 1009,
2744  1015, 1020, 1021, 1022, 1031, 1032, 1033, 1042, 1044, 1046,
2745  1048, 1050, 1052, 1055, 1060, 1066, 1067, 1072, 1077, 1082,
2746  1086, 1090, 1093, 1096, 1097, 1100, 1102, 1105, 1109, 1111,
2747  1113, 1115, 1116, 1118, 1120, 1123, 1127, 1129, 1131, 1133,
2748  1135, 1137, 1139, 1141, 1143, 1144, 1146, 1148, 1151, 1155,
2749  1157, 1159, 1161, 1163, 1165, 1166, 1168, 1170, 1173, 1177,
2750  1179, 1181, 1183, 1185, 1187, 1189, 1191, 1192, 1194, 1196,
2751  1199, 1203, 1205, 1207, 1209, 1212, 1215, 1218, 1220, 1222,
2752  1224, 1226, 1229, 1233, 1237, 1241, 1245, 1249, 1253, 1257,
2753  1261, 1266, 1268, 1270, 1272, 1274, 1277, 1281, 1284, 1289,
2754  1295, 1296, 1302, 1303, 1304, 1310, 1311, 1319, 1321, 1322,
2755  1324, 1325, 1330, 1331, 1332, 1336, 1342, 1349, 1350, 1355,
2756  1358, 1361, 1364, 1367, 1368, 1370, 1371, 1375, 1376, 1378,
2757  1380, 1384, 1386, 1391, 1397, 1403, 1404, 1407, 1408, 1409,
2758  1417, 1418, 1429, 1431, 1435, 1437, 1439, 1440, 1443, 1444,
2759  1448, 1450, 1454, 1455, 1462, 1464, 1465, 1466, 1472, 1473,
2760  1478, 1480, 1482, 1484, 1488, 1490, 1494, 1495, 1496, 1502,
2761  1504, 1508, 1510, 1512, 1513, 1517, 1519, 1523, 1524, 1529,
2762  1531, 1532, 1534, 1537, 1539, 1543, 1548, 1552, 1556, 1560,
2763  1565, 1570, 1574, 1575, 1576, 1583, 1584, 1586, 1587, 1589,
2764  1591, 1594, 1596, 1598, 1599, 1601, 1603, 1606, 1608, 1609,
2765  1613, 1614, 1616, 1618, 1621, 1623, 1626, 1630, 1634, 1638,
2766  1642, 1646, 1650, 1654, 1658, 1662, 1666, 1670, 1674, 1678,
2767  1682, 1686, 1690, 1694, 1698, 1702, 1706, 1707, 1714, 1716,
2768  1718, 1722, 1727, 1732, 1735, 1738, 1741, 1745, 1749, 1754,
2769  1759, 1761, 1763, 1765, 1767, 1769, 1771, 1773, 1775, 1777,
2770  1779, 1781, 1783, 1786, 1788, 1790, 1792, 1794, 1796, 1798,
2771  1802, 1804, 1806, 1809, 1812, 1820, 1829, 1838, 1847, 1856,
2772  1859, 1860, 1862, 1867, 1868, 1870, 1873, 1874, 1879, 1883,
2773  1887, 1891, 1893, 1896, 1898, 1900, 1904, 1907, 1911, 1914,
2774  1917, 1919, 1923, 1927, 1930, 1934, 1936, 1939, 1942, 1945,
2775  1947, 1950, 1952, 1954, 1956, 1959, 1963, 1966, 1970, 1973,
2776  1976, 1980, 1984, 1988, 1989, 1996, 1997, 2004, 2007, 2009,
2777  2011, 2013, 2015, 2017, 2019, 2021, 2023, 2025, 2027, 2029,
2778  2032, 2035, 2037, 2040, 2042, 2045, 2049, 2052, 2054, 2056,
2779  2058, 2060, 2062, 2064, 2066, 2069, 2070, 2072, 2074, 2080,
2780  2081, 2085, 2086, 2089, 2093, 2094, 2096, 2099, 2101, 2103,
2781  2105, 2107, 2111, 2115, 2119, 2123, 2124, 2126, 2127, 2129,
2782  2130, 2132, 2135, 2137, 2139, 2142, 2145, 2149, 2151, 2155,
2783  2158, 2160, 2163, 2166, 2169, 2172, 2175, 2178, 2181, 2184,
2784  2187, 2190, 2193, 2195, 2197, 2200, 2202, 2204, 2206, 2208,
2785  2210, 2211, 2214, 2216, 2218, 2220, 2222, 2224, 2225, 2228,
2786  2230, 2232, 2233, 2235, 2237, 2240, 2243, 2245, 2248, 2251,
2787  2252, 2254, 2256, 2258, 2262, 2264, 2268, 2269, 2271, 2272,
2788  2277, 2279, 2281, 2283, 2284, 2286, 2289, 2291, 2293, 2296,
2789  2298, 2302, 2306, 2308, 2310, 2311, 2314, 2315, 2317, 2323,
2790  2324, 2328, 2332, 2334, 2335, 2338, 2341, 2344, 2345, 2349,
2791  2353, 2360, 2367, 2369, 2371, 2374, 2377, 2380, 2382, 2385,
2792  2388, 2390, 2392, 2393, 2395, 2397, 2399, 2401, 2402, 2404,
2793  2406, 2408, 2409, 2411, 2414, 2415, 2417, 2418, 2420, 2421,
2794  2423, 2425, 2428, 2430, 2433, 2435, 2438, 2441, 2444, 2448,
2795  2451, 2453, 2455, 2457, 2459, 2463, 2465, 2467, 2469, 2474,
2796  2477, 2479, 2484, 2485, 2487, 2488, 2491, 2493, 2497, 2498,
2797  2505, 2506, 2512, 2520, 2521, 2527, 2528, 2534, 2535, 2541,
2798  2542, 2547, 2548, 2559, 2563, 2568, 2572, 2576, 2584, 2589,
2799  2593, 2599, 2600, 2604, 2606, 2611, 2612, 2616, 2617, 2620,
2800  2621, 2623, 2624, 2627, 2630, 2633, 2636, 2638, 2640, 2642,
2801  2646, 2651, 2652, 2659, 2664, 2665, 2671, 2672, 2679, 2684,
2802  2688, 2690, 2698, 2702, 2704, 2706, 2707, 2713, 2714, 2718,
2803  2721, 2722, 2728, 2729, 2730, 2737, 2739, 2743, 2745, 2747,
2804  2751, 2754, 2758, 2761, 2766, 2767, 2774, 2775, 2776, 2785,
2805  2790, 2795, 2799, 2803, 2806, 2809, 2816, 2822, 2826, 2832,
2806  2834, 2836, 2838, 2840, 2842, 2843, 2845, 2847, 2850, 2853,
2807  2857, 2861, 2865, 2869, 2870, 2872, 2873, 2875, 2876, 2878,
2808  2880, 2881, 2884, 2886, 2887, 2889, 2891, 2893, 2894, 2901,
2809  2905, 2909, 2910, 2912, 2914, 2918, 2922, 2925, 2928, 2933,
2810  2934, 2938, 2939, 2943, 2944, 2948, 2949, 2953, 2954, 2956,
2811  2958, 2962, 2964, 2966, 2967, 2970, 2972, 2976, 2980, 2984,
2812  2986, 2987, 2993, 2994, 2996, 2998, 2999, 3006, 3007, 3009,
2813  3011, 3014, 3016, 3018, 3020, 3021, 3027, 3030, 3031, 3037,
2814  3038, 3040, 3042, 3045, 3047, 3049, 3051, 3053, 3055, 3058,
2815  3059, 3065, 3066, 3068, 3070, 3071, 3076, 3081, 3085, 3091,
2816  3093, 3097, 3101, 3102, 3109, 3111, 3113, 3115, 3119, 3122,
2817  3126, 3128, 3130, 3131, 3138, 3140, 3142, 3144, 3148, 3152,
2818  3157, 3158, 3165, 3166, 3169, 3170, 3175, 3176, 3179, 3181,
2819  3184, 3189, 3192, 3196, 3199, 3203, 3204, 3208, 3209, 3210,
2820  3217, 3220, 3222, 3224, 3227, 3230, 3239, 3244, 3245, 3247,
2821  3250, 3252, 3254, 3256, 3258, 3259, 3262, 3267, 3271, 3273,
2822  3275, 3279, 3284, 3285, 3286, 3287, 3290, 3293, 3295, 3297,
2823  3298, 3301, 3305, 3309, 3313, 3316, 3320, 3325, 3329, 3334,
2824  3338, 3343, 3345, 3349, 3354, 3358, 3362, 3369, 3371, 3377,
2825  3384, 3390, 3398, 3405, 3414, 3420, 3427, 3432, 3437, 3443,
2826  3447, 3452, 3454, 3458, 3462, 3466, 3470, 3474, 3478, 3484,
2827  3490, 3494, 3498, 3502, 3506, 3510, 3514, 3516, 3518, 3520,
2828  3522, 3524, 3526, 3528, 3530, 3532, 3534, 3536, 3538, 3540,
2829  3542, 3544, 3546, 3548, 3550, 3552, 3554, 3556, 3558, 3562,
2830  3564, 3566, 3568, 3570, 3574, 3577, 3580, 3583, 3586, 3590,
2831  3594, 3600, 3607, 3612, 3617, 3625, 3628, 3635, 3641, 3648,
2832  3655, 3660, 3665, 3671, 3676, 3683, 3686, 3691, 3696, 3701,
2833  3712, 3719, 3728, 3735, 3740, 3745, 3752, 3757, 3762, 3767,
2834  3774, 3779, 3787, 3795, 3803, 3810, 3817, 3824, 3831, 3835,
2835  3840, 3847, 3856, 3859, 3862, 3871, 3880, 3887, 3894, 3896,
2836  3903, 3910, 3919, 3928, 3935, 3944, 3951, 3954, 3963, 3972,
2837  3975, 3978, 3981, 3986, 3991, 3996, 4001, 4005, 4014, 4021,
2838  4030, 4035, 4042, 4047, 4052, 4057, 4064, 4073, 4078, 4082,
2839  4089, 4094, 4101, 4107, 4116, 4124, 4135, 4137, 4144, 4149,
2840  4154, 4159, 4164, 4169, 4176, 4181, 4182, 4188, 4195, 4198,
2841  4202, 4203, 4208, 4209, 4213, 4214, 4216, 4218, 4222, 4227,
2842  4232, 4238, 4243, 4248, 4253, 4259, 4264, 4265, 4266, 4274,
2843  4279, 4285, 4290, 4296, 4301, 4306, 4311, 4316, 4321, 4327,
2844  4328, 4337, 4338, 4342, 4346, 4348, 4353, 4354, 4356, 4357,
2845  4360, 4361, 4362, 4367, 4372, 4375, 4376, 4380, 4383, 4387,
2846  4390, 4392, 4395, 4397, 4400, 4402, 4405, 4408, 4411, 4412,
2847  4414, 4416, 4420, 4422, 4426, 4428, 4432, 4433, 4435, 4436,
2848  4439, 4444, 4450, 4452, 4454, 4456, 4458, 4463, 4465, 4469,
2849  4473, 4477, 4478, 4485, 4486, 4493, 4494, 4503, 4508, 4509,
2850  4518, 4519, 4530, 4537, 4538, 4547, 4548, 4559, 4566, 4568,
2851  4571, 4574, 4575, 4577, 4583, 4584, 4590, 4594, 4600, 4603,
2852  4604, 4605, 4613, 4615, 4616, 4617, 4624, 4625, 4629, 4630,
2853  4631, 4637, 4638, 4640, 4641, 4643, 4644, 4647, 4651, 4655,
2854  4657, 4659, 4660, 4668, 4669, 4677, 4679, 4682, 4683, 4684,
2855  4687, 4688, 4691, 4692, 4694, 4696, 4698, 4700, 4704, 4706,
2856  4710, 4712, 4714, 4716, 4718, 4720, 4722, 4724, 4726, 4728,
2857  4730, 4732, 4734, 4736, 4738, 4740, 4742, 4744, 4746, 4748,
2858  4750, 4752, 4754, 4756, 4758, 4760, 4761, 4763, 4765, 4766,
2859  4769, 4770, 4772, 4773, 4774, 4778, 4779, 4780, 4784, 4787,
2860  4788, 4789, 4794, 4799, 4802, 4803, 4805, 4807, 4811, 4815,
2861  4817, 4820, 4821, 4823, 4824, 4829, 4834, 4837, 4838, 4840,
2862  4842, 4843, 4845, 4846, 4848, 4851, 4853, 4857, 4861, 4863,
2863  4865, 4867, 4869, 4871, 4872, 4875, 4877, 4879, 4881, 4883,
2864  4885, 4887, 4889, 4891, 4893, 4895, 4897, 4899, 4901, 4903,
2865  4905, 4907, 4909, 4911, 4913, 4915, 4917, 4919, 4921, 4922,
2866  4923, 4930, 4931, 4933, 4937, 4939, 4940, 4943, 4947, 4949,
2867  4952, 4954, 4955, 4959, 4960, 4961, 4969, 4972, 4974, 4975,
2868  4979, 4980, 4988, 4989, 4990, 4999, 5004, 5011, 5016, 5021,
2869  5026, 5027, 5034, 5039, 5044, 5049, 5055, 5060, 5062, 5066,
2870  5068, 5071, 5073, 5077, 5079, 5080, 5083, 5084, 5086, 5087,
2871  5089, 5091, 5094, 5098, 5100, 5102, 5103, 5104, 5113, 5114,
2872  5115, 5122, 5123, 5125, 5127, 5129, 5131, 5133, 5136, 5138,
2873  5140, 5142, 5146, 5151, 5152, 5156, 5160, 5162, 5165, 5168,
2874  5169, 5173, 5174, 5180, 5184, 5186, 5190, 5192, 5196, 5198,
2875  5200, 5201, 5203, 5204, 5209, 5210, 5212, 5216, 5218, 5220,
2876  5222, 5223, 5224, 5231, 5232, 5233, 5245, 5249, 5251, 5255,
2877  5259, 5261, 5265, 5266, 5268, 5269, 5274, 5275, 5283, 5284,
2878  5290, 5291, 5298, 5300, 5304, 5307, 5312, 5313, 5316, 5317,
2879  5320, 5322, 5324, 5326, 5327, 5332, 5333, 5335, 5336, 5338,
2880  5340, 5344, 5346, 5348, 5351, 5354, 5357, 5359, 5361, 5363,
2881  5365, 5366, 5370, 5371, 5375, 5378, 5383, 5388, 5392, 5397,
2882  5402, 5404, 5408, 5412, 5419, 5422, 5425, 5426, 5433, 5434,
2883  5441, 5447, 5450, 5452, 5458, 5464, 5467, 5470, 5472, 5477,
2884  5481, 5484, 5488, 5491, 5494, 5496, 5500, 5505, 5509, 5513,
2885  5516, 5519, 5523, 5527, 5531, 5535, 5539, 5543, 5547, 5551,
2886  5553, 5555, 5557, 5559, 5561, 5562, 5564, 5565, 5568, 5569,
2887  5571, 5573, 5575, 5576, 5579, 5580, 5583, 5584, 5587, 5590,
2888  5591, 5596, 5597, 5602, 5604, 5606, 5608, 5610, 5612, 5614,
2889  5616, 5617, 5619, 5621, 5625, 5626, 5628, 5630, 5631, 5636,
2890  5637, 5638, 5644, 5646, 5647, 5651, 5652, 5656, 5660, 5662,
2891  5665, 5668, 5671, 5674, 5677, 5680, 5683, 5685, 5687, 5689,
2892  5691, 5693, 5695, 5696, 5698, 5699, 5703, 5707, 5709, 5710,
2893  5714, 5716, 5719, 5720, 5722, 5723, 5727, 5731, 5734, 5737,
2894  5741, 5742, 5744, 5746, 5749, 5750, 5751, 5752, 5753, 5776,
2895  5778, 5780, 5781, 5783, 5784, 5786, 5788, 5789, 5791, 5793,
2896  5794, 5797, 5800, 5802, 5806, 5811, 5815, 5819, 5820, 5823,
2897  5826, 5828, 5832, 5836, 5837, 5842, 5843, 5847, 5849, 5851,
2898  5852, 5856, 5859, 5863, 5865, 5867, 5870, 5871, 5874, 5878,
2899  5880, 5886, 5888, 5890, 5893, 5896, 5898, 5900, 5902, 5904,
2900  5906, 5909, 5912, 5914, 5916, 5918, 5920, 5922, 5924, 5926,
2901  5928, 5931, 5934, 5936, 5938, 5940, 5942, 5944, 5947, 5950,
2902  5953, 5955, 5957, 5961, 5967, 5969, 5971, 5973, 5975, 5977,
2903  5981, 5986, 5992, 5994, 6000, 6004, 6007, 6009, 6013, 6016,
2904  6019, 6024, 6026, 6028, 6030, 6032, 6034, 6036, 6038, 6040,
2905  6042, 6044, 6046, 6048, 6050, 6052, 6054, 6058, 6061, 6063,
2906  6065, 6067, 6069, 6071, 6073, 6075, 6077, 6079, 6081, 6083,
2907  6085, 6087, 6089, 6091, 6093, 6095, 6097, 6099, 6101, 6103,
2908  6105, 6107, 6109, 6111, 6113, 6115, 6117, 6119, 6121, 6123,
2909  6125, 6127, 6129, 6131, 6133, 6135, 6137, 6139, 6141, 6143,
2910  6145, 6147, 6149, 6151, 6153, 6155, 6157, 6159, 6161, 6163,
2911  6165, 6167, 6169, 6171, 6173, 6175, 6177, 6179, 6181, 6183,
2912  6185, 6187, 6189, 6191, 6193, 6195, 6197, 6199, 6201, 6203,
2913  6205, 6207, 6209, 6211, 6213, 6215, 6217, 6219, 6221, 6223,
2914  6225, 6227, 6229, 6231, 6233, 6235, 6237, 6239, 6241, 6243,
2915  6245, 6247, 6249, 6251, 6253, 6255, 6257, 6259, 6261, 6263,
2916  6265, 6267, 6269, 6271, 6273, 6275, 6277, 6279, 6281, 6283,
2917  6285, 6287, 6289, 6291, 6293, 6295, 6297, 6299, 6301, 6303,
2918  6305, 6307, 6309, 6311, 6313, 6315, 6317, 6319, 6321, 6323,
2919  6325, 6327, 6329, 6331, 6333, 6335, 6337, 6339, 6341, 6343,
2920  6345, 6347, 6349, 6351, 6353, 6355, 6357, 6359, 6361, 6363,
2921  6365, 6367, 6369, 6371, 6373, 6375, 6377, 6379, 6381, 6383,
2922  6385, 6387, 6389, 6391, 6393, 6395, 6397, 6399, 6401, 6403,
2923  6405, 6407, 6409, 6411, 6413, 6415, 6417, 6419, 6421, 6423,
2924  6425, 6427, 6429, 6431, 6433, 6435, 6437, 6439, 6441, 6443,
2925  6445, 6447, 6449, 6451, 6453, 6455, 6457, 6459, 6461, 6463,
2926  6465, 6467, 6469, 6471, 6473, 6475, 6477, 6479, 6481, 6483,
2927  6485, 6487, 6489, 6491, 6493, 6495, 6497, 6499, 6501, 6503,
2928  6505, 6507, 6509, 6511, 6513, 6515, 6517, 6519, 6521, 6523,
2929  6525, 6527, 6529, 6531, 6533, 6535, 6537, 6539, 6541, 6543,
2930  6545, 6547, 6549, 6551, 6553, 6555, 6557, 6559, 6561, 6563,
2931  6565, 6567, 6569, 6571, 6573, 6575, 6577, 6579, 6581, 6583,
2932  6585, 6587, 6589, 6591, 6593, 6595, 6597, 6599, 6601, 6603,
2933  6605, 6607, 6609, 6611, 6613, 6615, 6617, 6619, 6621, 6623,
2934  6625, 6627, 6629, 6631, 6633, 6635, 6637, 6639, 6641, 6643,
2935  6645, 6647, 6649, 6651, 6653, 6655, 6657, 6659, 6661, 6663,
2936  6665, 6667, 6669, 6671, 6673, 6675, 6677, 6679, 6681, 6683,
2937  6685, 6687, 6689, 6691, 6693, 6695, 6697, 6699, 6701, 6703,
2938  6705, 6707, 6709, 6711, 6713, 6715, 6717, 6719, 6721, 6723,
2939  6725, 6727, 6729, 6731, 6733, 6735, 6737, 6739, 6741, 6743,
2940  6745, 6747, 6749, 6751, 6753, 6755, 6757, 6759, 6761, 6763,
2941  6764, 6768, 6769, 6773, 6774, 6778, 6779, 6783, 6784, 6788,
2942  6791, 6792, 6795, 6796, 6799, 6800, 6805, 6806, 6810, 6812,
2943  6814, 6816, 6818, 6819, 6821, 6823, 6825, 6826, 6829, 6832,
2944  6835, 6839, 6840, 6845, 6850, 6857, 6860, 6864, 6868, 6872,
2945  6878, 6880, 6884, 6888, 6890, 6892, 6896, 6900, 6902, 6906,
2946  6909, 6912, 6915, 6918, 6921, 6923, 6925, 6930, 6935, 6937,
2947  6939, 6941, 6943, 6945, 6946, 6951, 6953, 6955, 6957, 6961,
2948  6965, 6967, 6969, 6972, 6975, 6976, 6980, 6985, 6989, 6990,
2949  6998, 7000, 7003, 7005, 7007, 7009, 7011, 7013, 7015, 7016,
2950  7022, 7024, 7026, 7028, 7030, 7032, 7033, 7038, 7045, 7052,
2951  7059, 7067, 7073, 7074, 7079, 7088, 7097, 7106, 7113, 7114,
2952  7116, 7118, 7121, 7122, 7124, 7126, 7130, 7131, 7135, 7136,
2953  7140, 7141, 7145, 7146, 7150, 7152, 7154, 7156, 7158, 7160,
2954  7162, 7164, 7166, 7168, 7170, 7172, 7175, 7178, 7180, 7184,
2955  7187, 7190, 7193, 7196, 7199, 7202, 7205, 7208, 7210, 7212,
2956  7215, 7216, 7218, 7222, 7224, 7227, 7230, 7233, 7235, 7239,
2957  7243, 7245, 7247, 7251, 7253, 7257, 7262, 7268, 7273, 7280,
2958  7282, 7283, 7287, 7291, 7293, 7295, 7296, 7299, 7302, 7305,
2959  7308, 7309, 7312, 7313, 7317, 7320, 7322, 7325, 7328, 7331,
2960  7334, 7337, 7338, 7342, 7343, 7345, 7346, 7350, 7353, 7354,
2961  7356, 7359, 7360, 7362, 7367, 7372, 7378, 7381, 7385, 7386,
2962  7388, 7389, 7394, 7395, 7397, 7399, 7400, 7402, 7403, 7406,
2963  7409, 7411, 7412, 7414, 7416, 7419, 7423, 7426, 7427, 7434,
2964  7438, 7439, 7440, 7441, 7443, 7446, 7448, 7450, 7452, 7454,
2965  7456, 7458, 7460, 7462, 7464, 7467, 7470, 7474, 7476, 7478,
2966  7480, 7482, 7484, 7486, 7488, 7490, 7492, 7494, 7496, 7498,
2967  7500, 7501, 7505, 7507, 7510, 7512, 7515, 7519, 7523, 7527,
2968  7528, 7532, 7536, 7537, 7545, 7546, 7550, 7552, 7556, 7557,
2969  7561, 7562, 7566, 7571, 7573, 7577, 7578, 7582, 7583, 7587,
2970  7592, 7597, 7598, 7599, 7600, 7617, 7626, 7634, 7635, 7636,
2971  7637, 7638, 7639, 7655, 7656, 7657, 7658, 7659, 7672, 7677,
2972  7682, 7686, 7691, 7695, 7698, 7700, 7704, 7710, 7712, 7714,
2973  7715, 7717, 7719, 7720, 7723, 7724, 7725, 7729, 7730, 7733,
2974  7739
2975 };
2976 
2977 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
2978 static const yytype_int16 yyrhs[] =
2979 {
2980  641, 0, -1, 151, -1, -1, 644, 642, 636, 643,
2981  -1, 644, 151, -1, -1, 151, -1, 645, -1, 1516,
2982  -1, 1016, -1, 1082, -1, 1084, -1, 697, -1, 657,
2983  -1, 1085, -1, 1074, -1, 1522, -1, 664, -1, 646,
2984  -1, 1329, -1, 1361, -1, 1276, -1, 1278, -1, 650,
2985  -1, 1368, -1, 732, -1, 1489, -1, 1479, -1, 655,
2986  -1, 1293, -1, 1590, -1, 1388, -1, 1391, -1, 1471,
2987  -1, 1090, -1, 1098, -1, 851, -1, 1105, -1, 648,
2988  -1, 1384, -1, 1525, -1, 1093, -1, 1077, -1, 1296,
2989  -1, 1378, -1, 731, -1, 1486, -1, 1523, -1, 1524,
2990  -1, 1117, -1, 1443, -1, 724, -1, 1347, -1, 1058,
2991  -1, 1060, -1, 1340, -1, 1591, -1, 1477, -1, 1321,
2992  -1, 1390, -1, 1582, -1, 647, 398, 1437, -1, 116,
2993  -1, 139, -1, 398, 1437, 189, 649, -1, 1434, -1,
2994  637, 1439, -1, -1, 165, 1437, 651, 652, -1, -1,
2995  588, 653, -1, 653, 632, 654, -1, 654, -1, 637,
2996  1439, -1, -1, 208, 656, 1439, -1, -1, 56, 302,
2997  556, 658, 659, -1, 660, -1, 659, 632, 660, -1,
2998  286, 155, 1433, -1, 283, 155, 1433, -1, 303, 155,
2999  1433, -1, 289, 155, 1433, -1, 290, 155, 1257, -1,
3000  284, 155, 1257, -1, 291, 155, 1257, -1, 285, 155,
3001  1257, -1, 300, 155, 1257, -1, 294, 155, 1433, -1,
3002  293, 155, 1433, -1, 295, 155, 1433, -1, 296, 155,
3003  1433, -1, 299, 155, 1433, -1, 301, 155, 1257, -1,
3004  297, 155, 1433, -1, 298, 155, 1433, -1, 304, 155,
3005  1420, -1, 222, 155, 630, 661, 631, -1, 282, 155,
3006  1257, -1, 663, -1, -1, 662, -1, 661, 632, 662,
3007  -1, 1257, -1, 287, 155, 1433, -1, 288, 155, 1259,
3008  -1, 428, 155, 1433, -1, 429, 155, 1257, -1, -1,
3009  94, 903, 539, 906, 1429, 665, 840, -1, -1, -1,
3010  94, 994, 225, 1437, 998, 364, 1429, 666, 630, 1011,
3011  631, 999, 667, 1050, -1, -1, -1, 94, 995, 225,
3012  1437, 997, 364, 1429, 668, 630, 1011, 631, 1000, 669,
3013  1050, -1, -1, -1, 94, 996, 225, 1437, 997, 364,
3014  1429, 670, 630, 1011, 631, 1001, 671, 1050, -1, -1,
3015  94, 103, 906, 1437, 672, 900, -1, -1, 94, 673,
3016  1544, -1, 94, 585, 690, 1506, -1, 94, 273, 202,
3017  804, -1, 94, 537, 801, -1, 94, 674, -1, 474,
3018  1439, 185, 106, 612, 1439, 369, 630, 675, 631, -1,
3019  676, -1, 675, 632, 676, -1, 585, 1434, -1, 211,
3020  1434, -1, 103, 1434, -1, 379, 1434, -1, 388, 1434,
3021  -1, 490, 1434, -1, 395, 1257, -1, -1, 1134, 162,
3022  906, 691, 678, 364, 463, 679, 684, 681, 686, 138,
3023  687, -1, -1, 163, 1138, 1229, 680, 682, 683, -1,
3024  23, 1138, -1, -1, 147, -1, 132, 364, 486, -1,
3025  132, -1, -1, 512, 1138, -1, -1, 150, 1138, -1,
3026  -1, 685, -1, 364, 78, 399, -1, 364, 78, 352,
3027  399, -1, -1, 74, 1434, -1, -1, 688, 689, -1,
3028  749, -1, 751, -1, 747, -1, 768, -1, 786, -1,
3029  788, -1, 783, -1, 753, -1, 755, -1, 756, -1,
3030  757, -1, 758, -1, 760, -1, -1, 1437, 638, 1437,
3031  -1, 1437, -1, -1, 692, 694, -1, -1, 693, 695,
3032  -1, 74, 1434, -1, 252, 508, -1, 354, 508, -1,
3033  88, 508, -1, 414, 508, 106, -1, 329, 508, 106,
3034  -1, 696, -1, 694, -1, 129, -1, 1144, 129, -1,
3035  508, 467, 122, -1, 508, 467, 237, -1, -1, 49,
3036  691, 698, 699, -1, -1, 630, 700, 631, -1, -1,
3037  701, -1, 701, 632, 1138, -1, 1138, -1, -1, 703,
3038  -1, 703, 632, 705, -1, 705, -1, -1, 1437, 704,
3039  954, -1, -1, 707, -1, 707, 632, 708, -1, 708,
3040  -1, 709, 704, 1437, 954, -1, -1, 238, -1, 378,
3041  -1, 229, -1, -1, 710, 746, 636, -1, 746, 636,
3042  -1, 711, 746, 636, -1, -1, 712, 713, 636, -1,
3043  -1, 119, 743, 714, 954, 744, -1, 119, 1437, 81,
3044  186, 720, -1, -1, 119, 717, 205, 186, 715, 718,
3045  746, -1, -1, 119, 1437, 100, 186, 716, 1117, -1,
3046  167, -1, 90, -1, 719, -1, 718, 632, 719, -1,
3047  723, -1, 1257, -1, 721, -1, 497, 722, 1435, -1,
3048  -1, 593, -1, 720, -1, 1437, -1, 498, -1, 1144,
3049  188, -1, 496, -1, 483, 725, 727, -1, 1437, -1,
3050  721, -1, -1, 725, -1, -1, 476, 728, -1, 730,
3051  155, 729, -1, 728, 632, 730, 155, 729, -1, 1419,
3052  -1, 1165, -1, 1425, -1, 63, -1, 524, -1, 85,
3053  -1, 87, -1, 86, -1, 54, -1, 464, -1, 541,
3054  -1, 73, -1, 101, -1, 320, -1, 337, -1, 443,
3055  726, 727, -1, 198, 733, 130, 734, -1, -1, 98,
3056  -1, 735, -1, 81, 739, 740, -1, 736, -1, 735,
3057  632, 736, -1, 737, 155, 738, -1, 1437, -1, 637,
3058  1439, -1, 359, -1, 460, -1, 729, -1, 741, -1,
3059  740, 632, 741, -1, 737, 155, 742, -1, 63, -1,
3060  524, -1, 85, -1, 87, -1, 86, -1, 54, -1,
3061  464, -1, 541, -1, 73, -1, 101, -1, 320, -1,
3062  337, -1, 448, -1, 1437, -1, 743, 632, 1437, -1,
3063  -1, -1, 120, 745, 1138, -1, 749, -1, 751, -1,
3064  747, -1, 768, -1, 786, -1, 788, -1, 783, -1,
3065  753, -1, 755, -1, 756, -1, 757, -1, 758, -1,
3066  760, -1, -1, 220, 748, 763, 149, 220, -1, -1,
3067  750, 645, -1, -1, 450, 752, 1138, -1, -1, 754,
3068  792, -1, 257, 1438, -1, 246, 1438, -1, 367, 1437,
3069  -1, -1, 177, 761, 1437, 235, 759, 762, -1, 65,
3070  1437, -1, -1, 348, 189, -1, 189, -1, 1437, -1,
3071  762, 632, 1437, -1, -1, -1, -1, 764, 1138, 765,
3072  548, 711, 766, 767, -1, -1, 146, 763, -1, 145,
3073  711, -1, 769, -1, 772, -1, -1, -1, 52, 770,
3074  1138, 771, 774, 782, 149, 52, -1, -1, 52, 773,
3075  775, 782, 149, 52, -1, 776, -1, 774, 776, -1,
3076  779, -1, 775, 779, -1, -1, -1, 605, 777, 1138,
3077  778, 548, 711, -1, -1, -1, 605, 780, 1138, 781,
3078  548, 711, -1, -1, 145, 711, -1, -1, 1438, 639,
3079  784, 792, 785, -1, -1, 1438, -1, -1, 1438, 639,
3080  787, 790, 785, -1, -1, 789, 790, -1, -1, 30,
3081  791, 712, 710, 149, -1, 279, 711, 149, 279, -1,
3082  -1, -1, 607, 793, 1138, 794, 138, 711, 149, 607,
3083  -1, -1, -1, 438, 711, 581, 795, 1138, 796, 149,
3084  438, -1, 29, -1, 8, -1, 231, -1, 582, -1,
3085  125, -1, 826, 828, -1, 826, 56, 823, 807, -1,
3086  826, 6, 823, 802, 811, -1, -1, 587, 273, 202,
3087  1437, -1, 826, 6, 823, 814, -1, 826, 139, 823,
3088  814, -1, 827, 806, 817, -1, 827, 806, 820, -1,
3089  6, 824, -1, 6, 825, -1, -1, 808, 809, -1,
3090  810, -1, 809, 810, -1, 809, 632, 810, -1, 829,
3091  -1, 830, -1, 831, -1, -1, 812, -1, 813, -1,
3092  812, 813, -1, 812, 632, 813, -1, 829, -1, 830,
3093  -1, 831, -1, 832, -1, 835, -1, 837, -1, 838,
3094  -1, 836, -1, -1, 815, -1, 816, -1, 815, 816,
3095  -1, 815, 632, 816, -1, 829, -1, 830, -1, 831,
3096  -1, 837, -1, 838, -1, -1, 818, -1, 819, -1,
3097  818, 819, -1, 818, 632, 819, -1, 829, -1, 833,
3098  -1, 834, -1, 835, -1, 837, -1, 838, -1, 836,
3099  -1, -1, 821, -1, 822, -1, 821, 822, -1, 821,
3100  632, 822, -1, 829, -1, 837, -1, 838, -1, 105,
3101  1434, -1, 571, 1434, -1, 421, 1434, -1, 1437, -1,
3102  1437, -1, 415, -1, 417, -1, 352, 4, -1, 227,
3103  1313, 839, -1, 24, 1313, 839, -1, 309, 1313, 839,
3104  -1, 172, 1313, 839, -1, 572, 1313, 839, -1, 422,
3105  1313, 839, -1, 349, 1313, 1258, -1, 74, 1313, 1434,
3106  -1, 1354, 153, 1313, 914, -1, 601, -1, 355, -1,
3107  1260, -1, 1432, -1, 630, 841, -1, 907, 846, 843,
3108  -1, 262, 1429, -1, 630, 262, 1429, 631, -1, 920,
3109  631, 907, 846, 843, -1, -1, 846, 896, 631, 842,
3110  1529, -1, -1, -1, 1399, 899, 896, 844, 1526, -1,
3111  -1, 1399, 899, 630, 896, 631, 845, 1529, -1, 847,
3112  -1, -1, 848, -1, -1, 385, 850, 849, 853, -1,
3113  -1, -1, 385, 852, 853, -1, 46, 854, 864, 865,
3114  872, -1, 856, 250, 857, 630, 858, 631, -1, -1,
3115  856, 206, 855, 862, -1, 413, 862, -1, 413, 861,
3116  -1, 267, 862, -1, 267, 861, -1, -1, 264, -1,
3117  -1, 11, 155, 1258, -1, -1, 859, -1, 860, -1,
3118  859, 632, 860, -1, 1437, -1, 70, 630, 858, 631,
3119  -1, 630, 1134, 870, 1135, 631, -1, 630, 1134, 870,
3120  1135, 631, -1, -1, 386, 1258, -1, -1, -1, 528,
3121  46, 856, 206, 863, 866, 871, -1, -1, 528, 46,
3122  856, 250, 857, 630, 868, 631, 867, 871, -1, 869,
3123  -1, 868, 632, 869, -1, 1437, -1, 1141, -1, -1,
3124  527, 1258, -1, -1, 630, 873, 631, -1, 874, -1,
3125  873, 632, 874, -1, -1, 385, 875, 876, 877, 893,
3126  888, -1, 1437, -1, -1, -1, 592, 259, 547, 878,
3127  880, -1, -1, 592, 238, 879, 881, -1, 313, -1,
3128  883, -1, 883, -1, 630, 882, 631, -1, 883, -1,
3129  882, 632, 883, -1, -1, -1, 630, 884, 886, 885,
3130  631, -1, 887, -1, 886, 632, 887, -1, 313, -1,
3131  1141, -1, -1, 630, 889, 631, -1, 890, -1, 889,
3132  632, 890, -1, -1, 528, 891, 892, 893, -1, 1439,
3133  -1, -1, 894, -1, 894, 895, -1, 895, -1, 537,
3134  1313, 1439, -1, 1354, 153, 1313, 914, -1, 349, 1313,
3135  1258, -1, 308, 1313, 1260, -1, 326, 1313, 1260, -1,
3136  106, 131, 1313, 1434, -1, 225, 131, 1313, 1434, -1,
3137  74, 1313, 1434, -1, -1, -1, 468, 897, 1128, 1132,
3138  898, 918, -1, -1, 19, -1, -1, 901, -1, 902,
3139  -1, 901, 902, -1, 913, -1, 912, -1, -1, 904,
3140  -1, 905, -1, 905, 904, -1, 542, -1, -1, 220,
3141  1144, 166, -1, -1, 909, -1, 910, -1, 910, 908,
3142  -1, 910, -1, 910, 909, -1, 910, 632, 909, -1,
3143  153, 1313, 914, -1, 308, 1313, 1259, -1, 326, 1313,
3144  1259, -1, 26, 1313, 1257, -1, 388, 1313, 1434, -1,
3145  74, 1313, 1434, -1, 25, 1313, 1259, -1, 380, 1313,
3146  1257, -1, 380, 1313, 120, -1, 514, 1313, 1257, -1,
3147  514, 1313, 120, -1, 515, 1313, 1257, -1, 515, 1313,
3148  120, -1, 516, 1313, 1257, -1, 516, 1313, 120, -1,
3149  60, 1313, 1257, -1, 540, 1313, 1257, -1, 124, 1313,
3150  1257, -1, 458, 1313, 916, -1, -1, 576, 1313, 911,
3151  630, 1377, 631, -1, 912, -1, 913, -1, 232, 1313,
3152  917, -1, 106, 131, 1313, 1434, -1, 225, 131, 1313,
3153  1434, -1, 537, 1437, -1, 521, 134, -1, 521, 318,
3154  -1, 82, 1313, 1434, -1, 249, 1313, 1257, -1, 966,
3155  957, 1313, 959, -1, 966, 68, 1313, 965, -1, 1439,
3156  -1, 1439, -1, 120, -1, 180, -1, 143, -1, 79,
3157  -1, 423, -1, 77, -1, 354, -1, 179, -1, 253,
3158  -1, 1252, -1, 1127, 1131, -1, 523, -1, 418, -1,
3159  118, -1, 236, -1, 921, -1, 922, -1, 921, 632,
3160  922, -1, 923, -1, 924, -1, 929, 925, -1, 929,
3161  983, -1, 989, 1013, 998, 630, 1011, 631, 999, -1,
3162  995, 992, 1013, 997, 630, 1011, 631, 1000, -1, 996,
3163  992, 1013, 997, 630, 1011, 631, 1001, -1, 927, 990,
3164  1013, 998, 630, 1011, 631, 999, -1, 927, 185, 250,
3165  1013, 630, 1011, 631, 983, -1, 927, 926, -1, -1,
3166  926, -1, 61, 630, 1138, 631, -1, -1, 928, -1,
3167  84, 1013, -1, -1, 1428, 930, 931, 951, -1, 939,
3168  949, 945, -1, 940, 950, 945, -1, 182, 941, 945,
3169  -1, 38, -1, 38, 948, -1, 43, -1, 42, -1,
3170  935, 948, 969, -1, 935, 969, -1, 936, 948, 970,
3171  -1, 936, 970, -1, 33, 948, -1, 33, -1, 937,
3172  948, 969, -1, 938, 948, 970, -1, 594, 948, -1,
3173  619, 949, 945, -1, 110, -1, 552, 943, -1, 549,
3174  943, -1, 107, 943, -1, 553, -1, 40, 949, -1,
3175  934, -1, 314, -1, 275, -1, 278, 594, -1, 278,
3176  937, 969, -1, 555, 969, -1, 546, 949, 969, -1,
3177  316, 969, -1, 276, 969, -1, 118, 941, 945, -1,
3178  360, 941, 945, -1, 180, 941, 945, -1, -1, 154,
3179  932, 630, 1015, 631, 969, -1, -1, 476, 933, 630,
3180  1015, 631, 969, -1, 278, 969, -1, 472, -1, 196,
3181  -1, 195, -1, 393, -1, 334, -1, 266, -1, 333,
3182  -1, 394, -1, 335, -1, 59, -1, 343, -1, 340,
3183  59, -1, 935, 598, -1, 595, -1, 340, 595, -1,
3184  361, -1, 343, 595, -1, 340, 59, 598, -1, 343,
3185  598, -1, 236, -1, 554, -1, 488, -1, 315, -1,
3186  32, -1, 418, -1, 137, -1, 137, 397, -1, -1,
3187  948, -1, 942, -1, 630, 358, 632, 358, 631, -1,
3188  -1, 630, 358, 631, -1, -1, 630, 631, -1, 630,
3189  358, 631, -1, -1, 946, -1, 946, 947, -1, 947,
3190  -1, 484, -1, 580, -1, 620, -1, 630, 277, 631,
3191  -1, 630, 567, 631, -1, 630, 117, 631, -1, 630,
3192  358, 631, -1, -1, 948, -1, -1, 942, -1, -1,
3193  952, -1, 952, 953, -1, 953, -1, 357, -1, 1144,
3194  357, -1, 120, 956, -1, 364, 582, 955, -1, 25,
3195  -1, 472, 120, 593, -1, 982, 250, -1, 577, -1,
3196  577, 250, -1, 74, 1434, -1, 68, 963, -1, 72,
3197  120, -1, 72, 180, -1, 72, 143, -1, 521, 120,
3198  -1, 521, 134, -1, 521, 318, -1, 931, 964, -1,
3199  353, 944, -1, 955, -1, 1418, -1, 59, 476, -1,
3200  58, -1, 1439, -1, 33, -1, 958, -1, 120, -1,
3201  -1, 957, 959, -1, 1439, -1, 33, -1, 961, -1,
3202  120, -1, 1439, -1, -1, 68, 965, -1, 963, -1,
3203  120, -1, -1, 120, -1, 21, -1, 33, 21, -1,
3204  21, 33, -1, 574, -1, 574, 33, -1, 33, 574,
3205  -1, -1, 967, -1, 968, -1, 47, -1, 957, 958,
3206  970, -1, 33, -1, 33, 957, 958, -1, -1, 33,
3207  -1, -1, 630, 1258, 972, 631, -1, 20, -1, 126,
3208  -1, 451, -1, -1, 973, -1, 973, 974, -1, 974,
3209  -1, 1258, -1, 976, 975, -1, 977, -1, 978, 632,
3210  977, -1, 976, 623, 976, -1, 978, -1, 979, -1,
3211  -1, 260, 980, -1, -1, 401, -1, 424, 1429, 984,
3212  986, 987, -1, -1, 630, 985, 631, -1, 985, 632,
3213  1437, -1, 1437, -1, -1, 305, 190, -1, 305, 384,
3214  -1, 305, 485, -1, -1, 364, 582, 988, -1, 364,
3215  125, 988, -1, 364, 582, 988, 364, 125, 988, -1,
3216  364, 125, 988, 364, 582, 988, -1, 446, -1, 50,
3217  -1, 476, 357, -1, 354, 5, -1, 476, 120, -1,
3218  991, -1, 401, 250, -1, 577, 992, -1, 250, -1,
3219  225, -1, -1, 991, -1, 248, -1, 225, -1, 224,
3220  -1, -1, 577, -1, 191, -1, 494, -1, -1, 997,
3221  -1, 997, 1005, -1, -1, 1002, -1, -1, 1004, -1,
3222  -1, 1003, -1, 1007, -1, 1002, 1007, -1, 1008, -1,
3223  1003, 1008, -1, 1009, -1, 1004, 1009, -1, 588, 1010,
3224  -1, 565, 1010, -1, 249, 1313, 1257, -1, 74, 1434,
3225  -1, 1006, -1, 1005, -1, 1006, -1, 1006, -1, 608,
3226  383, 1432, -1, 45, -1, 461, -1, 206, -1, 1011,
3227  632, 1012, 1250, -1, 1012, 1250, -1, 1437, -1, 1437,
3228  630, 358, 631, -1, -1, 1428, -1, -1, 638, 1437,
3229  -1, 1416, -1, 1015, 632, 1416, -1, -1, 13, 1054,
3230  539, 1429, 1017, 1029, -1, -1, 13, 103, 1028, 1018,
3231  901, -1, 13, 103, 1437, 583, 106, 131, 339, -1,
3232  -1, 13, 403, 691, 1019, 692, -1, -1, 13, 192,
3233  691, 1020, 692, -1, -1, 13, 1552, 1547, 1021, 1554,
3234  -1, -1, 13, 1547, 1022, 1554, -1, -1, 13, 1547,
3235  162, 691, 1023, 1025, 1026, 681, 686, 1027, -1, 13,
3236  537, 803, -1, 13, 273, 202, 805, -1, 13, 537,
3237  800, -1, 13, 537, 799, -1, 13, 474, 1439, 369,
3238  630, 675, 631, -1, 13, 585, 690, 1024, -1, 1440,
3239  388, 169, -1, 1024, 632, 1440, 388, 169, -1, -1,
3240  364, 463, 679, -1, 685, -1, 364, 463, 679, 685,
3241  -1, -1, 434, 556, 691, -1, -1, 138, 687, -1,
3242  -1, 1437, -1, -1, 133, 537, -1, 223, 537, -1,
3243  1044, 847, -1, 1044, 1033, -1, 1033, -1, 848, -1,
3244  1035, -1, 139, 385, 1042, -1, 419, 385, 1092, 1034,
3245  -1, -1, 368, 385, 1092, 1034, 1030, 1092, -1, 15,
3246  385, 1092, 1034, -1, -1, 61, 385, 1034, 1031, 1087,
3247  -1, -1, 436, 385, 1092, 1034, 1032, 1079, -1, 66,
3248  385, 1092, 1258, -1, 563, 385, 1034, -1, 1038, -1,
3249  164, 385, 1043, 608, 539, 1429, 850, -1, 433, 387,
3250  850, -1, 12, -1, 1042, -1, -1, 6, 385, 1092,
3251  1036, 1037, -1, -1, 630, 873, 631, -1, 386, 1258,
3252  -1, -1, 435, 385, 1092, 1039, 1040, -1, -1, -1,
3253  1042, 1041, 235, 630, 873, 631, -1, 1043, -1, 1042,
3254  632, 1043, -1, 1437, -1, 1046, -1, 1044, 632, 1046,
3255  -1, 6, 1053, -1, 1045, 923, 1056, -1, 6, 924,
3256  -1, 1045, 630, 920, 631, -1, -1, 56, 1053, 1428,
3257  1047, 929, 1056, -1, -1, -1, 330, 1053, 1428, 1048,
3258  931, 951, 1049, 1056, -1, 139, 1053, 1428, 1055, -1,
3259  139, 185, 250, 1428, -1, 139, 401, 250, -1, 139,
3260  991, 1428, -1, 132, 248, -1, 147, 248, -1, 13,
3261  1053, 1428, 476, 120, 1418, -1, 13, 1053, 1428, 139,
3262  120, -1, 434, 1057, 1429, -1, 91, 556, 957, 959,
3263  964, -1, 908, -1, 184, -1, 1243, -1, 1051, -1,
3264  1052, -1, -1, 1052, -1, 1051, -1, 1052, 1051, -1,
3265  1051, 1052, -1, 11, 1313, 120, -1, 11, 1313, 1437,
3266  -1, 272, 1313, 120, -1, 272, 1313, 1437, -1, -1,
3267  71, -1, -1, 221, -1, -1, 446, -1, 50, -1,
3268  -1, 8, 1437, -1, 179, -1, -1, 556, -1, 155,
3269  -1, 19, -1, -1, 513, 486, 1069, 1059, 1072, 1064,
3270  -1, 520, 486, 1069, -1, 513, 558, 1061, -1, -1,
3271  1062, -1, 1063, -1, 1062, 632, 1063, -1, 608, 83,
3272  489, -1, 416, 366, -1, 416, 613, -1, 1065, 1066,
3273  1067, 1068, -1, -1, 585, 155, 1434, -1, -1, 388,
3274  155, 1434, -1, -1, 121, 155, 1434, -1, -1, 390,
3275  155, 1434, -1, -1, 1070, -1, 1071, -1, 1070, 632,
3276  1071, -1, 509, -1, 430, -1, -1, 581, 1073, -1,
3277  663, -1, 1073, 632, 663, -1, 501, 155, 1434, -1,
3278  499, 155, 1434, -1, 500, -1, -1, 60, 1473, 1075,
3279  1283, 1076, -1, -1, 412, -1, 171, -1, -1, 436,
3280  1092, 1473, 1078, 1283, 1079, -1, -1, 1080, -1, 1081,
3281  -1, 1081, 1080, -1, 412, -1, 171, -1, 586, -1,
3282  -1, 15, 1092, 1473, 1083, 1283, -1, 34, 1434, -1,
3283  -1, 61, 1473, 1086, 1283, 1087, -1, -1, 1088, -1,
3284  1089, -1, 1089, 1088, -1, 412, -1, 175, -1, 317,
3285  -1, 171, -1, 57, -1, 186, 583, -1, -1, 368,
3286  1092, 1473, 1091, 1283, -1, -1, 356, -1, 269, -1,
3287  -1, 434, 1473, 1094, 1096, -1, 434, 585, 690, 1095,
3288  -1, 1440, 556, 1440, -1, 1095, 632, 1440, 556, 1440,
3289  -1, 1097, -1, 1096, 632, 1097, -1, 1429, 556, 1429,
3290  -1, -1, 48, 225, 1099, 1100, 238, 1104, -1, 1101,
3291  -1, 1103, -1, 1102, -1, 1101, 632, 1102, -1, 1429,
3292  1113, -1, 1429, 1111, 1113, -1, 1437, -1, 120, -1,
3293  -1, 268, 225, 235, 48, 1106, 1107, -1, 1110, -1,
3294  1108, -1, 1109, -1, 1108, 632, 1109, -1, 1429, 1113,
3295  1116, -1, 1429, 1111, 1113, 1116, -1, -1, 385, 850,
3296  1112, 630, 1034, 631, -1, -1, 1114, 1115, -1, -1,
3297  991, 630, 1225, 631, -1, -1, 221, 256, -1, 1118,
3298  -1, 468, 1121, -1, 630, 1119, 631, 1529, -1, 468,
3299  1123, -1, 630, 1119, 631, -1, 468, 1204, -1, 630,
3300  1120, 631, -1, -1, 1123, 1122, 1526, -1, -1, -1,
3301  1124, 1128, 1132, 1125, 1126, 1131, -1, 1246, 1252, -1,
3302  1271, -1, 1127, -1, 1271, 1127, -1, 1127, 1271, -1,
3303  189, 1184, 1235, 1240, 1237, 1246, 1252, 1263, -1, 189,
3304  140, 1235, 1252, -1, -1, 1129, -1, 1129, 1130, -1,
3305  1130, -1, 1543, -1, 506, -1, 504, -1, -1, 186,
3306  582, -1, 272, 238, 478, 328, -1, 1132, 632, 1133,
3307  -1, 1133, -1, 625, -1, 1134, 1423, 1135, -1, 1134,
3308  1138, 1135, 1136, -1, -1, -1, -1, 19, 1437, -1,
3309  19, 1434, -1, 1437, -1, 1434, -1, -1, 630, 631,
3310  -1, 1138, 1142, 1138, -1, 1138, 617, 1138, -1, 1138,
3311  1143, 1138, -1, 352, 1138, -1, 1139, 243, 562, -1,
3312  1139, 243, 1144, 562, -1, 1139, 243, 174, -1, 1139,
3313  243, 1144, 174, -1, 1139, 243, 578, -1, 1139, 243,
3314  1144, 578, -1, 1139, -1, 1139, 243, 357, -1, 1139,
3315  243, 1144, 357, -1, 1139, 156, 1140, -1, 1139, 1146,
3316  1140, -1, 1139, 1146, 1147, 630, 1538, 631, -1, 1140,
3317  -1, 1141, 238, 630, 1538, 631, -1, 1141, 1144, 238,
3318  630, 1538, 631, -1, 1141, 238, 630, 1138, 631, -1,
3319  1141, 238, 630, 1138, 632, 1177, 631, -1, 1141, 1144,
3320  238, 630, 1138, 631, -1, 1141, 1144, 238, 630, 1138,
3321  632, 1177, 631, -1, 1141, 31, 1141, 17, 1140, -1,
3322  1141, 1144, 31, 1141, 17, 1140, -1, 1141, 492, 262,
3323  1141, -1, 1141, 262, 1148, 1239, -1, 1141, 1144, 262,
3324  1148, 1239, -1, 1141, 425, 1141, -1, 1141, 1144, 425,
3325  1141, -1, 1141, -1, 1141, 621, 1141, -1, 1141, 622,
3326  1141, -1, 1141, 479, 1141, -1, 1141, 480, 1141, -1,
3327  1141, 624, 1141, -1, 1141, 623, 1141, -1, 1141, 624,
3328  234, 1138, 1229, -1, 1141, 623, 234, 1138, 1229, -1,
3329  1141, 625, 1141, -1, 1141, 626, 1141, -1, 1141, 627,
3330  1141, -1, 1141, 136, 1141, -1, 1141, 331, 1141, -1,
3331  1141, 628, 1141, -1, 1148, -1, 375, -1, 372, -1,
3332  17, -1, 16, -1, 352, -1, 351, -1, 633, -1,
3333  351, -1, 155, -1, 193, -1, 204, -1, 254, -1,
3334  281, -1, 345, -1, 12, -1, 18, -1, 1425, -1,
3335  1149, -1, 1150, -1, 1153, -1, 1151, -1, 1148, 68,
3336  1439, -1, 1419, -1, 1417, -1, 1165, -1, 1161, -1,
3337  1148, 374, 1148, -1, 624, 1148, -1, 623, 1148, -1,
3338  629, 1148, -1, 1145, 1148, -1, 630, 1538, 631, -1,
3339  630, 1138, 631, -1, 630, 1138, 632, 1177, 631, -1,
3340  459, 630, 1138, 632, 1177, 631, -1, 166, 630, 1538,
3341  631, -1, 634, 1437, 1138, 635, -1, 305, 1178, 9,
3342  630, 1141, 1155, 631, -1, 33, 1148, -1, 53, 630,
3343  1138, 19, 1175, 631, -1, 52, 1180, 1182, 1181, 149,
3344  -1, 91, 630, 1138, 632, 1175, 631, -1, 91, 630,
3345  1138, 588, 958, 631, -1, 120, 630, 1425, 631, -1,
3346  592, 630, 1426, 631, -1, 234, 1138, 1229, 624, 1138,
3347  -1, 59, 630, 1177, 631, -1, 59, 630, 1177, 588,
3348  958, 631, -1, 99, 1137, -1, 110, 630, 1138, 631,
3349  -1, 115, 630, 1138, 631, -1, 216, 630, 1138, 631,
3350  -1, 231, 630, 1138, 632, 1138, 632, 1138, 632, 1138,
3351  631, -1, 234, 630, 1138, 632, 1138, 631, -1, 234,
3352  630, 1138, 632, 1138, 632, 1177, 631, -1, 258, 630,
3353  1138, 632, 1138, 631, -1, 325, 630, 1138, 631, -1,
3354  332, 630, 1138, 631, -1, 453, 630, 1138, 632, 1138,
3355  631, -1, 466, 630, 1138, 631, -1, 552, 630, 1138,
3356  631, -1, 549, 630, 1138, 631, -1, 549, 630, 1138,
3357  632, 1138, 631, -1, 561, 630, 1138, 631, -1, 561,
3358  630, 255, 1138, 189, 1138, 631, -1, 561, 630, 557,
3359  1138, 189, 1138, 631, -1, 561, 630, 44, 1138, 189,
3360  1138, 631, -1, 561, 630, 255, 189, 1138, 631, -1,
3361  561, 630, 557, 189, 1138, 631, -1, 561, 630, 44,
3362  189, 1138, 631, -1, 561, 630, 1138, 189, 1138, 631,
3363  -1, 585, 630, 631, -1, 619, 630, 1138, 631, -1,
3364  7, 630, 1138, 632, 1138, 631, -1, 7, 630, 1138,
3365  632, 234, 1138, 1229, 631, -1, 97, 1137, -1, 102,
3366  944, -1, 108, 630, 1138, 632, 234, 1138, 1229, 631,
3367  -1, 109, 630, 1138, 632, 234, 1138, 1229, 631, -1,
3368  173, 630, 1229, 189, 1138, 631, -1, 197, 630, 1231,
3369  632, 1138, 631, -1, 955, -1, 396, 630, 1141, 238,
3370  1138, 631, -1, 525, 630, 1138, 632, 1138, 631, -1,
3371  525, 630, 1138, 632, 234, 1138, 1229, 631, -1, 529,
3372  630, 1138, 632, 1138, 632, 1138, 631, -1, 529, 630,
3373  1138, 632, 1138, 631, -1, 529, 630, 1138, 189, 1138,
3374  186, 1138, 631, -1, 529, 630, 1138, 189, 1138, 631,
3375  -1, 535, 944, -1, 550, 630, 1230, 632, 1138, 632,
3376  1138, 631, -1, 551, 630, 1230, 632, 1138, 632, 1138,
3377  631, -1, 589, 1137, -1, 591, 944, -1, 590, 944,
3378  -1, 21, 630, 1138, 631, -1, 58, 630, 1138, 631,
3379  -1, 66, 630, 1177, 631, -1, 69, 630, 1138, 631,
3380  -1, 103, 630, 631, -1, 220, 630, 1138, 632, 1138,
3381  632, 1138, 631, -1, 187, 630, 1138, 632, 1138, 631,
3382  -1, 187, 630, 1138, 632, 1138, 632, 1138, 631, -1,
3383  321, 630, 1138, 631, -1, 331, 630, 1138, 632, 1138,
3384  631, -1, 363, 630, 1138, 631, -1, 388, 630, 1138,
3385  631, -1, 410, 630, 1138, 631, -1, 438, 630, 1138,
3386  632, 1138, 631, -1, 439, 630, 1138, 632, 1138, 632,
3387  1138, 631, -1, 451, 630, 1138, 631, -1, 460, 630,
3388  631, -1, 563, 630, 1138, 632, 1138, 631, -1, 603,
3389  630, 1138, 631, -1, 603, 630, 1138, 632, 1138, 631,
3390  -1, 604, 630, 1138, 981, 631, -1, 604, 630, 1138,
3391  19, 59, 971, 981, 631, -1, 604, 630, 1138, 19,
3392  33, 971, 631, -1, 604, 630, 1138, 632, 1257, 632,
3393  1257, 632, 1257, 631, -1, 1152, -1, 88, 630, 1138,
3394  632, 1138, 631, -1, 195, 630, 1177, 631, -1, 266,
3395  630, 1177, 631, -1, 333, 630, 1177, 631, -1, 334,
3396  630, 1177, 631, -1, 335, 630, 1177, 631, -1, 393,
3397  630, 1138, 632, 1138, 631, -1, 394, 630, 1177, 631,
3398  -1, -1, 1432, 630, 1154, 1158, 631, -1, 1437, 638,
3399  1437, 630, 1176, 631, -1, 1156, 1157, -1, 238, 42,
3400  328, -1, -1, 238, 341, 252, 328, -1, -1, 608,
3401  411, 168, -1, -1, 1159, -1, 1160, -1, 1159, 632,
3402  1160, -1, 1134, 1138, 1135, 1136, -1, 27, 630, 1173,
3403  631, -1, 27, 630, 135, 1173, 631, -1, 36, 630,
3404  1173, 631, -1, 37, 630, 1173, 631, -1, 39, 630,
3405  1173, 631, -1, 92, 630, 1234, 625, 631, -1, 92,
3406  630, 1173, 631, -1, -1, -1, 92, 630, 135, 1162,
3407  1177, 1163, 631, -1, 327, 630, 1173, 631, -1, 327,
3408  630, 135, 1173, 631, -1, 310, 630, 1173, 631, -1,
3409  310, 630, 135, 1173, 631, -1, 519, 630, 1173, 631,
3410  -1, 597, 630, 1173, 631, -1, 518, 630, 1173, 631,
3411  -1, 599, 630, 1173, 631, -1, 530, 630, 1173, 631,
3412  -1, 530, 630, 135, 1173, 631, -1, -1, 203, 630,
3413  1168, 1164, 1177, 1170, 1169, 631, -1, -1, 637, 1166,
3414  1167, -1, 1439, 477, 1138, -1, 1439, -1, 637, 1459,
3415  1439, 1014, -1, -1, 135, -1, -1, 470, 1416, -1,
3416  -1, -1, 373, 46, 1171, 1172, -1, 1172, 632, 1424,
3417  1250, -1, 1424, 1250, -1, -1, 1234, 1174, 1138, -1,
3418  33, 949, -1, 59, 949, 969, -1, 343, 949, -1,
3419  484, -1, 484, 236, -1, 580, -1, 580, 236, -1,
3420  110, -1, 552, 943, -1, 107, 943, -1, 118, 941,
3421  -1, -1, 1177, -1, 1138, -1, 1177, 632, 1138, -1,
3422  1179, -1, 630, 1179, 631, -1, 1425, -1, 1179, 632,
3423  1425, -1, -1, 1138, -1, -1, 145, 1138, -1, 605,
3424  1138, 548, 1138, -1, 1182, 605, 1138, 548, 1138, -1,
3425  1198, -1, 1187, -1, 1186, -1, 1183, -1, 634, 1437,
3426  1183, 635, -1, 1185, -1, 1186, 632, 1185, -1, 1183,
3427  1195, 1183, -1, 1183, 522, 1198, -1, -1, 1183, 1195,
3428  1183, 364, 1188, 1138, -1, -1, 1183, 522, 1198, 364,
3429  1189, 1138, -1, -1, 1183, 1195, 1183, 588, 1190, 630,
3430  1228, 631, -1, 1183, 341, 247, 1198, -1, -1, 1183,
3431  258, 1214, 247, 1183, 364, 1191, 1138, -1, -1, 1183,
3432  258, 1214, 247, 1198, 1192, 588, 630, 1228, 631, -1,
3433  1183, 341, 258, 1214, 247, 1198, -1, -1, 1183, 453,
3434  1214, 247, 1183, 364, 1193, 1138, -1, -1, 1183, 453,
3435  1214, 247, 1198, 1194, 588, 630, 1228, 631, -1, 1183,
3436  341, 453, 1214, 247, 1198, -1, 247, -1, 228, 247,
3437  -1, 95, 247, -1, -1, 1197, -1, 385, 630, 1228,
3438  631, 850, -1, -1, 1199, 1429, 1196, 1233, 1223, -1,
3439  1213, 1212, 1209, -1, 630, 1212, 1200, 631, 1233, -1,
3440  1207, 1530, -1, -1, -1, 1200, 576, 1534, 1201, 1535,
3441  1202, 1530, -1, 1204, -1, -1, -1, 1205, 1541, 1132,
3442  1206, 918, 1131, -1, -1, 1212, 1208, 1186, -1, -1,
3443  -1, 1210, 1128, 1132, 1211, 918, -1, -1, 468, -1,
3444  -1, 376, -1, -1, 186, 247, -1, 186, 373, 46,
3445  -1, 186, 202, 46, -1, 184, -1, 221, -1, -1,
3446  1216, 991, 1215, 1218, 630, 1227, 631, -1, -1, 587,
3447  991, 1215, 1219, 630, 1225, 631, -1, 1217, -1, 1220,
3448  1217, -1, -1, -1, 1222, 1220, -1, -1, 1224, 1221,
3449  -1, -1, 1227, -1, 1437, -1, 401, -1, 1226, -1,
3450  1227, 632, 1226, -1, 1437, -1, 1228, 632, 1437, -1,
3451  1230, -1, 111, -1, 112, -1, 113, -1, 114, -1,
3452  213, -1, 214, -1, 215, -1, 323, -1, 324, -1,
3453  465, -1, 618, -1, 115, -1, 603, -1, 216, -1,
3454  325, -1, 332, -1, 410, -1, 466, -1, 321, -1,
3455  619, -1, 110, -1, 552, -1, 549, -1, 107, -1,
3456  -1, 19, -1, 155, -1, -1, 1232, 1437, -1, -1,
3457  12, -1, -1, -1, 606, 1236, 1138, -1, -1, -1,
3458  207, 1238, 1138, -1, 160, 1148, -1, -1, -1, 202,
3459  46, 1241, 1242, -1, 1241, 632, 1424, 1250, -1, 1424,
3460  1250, -1, -1, 609, -1, 610, -1, 373, 46, 1244,
3461  -1, 1244, 632, 1245, -1, 1245, -1, 1426, 1250, -1,
3462  -1, 1247, -1, -1, 373, 46, 1248, 1249, -1, 1249,
3463  632, 1424, 1250, -1, 1424, 1250, -1, -1, 20, -1,
3464  126, -1, -1, 1253, -1, -1, 1253, -1, 263, 1254,
3465  -1, 1255, -1, 1255, 632, 1255, -1, 1255, 362, 1255,
3466  -1, 1437, -1, 1417, -1, 567, -1, 277, -1, 358,
3467  -1, -1, 263, 1255, -1, 358, -1, 209, -1, 277,
3468  -1, 567, -1, 117, -1, 181, -1, 358, -1, 209,
3469  -1, 277, -1, 567, -1, 1261, -1, 358, -1, 567,
3470  -1, 277, -1, 117, -1, 181, -1, 358, -1, 567,
3471  -1, 277, -1, 1261, -1, 1262, -1, 117, -1, 181,
3472  -1, -1, -1, 403, 14, 1264, 630, 1265, 631, -1,
3473  -1, 1266, -1, 1266, 632, 1266, -1, 358, -1, -1,
3474  1268, 1269, -1, 1269, 632, 1270, -1, 1270, -1, 637,
3475  1439, -1, 1439, -1, -1, 235, 1272, 1273, -1, -1,
3476  -1, 377, 1436, 1274, 960, 1275, 1400, 1403, -1, 141,
3477  1436, -1, 1267, -1, -1, 138, 1277, 1177, -1, -1,
3478  139, 1289, 1473, 1288, 1279, 1283, 1055, -1, -1, -1,
3479  139, 225, 1437, 364, 1429, 1280, 1281, 1050, -1, 139,
3480  103, 1288, 1437, -1, 139, 192, 1288, 1437, 638, 1437,
3481  -1, 139, 192, 1288, 1437, -1, 139, 403, 1288, 691,
3482  -1, 139, 585, 690, 1505, -1, -1, 139, 600, 1288,
3483  1282, 1283, 1055, -1, 139, 162, 1288, 691, -1, 139,
3484  560, 1288, 691, -1, 139, 537, 826, 1290, -1, 139,
3485  273, 202, 827, 1290, -1, 139, 474, 1288, 1439, -1,
3486  1284, -1, 1283, 632, 1284, -1, 1429, -1, 1429, 1196,
3487  -1, 1287, -1, 1286, 632, 1287, -1, 1430, -1, -1,
3488  220, 166, -1, -1, 542, -1, -1, 1291, -1, 1292,
3489  -1, 1291, 1292, -1, 1290, 632, 1292, -1, 837, -1,
3490  838, -1, -1, -1, 231, 1294, 1299, 1054, 1301, 1295,
3491  1303, 1319, -1, -1, -1, 439, 1297, 1300, 1301, 1298,
3492  1303, -1, -1, 280, -1, 123, -1, 210, -1, 1328,
3493  -1, 123, -1, 235, 1302, -1, 1302, -1, 1285, -1,
3494  1306, -1, 630, 631, 1306, -1, 630, 1305, 631, 1306,
3495  -1, -1, 476, 1304, 1310, -1, 1305, 632, 1422, -1,
3496  1422, -1, 592, 1309, -1, 593, 1309, -1, -1, 896,
3497  1307, 1526, -1, -1, 630, 896, 631, 1308, 1529, -1,
3498  1309, 632, 1314, -1, 1314, -1, 1310, 632, 1311, -1,
3499  1311, -1, 1426, 1312, 1318, -1, 155, -1, 477, -1,
3500  -1, 1312, -1, -1, 630, 1315, 1316, 631, -1, -1,
3501  1317, -1, 1317, 632, 1318, -1, 1318, -1, 1138, -1,
3502  120, -1, -1, -1, 364, 142, 1320, 250, 582, 1326,
3503  -1, -1, -1, 582, 1322, 1328, 1054, 1184, 476, 1324,
3504  1323, 1235, 1246, 1256, -1, 1324, 632, 1325, -1, 1325,
3505  -1, 1426, 1312, 1318, -1, 1326, 632, 1327, -1, 1327,
3506  -1, 1426, 1312, 1318, -1, -1, 280, -1, -1, 125,
3507  1330, 1338, 1331, -1, -1, 189, 1429, 1196, 1332, 1235,
3508  1246, 1256, -1, -1, 1335, 1333, 189, 1184, 1235, -1,
3509  -1, 189, 1286, 1334, 588, 1184, 1235, -1, 1336, -1,
3510  1335, 632, 1336, -1, 1437, 1337, -1, 1437, 638, 1437,
3511  1337, -1, -1, 638, 625, -1, -1, 1339, 1338, -1,
3512  412, -1, 280, -1, 221, -1, -1, 563, 1342, 1341,
3513  1284, -1, -1, 539, -1, -1, 1344, -1, 1345, -1,
3514  1344, 632, 1345, -1, 93, -1, 318, -1, 41, 241,
3515  -1, 89, 534, -1, 381, 176, -1, 242, -1, 533,
3516  -1, 493, -1, 12, -1, -1, 186, 411, 358, -1,
3517  -1, 481, 1348, 1349, -1, 104, 1360, -1, 1356, 536,
3518  1355, 1360, -1, 1356, 559, 1355, 1360, -1, 161, 1355,
3519  1360, -1, 539, 517, 1355, 1360, -1, 367, 536, 1355,
3520  1360, -1, 392, -1, 153, 915, 1352, -1, 153, 12,
3521  1352, -1, 1356, 70, 1357, 1429, 1355, 1360, -1, 1353,
3522  274, -1, 486, 212, -1, -1, 34, 161, 1358, 1359,
3523  1350, 1251, -1, -1, 427, 161, 1358, 1359, 1351, 1251,
3524  -1, 993, 1357, 1429, 1355, 1235, -1, 1354, 152, -1,
3525  402, -1, 92, 630, 625, 631, 602, -1, 92, 630,
3526  625, 631, 158, -1, 602, 1251, -1, 158, 1251, -1,
3527  407, -1, 406, 1343, 1346, 1251, -1, 1458, 517, 1360,
3528  -1, 1356, 405, -1, 1458, 596, 1360, -1, 957, 1360,
3529  -1, 69, 1360, -1, 201, -1, 201, 186, 1440, -1,
3530  94, 103, 906, 1437, -1, 94, 539, 1429, -1, 94,
3531  600, 1429, -1, 302, 517, -1, 486, 517, -1, 94,
3532  403, 691, -1, 94, 192, 691, -1, 94, 560, 691,
3533  -1, 403, 517, 1360, -1, 192, 517, 1360, -1, 403,
3534  67, 691, -1, 192, 67, 691, -1, 94, 162, 691,
3535  -1, 517, -1, 336, -1, 274, -1, 302, -1, 33,
3536  -1, -1, 521, -1, -1, 1357, 1437, -1, -1, 190,
3537  -1, 189, -1, 238, -1, -1, 238, 1434, -1, -1,
3538  189, 1259, -1, -1, 262, 1434, -1, 606, 1138, -1,
3539  -1, 1365, 1429, 1362, 1367, -1, -1, 1365, 1366, 1363,
3540  1364, -1, 1117, -1, 1293, -1, 1296, -1, 1321, -1,
3541  1329, -1, 126, -1, 127, -1, -1, 171, -1, 386,
3542  -1, 187, 155, 1439, -1, -1, 1416, -1, 1437, -1,
3543  -1, 183, 1092, 1369, 1370, -1, -1, -1, 1473, 1371,
3544  1377, 1372, 1373, -1, 1375, -1, -1, 608, 416, 272,
3545  -1, -1, 186, 1374, 170, -1, 1375, 632, 1376, -1,
3546  1376, -1, 157, 274, -1, 153, 274, -1, 194, 274,
3547  -1, 487, 274, -1, 33, 274, -1, 426, 274, -1,
3548  411, 48, -1, 212, -1, 402, -1, 274, -1, 517,
3549  -1, 128, -1, 444, -1, -1, 1283, -1, -1, 442,
3550  1379, 1380, -1, 1380, 632, 1381, -1, 1381, -1, -1,
3551  486, 1382, 1383, -1, 302, -1, 411, 48, -1, -1,
3552  12, -1, -1, 409, 1385, 1386, -1, 1353, 274, 1387,
3553  -1, 556, 1434, -1, 29, 1138, -1, 251, 1389, 1138,
3554  -1, -1, 82, -1, 411, -1, 587, 1437, -1, -1,
3555  -1, -1, -1, 268, 1396, 1392, 1398, 1397, 226, 1436,
3556  1393, 1399, 235, 539, 1429, 1196, 1394, 960, 1395, 1406,
3557  1400, 1403, 1407, 1409, 1412, -1, 106, -1, 616, -1,
3558  -1, 269, -1, -1, 80, -1, 280, -1, -1, 439,
3559  -1, 221, -1, -1, 70, 1401, -1, 1401, 1402, -1,
3560  1402, -1, 544, 46, 1416, -1, 371, 148, 46, 1416,
3561  -1, 148, 46, 1416, -1, 159, 46, 1416, -1, -1,
3562  265, 1404, -1, 1404, 1405, -1, 1405, -1, 544, 46,
3563  1416, -1, 511, 46, 1416, -1, -1, 457, 218, 46,
3564  1416, -1, -1, 221, 358, 1408, -1, 265, -1, 457,
3565  -1, -1, 630, 1410, 631, -1, 630, 631, -1, 1410,
3566  632, 1411, -1, 1411, -1, 1426, -1, 637, 1439, -1,
3567  -1, 476, 1413, -1, 1413, 632, 1414, -1, 1414, -1,
3568  1426, 1312, 1134, 1318, 1135, -1, 545, -1, 342, -1,
3569  570, 545, -1, 1415, 1435, -1, 1435, -1, 209, -1,
3570  35, -1, 382, -1, 1419, -1, 624, 1420, -1, 623,
3571  1420, -1, 1415, -1, 1420, -1, 1421, -1, 357, -1,
3572  174, -1, 562, -1, 209, -1, 35, -1, 570, 209,
3573  -1, 570, 35, -1, 358, -1, 277, -1, 567, -1,
3574  117, -1, 181, -1, 110, 545, -1, 552, 545, -1,
3575  549, 545, -1, 1426, -1, 1423, -1, 1437, 638, 625,
3576  -1, 1437, 638, 1437, 638, 625, -1, 1138, -1, 1437,
3577  -1, 1427, -1, 1437, -1, 1427, -1, 1437, 638, 1437,
3578  -1, 638, 1437, 638, 1437, -1, 1437, 638, 1437, 638,
3579  1437, -1, 1437, -1, 1437, 638, 1437, 638, 1437, -1,
3580  1437, 638, 1437, -1, 638, 1437, -1, 1437, -1, 1437,
3581  638, 1437, -1, 638, 1437, -1, 1437, 1337, -1, 1437,
3582  638, 1437, 1337, -1, 1437, -1, 217, -1, 219, -1,
3583  1434, -1, 545, -1, 545, -1, 545, -1, 1432, -1,
3584  1441, -1, 1432, -1, 1442, -1, 1437, -1, 1434, -1,
3585  261, -1, 1439, -1, 1439, 637, 1439, -1, 99, 1137,
3586  -1, 1442, -1, 21, -1, 28, -1, 30, -1, 47,
3587  -1, 48, -1, 58, -1, 60, -1, 65, -1, 74,
3588  -1, 76, -1, 88, -1, 116, -1, 138, -1, 149,
3589  -1, 165, -1, 183, -1, 187, -1, 205, -1, 208,
3590  -1, 211, -1, 233, -1, 252, -1, 354, -1, 367,
3591  -1, 369, -1, 379, -1, 383, -1, 395, -1, 398,
3592  -1, 433, -1, 436, -1, 442, -1, 445, -1, 454,
3593  -1, 462, -1, 467, -1, 474, -1, 484, -1, 490,
3594  -1, 486, -1, 491, -1, 513, -1, 520, -1, 563,
3595  -1, 574, -1, 575, -1, 612, -1, 615, -1, 583,
3596  -1, 5, -1, 7, -1, 8, -1, 9, -1, 10,
3597  -1, 11, -1, 14, -1, 18, -1, 23, -1, 25,
3598  -1, 24, -1, 26, -1, 27, -1, 34, -1, 38,
3599  -1, 41, -1, 43, -1, 42, -1, 45, -1, 51,
3600  -1, 54, -1, 55, -1, 57, -1, 62, -1, 64,
3601  -1, 63, -1, 66, -1, 67, -1, 69, -1, 73,
3602  -1, 72, -1, 70, -1, 75, -1, 77, -1, 78,
3603  -1, 79, -1, 80, -1, 82, -1, 83, -1, 85,
3604  -1, 87, -1, 86, -1, 89, -1, 93, -1, 96,
3605  -1, 98, -1, 101, -1, 106, -1, 105, -1, 107,
3606  -1, 110, -1, 115, -1, 121, -1, 122, -1, 124,
3607  -1, 128, -1, 130, -1, 131, -1, 132, -1, 133,
3608  -1, 134, -1, 141, -1, 142, -1, 143, -1, 150,
3609  -1, 154, -1, 153, -1, 152, -1, 157, -1, 158,
3610  -1, 160, -1, 162, -1, 161, -1, 163, -1, 164,
3611  -1, 168, -1, 169, -1, 170, -1, 171, -1, 172,
3612  -1, 176, -1, 175, -1, 188, -1, 147, -1, 190,
3613  -1, 178, -1, 179, -1, 180, -1, 194, -1, 196,
3614  -1, 195, -1, 197, -1, 201, -1, 199, -1, 206,
3615  -1, 212, -1, 216, -1, 218, -1, 222, -1, 237,
3616  -1, 223, -1, 224, -1, 227, -1, 241, -1, 242,
3617  -1, 244, -1, 245, -1, 232, -1, 249, -1, 253,
3618  -1, 256, -1, 259, -1, 260, -1, 266, -1, 267,
3619  -1, 269, -1, 271, -1, 273, -1, 274, -1, 308,
3620  -1, 302, -1, 304, -1, 286, -1, 290, -1, 287,
3621  -1, 288, -1, 303, -1, 289, -1, 292, -1, 284,
3622  -1, 291, -1, 285, -1, 300, -1, 294, -1, 293,
3623  -1, 295, -1, 296, -1, 297, -1, 298, -1, 299,
3624  -1, 282, -1, 306, -1, 307, -1, 309, -1, 311,
3625  -1, 312, -1, 317, -1, 318, -1, 319, -1, 320,
3626  -1, 321, -1, 322, -1, 325, -1, 326, -1, 330,
3627  -1, 328, -1, 332, -1, 333, -1, 334, -1, 335,
3628  -1, 336, -1, 337, -1, 339, -1, 338, -1, 340,
3629  -1, 343, -1, 344, -1, 348, -1, 347, -1, 355,
3630  -1, 349, -1, 350, -1, 359, -1, 361, -1, 362,
3631  -1, 363, -1, 365, -1, 366, -1, 380, -1, 381,
3632  -1, 384, -1, 387, -1, 386, -1, 388, -1, 389,
3633  -1, 390, -1, 391, -1, 392, -1, 393, -1, 394,
3634  -1, 399, -1, 400, -1, 402, -1, 404, -1, 405,
3635  -1, 406, -1, 407, -1, 408, -1, 410, -1, 411,
3636  -1, 412, -1, 415, -1, 419, -1, 420, -1, 422,
3637  -1, 421, -1, 423, -1, 426, -1, 427, -1, 428,
3638  -1, 429, -1, 430, -1, 432, -1, 435, -1, 437,
3639  -1, 440, -1, 444, -1, 447, -1, 448, -1, 449,
3640  -1, 451, -1, 455, -1, 456, -1, 457, -1, 460,
3641  -1, 458, -1, 459, -1, 461, -1, 463, -1, 464,
3642  -1, 466, -1, 472, -1, 471, -1, 473, -1, 485,
3643  -1, 478, -1, 482, -1, 487, -1, 489, -1, 492,
3644  -1, 493, -1, 499, -1, 500, -1, 501, -1, 504,
3645  -1, 503, -1, 506, -1, 509, -1, 512, -1, 514,
3646  -1, 515, -1, 516, -1, 517, -1, 521, -1, 523,
3647  -1, 524, -1, 525, -1, 526, -1, 528, -1, 527,
3648  -1, 531, -1, 532, -1, 533, -1, 534, -1, 541,
3649  -1, 536, -1, 540, -1, 537, -1, 542, -1, 543,
3650  -1, 546, -1, 547, -1, 558, -1, 559, -1, 549,
3651  -1, 550, -1, 551, -1, 552, -1, 564, -1, 565,
3652  -1, 566, -1, 192, -1, 568, -1, 569, -1, 572,
3653  -1, 571, -1, 578, -1, 581, -1, 585, -1, 586,
3654  -1, 596, -1, 600, -1, 593, -1, 602, -1, 601,
3655  -1, 603, -1, 611, -1, 604, -1, 614, -1, 616,
3656  -1, 619, -1, -1, 476, 1444, 1445, -1, -1, 1461,
3657  1446, 1451, -1, -1, 558, 1447, 1464, -1, -1, 1457,
3658  1448, 1449, -1, -1, 1460, 1450, 1451, -1, 558, 1464,
3659  -1, -1, 632, 1452, -1, -1, 1453, 1455, -1, -1,
3660  1452, 632, 1454, 1455, -1, -1, 1457, 1456, 1460, -1,
3661  1461, -1, 199, -1, 269, -1, 473, -1, -1, 199,
3662  -1, 269, -1, 473, -1, -1, 199, 638, -1, 269,
3663  638, -1, 473, 638, -1, 1463, 1312, 1470, -1, -1,
3664  1463, 1312, 1462, 1470, -1, 637, 1439, 1312, 1138, -1,
3665  637, 637, 1459, 1463, 1312, 1470, -1, 957, 962, -1,
3666  338, 1312, 1138, -1, 338, 959, 964, -1, 388, 1312,
3667  1469, -1, 388, 186, 1440, 1312, 1469, -1, 1437, -1,
3668  1437, 638, 1437, -1, 120, 638, 1437, -1, 1465, -1,
3669  1466, -1, 1465, 632, 1466, -1, 1466, 632, 1465, -1,
3670  1467, -1, 244, 260, 1468, -1, 416, 366, -1, 416,
3671  613, -1, 416, 568, -1, 416, 75, -1, 437, 416,
3672  -1, 471, -1, 545, -1, 388, 630, 545, 631, -1,
3673  363, 630, 545, 631, -1, 1138, -1, 120, -1, 364,
3674  -1, 12, -1, 33, -1, -1, 272, 1473, 1472, 1474,
3675  -1, 539, -1, 536, -1, 1475, -1, 1474, 632, 1475,
3676  -1, 1429, 1233, 1476, -1, 416, -1, 613, -1, 280,
3677  613, -1, 416, 269, -1, -1, 579, 1478, 1473, -1,
3678  205, 1429, 367, 1233, -1, 205, 1431, 65, -1, -1,
3679  205, 1431, 416, 1480, 1481, 1235, 1252, -1, 1482, -1,
3680  1437, 1483, -1, 179, -1, 348, -1, 179, -1, 348,
3681  -1, 400, -1, 253, -1, -1, 1485, 1484, 630, 1317,
3682  631, -1, 155, -1, 193, -1, 254, -1, 204, -1,
3683  281, -1, -1, 452, 690, 1487, 1488, -1, 1493, 364,
3684  1492, 1504, 189, 1506, -1, 1493, 364, 192, 1504, 189,
3685  1506, -1, 1493, 364, 403, 1504, 189, 1506, -1, 12,
3686  1494, 632, 200, 370, 189, 1506, -1, 408, 364, 1440,
3687  189, 1506, -1, -1, 200, 690, 1490, 1491, -1, 1493,
3688  364, 1492, 1504, 556, 1506, 1511, 1512, -1, 1493, 364,
3689  192, 1504, 556, 1506, 1511, 1512, -1, 1493, 364, 403,
3690  1504, 556, 1506, 1511, 1512, -1, 408, 364, 1440, 556,
3691  1506, 1513, -1, -1, 539, -1, 1495, -1, 12, 1494,
3692  -1, -1, 402, -1, 1496, -1, 1495, 632, 1496, -1,
3693  -1, 468, 1497, 1508, -1, -1, 231, 1498, 1508, -1,
3694  -1, 582, 1499, 1508, -1, -1, 424, 1500, 1508, -1,
3695  125, -1, 584, -1, 225, -1, 13, -1, 94, -1,
3696  139, -1, 165, -1, 432, -1, 482, -1, 404, -1,
3697  178, -1, 200, 370, -1, 481, 104, -1, 531, -1,
3698  94, 542, 536, -1, 272, 536, -1, 440, 486, -1,
3699  440, 64, -1, 94, 600, -1, 481, 600, -1, 94,
3700  456, -1, 13, 456, -1, 94, 585, -1, 162, -1,
3701  560, -1, 94, 537, -1, -1, 17, -1, 1503, 1501,
3702  1502, -1, 1503, -1, 526, 545, -1, 245, 545, -1,
3703  62, 545, -1, 625, -1, 1437, 638, 625, -1, 625,
3704  638, 625, -1, 1429, -1, 1440, -1, 1505, 632, 1440,
3705  -1, 1507, -1, 1506, 632, 1507, -1, 1440, 218, 46,
3706  545, -1, 1440, 218, 46, 388, 545, -1, 1440, 218,
3707  608, 1439, -1, 1440, 218, 608, 1439, 19, 1434, -1,
3708  1440, -1, -1, 630, 1509, 631, -1, 1509, 632, 1510,
3709  -1, 1510, -1, 1437, -1, -1, 441, 1502, -1, 441,
3710  510, -1, 441, 614, -1, 441, 350, -1, -1, 608,
3711  1514, -1, -1, 608, 200, 370, -1, 1514, 1515, -1,
3712  1515, -1, 200, 370, -1, 307, 1257, -1, 311, 1257,
3713  -1, 306, 1257, -1, 312, 1257, -1, -1, 30, 1517,
3714  1518, -1, -1, 611, -1, -1, 17, 354, 55, -1,
3715  17, 55, -1, -1, 431, -1, 354, 431, -1, -1,
3716  462, -1, 76, 1518, 1519, 1520, -1, 454, 1518, 1519,
3717  1520, -1, 454, 1518, 556, 1521, 1437, -1, 462, 1437,
3718  -1, 431, 462, 1437, -1, -1, 1527, -1, -1, 576,
3719  1534, 1528, 1118, -1, -1, 1527, -1, 1531, -1, -1,
3720  1531, -1, -1, 1532, 1533, -1, 1247, 1251, -1, 1253,
3721  -1, -1, 135, -1, 12, -1, 468, 1203, -1, 630,
3722  1120, 631, -1, 1535, 1530, -1, -1, 1536, 576, 1534,
3723  1537, 1535, 1530, -1, 1539, 1536, 1540, -1, -1, -1,
3724  -1, 1542, -1, 1542, 1543, -1, 1543, -1, 522, -1,
3725  210, -1, 135, -1, 507, -1, 502, -1, 503, -1,
3726  505, -1, 12, -1, 1549, 1545, -1, 1548, 1546, -1,
3727  1550, 1547, 1554, -1, 1554, -1, 1566, -1, 1577, -1,
3728  1571, -1, 677, -1, 1554, -1, 1566, -1, 1577, -1,
3729  1571, -1, 1570, -1, 677, -1, 1548, -1, 1549, -1,
3730  -1, 122, 155, 1440, -1, 1551, -1, 1551, 1552, -1,
3731  1552, -1, 375, 439, -1, 11, 155, 569, -1, 11,
3732  155, 319, -1, 11, 155, 543, -1, -1, 508, 467,
3733  122, -1, 508, 467, 237, -1, -1, 1553, 600, 1429,
3734  1555, 1556, 19, 1558, -1, -1, 630, 1557, 631, -1,
3735  1437, -1, 1557, 632, 1437, -1, -1, 1559, 1560, 1565,
3736  -1, -1, 1563, 1561, 1526, -1, 630, 1562, 631, 1529,
3737  -1, 1563, -1, 630, 1562, 631, -1, -1, 468, 1564,
3738  1123, -1, -1, 608, 61, 370, -1, 608, 51, 61,
3739  370, -1, 608, 269, 61, 370, -1, -1, -1, -1,
3740  560, 1134, 691, 797, 798, 364, 1134, 1567, 1429, 186,
3741  1134, 1568, 144, 459, 1569, 746, -1, 10, 1134, 192,
3742  1437, 449, 919, 491, 1434, -1, 1134, 192, 1437, 449,
3743  919, 491, 1434, -1, -1, -1, -1, -1, -1, 1134,
3744  192, 691, 630, 1572, 702, 631, 1573, 449, 1574, 954,
3745  1575, 693, 1576, 746, -1, -1, -1, -1, -1, 403,
3746  1134, 691, 1578, 630, 1579, 706, 631, 1580, 693, 1581,
3747  746, -1, 615, 1584, 1583, 1585, -1, 615, 149, 1583,
3748  1587, -1, 615, 398, 1583, -1, 615, 76, 1583, 1586,
3749  -1, 615, 454, 1583, -1, 615, 420, -1, 1416, -1,
3750  1416, 632, 1416, -1, 1416, 632, 1416, 632, 1257, -1,
3751  30, -1, 513, -1, -1, 247, -1, 447, -1, -1,
3752  365, 389, -1, -1, -1, 532, 1588, 1589, -1, -1,
3753  186, 322, -1, 233, 391, 1437, 491, 1434, -1, 575,
3754  391, 1437, -1
3755 };
3756 
3757 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
3758 static const yytype_uint16 yyrline[] =
3759 {
3760  0, 1964, 1964, 1977, 1976, 2001, 2008, 2010, 2014, 2015,
3761  2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, 2029,
3762  2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038, 2039,
3763  2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048, 2049,
3764  2050, 2051, 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059,
3765  2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, 2068, 2069,
3766  2070, 2071, 2075, 2085, 2086, 2090, 2110, 2117, 2128, 2127,
3767  2138, 2140, 2144, 2145, 2149, 2162, 2161, 2181, 2180, 2198,
3768  2199, 2203, 2207, 2211, 2215, 2220, 2224, 2228, 2233, 2246,
3769  2251, 2255, 2259, 2263, 2267, 2271, 2276, 2280, 2285, 2316,
3770  2321, 2328, 2331, 2333, 2334, 2338, 2352, 2356, 2372, 2376,
3771  2389, 2388, 2434, 2439, 2433, 2446, 2451, 2444, 2458, 2463,
3772  2456, 2469, 2468, 2481, 2480, 2488, 2492, 2496, 2500, 2507,
3773  2520, 2521, 2525, 2529, 2533, 2537, 2541, 2546, 2550, 2558,
3774  2557, 2589, 2588, 2595, 2602, 2603, 2609, 2615, 2625, 2631,
3775  2637, 2639, 2646, 2647, 2651, 2657, 2666, 2667, 2675, 2675,
3776  2730, 2731, 2732, 2733, 2734, 2735, 2736, 2737, 2738, 2739,
3777  2740, 2741, 2742, 2747, 2761, 2775, 2794, 2795, 2799, 2800,
3778  2805, 2807, 2809, 2811, 2813, 2815, 2817, 2823, 2824, 2825,
3779  2829, 2833, 2841, 2840, 2853, 2855, 2858, 2860, 2864, 2868,
3780  2875, 2877, 2881, 2882, 2887, 2906, 2936, 2938, 2942, 2943,
3781  2947, 2976, 2977, 2978, 2979, 2983, 2984, 2988, 2989, 2994,
3782  2997, 3024, 3023, 3107, 3124, 3123, 3198, 3197, 3270, 3271,
3783  3276, 3278, 3283, 3306, 3317, 3321, 3343, 3344, 3348, 3352,
3784  3365, 3371, 3377, 3386, 3401, 3427, 3433, 3434, 3440, 3443,
3785  3447, 3455, 3475, 3477, 3495, 3501, 3503, 3505, 3507, 3509,
3786  3511, 3513, 3515, 3517, 3519, 3521, 3523, 3528, 3544, 3560,
3787  3561, 3566, 3572, 3581, 3587, 3596, 3604, 3633, 3642, 3644,
3788  3653, 3658, 3664, 3673, 3681, 3683, 3685, 3687, 3689, 3691,
3789  3693, 3695, 3697, 3699, 3701, 3703, 3705, 3710, 3730, 3754,
3790  3756, 3755, 3762, 3763, 3764, 3765, 3766, 3767, 3768, 3769,
3791  3770, 3771, 3772, 3773, 3774, 3779, 3778, 3789, 3789, 3846,
3792  3845, 3902, 3902, 3924, 3983, 4033, 4058, 4057, 4083, 4106,
3793  4108, 4109, 4113, 4131, 4152, 4161, 4197, 4152, 4226, 4228,
3794  4229, 4233, 4234, 4239, 4250, 4238, 4301, 4300, 4314, 4315,
3795  4319, 4320, 4325, 4334, 4324, 4383, 4392, 4382, 4436, 4449,
3796  4454, 4453, 4491, 4492, 4497, 4496, 4530, 4530, 4549, 4548,
3797  4598, 4615, 4624, 4614, 4678, 4687, 4677, 4727, 4729, 4734,
3798  4736, 4738, 4755, 4760, 4766, 4773, 4774, 4782, 4788, 4797,
3799  4803, 4809, 4810, 4814, 4814, 4819, 4820, 4821, 4825, 4826,
3800  4827, 4830, 4832, 4836, 4837, 4838, 4842, 4843, 4844, 4845,
3801  4846, 4847, 4848, 4849, 4852, 4854, 4858, 4859, 4860, 4864,
3802  4865, 4866, 4867, 4868, 4871, 4873, 4877, 4878, 4879, 4883,
3803  4884, 4885, 4886, 4887, 4888, 4889, 4892, 4894, 4898, 4899,
3804  4900, 4904, 4905, 4906, 4911, 4919, 4927, 4935, 4947, 4959,
3805  4964, 4969, 4977, 4985, 4993, 5001, 5009, 5017, 5025, 5038,
3806  5051, 5065, 5070, 5083, 5084, 5135, 5136, 5139, 5154, 5172,
3807  5177, 5175, 5182, 5184, 5183, 5187, 5186, 5192, 5229, 5230,
3808  5235, 5234, 5253, 5272, 5271, 5288, 5292, 5300, 5299, 5302,
3809  5304, 5306, 5308, 5313, 5314, 5320, 5321, 5338, 5339, 5343,
3810  5344, 5348, 5367, 5377, 5388, 5397, 5398, 5414, 5416, 5415,
3811  5420, 5418, 5429, 5430, 5434, 5452, 5468, 5469, 5485, 5500,
3812  5522, 5523, 5528, 5527, 5551, 5561, 5583, 5582, 5600, 5599,
3813  5619, 5641, 5645, 5674, 5686, 5687, 5692, 5703, 5691, 5728,
3814  5729, 5733, 5746, 5767, 5780, 5806, 5807, 5812, 5811, 5848,
3815  5853, 5854, 5858, 5859, 5863, 5865, 5871, 5873, 5875, 5877,
3816  5879, 5881, 5891, 5906, 5890, 5920, 5921, 5925, 5926, 5930,
3817  5931, 5935, 5936, 5940, 5941, 5945, 5946, 5950, 5954, 5955,
3818  5958, 5960, 5964, 5965, 5969, 5970, 5971, 5975, 5980, 5985,
3819  5990, 5995, 6000, 6005, 6010, 6025, 6031, 6046, 6051, 6066,
3820  6072, 6090, 6095, 6100, 6105, 6110, 6116, 6115, 6141, 6142,
3821  6143, 6148, 6153, 6158, 6160, 6162, 6164, 6170, 6178, 6196,
3822  6213, 6239, 6257, 6258, 6259, 6260, 6261, 6262, 6266, 6267,
3823  6268, 6272, 6273, 6277, 6278, 6279, 6280, 6285, 6292, 6293,
3824  6297, 6298, 6302, 6303, 6310, 6315, 6321, 6327, 6333, 6352,
3825  6358, 6360, 6364, 6368, 6369, 6373, 6378, 6377, 6400, 6401,
3826  6402, 6403, 6408, 6412, 6417, 6422, 6426, 6431, 6436, 6442,
3827  6447, 6453, 6457, 6462, 6467, 6485, 6487, 6489, 6505, 6507,
3828  6512, 6517, 6529, 6534, 6539, 6544, 6546, 6548, 6550, 6552,
3829  6554, 6556, 6558, 6561, 6560, 6565, 6564, 6568, 6570, 6579,
3830  6580, 6581, 6586, 6587, 6588, 6589, 6590, 6594, 6598, 6599,
3831  6603, 6604, 6608, 6609, 6610, 6611, 6612, 6616, 6617, 6618,
3832  6619, 6620, 6624, 6629, 6631, 6637, 6638, 6640, 6645, 6655,
3833  6656, 6660, 6661, 6662, 6670, 6671, 6675, 6676, 6680, 6681,
3834  6682, 6686, 6687, 6688, 6689, 6692, 6693, 6697, 6698, 6702,
3835  6703, 6707, 6708, 6712, 6713, 6714, 6715, 6716, 6717, 6723,
3836  6729, 6735, 6741, 6742, 6755, 6761, 6767, 6773, 6778, 6783,
3837  6792, 6813, 6821, 6822, 6827, 6828, 6832, 6840, 6844, 6845,
3838  6849, 6850, 6854, 6863, 6867, 6868, 6872, 6880, 6881, 6885,
3839  6886, 6890, 6891, 6896, 6897, 6901, 6908, 6917, 6922, 6930,
3840  6931, 6932, 6933, 6934, 6935, 6940, 6948, 6949, 6954, 6953,
3841  6966, 6967, 6971, 6974, 6975, 6976, 6977, 6981, 6989, 6996,
3842  6997, 7001, 7011, 7012, 7016, 7017, 7020, 7022, 7026, 7038,
3843  7039, 7043, 7050, 7063, 7064, 7066, 7068, 7074, 7079, 7085,
3844  7091, 7098, 7108, 7109, 7110, 7111, 7112, 7116, 7120, 7121,
3845  7125, 7126, 7130, 7131, 7135, 7136, 7137, 7141, 7142, 7146,
3846  7150, 7163, 7175, 7176, 7180, 7181, 7185, 7186, 7190, 7191,
3847  7195, 7196, 7200, 7201, 7205, 7206, 7210, 7211, 7215, 7217,
3848  7221, 7222, 7226, 7230, 7231, 7244, 7245, 7246, 7250, 7251,
3849  7255, 7261, 7275, 7276, 7280, 7281, 7285, 7286, 7294, 7293,
3850  7332, 7331, 7345, 7357, 7356, 7375, 7374, 7393, 7392, 7411,
3851  7405, 7425, 7424, 7457, 7462, 7467, 7472, 7477, 7484, 7491,
3852  7496, 7504, 7505, 7506, 7507, 7511, 7512, 7524, 7525, 7529,
3853  7530, 7533, 7535, 7543, 7551, 7553, 7555, 7556, 7564, 7565,
3854  7569, 7578, 7576, 7590, 7604, 7603, 7617, 7615, 7629, 7636,
3855  7647, 7648, 7676, 7683, 7687, 7692, 7691, 7707, 7709, 7714,
3856  7722, 7721, 7737, 7741, 7740, 7752, 7753, 7757, 7772, 7773,
3857  7777, 7786, 7790, 7795, 7801, 7800, 7811, 7820, 7810, 7835,
3858  7844, 7853, 7862, 7871, 7877, 7883, 7892, 7901, 7929, 7950,
3859  7960, 7964, 7969, 7970, 7973, 7975, 7976, 7977, 7978, 7981,
3860  7986, 7997, 8002, 8013, 8014, 8018, 8019, 8023, 8024, 8025,
3861  8029, 8030, 8035, 8043, 8044, 8045, 8046, 8051, 8050, 8079,
3862  8089, 8106, 8109, 8116, 8120, 8127, 8131, 8135, 8142, 8147,
3863  8150, 8157, 8160, 8167, 8170, 8177, 8180, 8188, 8191, 8198,
3864  8202, 8209, 8213, 8220, 8221, 8246, 8247, 8248, 8253, 8258,
3865  8266, 8265, 8277, 8278, 8279, 8284, 8283, 8305, 8306, 8310,
3866  8311, 8315, 8316, 8317, 8322, 8321, 8343, 8352, 8351, 8378,
3867  8379, 8383, 8384, 8388, 8389, 8390, 8391, 8392, 8393, 8398,
3868  8397, 8419, 8420, 8421, 8426, 8425, 8431, 8438, 8443, 8451,
3869  8452, 8456, 8470, 8469, 8482, 8483, 8487, 8488, 8492, 8502,
3870  8512, 8513, 8518, 8517, 8528, 8529, 8533, 8534, 8538, 8548,
3871  8559, 8558, 8566, 8566, 8577, 8578, 8583, 8584, 8593, 8602,
3872  8603, 8607, 8612, 8617, 8622, 8627, 8626, 8646, 8654, 8646,
3873  8661, 8662, 8663, 8664, 8665, 8669, 8676, 8683, 8685, 8696,
3874  8697, 8701, 8702, 8730, 8760, 8762, 8768, 8778, 8779, 8780,
3875  8795, 8802, 8827, 8833, 8839, 8840, 8841, 8842, 8843, 8847,
3876  8848, 8853, 8904, 8911, 8954, 8960, 8966, 8972, 8978, 8984,
3877  8990, 8996, 9000, 9006, 9012, 9018, 9024, 9030, 9034, 9040,
3878  9050, 9056, 9064, 9070, 9080, 9086, 9095, 9105, 9111, 9121,
3879  9127, 9136, 9140, 9146, 9152, 9158, 9164, 9170, 9176, 9182,
3880  9188, 9194, 9200, 9206, 9212, 9218, 9224, 9228, 9229, 9233,
3881  9234, 9238, 9239, 9243, 9244, 9248, 9249, 9250, 9251, 9252,
3882  9253, 9257, 9258, 9262, 9263, 9264, 9265, 9266, 9267, 9279,
3883  9280, 9281, 9282, 9283, 9289, 9293, 9299, 9305, 9311, 9317,
3884  9319, 9326, 9333, 9339, 9380, 9389, 9396, 9404, 9410, 9417,
3885  9423, 9437, 9444, 9460, 9466, 9472, 9480, 9486, 9492, 9498,
3886  9504, 9519, 9531, 9537, 9543, 9549, 9555, 9561, 9567, 9573,
3887  9579, 9585, 9591, 9597, 9603, 9609, 9615, 9621, 9627, 9635,
3888  9656, 9663, 9669, 9676, 9683, 9690, 9697, 9703, 9709, 9714,
3889  9720, 9727, 9733, 9739, 9745, 9751, 9757, 9775, 9781, 9787,
3890  9794, 9801, 9816, 9822, 9828, 9834, 9840, 9847, 9853, 9859,
3891  9865, 9871, 9877, 9884, 9897, 9903, 9909, 9915, 9921, 9929,
3892  9935, 9947, 9953, 9959, 9967, 9977, 9983, 9999, 10005, 10012,
3893  10019, 10026, 10033, 10040, 10044, 10064, 10063, 10136, 10176, 10178,
3894  10183, 10184, 10188, 10189, 10193, 10194, 10198, 10205, 10213, 10239,
3895  10245, 10251, 10257, 10263, 10269, 10278, 10285, 10287, 10284, 10294,
3896  10305, 10311, 10317, 10323, 10329, 10335, 10341, 10347, 10353, 10360,
3897  10359, 10379, 10378, 10393, 10404, 10412, 10428, 10429, 10434, 10439,
3898  10442, 10445, 10444, 10461, 10463, 10469, 10468, 10485, 10487, 10489,
3899  10491, 10493, 10495, 10497, 10499, 10501, 10503, 10505, 10510, 10511,
3900  10515, 10522, 10530, 10531, 10535, 10542, 10550, 10551, 10555, 10556,
3901  10560, 10568, 10579, 10580, 10589, 10600, 10601, 10607, 10608, 10628,
3902  10630, 10634, 10632, 10649, 10647, 10665, 10663, 10670, 10679, 10677,
3903  10695, 10694, 10704, 10715, 10713, 10732, 10731, 10742, 10753, 10754,
3904  10755, 10763, 10764, 10768, 10783, 10783, 10798, 10838, 10911, 10922,
3905  10927, 10919, 10946, 10966, 10974, 10966, 10983, 10982, 11005, 11022,
3906  11005, 11029, 11033, 11059, 11060, 11065, 11068, 11069, 11070, 11074,
3907  11075, 11080, 11079, 11085, 11084, 11092, 11093, 11096, 11098, 11098,
3908  11102, 11102, 11107, 11108, 11112, 11114, 11119, 11120, 11124, 11135,
3909  11148, 11149, 11150, 11151, 11152, 11153, 11154, 11155, 11156, 11157,
3910  11158, 11159, 11163, 11164, 11165, 11166, 11167, 11168, 11169, 11170,
3911  11171, 11175, 11176, 11177, 11178, 11181, 11183, 11184, 11188, 11189,
3912  11197, 11199, 11203, 11205, 11204, 11218, 11221, 11220, 11235, 11241,
3913  11256, 11258, 11262, 11264, 11269, 11270, 11290, 11321, 11325, 11326,
3914  11330, 11343, 11345, 11350, 11349, 11384, 11386, 11391, 11392, 11393,
3915  11398, 11404, 11408, 11409, 11413, 11420, 11427, 11434, 11444, 11471,
3916  11475, 11481, 11487, 11497, 11501, 11511, 11512, 11513, 11514, 11515,
3917  11516, 11520, 11521, 11522, 11523, 11524, 11528, 11529, 11530, 11531,
3918  11532, 11536, 11537, 11538, 11539, 11543, 11548, 11549, 11552, 11555,
3919  11554, 11588, 11589, 11593, 11601, 11614, 11614, 11624, 11625, 11629,
3920  11648, 11688, 11687, 11700, 11708, 11699, 11710, 11722, 11734, 11733,
3921  11751, 11750, 11761, 11762, 11761, 11778, 11785, 11806, 11827, 11839,
3922  11844, 11843, 11853, 11859, 11866, 11871, 11876, 11886, 11887, 11891,
3923  11902, 11915, 11916, 11920, 11931, 11932, 11936, 11937, 11940, 11942,
3924  11945, 11946, 11947, 11951, 11952, 11960, 11968, 11959, 11978, 11985,
3925  11977, 11995, 12007, 12008, 12021, 12025, 12026, 12042, 12043, 12047,
3926  12056, 12057, 12058, 12060, 12059, 12070, 12071, 12075, 12076, 12078,
3927  12077, 12081, 12080, 12086, 12087, 12091, 12092, 12096, 12106, 12107,
3928  12111, 12112, 12117, 12116, 12130, 12131, 12135, 12140, 12148, 12149,
3929  12157, 12159, 12159, 12167, 12175, 12166, 12197, 12198, 12202, 12210,
3930  12211, 12215, 12225, 12226, 12233, 12232, 12248, 12247, 12261, 12260,
3931  12272, 12271, 12285, 12286, 12290, 12303, 12319, 12320, 12324, 12325,
3932  12329, 12330, 12331, 12336, 12335, 12357, 12359, 12362, 12364, 12367,
3933  12368, 12371, 12375, 12379, 12383, 12387, 12391, 12395, 12399, 12403,
3934  12411, 12414, 12424, 12423, 12438, 12445, 12453, 12461, 12469, 12477,
3935  12485, 12492, 12494, 12496, 12505, 12509, 12514, 12513, 12519, 12518,
3936  12523, 12532, 12539, 12544, 12546, 12548, 12550, 12552, 12560, 12571,
3937  12579, 12581, 12589, 12596, 12603, 12613, 12620, 12626, 12635, 12643,
3938  12647, 12651, 12658, 12665, 12671, 12678, 12685, 12690, 12695, 12703,
3939  12705, 12707, 12712, 12713, 12716, 12718, 12722, 12723, 12727, 12728,
3940  12732, 12733, 12737, 12738, 12742, 12743, 12746, 12748, 12755, 12766,
3941  12765, 12781, 12780, 12787, 12788, 12789, 12790, 12791, 12795, 12796,
3942  12801, 12805, 12811, 12817, 12839, 12840, 12841, 12856, 12855, 12868,
3943  12877, 12867, 12879, 12883, 12884, 12896, 12895, 12917, 12918, 12923,
3944  12925, 12927, 12929, 12931, 12933, 12935, 12937, 12939, 12941, 12943,
3945  12945, 12947, 12952, 12953, 12958, 12957, 12967, 12968, 12972, 12972,
3946  12974, 12975, 12979, 12980, 12985, 12984, 12995, 12999, 13003, 13015,
3947  13025, 13026, 13027, 13033, 13045, 13057, 13067, 13077, 13044, 13085,
3948  13086, 13090, 13091, 13095, 13096, 13108, 13112, 13113, 13114, 13117,
3949  13119, 13123, 13124, 13128, 13133, 13140, 13145, 13152, 13154, 13158,
3950  13159, 13163, 13168, 13176, 13177, 13180, 13182, 13190, 13192, 13196,
3951  13197, 13198, 13202, 13204, 13209, 13210, 13219, 13220, 13224, 13225,
3952  13229, 13249, 13273, 13285, 13296, 13315, 13323, 13335, 13350, 13371,
3953  13372, 13373, 13382, 13383, 13384, 13385, 13392, 13398, 13404, 13410,
3954  13416, 13445, 13476, 13486, 13496, 13502, 13511, 13523, 13529, 13535,
3955  13551, 13552, 13556, 13565, 13581, 13585, 13636, 13640, 13658, 13662,
3956  13742, 13767, 13798, 13799, 13815, 13825, 13829, 13835, 13841, 13851,
3957  13857, 13866, 13876, 13877, 13907, 13920, 13936, 13952, 13969, 13970,
3958  13981, 13982, 13993, 13994, 13995, 13999, 14026, 14059, 14074, 14075,
3959  14076, 14077, 14078, 14079, 14080, 14081, 14082, 14083, 14084, 14085,
3960  14086, 14087, 14088, 14089, 14090, 14091, 14092, 14093, 14094, 14095,
3961  14096, 14097, 14098, 14099, 14100, 14101, 14102, 14103, 14104, 14105,
3962  14106, 14107, 14108, 14109, 14110, 14111, 14112, 14113, 14114, 14115,
3963  14116, 14117, 14118, 14119, 14120, 14121, 14122, 14123, 14133, 14134,
3964  14135, 14136, 14137, 14138, 14139, 14140, 14141, 14142, 14143, 14144,
3965  14145, 14146, 14147, 14148, 14149, 14150, 14151, 14152, 14153, 14154,
3966  14155, 14156, 14157, 14158, 14159, 14160, 14161, 14162, 14163, 14164,
3967  14165, 14166, 14167, 14168, 14169, 14170, 14171, 14172, 14173, 14174,
3968  14175, 14176, 14177, 14182, 14183, 14184, 14185, 14186, 14187, 14188,
3969  14189, 14190, 14191, 14192, 14193, 14194, 14195, 14196, 14197, 14198,
3970  14199, 14200, 14201, 14202, 14203, 14204, 14205, 14206, 14207, 14208,
3971  14209, 14210, 14211, 14212, 14213, 14214, 14215, 14216, 14217, 14218,
3972  14219, 14220, 14221, 14222, 14223, 14224, 14225, 14226, 14227, 14228,
3973  14229, 14230, 14231, 14232, 14233, 14234, 14235, 14236, 14237, 14238,
3974  14239, 14240, 14241, 14242, 14243, 14244, 14245, 14246, 14247, 14248,
3975  14249, 14250, 14251, 14252, 14253, 14254, 14255, 14256, 14257, 14258,
3976  14259, 14260, 14261, 14262, 14263, 14264, 14265, 14266, 14267, 14268,
3977  14269, 14270, 14271, 14272, 14273, 14274, 14275, 14276, 14277, 14278,
3978  14279, 14280, 14281, 14282, 14283, 14284, 14285, 14286, 14287, 14288,
3979  14289, 14290, 14291, 14292, 14293, 14294, 14295, 14296, 14297, 14298,
3980  14299, 14300, 14301, 14302, 14303, 14304, 14305, 14306, 14307, 14308,
3981  14309, 14310, 14311, 14312, 14313, 14314, 14315, 14316, 14317, 14318,
3982  14319, 14320, 14321, 14322, 14323, 14324, 14325, 14326, 14327, 14328,
3983  14329, 14330, 14331, 14332, 14333, 14334, 14335, 14336, 14337, 14338,
3984  14339, 14340, 14341, 14342, 14343, 14344, 14345, 14346, 14347, 14348,
3985  14349, 14350, 14351, 14352, 14353, 14354, 14355, 14356, 14357, 14358,
3986  14359, 14360, 14361, 14362, 14363, 14364, 14365, 14366, 14367, 14368,
3987  14369, 14370, 14371, 14372, 14373, 14374, 14375, 14376, 14377, 14378,
3988  14379, 14380, 14381, 14382, 14383, 14384, 14385, 14386, 14387, 14388,
3989  14389, 14390, 14391, 14392, 14393, 14394, 14395, 14396, 14397, 14398,
3990  14399, 14400, 14401, 14402, 14403, 14404, 14405, 14406, 14407, 14408,
3991  14409, 14410, 14411, 14412, 14413, 14414, 14415, 14416, 14417, 14418,
3992  14419, 14420, 14421, 14422, 14423, 14424, 14425, 14426, 14427, 14428,
3993  14429, 14430, 14431, 14432, 14433, 14434, 14435, 14436, 14437, 14449,
3994  14448, 14468, 14467, 14474, 14473, 14483, 14482, 14493, 14492, 14498,
3995  14506, 14508, 14513, 14513, 14522, 14521, 14535, 14534, 14539, 14543,
3996  14544, 14545, 14549, 14550, 14551, 14552, 14556, 14557, 14558, 14559,
3997  14564, 14590, 14589, 14689, 14700, 14713, 14729, 14742, 14764, 14799,
3998  14841, 14869, 14915, 14929, 14930, 14931, 14932, 14936, 14954, 14972,
3999  14973, 14977, 14978, 14979, 14980, 14984, 14985, 15003, 15016, 15017,
4000  15018, 15024, 15030, 15042, 15041, 15057, 15058, 15062, 15063, 15067,
4001  15080, 15081, 15082, 15087, 15092, 15091, 15111, 15127, 15144, 15143,
4002  15182, 15183, 15187, 15188, 15192, 15193, 15194, 15195, 15197, 15196,
4003  15210, 15211, 15212, 15213, 15214, 15220, 15220, 15225, 15230, 15240,
4004  15250, 15254, 15263, 15263, 15268, 15274, 15285, 15296, 15304, 15306,
4005  15310, 15317, 15324, 15326, 15330, 15331, 15336, 15335, 15339, 15338,
4006  15342, 15341, 15345, 15344, 15347, 15348, 15349, 15350, 15351, 15352,
4007  15353, 15354, 15355, 15356, 15357, 15358, 15359, 15360, 15361, 15362,
4008  15363, 15364, 15365, 15366, 15367, 15368, 15369, 15370, 15371, 15372,
4009  15376, 15377, 15381, 15382, 15386, 15396, 15406, 15419, 15434, 15447,
4010  15460, 15472, 15477, 15485, 15490, 15498, 15516, 15536, 15548, 15561,
4011  15571, 15575, 15579, 15580, 15584, 15611, 15613, 15617, 15621, 15625,
4012  15632, 15633, 15637, 15638, 15642, 15643, 15647, 15648, 15654, 15660,
4013  15666, 15676, 15675, 15685, 15686, 15691, 15692, 15693, 15698, 15699,
4014  15700, 15704, 15705, 15709, 15721, 15730, 15740, 15749, 15763, 15764,
4015  15769, 15768, 15784, 15785, 15786, 15790, 15791, 15795, 15795, 15819,
4016  15820, 15824, 15825, 15826, 15830, 15834, 15841, 15844, 15842, 15858,
4017  15865, 15886, 15903, 15905, 15909, 15910, 15914, 15915, 15923, 15924,
4018  15925, 15926, 15932, 15938, 15948, 15950, 15952, 15957, 15958, 15959,
4019  15960, 15961, 15965, 15966, 15967, 15968, 15969, 15970, 15980, 15981,
4020  15986, 15999, 16012, 16014, 16016, 16021, 16026, 16028, 16030, 16036,
4021  16037, 16039, 16045, 16044, 16062, 16063, 16067, 16072, 16080, 16080,
4022  16106, 16105, 16122, 16126, 16131, 16136, 16135, 16147, 16148, 16150,
4023  16152, 16170, 16176, 16181, 16163, 16244, 16262, 16287, 16319, 16324,
4024  16332, 16355, 16283, 16421, 16441, 16454, 16464, 16420, 16485, 16489,
4025  16493, 16497, 16501, 16505, 16512, 16519, 16526, 16536, 16537, 16541,
4026  16542, 16543, 16547, 16548, 16553, 16555, 16554, 16560, 16561, 16565,
4027  16575
4028 };
4029 #endif
4030 
4031 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
4032 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
4033  First, the terminals, then, starting at YYNTOKENS, nonterminals. */
4034 static const char *const yytname[] =
4035 {
4036  "$end", "error", "$undefined", "ABORT_SYM", "ACCESSIBLE_SYM", "ACTION",
4037  "ADD", "ADDDATE_SYM", "AFTER_SYM", "AGAINST", "AGGREGATE_SYM",
4038  "ALGORITHM_SYM", "ALL", "ALTER", "ANALYSE_SYM", "ANALYZE_SYM",
4039  "AND_AND_SYM", "AND_SYM", "ANY_SYM", "AS", "ASC", "ASCII_SYM",
4040  "ASENSITIVE_SYM", "AT_SYM", "AUTOEXTEND_SIZE_SYM", "AUTO_INC",
4041  "AVG_ROW_LENGTH", "AVG_SYM", "BACKUP_SYM", "BEFORE_SYM", "BEGIN_SYM",
4042  "BETWEEN_SYM", "BIGINT", "BINARY", "BINLOG_SYM", "BIN_NUM", "BIT_AND",
4043  "BIT_OR", "BIT_SYM", "BIT_XOR", "BLOB_SYM", "BLOCK_SYM", "BOOLEAN_SYM",
4044  "BOOL_SYM", "BOTH", "BTREE_SYM", "BY", "BYTE_SYM", "CACHE_SYM",
4045  "CALL_SYM", "CASCADE", "CASCADED", "CASE_SYM", "CAST_SYM",
4046  "CATALOG_NAME_SYM", "CHAIN_SYM", "CHANGE", "CHANGED", "CHARSET",
4047  "CHAR_SYM", "CHECKSUM_SYM", "CHECK_SYM", "CIPHER_SYM",
4048  "CLASS_ORIGIN_SYM", "CLIENT_SYM", "CLOSE_SYM", "COALESCE", "CODE_SYM",
4049  "COLLATE_SYM", "COLLATION_SYM", "COLUMNS", "COLUMN_SYM",
4050  "COLUMN_FORMAT_SYM", "COLUMN_NAME_SYM", "COMMENT_SYM", "COMMITTED_SYM",
4051  "COMMIT_SYM", "COMPACT_SYM", "COMPLETION_SYM", "COMPRESSED_SYM",
4052  "CONCURRENT", "CONDITION_SYM", "CONNECTION_SYM", "CONSISTENT_SYM",
4053  "CONSTRAINT", "CONSTRAINT_CATALOG_SYM", "CONSTRAINT_NAME_SYM",
4054  "CONSTRAINT_SCHEMA_SYM", "CONTAINS_SYM", "CONTEXT_SYM", "CONTINUE_SYM",
4055  "CONVERT_SYM", "COUNT_SYM", "CPU_SYM", "CREATE", "CROSS", "CUBE_SYM",
4056  "CURDATE", "CURRENT_SYM", "CURRENT_USER", "CURSOR_SYM",
4057  "CURSOR_NAME_SYM", "CURTIME", "DATABASE", "DATABASES", "DATAFILE_SYM",
4058  "DATA_SYM", "DATETIME", "DATE_ADD_INTERVAL", "DATE_SUB_INTERVAL",
4059  "DATE_SYM", "DAY_HOUR_SYM", "DAY_MICROSECOND_SYM", "DAY_MINUTE_SYM",
4060  "DAY_SECOND_SYM", "DAY_SYM", "DEALLOCATE_SYM", "DECIMAL_NUM",
4061  "DECIMAL_SYM", "DECLARE_SYM", "DEFAULT", "DEFAULT_AUTH_SYM",
4062  "DEFINER_SYM", "DELAYED_SYM", "DELAY_KEY_WRITE_SYM", "DELETE_SYM",
4063  "DESC", "DESCRIBE", "DES_KEY_FILE", "DETERMINISTIC_SYM",
4064  "DIAGNOSTICS_SYM", "DIRECTORY_SYM", "DISABLE_SYM", "DISCARD", "DISK_SYM",
4065  "DISTINCT", "DIV_SYM", "DOUBLE_SYM", "DO_SYM", "DROP", "DUAL_SYM",
4066  "DUMPFILE", "DUPLICATE_SYM", "DYNAMIC_SYM", "EACH_SYM", "ELSE",
4067  "ELSEIF_SYM", "ENABLE_SYM", "ENCLOSED", "END", "ENDS_SYM",
4068  "END_OF_INPUT", "ENGINES_SYM", "ENGINE_SYM", "ENUM", "EQ", "EQUAL_SYM",
4069  "ERROR_SYM", "ERRORS", "ESCAPED", "ESCAPE_SYM", "EVENTS_SYM",
4070  "EVENT_SYM", "EVERY_SYM", "EXCHANGE_SYM", "EXECUTE_SYM", "EXISTS",
4071  "EXIT_SYM", "EXPANSION_SYM", "EXPIRE_SYM", "EXPORT_SYM", "EXTENDED_SYM",
4072  "EXTENT_SIZE_SYM", "EXTRACT_SYM", "FALSE_SYM", "FAST_SYM", "FAULTS_SYM",
4073  "FETCH_SYM", "FILE_SYM", "FIRST_SYM", "FIXED_SYM", "FLOAT_NUM",
4074  "FLOAT_SYM", "FLUSH_SYM", "FORCE_SYM", "FOREIGN", "FOR_SYM",
4075  "FORMAT_SYM", "FOUND_SYM", "FROM", "FULL", "FULLTEXT_SYM",
4076  "FUNCTION_SYM", "GE", "GENERAL", "GEOMETRYCOLLECTION", "GEOMETRY_SYM",
4077  "GET_FORMAT", "GET_SYM", "GLOBAL_SYM", "GRANT", "GRANTS", "GROUP_SYM",
4078  "GROUP_CONCAT_SYM", "GT_SYM", "HANDLER_SYM", "HASH_SYM", "HAVING",
4079  "HELP_SYM", "HEX_NUM", "HIGH_PRIORITY", "HOST_SYM", "HOSTS_SYM",
4080  "HOUR_MICROSECOND_SYM", "HOUR_MINUTE_SYM", "HOUR_SECOND_SYM", "HOUR_SYM",
4081  "IDENT", "IDENTIFIED_SYM", "IDENT_QUOTED", "IF", "IGNORE_SYM",
4082  "IGNORE_SERVER_IDS_SYM", "IMPORT", "INDEXES", "INDEX_SYM", "INFILE",
4083  "INITIAL_SIZE_SYM", "INNER_SYM", "INOUT_SYM", "INSENSITIVE_SYM",
4084  "INSERT", "INSERT_METHOD", "INSTALL_SYM", "INTERVAL_SYM", "INTO",
4085  "INT_SYM", "INVOKER_SYM", "IN_SYM", "IO_AFTER_GTIDS", "IO_BEFORE_GTIDS",
4086  "IO_SYM", "IPC_SYM", "IS", "ISOLATION", "ISSUER_SYM", "ITERATE_SYM",
4087  "JOIN_SYM", "KEYS", "KEY_BLOCK_SIZE", "KEY_SYM", "KILL_SYM",
4088  "LANGUAGE_SYM", "LAST_SYM", "LE", "LEADING", "LEAVES", "LEAVE_SYM",
4089  "LEFT", "LESS_SYM", "LEVEL_SYM", "LEX_HOSTNAME", "LIKE", "LIMIT",
4090  "LINEAR_SYM", "LINES", "LINESTRING", "LIST_SYM", "LOAD", "LOCAL_SYM",
4091  "LOCATOR_SYM", "LOCKS_SYM", "LOCK_SYM", "LOGFILE_SYM", "LOGS_SYM",
4092  "LONGBLOB", "LONGTEXT", "LONG_NUM", "LONG_SYM", "LOOP_SYM",
4093  "LOW_PRIORITY", "LT", "MASTER_AUTO_POSITION_SYM", "MASTER_BIND_SYM",
4094  "MASTER_CONNECT_RETRY_SYM", "MASTER_DELAY_SYM", "MASTER_HOST_SYM",
4095  "MASTER_LOG_FILE_SYM", "MASTER_LOG_POS_SYM", "MASTER_PASSWORD_SYM",
4096  "MASTER_PORT_SYM", "MASTER_RETRY_COUNT_SYM", "MASTER_SERVER_ID_SYM",
4097  "MASTER_SSL_CAPATH_SYM", "MASTER_SSL_CA_SYM", "MASTER_SSL_CERT_SYM",
4098  "MASTER_SSL_CIPHER_SYM", "MASTER_SSL_CRL_SYM", "MASTER_SSL_CRLPATH_SYM",
4099  "MASTER_SSL_KEY_SYM", "MASTER_SSL_SYM",
4100  "MASTER_SSL_VERIFY_SERVER_CERT_SYM", "MASTER_SYM", "MASTER_USER_SYM",
4101  "MASTER_HEARTBEAT_PERIOD_SYM", "MATCH", "MAX_CONNECTIONS_PER_HOUR",
4102  "MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SIZE_SYM", "MAX_SYM",
4103  "MAX_UPDATES_PER_HOUR", "MAX_USER_CONNECTIONS_SYM", "MAX_VALUE_SYM",
4104  "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MEDIUM_SYM", "MEMORY_SYM",
4105  "MERGE_SYM", "MESSAGE_TEXT_SYM", "MICROSECOND_SYM", "MIGRATE_SYM",
4106  "MINUTE_MICROSECOND_SYM", "MINUTE_SECOND_SYM", "MINUTE_SYM", "MIN_ROWS",
4107  "MIN_SYM", "MODE_SYM", "MODIFIES_SYM", "MODIFY_SYM", "MOD_SYM",
4108  "MONTH_SYM", "MULTILINESTRING", "MULTIPOINT", "MULTIPOLYGON",
4109  "MUTEX_SYM", "MYSQL_ERRNO_SYM", "NAMES_SYM", "NAME_SYM", "NATIONAL_SYM",
4110  "NATURAL", "NCHAR_STRING", "NCHAR_SYM", "NDBCLUSTER_SYM", "NE", "NEG",
4111  "NEW_SYM", "NEXT_SYM", "NODEGROUP_SYM", "NONE_SYM", "NOT2_SYM",
4112  "NOT_SYM", "NOW_SYM", "NO_SYM", "NO_WAIT_SYM", "NO_WRITE_TO_BINLOG",
4113  "NULL_SYM", "NUM", "NUMBER_SYM", "NUMERIC_SYM", "NVARCHAR_SYM",
4114  "OFFSET_SYM", "OLD_PASSWORD", "ON", "ONE_SYM", "ONLY_SYM", "OPEN_SYM",
4115  "OPTIMIZE", "OPTIONS_SYM", "OPTION", "OPTIONALLY", "OR2_SYM",
4116  "ORDER_SYM", "OR_OR_SYM", "OR_SYM", "OUTER", "OUTFILE", "OUT_SYM",
4117  "OWNER_SYM", "PACK_KEYS_SYM", "PAGE_SYM", "PARAM_MARKER", "PARSER_SYM",
4118  "PARTIAL", "PARTITION_SYM", "PARTITIONS_SYM", "PARTITIONING_SYM",
4119  "PASSWORD", "PHASE_SYM", "PLUGIN_DIR_SYM", "PLUGIN_SYM", "PLUGINS_SYM",
4120  "POINT_SYM", "POLYGON", "PORT_SYM", "POSITION_SYM", "PRECISION",
4121  "PREPARE_SYM", "PRESERVE_SYM", "PREV_SYM", "PRIMARY_SYM", "PRIVILEGES",
4122  "PROCEDURE_SYM", "PROCESS", "PROCESSLIST_SYM", "PROFILE_SYM",
4123  "PROFILES_SYM", "PROXY_SYM", "PURGE", "QUARTER_SYM", "QUERY_SYM",
4124  "QUICK", "RANGE_SYM", "READS_SYM", "READ_ONLY_SYM", "READ_SYM",
4125  "READ_WRITE_SYM", "REAL", "REBUILD_SYM", "RECOVER_SYM", "REDOFILE_SYM",
4126  "REDO_BUFFER_SIZE_SYM", "REDUNDANT_SYM", "REFERENCES", "REGEXP", "RELAY",
4127  "RELAYLOG_SYM", "RELAY_LOG_FILE_SYM", "RELAY_LOG_POS_SYM",
4128  "RELAY_THREAD", "RELEASE_SYM", "RELOAD", "REMOVE_SYM", "RENAME",
4129  "REORGANIZE_SYM", "REPAIR", "REPEATABLE_SYM", "REPEAT_SYM", "REPLACE",
4130  "REPLICATION", "REQUIRE_SYM", "RESET_SYM", "RESIGNAL_SYM", "RESOURCES",
4131  "RESTORE_SYM", "RESTRICT", "RESUME_SYM", "RETURNED_SQLSTATE_SYM",
4132  "RETURNS_SYM", "RETURN_SYM", "REVERSE_SYM", "REVOKE", "RIGHT",
4133  "ROLLBACK_SYM", "ROLLUP_SYM", "ROUTINE_SYM", "ROWS_SYM",
4134  "ROW_FORMAT_SYM", "ROW_SYM", "ROW_COUNT_SYM", "RTREE_SYM",
4135  "SAVEPOINT_SYM", "SCHEDULE_SYM", "SCHEMA_NAME_SYM",
4136  "SECOND_MICROSECOND_SYM", "SECOND_SYM", "SECURITY_SYM", "SELECT_SYM",
4137  "SENSITIVE_SYM", "SEPARATOR_SYM", "SERIALIZABLE_SYM", "SERIAL_SYM",
4138  "SESSION_SYM", "SERVER_SYM", "SERVER_OPTIONS", "SET", "SET_VAR",
4139  "SHARE_SYM", "SHIFT_LEFT", "SHIFT_RIGHT", "SHOW", "SHUTDOWN",
4140  "SIGNAL_SYM", "SIGNED_SYM", "SIMPLE_SYM", "SLAVE", "SLOW", "SMALLINT",
4141  "SNAPSHOT_SYM", "SOCKET_SYM", "SONAME_SYM", "SOUNDS_SYM", "SOURCE_SYM",
4142  "SPATIAL_SYM", "SPECIFIC_SYM", "SQLEXCEPTION_SYM", "SQLSTATE_SYM",
4143  "SQLWARNING_SYM", "SQL_AFTER_GTIDS", "SQL_AFTER_MTS_GAPS",
4144  "SQL_BEFORE_GTIDS", "SQL_BIG_RESULT", "SQL_BUFFER_RESULT",
4145  "SQL_CACHE_SYM", "SQL_CALC_FOUND_ROWS", "SQL_NO_CACHE_SYM",
4146  "SQL_SMALL_RESULT", "SQL_SYM", "SQL_THREAD", "SSL_SYM", "STARTING",
4147  "STARTS_SYM", "START_SYM", "STATS_AUTO_RECALC_SYM",
4148  "STATS_PERSISTENT_SYM", "STATS_SAMPLE_PAGES_SYM", "STATUS_SYM",
4149  "STDDEV_SAMP_SYM", "STD_SYM", "STOP_SYM", "STORAGE_SYM", "STRAIGHT_JOIN",
4150  "STRING_SYM", "SUBCLASS_ORIGIN_SYM", "SUBDATE_SYM", "SUBJECT_SYM",
4151  "SUBPARTITIONS_SYM", "SUBPARTITION_SYM", "SUBSTRING", "SUM_SYM",
4152  "SUPER_SYM", "SUSPEND_SYM", "SWAPS_SYM", "SWITCHES_SYM", "SYSDATE",
4153  "TABLES", "TABLESPACE", "TABLE_REF_PRIORITY", "TABLE_SYM",
4154  "TABLE_CHECKSUM_SYM", "TABLE_NAME_SYM", "TEMPORARY", "TEMPTABLE_SYM",
4155  "TERMINATED", "TEXT_STRING", "TEXT_SYM", "THAN_SYM", "THEN_SYM",
4156  "TIMESTAMP", "TIMESTAMP_ADD", "TIMESTAMP_DIFF", "TIME_SYM", "TINYBLOB",
4157  "TINYINT", "TINYTEXT", "TO_SYM", "TRAILING", "TRANSACTION_SYM",
4158  "TRIGGERS_SYM", "TRIGGER_SYM", "TRIM", "TRUE_SYM", "TRUNCATE_SYM",
4159  "TYPES_SYM", "TYPE_SYM", "UDF_RETURNS_SYM", "ULONGLONG_NUM",
4160  "UNCOMMITTED_SYM", "UNDEFINED_SYM", "UNDERSCORE_CHARSET", "UNDOFILE_SYM",
4161  "UNDO_BUFFER_SIZE_SYM", "UNDO_SYM", "UNICODE_SYM", "UNINSTALL_SYM",
4162  "UNION_SYM", "UNIQUE_SYM", "UNKNOWN_SYM", "UNLOCK_SYM", "UNSIGNED",
4163  "UNTIL_SYM", "UPDATE_SYM", "UPGRADE_SYM", "USAGE", "USER", "USE_FRM",
4164  "USE_SYM", "USING", "UTC_DATE_SYM", "UTC_TIMESTAMP_SYM", "UTC_TIME_SYM",
4165  "VALUES", "VALUE_SYM", "VARBINARY", "VARCHAR", "VARIABLES",
4166  "VARIANCE_SYM", "VARYING", "VAR_SAMP_SYM", "VIEW_SYM", "WAIT_SYM",
4167  "WARNINGS", "WEEK_SYM", "WEIGHT_STRING_SYM", "WHEN_SYM", "WHERE",
4168  "WHILE_SYM", "WITH", "WITH_CUBE_SYM", "WITH_ROLLUP_SYM", "WORK_SYM",
4169  "WRAPPER_SYM", "WRITE_SYM", "X509_SYM", "XA_SYM", "XML_SYM", "XOR",
4170  "YEAR_MONTH_SYM", "YEAR_SYM", "ZEROFILL", "'|'", "'&'", "'-'", "'+'",
4171  "'*'", "'/'", "'%'", "'^'", "'~'", "'('", "')'", "','", "'!'", "'{'",
4172  "'}'", "';'", "'@'", "'.'", "':'", "$accept", "query", "$@1",
4173  "opt_end_of_input", "verb_clause", "statement", "deallocate",
4174  "deallocate_or_drop", "prepare", "prepare_src", "execute", "$@2",
4175  "execute_using", "execute_var_list", "execute_var_ident", "help", "$@3",
4176  "change", "$@4", "master_defs", "master_def", "ignore_server_id_list",
4177  "ignore_server_id", "master_file_def", "create", "$@5", "$@6", "$@7",
4178  "$@8", "$@9", "$@10", "$@11", "$@12", "$@13", "server_def",
4179  "server_options_list", "server_option", "event_tail", "$@14",
4180  "ev_schedule_time", "$@15", "opt_ev_status", "ev_starts", "ev_ends",
4181  "opt_ev_on_completion", "ev_on_completion", "opt_ev_comment",
4182  "ev_sql_stmt", "$@16", "ev_sql_stmt_inner", "clear_privileges",
4183  "sp_name", "sp_a_chistics", "sp_c_chistics", "sp_chistic",
4184  "sp_c_chistic", "sp_suid", "call", "$@17", "opt_sp_cparam_list",
4185  "opt_sp_cparams", "sp_cparams", "sp_fdparam_list", "sp_fdparams",
4186  "sp_init_param", "sp_fdparam", "sp_pdparam_list", "sp_pdparams",
4187  "sp_pdparam", "sp_opt_inout", "sp_proc_stmts", "sp_proc_stmts1",
4188  "sp_decls", "sp_decl", "$@18", "$@19", "$@20", "sp_handler_type",
4189  "sp_hcond_list", "sp_hcond_element", "sp_cond", "sqlstate", "opt_value",
4190  "sp_hcond", "signal_stmt", "signal_value", "opt_signal_value",
4191  "opt_set_signal_information", "signal_information_item_list",
4192  "signal_allowed_expr", "signal_condition_information_item_name",
4193  "resignal_stmt", "get_diagnostics", "which_area",
4194  "diagnostics_information", "statement_information",
4195  "statement_information_item", "simple_target_specification",
4196  "statement_information_item_name", "condition_number",
4197  "condition_information", "condition_information_item",
4198  "condition_information_item_name", "sp_decl_idents", "sp_opt_default",
4199  "$@21", "sp_proc_stmt", "sp_proc_stmt_if", "$@22",
4200  "sp_proc_stmt_statement", "$@23", "sp_proc_stmt_return", "$@24",
4201  "sp_proc_stmt_unlabeled", "$@25", "sp_proc_stmt_leave",
4202  "sp_proc_stmt_iterate", "sp_proc_stmt_open", "sp_proc_stmt_fetch",
4203  "$@26", "sp_proc_stmt_close", "sp_opt_fetch_noise", "sp_fetch_list",
4204  "sp_if", "$@27", "$@28", "$@29", "sp_elseifs", "case_stmt_specification",
4205  "simple_case_stmt", "$@30", "$@31", "searched_case_stmt", "$@32",
4206  "simple_when_clause_list", "searched_when_clause_list",
4207  "simple_when_clause", "$@33", "$@34", "searched_when_clause", "$@35",
4208  "$@36", "else_clause_opt", "sp_labeled_control", "$@37", "sp_opt_label",
4209  "sp_labeled_block", "$@38", "sp_unlabeled_block", "$@39",
4210  "sp_block_content", "$@40", "sp_unlabeled_control", "$@41", "$@42",
4211  "$@43", "$@44", "trg_action_time", "trg_event",
4212  "change_tablespace_access", "change_tablespace_info", "tablespace_info",
4213  "opt_logfile_group_name", "alter_tablespace_info", "logfile_group_info",
4214  "alter_logfile_group_info", "add_log_file", "change_ts_option_list",
4215  "$@45", "change_ts_options", "change_ts_option",
4216  "tablespace_option_list", "tablespace_options", "tablespace_option",
4217  "alter_tablespace_option_list", "alter_tablespace_options",
4218  "alter_tablespace_option", "logfile_group_option_list",
4219  "logfile_group_options", "logfile_group_option",
4220  "alter_logfile_group_option_list", "alter_logfile_group_options",
4221  "alter_logfile_group_option", "ts_datafile", "lg_undofile",
4222  "lg_redofile", "tablespace_name", "logfile_group_name", "ts_access_mode",
4223  "opt_ts_initial_size", "opt_ts_autoextend_size", "opt_ts_max_size",
4224  "opt_ts_extent_size", "opt_ts_undo_buffer_size",
4225  "opt_ts_redo_buffer_size", "opt_ts_nodegroup", "opt_ts_comment",
4226  "opt_ts_engine", "ts_wait", "size_number", "create2", "create2a", "$@46",
4227  "create3", "$@47", "$@48", "opt_create_partitioning", "opt_partitioning",
4228  "partitioning", "$@49", "have_partitioning", "partition_entry", "$@50",
4229  "partition", "part_type_def", "$@51", "opt_linear", "opt_key_algo",
4230  "part_field_list", "part_field_item_list", "part_field_item",
4231  "part_column_list", "part_func", "sub_part_func", "opt_num_parts",
4232  "opt_sub_part", "$@52", "$@53", "sub_part_field_list",
4233  "sub_part_field_item", "part_func_expr", "opt_num_subparts", "part_defs",
4234  "part_def_list", "part_definition", "$@54", "part_name",
4235  "opt_part_values", "$@55", "$@56", "part_func_max", "part_values_in",
4236  "part_value_list", "part_value_item", "$@57", "$@58",
4237  "part_value_item_list", "part_value_expr_item", "opt_sub_partition",
4238  "sub_part_list", "sub_part_definition", "$@59", "sub_name",
4239  "opt_part_options", "opt_part_option_list", "opt_part_option",
4240  "create_select", "$@60", "$@61", "opt_as", "opt_create_database_options",
4241  "create_database_options", "create_database_option", "opt_table_options",
4242  "table_options", "table_option", "opt_if_not_exists",
4243  "opt_create_table_options", "create_table_options_space_separated",
4244  "create_table_options", "create_table_option", "$@62", "default_charset",
4245  "default_collation", "storage_engines", "known_storage_engines",
4246  "row_types", "merge_insert_types", "opt_select_from", "udf_type",
4247  "create_field_list", "field_list", "field_list_item", "column_def",
4248  "key_def", "opt_check_constraint", "check_constraint", "opt_constraint",
4249  "constraint", "field_spec", "$@63", "type", "$@64", "$@65",
4250  "spatial_type", "char", "nchar", "varchar", "nvarchar", "int_type",
4251  "real_type", "float_options", "precision", "type_datetime_precision",
4252  "func_datetime_precision", "field_options", "field_opt_list",
4253  "field_option", "field_length", "opt_field_length", "opt_precision",
4254  "opt_attribute", "opt_attribute_list", "attribute",
4255  "type_with_opt_collate", "now", "now_or_signed_literal", "charset",
4256  "charset_name", "charset_name_or_default", "opt_load_data_charset",
4257  "old_or_new_charset_name", "old_or_new_charset_name_or_default",
4258  "collation_name", "opt_collate", "collation_name_or_default",
4259  "opt_default", "ascii", "unicode", "opt_binary", "opt_bin_mod",
4260  "ws_nweights", "$@66", "ws_level_flag_desc", "ws_level_flag_reverse",
4261  "ws_level_flags", "ws_level_number", "ws_level_list_item",
4262  "ws_level_list", "ws_level_range", "ws_level_list_or_range",
4263  "opt_ws_levels", "opt_primary", "references", "opt_ref_list", "ref_list",
4264  "opt_match_clause", "opt_on_update_delete", "delete_option",
4265  "normal_key_type", "constraint_key_type", "key_or_index",
4266  "opt_key_or_index", "keys_or_index", "opt_unique", "fulltext", "spatial",
4267  "init_key_options", "key_alg", "normal_key_options",
4268  "fulltext_key_options", "spatial_key_options", "normal_key_opts",
4269  "spatial_key_opts", "fulltext_key_opts", "key_using_alg", "all_key_opt",
4270  "normal_key_opt", "spatial_key_opt", "fulltext_key_opt",
4271  "btree_or_rtree", "key_list", "key_part", "opt_ident", "opt_component",
4272  "string_list", "alter", "$@67", "$@68", "$@69", "$@70", "$@71", "$@72",
4273  "$@73", "alter_user_list", "ev_alter_on_schedule_completion",
4274  "opt_ev_rename_to", "opt_ev_sql_stmt", "ident_or_empty",
4275  "alter_commands", "$@74", "$@75", "$@76", "remove_partitioning",
4276  "all_or_alt_part_name_list", "add_partition_rule", "$@77",
4277  "add_part_extra", "reorg_partition_rule", "$@78", "reorg_parts_rule",
4278  "$@79", "alt_part_name_list", "alt_part_name_item", "alter_list",
4279  "add_column", "alter_list_item", "$@80", "$@81", "$@82",
4280  "opt_index_lock_algorithm", "alter_algorithm_option",
4281  "alter_lock_option", "opt_column", "opt_ignore", "opt_restrict",
4282  "opt_place", "opt_to", "slave", "$@83", "start",
4283  "opt_start_transaction_option_list", "start_transaction_option_list",
4284  "start_transaction_option", "slave_connection_opts",
4285  "slave_user_name_opt", "slave_user_pass_opt", "slave_plugin_auth_opt",
4286  "slave_plugin_dir_opt", "opt_slave_thread_option_list",
4287  "slave_thread_option_list", "slave_thread_option", "slave_until",
4288  "slave_until_opts", "checksum", "$@84", "opt_checksum_type", "repair",
4289  "$@85", "opt_mi_repair_type", "mi_repair_types", "mi_repair_type",
4290  "analyze", "$@86", "binlog_base64_event", "check", "$@87",
4291  "opt_mi_check_type", "mi_check_types", "mi_check_type", "optimize",
4292  "$@88", "opt_no_write_to_binlog", "rename", "$@89", "rename_list",
4293  "table_to_table_list", "table_to_table", "keycache", "$@90",
4294  "keycache_list_or_parts", "keycache_list", "assign_to_keycache",
4295  "assign_to_keycache_parts", "key_cache_name", "preload", "$@91",
4296  "preload_list_or_parts", "preload_list", "preload_keys",
4297  "preload_keys_parts", "adm_partition", "$@92", "cache_keys_spec", "$@93",
4298  "cache_key_list_or_empty", "opt_ignore_leaves", "select", "select_init",
4299  "select_paren", "select_paren_derived", "select_init2", "$@94",
4300  "select_part2", "$@95", "$@96", "select_into", "select_from",
4301  "select_options", "select_option_list", "select_option",
4302  "select_lock_type", "select_item_list", "select_item", "remember_name",
4303  "remember_end", "select_alias", "optional_braces", "expr", "bool_pri",
4304  "predicate", "bit_expr", "or", "and", "not", "not2", "comp_op",
4305  "all_or_any", "simple_expr", "function_call_keyword",
4306  "function_call_nonkeyword", "function_call_conflict",
4307  "geometry_function", "function_call_generic", "@97", "fulltext_options",
4308  "opt_natural_language_mode", "opt_query_expansion", "opt_udf_expr_list",
4309  "udf_expr_list", "udf_expr", "sum_expr", "$@98", "$@99", "$@100",
4310  "variable", "$@101", "variable_aux", "opt_distinct",
4311  "opt_gconcat_separator", "opt_gorder_clause", "$@102", "gorder_list",
4312  "in_sum_expr", "$@103", "cast_type", "opt_expr_list", "expr_list",
4313  "ident_list_arg", "ident_list", "opt_expr", "opt_else", "when_list",
4314  "table_ref", "join_table_list", "esc_table_ref", "derived_table_list",
4315  "join_table", "$@104", "$@105", "$@106", "$@107", "$@108", "$@109",
4316  "$@110", "normal_join", "opt_use_partition", "use_partition",
4317  "table_factor", "$@111", "select_derived_union", "$@112", "$@113",
4318  "select_init2_derived", "select_part2_derived", "$@114", "$@115",
4319  "select_derived", "$@116", "select_derived2", "$@117", "$@118",
4320  "get_select_lex", "select_derived_init", "opt_outer",
4321  "index_hint_clause", "index_hint_type", "index_hint_definition", "$@119",
4322  "$@120", "index_hints_list", "opt_index_hints_list", "$@121",
4323  "opt_key_definition", "$@122", "opt_key_usage_list", "key_usage_element",
4324  "key_usage_list", "using_list", "interval", "interval_time_stamp",
4325  "date_time_type", "table_alias", "opt_table_alias", "opt_all",
4326  "where_clause", "$@123", "having_clause", "$@124", "opt_escape",
4327  "group_clause", "group_list", "olap_opt", "alter_order_clause",
4328  "alter_order_list", "alter_order_item", "opt_order_clause",
4329  "order_clause", "$@125", "order_list", "order_dir",
4330  "opt_limit_clause_init", "opt_limit_clause", "limit_clause",
4331  "limit_options", "limit_option", "delete_limit_clause", "ulong_num",
4332  "real_ulong_num", "ulonglong_num", "real_ulonglong_num", "dec_num_error",
4333  "dec_num", "procedure_analyse_clause", "$@126",
4334  "opt_procedure_analyse_params", "procedure_analyse_param",
4335  "select_var_list_init", "$@127", "select_var_list", "select_var_ident",
4336  "into", "$@128", "into_destination", "$@129", "$@130", "do", "$@131",
4337  "drop", "$@132", "$@133", "$@134", "$@135", "table_list", "table_name",
4338  "table_name_with_opt_use_partition", "table_alias_ref_list",
4339  "table_alias_ref", "if_exists", "opt_temporary", "drop_ts_options_list",
4340  "drop_ts_options", "drop_ts_option", "insert", "$@136", "$@137",
4341  "replace", "$@138", "$@139", "insert_lock_option", "replace_lock_option",
4342  "insert2", "insert_table", "insert_field_spec", "$@140", "fields",
4343  "insert_values", "$@141", "$@142", "values_list", "ident_eq_list",
4344  "ident_eq_value", "equal", "opt_equal", "no_braces", "$@143",
4345  "opt_values", "values", "expr_or_default", "opt_insert_update", "$@144",
4346  "update", "$@145", "$@146", "update_list", "update_elem",
4347  "insert_update_list", "insert_update_elem", "opt_low_priority", "delete",
4348  "$@147", "single_multi", "$@148", "$@149", "$@150", "table_wild_list",
4349  "table_wild_one", "opt_wild", "opt_delete_options", "opt_delete_option",
4350  "truncate", "$@151", "opt_table_sym", "opt_profile_defs", "profile_defs",
4351  "profile_def", "opt_profile_args", "show", "$@152", "show_param",
4352  "$@153", "$@154", "show_engine_param", "master_or_binary", "opt_storage",
4353  "opt_db", "opt_full", "from_or_in", "binlog_in", "binlog_from",
4354  "wild_and_where", "describe", "$@155", "$@156", "explanable_command",
4355  "describe_command", "opt_extended_describe", "opt_describe_column",
4356  "flush", "$@157", "flush_options", "$@158", "$@159", "opt_flush_lock",
4357  "$@160", "flush_options_list", "flush_option", "opt_table_list", "reset",
4358  "$@161", "reset_options", "reset_option", "$@162", "slave_reset_options",
4359  "purge", "$@163", "purge_options", "purge_option", "kill", "kill_option",
4360  "use", "load", "$@164", "$@165", "$@166", "$@167", "data_or_xml",
4361  "opt_local", "load_data_lock", "opt_duplicate", "opt_field_term",
4362  "field_term_list", "field_term", "opt_line_term", "line_term_list",
4363  "line_term", "opt_xml_rows_identified_by", "opt_ignore_lines",
4364  "lines_or_rows", "opt_field_or_var_spec", "fields_or_vars",
4365  "field_or_var", "opt_load_data_set_spec", "load_data_set_list",
4366  "load_data_set_elem", "text_literal", "text_string", "param_marker",
4367  "signed_literal", "literal", "NUM_literal", "temporal_literal",
4368  "insert_ident", "table_wild", "order_ident", "simple_ident",
4369  "simple_ident_nospvar", "simple_ident_q", "field_ident", "table_ident",
4370  "table_ident_opt_wild", "table_ident_nodb", "IDENT_sys",
4371  "TEXT_STRING_sys_nonewline", "TEXT_STRING_sys", "TEXT_STRING_literal",
4372  "TEXT_STRING_filesystem", "ident", "label_ident", "ident_or_text",
4373  "user", "keyword", "keyword_sp", "set", "$@168",
4374  "start_option_value_list", "$@169", "$@170", "$@171",
4375  "start_option_value_list_following_option_type", "$@172",
4376  "option_value_list_continued", "option_value_list", "$@173", "$@174",
4377  "option_value", "$@175", "option_type", "opt_var_type",
4378  "opt_var_ident_type", "option_value_following_option_type",
4379  "option_value_no_option_type", "$@176", "internal_variable_name",
4380  "transaction_characteristics", "transaction_access_mode",
4381  "isolation_level", "transaction_access_mode_types", "isolation_types",
4382  "text_or_password", "set_expr_or_default", "lock", "$@177",
4383  "table_or_tables", "table_lock_list", "table_lock", "lock_option",
4384  "unlock", "$@178", "handler", "$@179", "handler_read_or_scan",
4385  "handler_scan_function", "handler_rkey_function", "$@180",
4386  "handler_rkey_mode", "revoke", "$@181", "revoke_command", "grant",
4387  "$@182", "grant_command", "opt_table", "grant_privileges",
4388  "opt_privileges", "object_privilege_list", "object_privilege", "$@183",
4389  "$@184", "$@185", "$@186", "opt_and", "require_list",
4390  "require_list_element", "grant_ident", "user_list", "grant_list",
4391  "grant_user", "opt_column_list", "column_list", "column_list_id",
4392  "require_clause", "grant_options", "opt_grant_option",
4393  "grant_option_list", "grant_option", "begin", "$@187", "opt_work",
4394  "opt_chain", "opt_release", "opt_savepoint", "commit", "rollback",
4395  "savepoint", "release", "union_clause", "union_list", "$@188",
4396  "union_opt", "opt_union_order_or_limit", "union_order_or_limit", "$@189",
4397  "order_or_limit", "union_option", "query_specification",
4398  "query_expression_body", "$@190", "subselect", "subselect_start",
4399  "subselect_end", "opt_query_expression_options",
4400  "query_expression_option_list", "query_expression_option",
4401  "view_or_trigger_or_sp_or_event", "definer_tail", "no_definer_tail",
4402  "definer_opt", "no_definer", "definer", "view_replace_or_algorithm",
4403  "view_replace", "view_algorithm", "view_suid", "view_tail", "$@191",
4404  "view_list_opt", "view_list", "view_select", "$@192", "view_select_aux",
4405  "$@193", "create_view_select_paren", "create_view_select", "$@194",
4406  "view_check_option", "trigger_tail", "$@195", "$@196", "$@197",
4407  "udf_tail", "sf_tail", "$@198", "$@199", "$@200", "$@201", "$@202",
4408  "sp_tail", "$@203", "$@204", "$@205", "$@206", "xa", "xid",
4409  "begin_or_start", "opt_join_or_resume", "opt_one_phase", "opt_suspend",
4410  "$@207", "opt_migrate", "install", "uninstall", 0
4411 };
4412 #endif
4413 
4414 # ifdef YYPRINT
4415 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
4416  token YYLEX-NUM. */
4417 static const yytype_uint16 yytoknum[] =
4418 {
4419  0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
4420  265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
4421  275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
4422  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
4423  295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
4424  305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
4425  315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
4426  325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
4427  335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
4428  345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
4429  355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
4430  365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
4431  375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
4432  385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
4433  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
4434  405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
4435  415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
4436  425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
4437  435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
4438  445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
4439  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
4440  465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
4441  475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
4442  485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
4443  495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
4444  505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
4445  515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
4446  525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
4447  535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
4448  545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
4449  555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
4450  565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
4451  575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
4452  585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
4453  595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
4454  605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
4455  615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
4456  625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
4457  635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
4458  645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
4459  655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
4460  665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
4461  675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
4462  685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
4463  695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
4464  705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
4465  715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
4466  725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
4467  735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
4468  745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
4469  755, 756, 757, 758, 759, 760, 761, 762, 763, 764,
4470  765, 766, 767, 768, 769, 770, 771, 772, 773, 774,
4471  775, 776, 777, 778, 779, 780, 781, 782, 783, 784,
4472  785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
4473  795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
4474  805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
4475  815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
4476  825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
4477  835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
4478  845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
4479  855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
4480  865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
4481  875, 124, 38, 45, 43, 42, 47, 37, 94, 126,
4482  40, 41, 44, 33, 123, 125, 59, 64, 46, 58
4483 };
4484 # endif
4485 
4486 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
4487 static const yytype_uint16 yyr1[] =
4488 {
4489  0, 640, 641, 642, 641, 641, 643, 643, 644, 644,
4490  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
4491  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
4492  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
4493  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
4494  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
4495  645, 645, 646, 647, 647, 648, 649, 649, 651, 650,
4496  652, 652, 653, 653, 654, 656, 655, 658, 657, 659,
4497  659, 660, 660, 660, 660, 660, 660, 660, 660, 660,
4498  660, 660, 660, 660, 660, 660, 660, 660, 660, 660,
4499  660, 660, 661, 661, 661, 662, 663, 663, 663, 663,
4500  665, 664, 666, 667, 664, 668, 669, 664, 670, 671,
4501  664, 672, 664, 673, 664, 664, 664, 664, 664, 674,
4502  675, 675, 676, 676, 676, 676, 676, 676, 676, 678,
4503  677, 680, 679, 679, 681, 681, 681, 681, 682, 682,
4504  683, 683, 684, 684, 685, 685, 686, 686, 688, 687,
4505  689, 689, 689, 689, 689, 689, 689, 689, 689, 689,
4506  689, 689, 689, 690, 691, 691, 692, 692, 693, 693,
4507  694, 694, 694, 694, 694, 694, 694, 695, 695, 695,
4508  696, 696, 698, 697, 699, 699, 700, 700, 701, 701,
4509  702, 702, 703, 703, 704, 705, 706, 706, 707, 707,
4510  708, 709, 709, 709, 709, 710, 710, 711, 711, 712,
4511  712, 714, 713, 713, 715, 713, 716, 713, 717, 717,
4512  718, 718, 719, 720, 720, 721, 722, 722, 723, 723,
4513  723, 723, 723, 724, 725, 725, 726, 726, 727, 727,
4514  728, 728, 729, 729, 729, 730, 730, 730, 730, 730,
4515  730, 730, 730, 730, 730, 730, 730, 731, 732, 733,
4516  733, 734, 734, 735, 735, 736, 737, 737, 738, 738,
4517  739, 740, 740, 741, 742, 742, 742, 742, 742, 742,
4518  742, 742, 742, 742, 742, 742, 742, 743, 743, 744,
4519  745, 744, 746, 746, 746, 746, 746, 746, 746, 746,
4520  746, 746, 746, 746, 746, 748, 747, 750, 749, 752,
4521  751, 754, 753, 755, 756, 757, 759, 758, 760, 761,
4522  761, 761, 762, 762, 764, 765, 766, 763, 767, 767,
4523  767, 768, 768, 770, 771, 769, 773, 772, 774, 774,
4524  775, 775, 777, 778, 776, 780, 781, 779, 782, 782,
4525  784, 783, 785, 785, 787, 786, 789, 788, 791, 790,
4526  792, 793, 794, 792, 795, 796, 792, 797, 797, 798,
4527  798, 798, 799, 800, 801, 802, 802, 803, 803, 804,
4528  805, 806, 806, 808, 807, 809, 809, 809, 810, 810,
4529  810, 811, 811, 812, 812, 812, 813, 813, 813, 813,
4530  813, 813, 813, 813, 814, 814, 815, 815, 815, 816,
4531  816, 816, 816, 816, 817, 817, 818, 818, 818, 819,
4532  819, 819, 819, 819, 819, 819, 820, 820, 821, 821,
4533  821, 822, 822, 822, 823, 824, 825, 826, 827, 828,
4534  828, 828, 829, 830, 831, 832, 833, 834, 835, 836,
4535  837, 838, 838, 839, 839, 840, 840, 840, 840, 841,
4536  842, 841, 843, 844, 843, 845, 843, 846, 847, 847,
4537  849, 848, 850, 852, 851, 853, 854, 855, 854, 854,
4538  854, 854, 854, 856, 856, 857, 857, 858, 858, 859,
4539  859, 860, 861, 862, 863, 864, 864, 865, 866, 865,
4540  867, 865, 868, 868, 869, 870, 871, 871, 872, 872,
4541  873, 873, 875, 874, 876, 877, 878, 877, 879, 877,
4542  880, 880, 881, 881, 882, 882, 884, 885, 883, 886,
4543  886, 887, 887, 888, 888, 889, 889, 891, 890, 892,
4544  893, 893, 894, 894, 895, 895, 895, 895, 895, 895,
4545  895, 895, 897, 898, 896, 899, 899, 900, 900, 901,
4546  901, 902, 902, 903, 903, 904, 904, 905, 906, 906,
4547  907, 907, 908, 908, 909, 909, 909, 910, 910, 910,
4548  910, 910, 910, 910, 910, 910, 910, 910, 910, 910,
4549  910, 910, 910, 910, 910, 910, 911, 910, 910, 910,
4550  910, 910, 910, 910, 910, 910, 910, 910, 912, 913,
4551  914, 915, 916, 916, 916, 916, 916, 916, 917, 917,
4552  917, 918, 918, 919, 919, 919, 919, 920, 921, 921,
4553  922, 922, 923, 923, 924, 924, 924, 924, 924, 924,
4554  925, 925, 926, 927, 927, 928, 930, 929, 931, 931,
4555  931, 931, 931, 931, 931, 931, 931, 931, 931, 931,
4556  931, 931, 931, 931, 931, 931, 931, 931, 931, 931,
4557  931, 931, 931, 931, 931, 931, 931, 931, 931, 931,
4558  931, 931, 931, 932, 931, 933, 931, 931, 931, 934,
4559  934, 934, 934, 934, 934, 934, 934, 935, 936, 936,
4560  937, 937, 938, 938, 938, 938, 938, 939, 939, 939,
4561  939, 939, 940, 940, 940, 941, 941, 941, 942, 943,
4562  943, 944, 944, 944, 945, 945, 946, 946, 947, 947,
4563  947, 948, 948, 948, 948, 949, 949, 950, 950, 951,
4564  951, 952, 952, 953, 953, 953, 953, 953, 953, 953,
4565  953, 953, 953, 953, 953, 953, 953, 953, 953, 953,
4566  954, 955, 956, 956, 957, 957, 958, 958, 959, 959,
4567  960, 960, 961, 961, 962, 962, 963, 964, 964, 965,
4568  965, 966, 966, 967, 967, 967, 968, 968, 968, 969,
4569  969, 969, 969, 969, 969, 969, 970, 970, 972, 971,
4570  973, 973, 974, 975, 975, 975, 975, 976, 977, 978,
4571  978, 979, 980, 980, 981, 981, 982, 982, 983, 984,
4572  984, 985, 985, 986, 986, 986, 986, 987, 987, 987,
4573  987, 987, 988, 988, 988, 988, 988, 989, 990, 990,
4574  991, 991, 992, 992, 993, 993, 993, 994, 994, 995,
4575  996, 997, 998, 998, 999, 999, 1000, 1000, 1001, 1001,
4576  1002, 1002, 1003, 1003, 1004, 1004, 1005, 1005, 1006, 1006,
4577  1007, 1007, 1008, 1009, 1009, 1010, 1010, 1010, 1011, 1011,
4578  1012, 1012, 1013, 1013, 1014, 1014, 1015, 1015, 1017, 1016,
4579  1018, 1016, 1016, 1019, 1016, 1020, 1016, 1021, 1016, 1022,
4580  1016, 1023, 1016, 1016, 1016, 1016, 1016, 1016, 1016, 1024,
4581  1024, 1025, 1025, 1025, 1025, 1026, 1026, 1027, 1027, 1028,
4582  1028, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029,
4583  1029, 1030, 1029, 1029, 1031, 1029, 1032, 1029, 1029, 1029,
4584  1029, 1029, 1033, 1034, 1034, 1036, 1035, 1037, 1037, 1037,
4585  1039, 1038, 1040, 1041, 1040, 1042, 1042, 1043, 1044, 1044,
4586  1045, 1046, 1046, 1046, 1047, 1046, 1048, 1049, 1046, 1046,
4587  1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046,
4588  1046, 1046, 1046, 1046, 1050, 1050, 1050, 1050, 1050, 1051,
4589  1051, 1052, 1052, 1053, 1053, 1054, 1054, 1055, 1055, 1055,
4590  1056, 1056, 1056, 1057, 1057, 1057, 1057, 1059, 1058, 1058,
4591  1060, 1061, 1061, 1062, 1062, 1063, 1063, 1063, 1064, 1065,
4592  1065, 1066, 1066, 1067, 1067, 1068, 1068, 1069, 1069, 1070,
4593  1070, 1071, 1071, 1072, 1072, 1073, 1073, 1073, 1073, 1073,
4594  1075, 1074, 1076, 1076, 1076, 1078, 1077, 1079, 1079, 1080,
4595  1080, 1081, 1081, 1081, 1083, 1082, 1084, 1086, 1085, 1087,
4596  1087, 1088, 1088, 1089, 1089, 1089, 1089, 1089, 1089, 1091,
4597  1090, 1092, 1092, 1092, 1094, 1093, 1093, 1095, 1095, 1096,
4598  1096, 1097, 1099, 1098, 1100, 1100, 1101, 1101, 1102, 1103,
4599  1104, 1104, 1106, 1105, 1107, 1107, 1108, 1108, 1109, 1110,
4600  1112, 1111, 1114, 1113, 1115, 1115, 1116, 1116, 1117, 1118,
4601  1118, 1119, 1119, 1120, 1120, 1122, 1121, 1124, 1125, 1123,
4602  1126, 1126, 1126, 1126, 1126, 1127, 1127, 1128, 1128, 1129,
4603  1129, 1130, 1130, 1130, 1131, 1131, 1131, 1132, 1132, 1132,
4604  1133, 1133, 1134, 1135, 1136, 1136, 1136, 1136, 1136, 1137,
4605  1137, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138,
4606  1138, 1138, 1139, 1139, 1139, 1139, 1139, 1139, 1140, 1140,
4607  1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140,
4608  1140, 1140, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141,
4609  1141, 1141, 1141, 1141, 1141, 1141, 1141, 1142, 1142, 1143,
4610  1143, 1144, 1144, 1145, 1145, 1146, 1146, 1146, 1146, 1146,
4611  1146, 1147, 1147, 1148, 1148, 1148, 1148, 1148, 1148, 1148,
4612  1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148,
4613  1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148,
4614  1148, 1148, 1148, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
4615  1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
4616  1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
4617  1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150,
4618  1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150,
4619  1150, 1150, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151,
4620  1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151,
4621  1151, 1151, 1151, 1151, 1151, 1151, 1151, 1152, 1152, 1152,
4622  1152, 1152, 1152, 1152, 1152, 1154, 1153, 1153, 1155, 1155,
4623  1156, 1156, 1157, 1157, 1158, 1158, 1159, 1159, 1160, 1161,
4624  1161, 1161, 1161, 1161, 1161, 1161, 1162, 1163, 1161, 1161,
4625  1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1164,
4626  1161, 1166, 1165, 1167, 1167, 1167, 1168, 1168, 1169, 1169,
4627  1170, 1171, 1170, 1172, 1172, 1174, 1173, 1175, 1175, 1175,
4628  1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1176, 1176,
4629  1177, 1177, 1178, 1178, 1179, 1179, 1180, 1180, 1181, 1181,
4630  1182, 1182, 1183, 1183, 1184, 1185, 1185, 1186, 1186, 1187,
4631  1187, 1188, 1187, 1189, 1187, 1190, 1187, 1187, 1191, 1187,
4632  1192, 1187, 1187, 1193, 1187, 1194, 1187, 1187, 1195, 1195,
4633  1195, 1196, 1196, 1197, 1199, 1198, 1198, 1198, 1200, 1201,
4634  1202, 1200, 1203, 1205, 1206, 1204, 1208, 1207, 1210, 1211,
4635  1209, 1212, 1213, 1214, 1214, 1215, 1215, 1215, 1215, 1216,
4636  1216, 1218, 1217, 1219, 1217, 1220, 1220, 1221, 1222, 1221,
4637  1224, 1223, 1225, 1225, 1226, 1226, 1227, 1227, 1228, 1228,
4638  1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229,
4639  1229, 1229, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230,
4640  1230, 1231, 1231, 1231, 1231, 1232, 1232, 1232, 1233, 1233,
4641  1234, 1234, 1235, 1236, 1235, 1237, 1238, 1237, 1239, 1239,
4642  1240, 1240, 1241, 1241, 1242, 1242, 1242, 1243, 1244, 1244,
4643  1245, 1246, 1246, 1248, 1247, 1249, 1249, 1250, 1250, 1250,
4644  1251, 1251, 1252, 1252, 1253, 1254, 1254, 1254, 1255, 1255,
4645  1255, 1255, 1255, 1256, 1256, 1257, 1257, 1257, 1257, 1257,
4646  1257, 1258, 1258, 1258, 1258, 1258, 1259, 1259, 1259, 1259,
4647  1259, 1260, 1260, 1260, 1260, 1261, 1262, 1262, 1263, 1264,
4648  1263, 1265, 1265, 1265, 1266, 1268, 1267, 1269, 1269, 1270,
4649  1270, 1272, 1271, 1274, 1275, 1273, 1273, 1273, 1277, 1276,
4650  1279, 1278, 1280, 1281, 1278, 1278, 1278, 1278, 1278, 1278,
4651  1282, 1278, 1278, 1278, 1278, 1278, 1278, 1283, 1283, 1284,
4652  1285, 1286, 1286, 1287, 1288, 1288, 1289, 1289, 1290, 1290,
4653  1291, 1291, 1291, 1292, 1292, 1294, 1295, 1293, 1297, 1298,
4654  1296, 1299, 1299, 1299, 1299, 1300, 1300, 1301, 1301, 1302,
4655  1303, 1303, 1303, 1304, 1303, 1305, 1305, 1306, 1306, 1307,
4656  1306, 1308, 1306, 1309, 1309, 1310, 1310, 1311, 1312, 1312,
4657  1313, 1313, 1315, 1314, 1316, 1316, 1317, 1317, 1318, 1318,
4658  1319, 1320, 1319, 1322, 1323, 1321, 1324, 1324, 1325, 1326,
4659  1326, 1327, 1328, 1328, 1330, 1329, 1332, 1331, 1333, 1331,
4660  1334, 1331, 1335, 1335, 1336, 1336, 1337, 1337, 1338, 1338,
4661  1339, 1339, 1339, 1341, 1340, 1342, 1342, 1343, 1343, 1344,
4662  1344, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345,
4663  1346, 1346, 1348, 1347, 1349, 1349, 1349, 1349, 1349, 1349,
4664  1349, 1349, 1349, 1349, 1349, 1349, 1350, 1349, 1351, 1349,
4665  1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349,
4666  1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349,
4667  1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1352,
4668  1352, 1352, 1353, 1353, 1354, 1354, 1355, 1355, 1356, 1356,
4669  1357, 1357, 1358, 1358, 1359, 1359, 1360, 1360, 1360, 1362,
4670  1361, 1363, 1361, 1364, 1364, 1364, 1364, 1364, 1365, 1365,
4671  1366, 1366, 1366, 1366, 1367, 1367, 1367, 1369, 1368, 1371,
4672  1372, 1370, 1370, 1373, 1373, 1374, 1373, 1375, 1375, 1376,
4673  1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
4674  1376, 1376, 1377, 1377, 1379, 1378, 1380, 1380, 1382, 1381,
4675  1381, 1381, 1383, 1383, 1385, 1384, 1386, 1387, 1387, 1388,
4676  1389, 1389, 1389, 1390, 1392, 1393, 1394, 1395, 1391, 1396,
4677  1396, 1397, 1397, 1398, 1398, 1398, 1399, 1399, 1399, 1400,
4678  1400, 1401, 1401, 1402, 1402, 1402, 1402, 1403, 1403, 1404,
4679  1404, 1405, 1405, 1406, 1406, 1407, 1407, 1408, 1408, 1409,
4680  1409, 1409, 1410, 1410, 1411, 1411, 1412, 1412, 1413, 1413,
4681  1414, 1415, 1415, 1415, 1415, 1416, 1416, 1416, 1417, 1418,
4682  1418, 1418, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419,
4683  1419, 1419, 1420, 1420, 1420, 1420, 1420, 1421, 1421, 1421,
4684  1422, 1422, 1423, 1423, 1424, 1425, 1425, 1426, 1426, 1427,
4685  1427, 1427, 1428, 1428, 1428, 1428, 1429, 1429, 1429, 1430,
4686  1430, 1431, 1432, 1432, 1433, 1434, 1435, 1436, 1437, 1437,
4687  1438, 1438, 1439, 1439, 1439, 1440, 1440, 1440, 1441, 1441,
4688  1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441,
4689  1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441,
4690  1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441,
4691  1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441,
4692  1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1442, 1442,
4693  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4694  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4695  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4696  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4697  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4698  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4699  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4700  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4701  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4702  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4703  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4704  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4705  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4706  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4707  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4708  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4709  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4710  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4711  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4712  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4713  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4714  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4715  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4716  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4717  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4718  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4719  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4720  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4721  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442,
4722  1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1444,
4723  1443, 1446, 1445, 1447, 1445, 1448, 1445, 1450, 1449, 1449,
4724  1451, 1451, 1453, 1452, 1454, 1452, 1456, 1455, 1455, 1457,
4725  1457, 1457, 1458, 1458, 1458, 1458, 1459, 1459, 1459, 1459,
4726  1460, 1462, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461,
4727  1463, 1463, 1463, 1464, 1464, 1464, 1464, 1465, 1466, 1467,
4728  1467, 1468, 1468, 1468, 1468, 1469, 1469, 1469, 1470, 1470,
4729  1470, 1470, 1470, 1472, 1471, 1473, 1473, 1474, 1474, 1475,
4730  1476, 1476, 1476, 1476, 1478, 1477, 1479, 1479, 1480, 1479,
4731  1481, 1481, 1482, 1482, 1483, 1483, 1483, 1483, 1484, 1483,
4732  1485, 1485, 1485, 1485, 1485, 1487, 1486, 1488, 1488, 1488,
4733  1488, 1488, 1490, 1489, 1491, 1491, 1491, 1491, 1492, 1492,
4734  1493, 1493, 1494, 1494, 1495, 1495, 1497, 1496, 1498, 1496,
4735  1499, 1496, 1500, 1496, 1496, 1496, 1496, 1496, 1496, 1496,
4736  1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496,
4737  1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496,
4738  1501, 1501, 1502, 1502, 1503, 1503, 1503, 1504, 1504, 1504,
4739  1504, 1505, 1505, 1506, 1506, 1507, 1507, 1507, 1507, 1507,
4740  1508, 1508, 1509, 1509, 1510, 1511, 1511, 1511, 1511, 1511,
4741  1512, 1512, 1513, 1513, 1514, 1514, 1515, 1515, 1515, 1515,
4742  1515, 1517, 1516, 1518, 1518, 1519, 1519, 1519, 1520, 1520,
4743  1520, 1521, 1521, 1522, 1523, 1523, 1524, 1525, 1526, 1526,
4744  1528, 1527, 1529, 1529, 1529, 1530, 1530, 1532, 1531, 1533,
4745  1533, 1534, 1534, 1534, 1535, 1535, 1536, 1537, 1536, 1538,
4746  1539, 1540, 1541, 1541, 1542, 1542, 1543, 1543, 1543, 1543,
4747  1543, 1543, 1543, 1543, 1544, 1544, 1544, 1545, 1545, 1545,
4748  1545, 1545, 1546, 1546, 1546, 1546, 1546, 1546, 1547, 1547,
4749  1548, 1549, 1550, 1550, 1550, 1551, 1552, 1552, 1552, 1553,
4750  1553, 1553, 1555, 1554, 1556, 1556, 1557, 1557, 1559, 1558,
4751  1561, 1560, 1560, 1562, 1562, 1564, 1563, 1565, 1565, 1565,
4752  1565, 1567, 1568, 1569, 1566, 1570, 1570, 1572, 1573, 1574,
4753  1575, 1576, 1571, 1578, 1579, 1580, 1581, 1577, 1582, 1582,
4754  1582, 1582, 1582, 1582, 1583, 1583, 1583, 1584, 1584, 1585,
4755  1585, 1585, 1586, 1586, 1587, 1588, 1587, 1589, 1589, 1590,
4756  1591
4757 };
4758 
4759 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
4760 static const yytype_uint8 yyr2[] =
4761 {
4762  0, 2, 1, 0, 4, 2, 0, 1, 1, 1,
4763  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4764  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4765  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4766  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4767  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4768  1, 1, 3, 1, 1, 4, 1, 2, 0, 4,
4769  0, 2, 3, 1, 2, 0, 3, 0, 5, 1,
4770  3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
4771  3, 3, 3, 3, 3, 3, 3, 3, 3, 5,
4772  3, 1, 0, 1, 3, 1, 3, 3, 3, 3,
4773  0, 7, 0, 0, 14, 0, 0, 14, 0, 0,
4774  14, 0, 6, 0, 3, 4, 4, 3, 2, 10,
4775  1, 3, 2, 2, 2, 2, 2, 2, 2, 0,
4776  13, 0, 6, 2, 0, 1, 3, 1, 0, 2,
4777  0, 2, 0, 1, 3, 4, 0, 2, 0, 2,
4778  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4779  1, 1, 1, 0, 3, 1, 0, 2, 0, 2,
4780  2, 2, 2, 2, 3, 3, 1, 1, 1, 2,
4781  3, 3, 0, 4, 0, 3, 0, 1, 3, 1,
4782  0, 1, 3, 1, 0, 3, 0, 1, 3, 1,
4783  4, 0, 1, 1, 1, 0, 3, 2, 3, 0,
4784  3, 0, 5, 5, 0, 7, 0, 6, 1, 1,
4785  1, 3, 1, 1, 1, 3, 0, 1, 1, 1,
4786  1, 2, 1, 3, 1, 1, 0, 1, 0, 2,
4787  3, 5, 1, 1, 1, 1, 1, 1, 1, 1,
4788  1, 1, 1, 1, 1, 1, 1, 3, 4, 0,
4789  1, 1, 3, 1, 3, 3, 1, 2, 1, 1,
4790  1, 1, 3, 3, 1, 1, 1, 1, 1, 1,
4791  1, 1, 1, 1, 1, 1, 1, 1, 3, 0,
4792  0, 3, 1, 1, 1, 1, 1, 1, 1, 1,
4793  1, 1, 1, 1, 1, 0, 5, 0, 2, 0,
4794  3, 0, 2, 2, 2, 2, 0, 6, 2, 0,
4795  2, 1, 1, 3, 0, 0, 0, 7, 0, 2,
4796  2, 1, 1, 0, 0, 8, 0, 6, 1, 2,
4797  1, 2, 0, 0, 6, 0, 0, 6, 0, 2,
4798  0, 5, 0, 1, 0, 5, 0, 2, 0, 5,
4799  4, 0, 0, 8, 0, 0, 8, 1, 1, 1,
4800  1, 1, 2, 4, 5, 0, 4, 4, 4, 3,
4801  3, 2, 2, 0, 2, 1, 2, 3, 1, 1,
4802  1, 0, 1, 1, 2, 3, 1, 1, 1, 1,
4803  1, 1, 1, 1, 0, 1, 1, 2, 3, 1,
4804  1, 1, 1, 1, 0, 1, 1, 2, 3, 1,
4805  1, 1, 1, 1, 1, 1, 0, 1, 1, 2,
4806  3, 1, 1, 1, 2, 2, 2, 1, 1, 1,
4807  1, 2, 3, 3, 3, 3, 3, 3, 3, 3,
4808  4, 1, 1, 1, 1, 2, 3, 2, 4, 5,
4809  0, 5, 0, 0, 5, 0, 7, 1, 0, 1,
4810  0, 4, 0, 0, 3, 5, 6, 0, 4, 2,
4811  2, 2, 2, 0, 1, 0, 3, 0, 1, 1,
4812  3, 1, 4, 5, 5, 0, 2, 0, 0, 7,
4813  0, 10, 1, 3, 1, 1, 0, 2, 0, 3,
4814  1, 3, 0, 6, 1, 0, 0, 5, 0, 4,
4815  1, 1, 1, 3, 1, 3, 0, 0, 5, 1,
4816  3, 1, 1, 0, 3, 1, 3, 0, 4, 1,
4817  0, 1, 2, 1, 3, 4, 3, 3, 3, 4,
4818  4, 3, 0, 0, 6, 0, 1, 0, 1, 1,
4819  2, 1, 1, 0, 1, 1, 2, 1, 0, 3,
4820  0, 1, 1, 2, 1, 2, 3, 3, 3, 3,
4821  3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
4822  3, 3, 3, 3, 3, 3, 0, 6, 1, 1,
4823  3, 4, 4, 2, 2, 2, 3, 3, 4, 4,
4824  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4825  1, 1, 2, 1, 1, 1, 1, 1, 1, 3,
4826  1, 1, 2, 2, 7, 8, 8, 8, 8, 2,
4827  0, 1, 4, 0, 1, 2, 0, 4, 3, 3,
4828  3, 1, 2, 1, 1, 3, 2, 3, 2, 2,
4829  1, 3, 3, 2, 3, 1, 2, 2, 2, 1,
4830  2, 1, 1, 1, 2, 3, 2, 3, 2, 2,
4831  3, 3, 3, 0, 6, 0, 6, 2, 1, 1,
4832  1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
4833  2, 1, 2, 1, 2, 3, 2, 1, 1, 1,
4834  1, 1, 1, 1, 2, 0, 1, 1, 5, 0,
4835  3, 0, 2, 3, 0, 1, 2, 1, 1, 1,
4836  1, 3, 3, 3, 3, 0, 1, 0, 1, 0,
4837  1, 2, 1, 1, 2, 2, 3, 1, 3, 2,
4838  1, 2, 2, 2, 2, 2, 2, 2, 2, 2,
4839  2, 2, 1, 1, 2, 1, 1, 1, 1, 1,
4840  0, 2, 1, 1, 1, 1, 1, 0, 2, 1,
4841  1, 0, 1, 1, 2, 2, 1, 2, 2, 0,
4842  1, 1, 1, 3, 1, 3, 0, 1, 0, 4,
4843  1, 1, 1, 0, 1, 2, 1, 1, 2, 1,
4844  3, 3, 1, 1, 0, 2, 0, 1, 5, 0,
4845  3, 3, 1, 0, 2, 2, 2, 0, 3, 3,
4846  6, 6, 1, 1, 2, 2, 2, 1, 2, 2,
4847  1, 1, 0, 1, 1, 1, 1, 0, 1, 1,
4848  1, 0, 1, 2, 0, 1, 0, 1, 0, 1,
4849  1, 2, 1, 2, 1, 2, 2, 2, 3, 2,
4850  1, 1, 1, 1, 3, 1, 1, 1, 4, 2,
4851  1, 4, 0, 1, 0, 2, 1, 3, 0, 6,
4852  0, 5, 7, 0, 5, 0, 5, 0, 5, 0,
4853  4, 0, 10, 3, 4, 3, 3, 7, 4, 3,
4854  5, 0, 3, 1, 4, 0, 3, 0, 2, 0,
4855  1, 0, 2, 2, 2, 2, 1, 1, 1, 3,
4856  4, 0, 6, 4, 0, 5, 0, 6, 4, 3,
4857  1, 7, 3, 1, 1, 0, 5, 0, 3, 2,
4858  0, 5, 0, 0, 6, 1, 3, 1, 1, 3,
4859  2, 3, 2, 4, 0, 6, 0, 0, 8, 4,
4860  4, 3, 3, 2, 2, 6, 5, 3, 5, 1,
4861  1, 1, 1, 1, 0, 1, 1, 2, 2, 3,
4862  3, 3, 3, 0, 1, 0, 1, 0, 1, 1,
4863  0, 2, 1, 0, 1, 1, 1, 0, 6, 3,
4864  3, 0, 1, 1, 3, 3, 2, 2, 4, 0,
4865  3, 0, 3, 0, 3, 0, 3, 0, 1, 1,
4866  3, 1, 1, 0, 2, 1, 3, 3, 3, 1,
4867  0, 5, 0, 1, 1, 0, 6, 0, 1, 1,
4868  2, 1, 1, 1, 0, 5, 2, 0, 5, 0,
4869  1, 1, 2, 1, 1, 1, 1, 1, 2, 0,
4870  5, 0, 1, 1, 0, 4, 4, 3, 5, 1,
4871  3, 3, 0, 6, 1, 1, 1, 3, 2, 3,
4872  1, 1, 0, 6, 1, 1, 1, 3, 3, 4,
4873  0, 6, 0, 2, 0, 4, 0, 2, 1, 2,
4874  4, 2, 3, 2, 3, 0, 3, 0, 0, 6,
4875  2, 1, 1, 2, 2, 8, 4, 0, 1, 2,
4876  1, 1, 1, 1, 0, 2, 4, 3, 1, 1,
4877  3, 4, 0, 0, 0, 2, 2, 1, 1, 0,
4878  2, 3, 3, 3, 2, 3, 4, 3, 4, 3,
4879  4, 1, 3, 4, 3, 3, 6, 1, 5, 6,
4880  5, 7, 6, 8, 5, 6, 4, 4, 5, 3,
4881  4, 1, 3, 3, 3, 3, 3, 3, 5, 5,
4882  3, 3, 3, 3, 3, 3, 1, 1, 1, 1,
4883  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4884  1, 1, 1, 1, 1, 1, 1, 1, 3, 1,
4885  1, 1, 1, 3, 2, 2, 2, 2, 3, 3,
4886  5, 6, 4, 4, 7, 2, 6, 5, 6, 6,
4887  4, 4, 5, 4, 6, 2, 4, 4, 4, 10,
4888  6, 8, 6, 4, 4, 6, 4, 4, 4, 6,
4889  4, 7, 7, 7, 6, 6, 6, 6, 3, 4,
4890  6, 8, 2, 2, 8, 8, 6, 6, 1, 6,
4891  6, 8, 8, 6, 8, 6, 2, 8, 8, 2,
4892  2, 2, 4, 4, 4, 4, 3, 8, 6, 8,
4893  4, 6, 4, 4, 4, 6, 8, 4, 3, 6,
4894  4, 6, 5, 8, 7, 10, 1, 6, 4, 4,
4895  4, 4, 4, 6, 4, 0, 5, 6, 2, 3,
4896  0, 4, 0, 3, 0, 1, 1, 3, 4, 4,
4897  5, 4, 4, 4, 5, 4, 0, 0, 7, 4,
4898  5, 4, 5, 4, 4, 4, 4, 4, 5, 0,
4899  8, 0, 3, 3, 1, 4, 0, 1, 0, 2,
4900  0, 0, 4, 4, 2, 0, 3, 2, 3, 2,
4901  1, 2, 1, 2, 1, 2, 2, 2, 0, 1,
4902  1, 3, 1, 3, 1, 3, 0, 1, 0, 2,
4903  4, 5, 1, 1, 1, 1, 4, 1, 3, 3,
4904  3, 0, 6, 0, 6, 0, 8, 4, 0, 8,
4905  0, 10, 6, 0, 8, 0, 10, 6, 1, 2,
4906  2, 0, 1, 5, 0, 5, 3, 5, 2, 0,
4907  0, 7, 1, 0, 0, 6, 0, 3, 0, 0,
4908  5, 0, 1, 0, 1, 0, 2, 3, 3, 1,
4909  1, 0, 7, 0, 7, 1, 2, 0, 0, 2,
4910  0, 2, 0, 1, 1, 1, 1, 3, 1, 3,
4911  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4912  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4913  1, 1, 1, 1, 1, 0, 1, 1, 0, 2,
4914  0, 1, 0, 0, 3, 0, 0, 3, 2, 0,
4915  0, 4, 4, 2, 0, 1, 1, 3, 3, 1,
4916  2, 0, 1, 0, 4, 4, 2, 0, 1, 1,
4917  0, 1, 0, 1, 2, 1, 3, 3, 1, 1,
4918  1, 1, 1, 0, 2, 1, 1, 1, 1, 1,
4919  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4920  1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
4921  6, 0, 1, 3, 1, 0, 2, 3, 1, 2,
4922  1, 0, 3, 0, 0, 7, 2, 1, 0, 3,
4923  0, 7, 0, 0, 8, 4, 6, 4, 4, 4,
4924  0, 6, 4, 4, 4, 5, 4, 1, 3, 1,
4925  2, 1, 3, 1, 0, 2, 0, 1, 0, 1,
4926  1, 2, 3, 1, 1, 0, 0, 8, 0, 0,
4927  6, 0, 1, 1, 1, 1, 1, 2, 1, 1,
4928  1, 3, 4, 0, 3, 3, 1, 2, 2, 0,
4929  3, 0, 5, 3, 1, 3, 1, 3, 1, 1,
4930  0, 1, 0, 4, 0, 1, 3, 1, 1, 1,
4931  0, 0, 6, 0, 0, 11, 3, 1, 3, 3,
4932  1, 3, 0, 1, 0, 4, 0, 7, 0, 5,
4933  0, 6, 1, 3, 2, 4, 0, 2, 0, 2,
4934  1, 1, 1, 0, 4, 0, 1, 0, 1, 1,
4935  3, 1, 1, 2, 2, 2, 1, 1, 1, 1,
4936  0, 3, 0, 3, 2, 4, 4, 3, 4, 4,
4937  1, 3, 3, 6, 2, 2, 0, 6, 0, 6,
4938  5, 2, 1, 5, 5, 2, 2, 1, 4, 3,
4939  2, 3, 2, 2, 1, 3, 4, 3, 3, 2,
4940  2, 3, 3, 3, 3, 3, 3, 3, 3, 1,
4941  1, 1, 1, 1, 0, 1, 0, 2, 0, 1,
4942  1, 1, 0, 2, 0, 2, 0, 2, 2, 0,
4943  4, 0, 4, 1, 1, 1, 1, 1, 1, 1,
4944  0, 1, 1, 3, 0, 1, 1, 0, 4, 0,
4945  0, 5, 1, 0, 3, 0, 3, 3, 1, 2,
4946  2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
4947  1, 1, 0, 1, 0, 3, 3, 1, 0, 3,
4948  1, 2, 0, 1, 0, 3, 3, 2, 2, 3,
4949  0, 1, 1, 2, 0, 0, 0, 0, 22, 1,
4950  1, 0, 1, 0, 1, 1, 0, 1, 1, 0,
4951  2, 2, 1, 3, 4, 3, 3, 0, 2, 2,
4952  1, 3, 3, 0, 4, 0, 3, 1, 1, 0,
4953  3, 2, 3, 1, 1, 2, 0, 2, 3, 1,
4954  5, 1, 1, 2, 2, 1, 1, 1, 1, 1,
4955  2, 2, 1, 1, 1, 1, 1, 1, 1, 1,
4956  2, 2, 1, 1, 1, 1, 1, 2, 2, 2,
4957  1, 1, 3, 5, 1, 1, 1, 1, 1, 3,
4958  4, 5, 1, 5, 3, 2, 1, 3, 2, 2,
4959  4, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4960  1, 1, 1, 1, 1, 1, 3, 2, 1, 1,
4961  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4962  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4963  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4964  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4965  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4966  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4967  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4968  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4969  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4970  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4971  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4972  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4973  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4974  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4975  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4976  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4977  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4978  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4979  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4980  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4981  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4982  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4983  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4984  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4985  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4986  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4987  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4988  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4989  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4990  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4991  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4992  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4993  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4994  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
4995  1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
4996  3, 0, 3, 0, 3, 0, 3, 0, 3, 2,
4997  0, 2, 0, 2, 0, 4, 0, 3, 1, 1,
4998  1, 1, 0, 1, 1, 1, 0, 2, 2, 2,
4999  3, 0, 4, 4, 6, 2, 3, 3, 3, 5,
5000  1, 3, 3, 1, 1, 3, 3, 1, 3, 2,
5001  2, 2, 2, 2, 1, 1, 4, 4, 1, 1,
5002  1, 1, 1, 0, 4, 1, 1, 1, 3, 3,
5003  1, 1, 2, 2, 0, 3, 4, 3, 0, 7,
5004  1, 2, 1, 1, 1, 1, 1, 1, 0, 5,
5005  1, 1, 1, 1, 1, 0, 4, 6, 6, 6,
5006  7, 5, 0, 4, 8, 8, 8, 6, 0, 1,
5007  1, 2, 0, 1, 1, 3, 0, 3, 0, 3,
5008  0, 3, 0, 3, 1, 1, 1, 1, 1, 1,
5009  1, 1, 1, 1, 1, 2, 2, 1, 3, 2,
5010  2, 2, 2, 2, 2, 2, 2, 1, 1, 2,
5011  0, 1, 3, 1, 2, 2, 2, 1, 3, 3,
5012  1, 1, 3, 1, 3, 4, 5, 4, 6, 1,
5013  0, 3, 3, 1, 1, 0, 2, 2, 2, 2,
5014  0, 2, 0, 3, 2, 1, 2, 2, 2, 2,
5015  2, 0, 3, 0, 1, 0, 3, 2, 0, 1,
5016  2, 0, 1, 4, 4, 5, 2, 3, 0, 1,
5017  0, 4, 0, 1, 1, 0, 1, 0, 2, 2,
5018  1, 0, 1, 1, 2, 3, 2, 0, 6, 3,
5019  0, 0, 0, 1, 2, 1, 1, 1, 1, 1,
5020  1, 1, 1, 1, 2, 2, 3, 1, 1, 1,
5021  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
5022  0, 3, 1, 2, 1, 2, 3, 3, 3, 0,
5023  3, 3, 0, 7, 0, 3, 1, 3, 0, 3,
5024  0, 3, 4, 1, 3, 0, 3, 0, 3, 4,
5025  4, 0, 0, 0, 16, 8, 7, 0, 0, 0,
5026  0, 0, 15, 0, 0, 0, 0, 12, 4, 4,
5027  3, 4, 3, 2, 1, 3, 5, 1, 1, 0,
5028  1, 1, 0, 2, 0, 0, 3, 0, 2, 5,
5029  3
5030 };
5031 
5032 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
5033  STATE-NUM when YYTABLE doesn't specify something else to do. Zero
5034  means the default is an error. */
5035 static const yytype_uint16 yydefact[] =
5036 {
5037  0, 2600, 1081, 2531, 0, 0, 0, 0, 0, 0,
5038  2533, 123, 63, 1704, 1818, 1819, 1608, 1636, 2, 0,
5039  1081, 269, 173, 0, 75, 1645, 0, 1870, 0, 0,
5040  1081, 483, 0, 1864, 0, 0, 1081, 1648, 1854, 246,
5041  173, 2533, 0, 1127, 2339, 1742, 0, 0, 0, 1725,
5042  0, 2414, 1693, 0, 0, 0, 0, 3, 8, 19,
5043  0, 39, 24, 29, 14, 18, 13, 52, 46, 26,
5044  37, 10, 54, 55, 16, 43, 11, 12, 15, 35,
5045  42, 36, 38, 50, 1118, 22, 23, 30, 44, 59,
5046  20, 56, 53, 21, 1820, 25, 45, 40, 32, 60,
5047  33, 51, 34, 58, 28, 47, 27, 9, 17, 48,
5048  49, 41, 61, 31, 57, 0, 929, 0, 0, 1006,
5049  0, 0, 0, 0, 173, 0, 909, 2598, 2599, 2600,
5050  1083, 1082, 0, 2533, 1975, 1066, 1092, 2038, 2039, 2040,
5051  2041, 2042, 2043, 2044, 2045, 1989, 2046, 2048, 2047, 2049,
5052  2050, 1990, 1991, 2051, 2052, 2053, 2055, 2054, 2056, 1992,
5053  1993, 2057, 2058, 2059, 2060, 1994, 1995, 2061, 2063, 2062,
5054  1996, 2064, 2065, 2066, 2069, 2068, 2067, 1997, 2070, 1998,
5055  2071, 2072, 2073, 2074, 2075, 2076, 2077, 2079, 2078, 1999,
5056  2080, 2081, 2082, 2083, 2084, 2086, 2085, 2087, 2088, 2089,
5057  2000, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097, 2098,
5058  2001, 2099, 2100, 2101, 2121, 2002, 2102, 2105, 2104, 2103,
5059  2106, 2107, 2108, 2110, 2109, 2111, 2112, 2003, 2113, 2114,
5060  2115, 2116, 2117, 2119, 2118, 2123, 2124, 2125, 2004, 2005,
5061  2120, 2122, 2319, 2126, 2128, 2127, 2129, 2131, 2130, 2006,
5062  2132, 2007, 2008, 2133, 2134, 1972, 2135, 1973, 2136, 2138,
5063  2139, 2140, 2145, 2009, 2137, 2141, 2142, 2143, 2144, 2146,
5064  2010, 2147, 2148, 2149, 2150, 2151, 2152, 2153, 2154, 2155,
5065  2156, 2178, 2167, 2169, 2160, 2162, 2163, 2165, 2161, 2168,
5066  2166, 2172, 2171, 2173, 2174, 2175, 2176, 2177, 2170, 2158,
5067  2164, 2159, 2179, 2180, 2157, 2181, 2182, 2183, 2184, 2185,
5068  2186, 2187, 2188, 2189, 2190, 2191, 2193, 2192, 2194, 2195,
5069  2196, 2197, 2198, 2199, 2201, 2200, 2202, 2203, 2204, 2206,
5070  2205, 2208, 2209, 2011, 2207, 2210, 2211, 2212, 2213, 2214,
5071  2215, 2012, 2013, 2014, 2216, 2217, 2015, 2218, 2220, 2219,
5072  2221, 2222, 2223, 2224, 2225, 2226, 2227, 2016, 2017, 2228,
5073  2229, 2230, 2231, 2232, 2233, 2234, 2235, 2236, 2237, 2238,
5074  2239, 2240, 2241, 2243, 2242, 2244, 2245, 2246, 2247, 2248,
5075  2249, 2250, 2018, 2251, 2019, 2252, 2253, 2020, 2254, 2021,
5076  2255, 2256, 2257, 2258, 2022, 2259, 2260, 2261, 2263, 2264,
5077  2262, 2265, 2023, 2266, 2267, 2268, 2024, 2270, 2269, 2271,
5078  2025, 2273, 2274, 2026, 2272, 2028, 2275, 2276, 2027, 2029,
5079  2277, 2278, 2279, 2280, 2281, 2283, 2282, 2284, 2285, 2286,
5080  2030, 2287, 2288, 2289, 2290, 2031, 2291, 2292, 2293, 2294,
5081  2295, 2297, 2296, 2298, 2299, 2300, 2301, 2303, 2305, 2304,
5082  2302, 2306, 2307, 2308, 2309, 2312, 2313, 2314, 2315, 2310,
5083  2311, 2032, 2316, 2317, 2318, 2320, 2321, 2323, 2322, 2033,
5084  2034, 2324, 2325, 2037, 2326, 2327, 2330, 2328, 2329, 2332,
5085  2331, 2333, 2335, 2334, 2035, 2336, 2036, 2337, 2338, 192,
5086  1978, 175, 1979, 1988, 0, 2406, 2405, 1050, 1067, 2534,
5087  2535, 578, 859, 0, 0, 860, 0, 577, 858, 173,
5088  2600, 128, 0, 574, 575, 0, 0, 0, 1718, 0,
5089  1634, 1634, 1634, 0, 0, 1634, 1634, 0, 1637, 1634,
5090  173, 1634, 0, 68, 1827, 270, 0, 2442, 0, 0,
5091  0, 1971, 0, 1651, 0, 1871, 1872, 0, 1879, 0,
5092  1880, 1874, 2403, 0, 0, 0, 0, 0, 173, 1084,
5093  0, 1702, 0, 236, 245, 247, 248, 244, 2435, 2535,
5094  2546, 1119, 1125, 1137, 0, 1798, 248, 1037, 1021, 1037,
5095  1726, 1723, 0, 0, 1702, 1873, 2657, 0, 0, 0,
5096  2653, 0, 2658, 0, 1127, 0, 0, 1, 5, 0,
5097  0, 2116, 2005, 2220, 1811, 1809, 1966, 0, 900, 930,
5098  0, 905, 0, 903, 1984, 1983, 1982, 0, 916, 915,
5099  913, 0, 447, 0, 0, 0, 2609, 907, 1064, 2532,
5100  0, 194, 0, 77, 0, 0, 0, 2538, 0, 0,
5101  0, 0, 127, 0, 0, 0, 124, 1152, 1152, 2600,
5102  2602, 2604, 578, 576, 0, 0, 0, 1722, 1721, 1720,
5103  0, 1718, 2039, 1989, 2050, 0, 1939, 0, 0, 0,
5104  1406, 0, 1994, 0, 2064, 2066, 1999, 0, 0, 1159,
5105  1159, 731, 0, 0, 0, 2088, 2089, 1945, 0, 0,
5106  0, 1936, 1946, 2005, 2128, 2129, 0, 1938, 2134, 0,
5107  0, 0, 0, 2151, 1943, 0, 0, 2188, 2190, 0,
5108  0, 2194, 2195, 2196, 2197, 1922, 1214, 0, 731, 1935,
5109  1942, 2213, 1928, 2221, 2226, 2227, 0, 2236, 0, 0,
5110  2258, 0, 2264, 2262, 2268, 0, 0, 2294, 0, 0,
5111  731, 1921, 2312, 2313, 2314, 2315, 0, 1937, 2032, 1944,
5112  0, 2326, 1159, 731, 731, 0, 0, 0, 2333, 2335,
5113  2338, 0, 0, 0, 2570, 1213, 0, 1371, 0, 1288,
5114  1400, 1171, 1177, 1191, 0, 1206, 1224, 1225, 1227, 1326,
5115  1226, 1232, 1231, 1609, 1932, 1230, 1229, 1933, 1934, 1223,
5116  1956, 1978, 1955, 0, 0, 0, 0, 0, 0, 0,
5117  0, 1638, 0, 0, 1620, 1634, 70, 0, 0, 0,
5118  1968, 1515, 2417, 2418, 0, 76, 1653, 1654, 1652, 1005,
5119  0, 1869, 0, 1883, 0, 1079, 493, 484, 0, 1793,
5120  1792, 0, 1865, 2547, 0, 0, 1055, 1656, 1703, 0,
5121  1655, 1860, 0, 1858, 1855, 1857, 237, 0, 0, 267,
5122  0, 2541, 2538, 2548, 2583, 2578, 2577, 2580, 2581, 1143,
5123  2582, 1142, 2579, 2576, 1152, 1138, 1140, 1141, 775, 0,
5124  0, 2359, 2360, 2201, 2221, 2361, 2310, 0, 0, 2380,
5125  2340, 2345, 2341, 0, 0, 775, 1806, 0, 0, 1806,
5126  0, 1550, 1796, 1799, 0, 2363, 1774, 856, 855, 854,
5127  2364, 1792, 0, 1750, 1762, 0, 1727, 1767, 0, 2365,
5128  0, 1795, 0, 1550, 1806, 0, 1743, 0, 0, 0,
5129  0, 243, 1042, 1041, 1017, 1038, 1039, 0, 0, 1020,
5130  1022, 1023, 1019, 0, 2670, 2415, 1005, 1927, 1926, 1976,
5131  2654, 1925, 2662, 2664, 2650, 2652, 2659, 1121, 0, 2552,
5132  6, 62, 0, 0, 1824, 2607, 2608, 2606, 791, 0,
5133  1159, 1985, 2601, 176, 914, 0, 448, 176, 0, 0,
5134  0, 0, 0, 449, 450, 382, 918, 0, 898, 911,
5135  0, 0, 910, 2609, 0, 0, 1094, 1096, 1095, 1112,
5136  196, 193, 174, 0, 1052, 1627, 1629, 1069, 2537, 0,
5137  0, 2539, 2543, 1212, 1211, 0, 121, 126, 0, 0,
5138  0, 2509, 125, 2503, 2605, 1152, 1152, 1152, 2597, 0,
5139  2585, 2592, 2593, 2596, 2595, 2594, 2591, 0, 2584, 2587,
5140  2588, 2590, 2589, 2609, 2603, 0, 861, 861, 861, 0,
5141  1705, 1708, 1712, 1716, 1719, 0, 0, 1520, 1245, 1520,
5142  1520, 1520, 1407, 0, 0, 0, 0, 0, 0, 0,
5143  0, 1520, 0, 1282, 1255, 0, 1283, 0, 0, 0,
5144  1947, 0, 0, 0, 2570, 0, 0, 0, 0, 1376,
5145  0, 0, 0, 2570, 0, 0, 0, 0, 0, 1402,
5146  1404, 1955, 1520, 0, 0, 1520, 0, 0, 0, 0,
5147  0, 1164, 771, 0, 0, 0, 0, 0, 0, 0,
5148  0, 0, 0, 0, 0, 0, 1520, 1520, 0, 0,
5149  1520, 1296, 1949, 0, 0, 0, 1948, 0, 0, 0,
5150  1941, 1940, 1923, 0, 1299, 1301, 1300, 0, 1520, 1520,
5151  0, 0, 0, 1235, 1234, 1236, 0, 0, 0, 0,
5152  0, 0, 1210, 1209, 1208, 1207, 0, 0, 0, 1215,
5153  0, 1216, 1217, 0, 1218, 1219, 1220, 0, 0, 0,
5154  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5155  0, 0, 0, 0, 0, 0, 1237, 0, 0, 0,
5156  1924, 1335, 0, 1635, 1615, 1622, 1617, 0, 1638, 1618,
5157  1626, 462, 461, 1643, 1644, 1624, 1639, 1640, 0, 1623,
5158  2501, 1619, 0, 1610, 0, 69, 0, 1850, 0, 0,
5159  0, 1846, 1848, 1847, 0, 0, 1851, 0, 1849, 1828,
5160  1832, 1838, 1829, 0, 0, 268, 271, 273, 0, 276,
5161  2452, 2467, 2468, 2464, 2469, 2487, 2470, 2474, 0, 2466,
5162  2458, 0, 2473, 0, 2462, 2471, 0, 2456, 0, 2472,
5163  2477, 2488, 2460, 2465, 2443, 0, 2450, 2454, 1516, 1517,
5164  0, 2416, 0, 1967, 0, 0, 1102, 1884, 1885, 1881,
5165  1515, 2404, 2407, 0, 494, 0, 0, 505, 0, 0,
5166  65, 66, 0, 1086, 0, 1085, 1089, 0, 0, 0,
5167  1659, 1649, 1658, 1441, 1861, 1862, 0, 235, 260, 255,
5168  263, 257, 259, 258, 264, 265, 266, 261, 256, 262,
5169  249, 0, 2452, 0, 2436, 0, 2542, 0, 2544, 2561,
5170  1126, 2549, 1149, 1128, 1148, 0, 1139, 774, 0, 777,
5171  779, 1678, 1679, 778, 787, 0, 776, 0, 0, 0,
5172  2366, 0, 783, 785, 784, 2375, 782, 0, 0, 2350,
5173  2371, 1802, 0, 0, 1773, 0, 578, 0, 0, 0,
5174  0, 0, 0, 1744, 0, 0, 621, 0, 1766, 1551,
5175  1800, 1801, 1806, 0, 0, 1806, 0, 1779, 1796, 0,
5176  1806, 1739, 0, 0, 1731, 1736, 1732, 0, 1738, 1737,
5177  1740, 1728, 1729, 1802, 1755, 1780, 1796, 1765, 1772, 0,
5178  1754, 1761, 0, 1770, 1796, 1796, 1806, 1806, 1043, 0,
5179  1026, 1027, 0, 0, 1724, 1444, 0, 0, 2651, 2665,
5180  2649, 2660, 2661, 2648, 1122, 2553, 1120, 2554, 0, 7,
5181  4, 1823, 1813, 1814, 1815, 1816, 1817, 1812, 1810, 1825,
5182  1826, 792, 791, 569, 572, 571, 0, 0, 1987, 0,
5183  906, 0, 436, 904, 0, 0, 414, 393, 414, 451,
5184  0, 0, 791, 921, 0, 0, 908, 1065, 0, 0,
5185  482, 1112, 1098, 1114, 0, 197, 199, 0, 0, 0,
5186  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5187  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5188  0, 78, 79, 101, 1054, 1053, 0, 1051, 1077, 1076,
5189  1074, 0, 1075, 1073, 1068, 1070, 1071, 2536, 2540, 579,
5190  791, 424, 0, 385, 0, 0, 0, 0, 0, 578,
5191  0, 0, 2586, 110, 862, 0, 0, 0, 1710, 1631,
5192  1441, 1633, 1966, 0, 0, 0, 1714, 0, 0, 1521,
5193  1520, 0, 1385, 0, 0, 0, 0, 1408, 0, 0,
5194  0, 0, 0, 0, 0, 1356, 0, 1385, 1160, 0,
5195  732, 1306, 0, 0, 0, 0, 0, 0, 1491, 1492,
5196  1493, 1494, 1502, 1495, 1496, 1497, 1504, 1509, 1498, 1499,
5197  1505, 1506, 1507, 1500, 1508, 1503, 1501, 1510, 0, 1490,
5198  0, 0, 1514, 1511, 1513, 1512, 0, 1377, 1369, 0,
5199  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5200  1520, 0, 0, 0, 1520, 0, 0, 0, 0, 0,
5201  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5202  0, 0, 1318, 0, 0, 0, 0, 0, 1520, 0,
5203  0, 0, 0, 0, 0, 0, 0, 0, 0, 1278,
5204  0, 1958, 1957, 0, 0, 0, 824, 0, 1239, 0,
5205  1238, 1453, 0, 2555, 2571, 0, 2366, 1372, 1374, 0,
5206  1162, 1161, 1163, 1174, 1167, 1172, 1165, 1169, 0, 1221,
5207  2045, 1175, 0, 0, 1203, 2570, 1529, 1204, 1189, 1194,
5208  1195, 0, 1192, 1193, 0, 1197, 0, 1196, 1200, 1201,
5209  1202, 1205, 0, 0, 0, 0, 1228, 1233, 1401, 1152,
5210  1959, 0, 1612, 1625, 1794, 1641, 1680, 0, 1007, 0,
5211  0, 71, 73, 1843, 1840, 1839, 1841, 1845, 1844, 1842,
5212  0, 1852, 2088, 2312, 2315, 280, 0, 253, 252, 254,
5213  277, 0, 0, 2453, 2451, 2485, 2484, 2489, 0, 2486,
5214  2482, 2475, 2510, 2479, 0, 2510, 2481, 2480, 2510, 2476,
5215  2483, 2510, 2448, 0, 1519, 2124, 2205, 0, 1522, 2420,
5216  1646, 2669, 0, 1882, 0, 0, 0, 1080, 0, 1152,
5217  492, 491, 490, 489, 0, 507, 487, 495, 67, 0,
5218  0, 1866, 0, 0, 0, 0, 1057, 1657, 0, 0,
5219  1630, 1442, 1863, 1859, 1856, 0, 0, 2451, 0, 2448,
5220  2545, 2563, 2562, 2550, 1152, 1541, 1153, 1153, 1955, 2382,
5221  0, 2377, 2376, 0, 0, 0, 2395, 2378, 0, 0,
5222  2344, 2383, 2384, 2387, 0, 0, 0, 0, 0, 2381,
5223  2310, 2346, 2347, 0, 2352, 2342, 0, 0, 1804, 1807,
5224  1808, 0, 0, 1788, 1782, 1781, 1777, 1783, 1778, 1791,
5225  1790, 1789, 1752, 1751, 1561, 1562, 1560, 1554, 1555, 1559,
5226  1558, 1747, 1797, 1787, 1785, 1775, 1806, 1786, 1784, 1733,
5227  1734, 1735, 0, 1550, 0, 1804, 1806, 1796, 0, 1806,
5228  1806, 1769, 1771, 0, 1029, 1040, 1025, 1024, 1462, 1461,
5229  0, 1415, 0, 1417, 1414, 1413, 1412, 0, 1461, 2655,
5230  2663, 2667, 0, 1550, 2560, 2558, 570, 1680, 1680, 0,
5231  1986, 0, 0, 0, 0, 0, 0, 0, 177, 186,
5232  0, 0, 391, 392, 1680, 390, 437, 438, 441, 442,
5233  443, 0, 0, 0, 0, 0, 0, 0, 0, 130,
5234  444, 1680, 1680, 387, 415, 416, 419, 420, 421, 422,
5235  423, 383, 0, 388, 0, 919, 1003, 1680, 1003, 0,
5236  1680, 1680, 1003, 1680, 0, 0, 1680, 1680, 0, 0,
5237  1680, 0, 0, 1003, 0, 1680, 0, 990, 0, 0,
5238  1680, 1680, 1680, 1680, 1680, 1003, 0, 0, 1680, 482,
5239  1680, 0, 0, 1013, 0, 0, 1680, 1680, 1680, 1680,
5240  0, 0, 1680, 0, 1680, 937, 989, 582, 608, 609,
5241  899, 936, 938, 950, 478, 0, 968, 992, 993, 991,
5242  0, 923, 925, 2610, 2611, 2612, 1101, 1093, 1100, 1097,
5243  1112, 1110, 1099, 851, 850, 0, 1113, 195, 0, 0,
5244  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5245  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5246  0, 0, 0, 0, 1628, 1078, 1072, 122, 791, 1680,
5247  1680, 1680, 1680, 389, 425, 426, 429, 430, 431, 432,
5248  435, 433, 434, 0, 0, 401, 0, 0, 2504, 0,
5249  2643, 0, 0, 0, 175, 580, 0, 0, 863, 0,
5250  0, 0, 0, 0, 1706, 0, 1969, 1713, 1444, 1717,
5251  1716, 0, 1302, 0, 1349, 0, 1351, 1352, 1353, 0,
5252  0, 0, 0, 0, 1303, 0, 1253, 1304, 1305, 0,
5253  0, 0, 0, 1355, 0, 733, 0, 0, 1256, 1257,
5254  1250, 1242, 0, 0, 1328, 0, 0, 1258, 0, 0,
5255  0, 0, 0, 1329, 1403, 0, 1405, 1959, 0, 1361,
5256  1310, 1263, 0, 1359, 0, 1264, 1330, 1331, 1332, 1312,
5257  1313, 0, 1334, 0, 1314, 0, 0, 1317, 0, 0,
5258  1266, 1365, 1363, 0, 0, 0, 0, 1367, 1268, 0,
5259  0, 0, 1267, 0, 0, 0, 0, 0, 0, 0,
5260  1270, 0, 1251, 1364, 1366, 1320, 0, 0, 0, 0,
5261  0, 1279, 0, 2564, 1452, 2572, 1453, 0, 0, 2566,
5262  2556, 2561, 2569, 1243, 0, 0, 1960, 1168, 1173, 1166,
5263  1170, 2570, 0, 0, 0, 0, 1187, 1186, 0, 0,
5264  0, 2570, 1529, 1190, 0, 0, 1345, 1346, 1398, 0,
5265  1616, 1613, 1642, 1681, 0, 2502, 1009, 1008, 1621, 1007,
5266  74, 0, 1837, 1853, 1830, 0, 272, 281, 274, 278,
5267  279, 275, 2478, 0, 2459, 0, 2463, 2457, 2461, 0,
5268  0, 2449, 0, 2455, 2430, 2424, 2431, 2433, 2427, 2432,
5269  2434, 2425, 2426, 2421, 2428, 1523, 1552, 0, 1103, 1105,
5270  1106, 1104, 1112, 0, 0, 2410, 2411, 2409, 2408, 497,
5271  0, 1586, 1587, 1572, 1573, 1571, 1574, 506, 1575, 1585,
5272  0, 518, 0, 0, 0, 1868, 1867, 0, 1087, 1090,
5273  1091, 1062, 1061, 1063, 1056, 1058, 1059, 562, 1663, 0,
5274  0, 0, 1669, 1650, 1660, 0, 0, 250, 0, 0,
5275  0, 0, 0, 0, 1147, 1444, 1601, 1144, 1132, 1552,
5276  1542, 1131, 1154, 1150, 0, 790, 789, 788, 786, 0,
5277  0, 0, 0, 2389, 2390, 0, 0, 2367, 2368, 2369,
5278  0, 2373, 2349, 2350, 0, 2351, 0, 2401, 2402, 2399,
5279  2400, 2398, 2372, 1803, 0, 1756, 0, 1776, 0, 0,
5280  1749, 0, 1768, 1730, 1758, 1748, 1522, 1796, 1745, 1746,
5281  0, 1049, 0, 1045, 1044, 0, 1018, 1031, 1461, 1444,
5282  0, 0, 1438, 1463, 0, 1463, 1444, 1444, 0, 1444,
5283  1441, 1458, 0, 0, 2666, 1543, 2559, 0, 0, 902,
5284  180, 183, 181, 0, 182, 0, 0, 446, 445, 0,
5285  1794, 439, 134, 133, 135, 136, 1569, 1570, 1566, 1567,
5286  1565, 1568, 138, 137, 132, 917, 0, 0, 0, 1794,
5287  417, 394, 395, 398, 399, 400, 0, 1004, 892, 1081,
5288  972, 0, 654, 892, 847, 852, 852, 970, 0, 0,
5289  1081, 0, 0, 0, 0, 0, 1081, 0, 0, 0,
5290  1680, 0, 983, 932, 0, 0, 0, 0, 0, 984,
5291  0, 0, 933, 1680, 0, 0, 0, 0, 0, 0,
5292  1081, 0, 0, 480, 0, 1081, 482, 1016, 1015, 1014,
5293  0, 1081, 1081, 0, 0, 0, 0, 614, 615, 613,
5294  0, 0, 606, 583, 791, 934, 479, 935, 653, 0,
5295  1010, 650, 656, 1962, 0, 0, 0, 144, 2614, 0,
5296  1482, 198, 102, 100, 82, 1974, 86, 88, 81, 106,
5297  1579, 1580, 1578, 1576, 1577, 107, 84, 85, 87, 91,
5298  90, 92, 93, 96, 97, 94, 89, 95, 83, 98,
5299  108, 109, 80, 0, 0, 0, 0, 1794, 427, 0,
5300  0, 1680, 384, 402, 403, 406, 407, 408, 409, 410,
5301  413, 411, 412, 0, 2505, 2507, 0, 0, 378, 377,
5302  0, 139, 2637, 0, 0, 653, 111, 478, 581, 584,
5303  885, 887, 886, 877, 876, 112, 115, 118, 1632, 1716,
5304  1444, 1522, 1967, 1522, 0, 1715, 0, 0, 1350, 1386,
5305  0, 1409, 0, 1247, 745, 745, 729, 1394, 725, 745,
5306  1390, 729, 1392, 0, 0, 0, 0, 0, 1357, 1354,
5307  0, 0, 0, 0, 0, 1380, 0, 0, 0, 1252,
5308  0, 1340, 1362, 1360, 0, 0, 0, 0, 0, 0,
5309  0, 0, 0, 0, 0, 1368, 0, 0, 0, 0,
5310  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5311  813, 819, 822, 823, 825, 817, 0, 1322, 1240, 1152,
5312  2573, 2575, 1123, 0, 2565, 2567, 894, 1373, 0, 1184,
5313  1180, 0, 1178, 1528, 1199, 1198, 0, 0, 0, 1188,
5314  1153, 1336, 1152, 0, 1399, 1961, 994, 460, 620, 1611,
5315  72, 1833, 0, 0, 2514, 0, 2513, 0, 2497, 2500,
5316  1966, 0, 0, 0, 0, 0, 2419, 1553, 1690, 0,
5317  1112, 1116, 1977, 1875, 2412, 2413, 0, 498, 499, 501,
5318  1153, 515, 493, 0, 485, 488, 0, 497, 0, 1060,
5319  1137, 0, 1682, 1667, 1674, 1668, 0, 0, 0, 1666,
5320  1951, 1950, 1957, 2548, 0, 1488, 0, 0, 0, 0,
5321  0, 0, 2551, 1522, 1522, 1595, 0, 0, 1129, 1134,
5322  1130, 1133, 0, 1151, 1158, 1157, 1952, 1959, 2379, 0,
5323  0, 0, 0, 2394, 2388, 2385, 2386, 0, 2348, 2370,
5324  2354, 2353, 2356, 2358, 1805, 1550, 1764, 1763, 1557, 1556,
5325  1741, 1550, 1760, 1806, 0, 0, 0, 0, 0, 1033,
5326  0, 2555, 1456, 0, 1440, 1439, 1464, 0, 1444, 1463,
5327  1463, 0, 1420, 1419, 1694, 1697, 0, 1418, 1515, 1446,
5328  1137, 2656, 2668, 0, 619, 618, 185, 184, 190, 191,
5329  1583, 1581, 1582, 452, 463, 1584, 464, 440, 131, 453,
5330  454, 418, 0, 396, 920, 655, 893, 955, 0, 0,
5331  0, 852, 649, 892, 861, 853, 892, 892, 999, 1000,
5332  0, 0, 593, 590, 974, 602, 953, 944, 954, 965,
5333  967, 0, 592, 616, 0, 0, 604, 0, 939, 981,
5334  982, 1007, 587, 0, 0, 629, 630, 628, 610, 617,
5335  1001, 1002, 588, 589, 976, 0, 1537, 1539, 1547, 595,
5336  594, 0, 591, 0, 952, 987, 960, 0, 627, 625,
5337  622, 624, 623, 626, 605, 597, 596, 599, 598, 601,
5338  600, 603, 949, 0, 1003, 1003, 969, 0, 637, 638,
5339  640, 641, 1965, 0, 1012, 971, 0, 642, 651, 643,
5340  0, 0, 0, 154, 0, 0, 922, 0, 147, 145,
5341  156, 0, 0, 0, 1485, 0, 1486, 1483, 1484, 0,
5342  103, 105, 459, 458, 457, 456, 428, 0, 0, 0,
5343  1794, 404, 2506, 0, 0, 2644, 381, 379, 380, 0,
5344  0, 200, 635, 636, 634, 633, 0, 467, 0, 465,
5345  0, 477, 0, 1886, 791, 585, 0, 0, 0, 0,
5346  1522, 1541, 1970, 1709, 0, 1280, 1410, 0, 0, 746,
5347  1387, 799, 0, 1396, 0, 1397, 727, 726, 1389, 1391,
5348  1395, 1393, 1246, 1254, 1327, 1249, 1248, 0, 0, 0,
5349  1286, 1308, 0, 1287, 0, 1378, 0, 0, 1260, 0,
5350  1262, 0, 0, 1342, 1311, 1333, 1289, 1315, 0, 1265,
5351  1241, 0, 1290, 0, 1295, 1293, 0, 1269, 0, 0,
5352  1276, 0, 1274, 0, 1275, 0, 1277, 1319, 1321, 0,
5353  0, 824, 810, 811, 812, 0, 814, 816, 818, 0,
5354  0, 1454, 2574, 1124, 0, 0, 1375, 1176, 0, 1185,
5355  1182, 0, 1179, 1154, 1347, 1337, 1614, 996, 995, 1835,
5356  0, 1831, 289, 284, 292, 286, 288, 287, 293, 294,
5357  295, 296, 290, 285, 291, 283, 282, 2511, 0, 2522,
5358  0, 0, 0, 0, 0, 0, 1524, 0, 1647, 1107,
5359  1112, 1116, 0, 1108, 1886, 502, 0, 0, 0, 522,
5360  0, 520, 496, 0, 1088, 1152, 1664, 1676, 0, 1684,
5361  0, 0, 1661, 1671, 0, 0, 0, 1670, 482, 0,
5362  251, 0, 2441, 0, 0, 0, 1552, 1530, 0, 0,
5363  1607, 0, 1602, 1145, 0, 1156, 1155, 0, 2397, 2396,
5364  2392, 2391, 2393, 2374, 0, 0, 1757, 1759, 1753, 1048,
5365  1047, 1046, 1030, 0, 0, 1035, 2561, 1515, 1448, 1444,
5366  1416, 1444, 1427, 0, 0, 1444, 1423, 1421, 1425, 0,
5367  1522, 0, 1480, 1152, 1954, 1544, 1547, 397, 957, 0,
5368  892, 848, 849, 861, 0, 861, 861, 0, 0, 943,
5369  0, 1069, 0, 948, 787, 611, 980, 979, 0, 612,
5370  0, 941, 0, 1548, 1549, 1540, 481, 940, 962, 946,
5371  1852, 973, 653, 1011, 829, 721, 670, 661, 745, 664,
5372  663, 707, 729, 675, 725, 723, 693, 725, 725, 700,
5373  699, 717, 703, 683, 799, 799, 682, 720, 799, 704,
5374  702, 706, 0, 708, 725, 713, 701, 705, 722, 698,
5375  695, 719, 745, 729, 729, 679, 718, 799, 0, 711,
5376  745, 749, 681, 799, 806, 0, 0, 745, 747, 1964,
5377  155, 143, 0, 0, 924, 926, 0, 0, 927, 2616,
5378  0, 2618, 0, 1115, 0, 99, 0, 0, 386, 455,
5379  405, 2508, 0, 211, 1152, 0, 0, 201, 203, 204,
5380  0, 0, 0, 580, 1888, 1887, 466, 565, 586, 0,
5381  0, 0, 1716, 1711, 1563, 0, 1411, 0, 0, 0,
5382  0, 793, 804, 802, 796, 0, 800, 801, 1388, 0,
5383  0, 1358, 0, 0, 0, 1381, 0, 0, 0, 0,
5384  0, 0, 0, 1244, 0, 1338, 0, 0, 0, 0,
5385  0, 0, 1273, 1271, 1272, 808, 1324, 0, 821, 815,
5386  813, 820, 0, 1552, 2555, 895, 1181, 0, 1348, 998,
5387  997, 0, 0, 2512, 0, 2447, 2499, 2498, 2515, 2515,
5388  2515, 1689, 1688, 0, 1687, 1691, 1109, 1117, 0, 500,
5389  503, 0, 495, 0, 519, 0, 486, 563, 0, 0,
5390  0, 1685, 1673, 2552, 1662, 1665, 1959, 1443, 1489, 0,
5391  2438, 2439, 2437, 1136, 0, 1525, 1606, 1603, 0, 1596,
5392  1598, 1600, 0, 1953, 2355, 2357, 1032, 0, 0, 1028,
5393  1449, 1447, 1457, 0, 1412, 1444, 1444, 0, 1412, 0,
5394  0, 0, 1696, 1541, 1698, 1445, 1477, 1459, 0, 1546,
5395  0, 0, 956, 0, 0, 0, 0, 0, 0, 986,
5396  0, 1010, 945, 966, 988, 0, 749, 1081, 1538, 961,
5397  963, 1057, 0, 639, 0, 833, 669, 662, 680, 678,
5398  734, 724, 0, 734, 734, 689, 707, 684, 0, 799,
5399  697, 688, 709, 712, 714, 716, 734, 0, 799, 677,
5400  676, 686, 673, 734, 757, 0, 0, 0, 0, 753,
5401  0, 827, 0, 0, 760, 657, 750, 752, 0, 0,
5402  710, 799, 666, 807, 806, 668, 799, 806, 734, 0,
5403  748, 734, 0, 141, 146, 157, 158, 912, 2615, 0,
5404  2613, 0, 1111, 1487, 104, 0, 0, 214, 212, 213,
5405  0, 207, 209, 204, 2631, 0, 2638, 0, 0, 2636,
5406  468, 470, 478, 566, 0, 0, 1547, 890, 0, 0,
5407  0, 1707, 1281, 743, 741, 744, 742, 795, 794, 798,
5408  0, 797, 806, 730, 0, 1284, 1285, 1309, 0, 1379,
5409  1370, 1307, 0, 1261, 1339, 0, 0, 1316, 1291, 1294,
5410  1292, 1297, 1298, 0, 1323, 0, 1144, 1144, 631, 2568,
5411  1183, 1836, 1834, 0, 0, 2520, 2520, 2520, 2429, 0,
5412  0, 0, 1152, 508, 0, 525, 524, 521, 1552, 1675,
5413  1677, 1683, 1672, 2440, 0, 1526, 1541, 780, 1599, 0,
5414  1146, 1034, 0, 0, 1428, 0, 1432, 1437, 1433, 0,
5415  1424, 1422, 0, 1563, 1481, 0, 1552, 1547, 959, 0,
5416  652, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5417  0, 985, 1929, 975, 482, 977, 942, 0, 947, 607,
5418  0, 832, 0, 837, 738, 739, 740, 690, 735, 737,
5419  0, 692, 660, 685, 715, 691, 0, 687, 674, 763,
5420  764, 766, 765, 762, 772, 755, 773, 0, 0, 767,
5421  768, 769, 761, 751, 759, 754, 665, 667, 671, 672,
5422  658, 0, 659, 1963, 148, 928, 317, 2617, 2625, 0,
5423  2627, 2620, 129, 2635, 2645, 211, 0, 0, 152, 0,
5424  202, 787, 205, 2552, 1886, 0, 473, 864, 0, 889,
5425  0, 866, 868, 1564, 805, 803, 0, 1382, 1547, 0,
5426  1341, 1343, 809, 0, 1455, 632, 2523, 0, 0, 2519,
5427  2517, 0, 2518, 2516, 2490, 0, 2445, 2446, 2444, 1686,
5428  0, 0, 0, 516, 0, 0, 550, 564, 1534, 1547,
5429  0, 1552, 0, 1604, 1597, 1036, 1450, 0, 0, 0,
5430  0, 0, 1695, 1469, 1470, 0, 0, 1475, 1479, 1460,
5431  1545, 958, 0, 0, 864, 0, 0, 1931, 1930, 951,
5432  1010, 0, 830, 0, 834, 835, 836, 0, 828, 736,
5433  0, 896, 0, 756, 758, 0, 150, 343, 0, 329,
5434  315, 0, 0, 0, 319, 159, 162, 160, 0, 161,
5435  167, 0, 168, 169, 170, 171, 172, 163, 341, 342,
5436  166, 164, 165, 0, 1980, 0, 1981, 1127, 0, 0,
5437  2623, 0, 2619, 2548, 178, 208, 0, 0, 144, 153,
5438  2639, 770, 471, 469, 0, 2548, 0, 1680, 113, 865,
5439  881, 880, 870, 1547, 0, 0, 116, 867, 883, 874,
5440  119, 869, 882, 872, 728, 0, 1384, 1259, 1325, 2496,
5441  2495, 2494, 2491, 0, 0, 0, 0, 0, 0, 2521,
5442  2525, 0, 1441, 1153, 0, 509, 0, 512, 514, 528,
5443  0, 1680, 0, 0, 1680, 1680, 1680, 1680, 543, 551,
5444  553, 0, 1535, 1536, 0, 1531, 1533, 1527, 1588, 781,
5445  1889, 2555, 1429, 0, 1434, 0, 1426, 1465, 1465, 1476,
5446  0, 864, 644, 866, 868, 978, 0, 831, 0, 0,
5447  799, 0, 799, 149, 0, 142, 0, 0, 328, 331,
5448  0, 0, 334, 324, 323, 325, 0, 318, 317, 317,
5449  371, 322, 368, 367, 360, 2626, 0, 2552, 0, 0,
5450  0, 2621, 2646, 210, 1152, 156, 0, 475, 474, 879,
5451  0, 994, 871, 888, 891, 0, 994, 875, 994, 873,
5452  1547, 2492, 2526, 2529, 2527, 2528, 2530, 2524, 1692, 1700,
5453  0, 1876, 0, 517, 510, 0, 0, 526, 0, 1680,
5454  1680, 0, 0, 0, 0, 0, 523, 552, 1680, 1547,
5455  0, 1135, 0, 1897, 1451, 0, 0, 0, 1473, 1471,
5456  648, 647, 645, 646, 0, 843, 0, 842, 0, 839,
5457  838, 694, 897, 696, 151, 344, 355, 358, 350, 330,
5458  0, 0, 0, 320, 317, 0, 304, 302, 303, 309,
5459  310, 311, 312, 313, 314, 305, 308, 306, 307, 317,
5460  0, 219, 0, 0, 2624, 2622, 0, 2628, 0, 188,
5461  187, 179, 0, 317, 2632, 0, 2640, 2552, 878, 114,
5462  884, 117, 120, 1383, 0, 0, 780, 504, 516, 513,
5463  536, 529, 532, 0, 561, 0, 0, 557, 558, 556,
5464  554, 547, 0, 545, 0, 1532, 1589, 0, 0, 0,
5465  0, 1890, 1892, 0, 1605, 1431, 1436, 0, 1466, 0,
5466  0, 0, 964, 845, 846, 844, 0, 0, 0, 0,
5467  317, 351, 0, 326, 0, 335, 0, 0, 217, 374,
5468  372, 215, 362, 362, 2629, 2630, 189, 2647, 0, 158,
5469  178, 476, 1699, 1701, 1877, 511, 536, 0, 534, 0,
5470  530, 527, 531, 559, 560, 0, 544, 0, 555, 0,
5471  0, 0, 0, 0, 1891, 0, 0, 1898, 1900, 1468,
5472  1467, 1482, 0, 0, 0, 352, 358, 348, 356, 317,
5473  0, 0, 316, 0, 370, 218, 0, 0, 0, 317,
5474  0, 361, 363, 365, 0, 140, 2641, 1903, 533, 0,
5475  541, 537, 539, 542, 550, 549, 546, 1591, 1895, 1896,
5476  0, 1893, 0, 0, 1899, 0, 0, 841, 840, 0,
5477  349, 0, 0, 347, 327, 332, 317, 375, 317, 229,
5478  228, 0, 221, 297, 369, 0, 220, 2633, 317, 0,
5479  1889, 535, 0, 0, 548, 1594, 0, 1592, 1894, 1902,
5480  1901, 1474, 1472, 353, 0, 317, 0, 317, 0, 317,
5481  0, 0, 0, 0, 0, 216, 317, 2642, 0, 1897,
5482  540, 538, 1590, 0, 0, 345, 317, 333, 338, 0,
5483  0, 224, 298, 299, 0, 226, 2634, 0, 1905, 1593,
5484  317, 317, 334, 337, 376, 373, 0, 300, 222, 223,
5485  234, 233, 0, 1904, 0, 1909, 317, 317, 339, 242,
5486  240, 317, 230, 238, 232, 0, 239, 0, 227, 0,
5487  0, 1916, 0, 225, 241, 301, 1907, 1908, 1906, 1911,
5488  0, 0, 1913, 1914, 0, 1878, 231, 1915, 1910, 0,
5489  1917, 1919, 0, 1912, 0, 1152, 1918, 0, 1153, 1920
5490 };
5491 
5492 /* YYDEFGOTO[NTERM-NUM]. */
5493 static const yytype_int16 yydefgoto[] =
5494 {
5495  -1, 56, 599, 1440, 57, 58, 59, 60, 61, 1290,
5496  62, 806, 1215, 1741, 1742, 63, 542, 64, 993, 1511,
5497  1512, 3049, 3050, 1513, 65, 2125, 3086, 4141, 3087, 4146,
5498  3088, 4148, 1530, 510, 511, 1968, 1969, 1018, 3070, 3036,
5499  3854, 3040, 3966, 4105, 4008, 2051, 3408, 3855, 3856, 3975,
5500  537, 2123, 1460, 4132, 1948, 4241, 1949, 66, 631, 991,
5501  1484, 1485, 3426, 3427, 3688, 3428, 3680, 3681, 3682, 3683,
5502  4369, 4214, 4311, 4370, 4442, 4476, 4482, 4411, 4491, 4492,
5503  4493, 4480, 847, 4494, 67, 565, 566, 849, 1320, 1755,
5504  1321, 68, 69, 536, 1235, 1236, 1237, 1238, 2301, 1756,
5505  2296, 2297, 3205, 4412, 4478, 4497, 4215, 4216, 4112, 4217,
5506  3978, 4218, 4116, 4219, 3981, 4220, 4221, 4222, 4223, 4361,
5507  4224, 4111, 4404, 4211, 4212, 4363, 4458, 4473, 4225, 3988,
5508  4106, 4298, 3989, 4107, 4356, 4207, 4357, 4399, 4454, 4208,
5509  4299, 4402, 4302, 4226, 4232, 4371, 4227, 4233, 4228, 3993,
5510  4123, 4231, 4121, 4230, 4367, 4366, 4438, 2650, 3069, 618,
5511  619, 642, 2115, 620, 1007, 964, 1462, 1981, 1982, 2501,
5512  2502, 2632, 2633, 2634, 1973, 1974, 1975, 2103, 2104, 2105,
5513  1955, 1956, 1957, 1466, 1952, 1953, 621, 965, 975, 1976,
5514  1977, 1978, 2638, 2107, 2108, 2109, 2110, 1203, 1204, 2923,
5515  2656, 3079, 3873, 3436, 4015, 4247, 3080, 3081, 2576, 2991,
5516  2061, 70, 554, 827, 1287, 2352, 1288, 2354, 2806, 2807,
5517  2808, 1800, 1801, 3753, 1805, 2351, 3913, 4258, 4056, 4057,
5518  2810, 4055, 2814, 3230, 3231, 3523, 3755, 3916, 4263, 4166,
5519  4331, 4261, 4327, 4262, 4329, 4423, 4381, 4382, 4176, 4272,
5520  4273, 4335, 4384, 4068, 4069, 4070, 2372, 2820, 3758, 3694,
5521  2097, 1452, 1453, 512, 513, 514, 639, 2657, 2036, 2658,
5522  2659, 3013, 2038, 2039, 2777, 1375, 3004, 2978, 3736, 3076,
5523  3017, 3018, 3019, 3020, 3021, 3027, 2942, 2511, 2512, 2581,
5524  3030, 3871, 3612, 3627, 3392, 3393, 3394, 3395, 3396, 3397,
5525  3398, 3105, 3106, 3103, 1066, 3817, 3818, 3819, 3099, 3100,
5526  3661, 3645, 3646, 3647, 3872, 769, 3835, 3455, 1343, 1344,
5527  3923, 1354, 1355, 2396, 1841, 2397, 1456, 3456, 3457, 3458,
5528  3655, 3160, 3733, 3166, 3167, 3168, 2740, 2741, 2742, 2743,
5529  2744, 2240, 3648, 3029, 3605, 3810, 3813, 3958, 4199, 2513,
5530  2943, 2514, 2946, 915, 515, 2515, 2516, 1544, 1545, 4018,
5531  4026, 4030, 4019, 4031, 4027, 4020, 4021, 4022, 4033, 4029,
5532  2663, 3695, 3696, 2935, 3176, 3960, 71, 1472, 958, 967,
5533  963, 983, 626, 1473, 976, 2052, 2587, 3667, 608, 2040,
5534  3597, 3321, 3601, 2041, 2957, 2042, 3308, 3582, 2043, 3338,
5535  3599, 3807, 2958, 2959, 2044, 2045, 2046, 3320, 3330, 3950,
5536  3186, 3187, 3188, 2517, 125, 2288, 3025, 2560, 72, 1418,
5537  73, 929, 930, 931, 2446, 2447, 2889, 3285, 3559, 924,
5538  925, 926, 1914, 2444, 74, 634, 1517, 75, 1298, 2364,
5539  2365, 2366, 76, 984, 77, 78, 635, 1524, 1525, 1526,
5540  79, 1283, 132, 80, 835, 1293, 1295, 1296, 81, 630,
5541  985, 986, 987, 988, 2057, 82, 1792, 2328, 2329, 2330,
5542  2331, 1481, 2589, 1482, 1483, 2066, 3223, 83, 84, 596,
5543  2248, 571, 853, 572, 573, 1835, 2387, 3737, 864, 865,
5544  866, 2848, 1333, 1334, 1335, 2392, 2853, 1063, 770, 771,
5545  772, 773, 1157, 1158, 3649, 774, 1167, 1702, 775, 776,
5546  777, 778, 779, 780, 1729, 3132, 3133, 3475, 2275, 2276,
5547  2277, 781, 2162, 3117, 2176, 782, 1150, 1687, 1618, 3467,
5548  3125, 3718, 3887, 1561, 2145, 2693, 2773, 2242, 1088, 1089,
5549  1053, 2152, 1567, 1921, 1922, 1923, 1924, 1925, 3570, 3569,
5550  3571, 3927, 3775, 3929, 3779, 2457, 1820, 1821, 1926, 1927,
5551  2890, 3773, 4081, 2243, 2244, 2245, 3493, 2891, 3289, 2909,
5552  2910, 3786, 2448, 1928, 2897, 4188, 3936, 3937, 4291, 4290,
5553  3938, 3784, 3785, 3575, 3576, 3045, 3046, 3047, 2834, 1608,
5554  1609, 1616, 1270, 1271, 1562, 2326, 2795, 3766, 3920, 2266,
5555  3545, 3918, 4075, 2049, 2986, 2987, 2389, 2390, 2913, 3305,
5556  3335, 1378, 3738, 2797, 1887, 1888, 3701, 4481, 2745, 2605,
5557  2924, 2348, 2349, 4181, 4339, 4426, 4427, 3260, 3261, 3549,
5558  3550, 2391, 2845, 3262, 3767, 4080, 85, 519, 86, 1739,
5559  2281, 2776, 1212, 2293, 995, 1300, 1548, 1549, 794, 532,
5560  1205, 1206, 1207, 87, 543, 2327, 88, 561, 1818, 819,
5561  839, 1301, 1302, 2373, 2821, 2828, 2374, 2833, 3533, 2823,
5562  3236, 3237, 2283, 2284, 2824, 3239, 3530, 3513, 3514, 3218,
5563  3750, 89, 584, 3300, 2904, 2905, 4158, 4159, 840, 90,
5564  518, 1040, 2671, 1554, 2133, 1041, 1042, 2136, 660, 661,
5565  91, 933, 581, 1400, 1401, 1402, 1903, 92, 575, 916,
5566  2875, 2881, 1882, 831, 1208, 1382, 919, 1383, 1868, 2425,
5567  1364, 93, 954, 953, 1447, 94, 604, 1448, 95, 807,
5568  1229, 1751, 2781, 3191, 3501, 1230, 1231, 2294, 96, 562,
5569  844, 845, 1305, 1823, 97, 556, 832, 1811, 98, 547,
5570  99, 100, 823, 3224, 4256, 4377, 551, 1794, 1279, 3437,
5571  4183, 4281, 4282, 4284, 4347, 4348, 4420, 4485, 4508, 4501,
5572  4511, 4512, 4515, 4520, 4521, 784, 940, 785, 3801, 786,
5573  787, 788, 2829, 2830, 3306, 789, 2831, 790, 2936, 996,
5574  1551, 540, 490, 2594, 615, 941, 2803, 792, 3995, 961,
5575  1011, 492, 493, 101, 574, 880, 1359, 1349, 1358, 1861,
5576  2413, 1865, 2415, 2416, 3274, 2871, 3275, 2872, 920, 1857,
5577  1862, 2873, 1866, 883, 1850, 1851, 1852, 1853, 2864, 1847,
5578  2422, 102, 824, 497, 1281, 1282, 2337, 103, 583, 104,
5579  1272, 1788, 1789, 2323, 2794, 2324, 105, 850, 1324, 106,
5580  809, 1264, 2312, 1265, 1764, 1266, 1267, 1778, 1772, 1781,
5581  1775, 4043, 3903, 3904, 2791, 1211, 1012, 1013, 2304, 2785,
5582  2786, 3745, 3906, 3505, 4049, 4050, 107, 133, 500, 637,
5583  1002, 1327, 108, 109, 110, 111, 1330, 1435, 2383, 1436,
5584  2249, 1437, 1438, 1935, 1833, 1683, 1684, 3174, 1147, 1148,
5585  2252, 2749, 2750, 867, 646, 1028, 1020, 126, 127, 128,
5586  649, 650, 129, 981, 982, 2588, 3042, 3410, 3670, 3671,
5587  3860, 4003, 3999, 4000, 3997, 4002, 1022, 3867, 4318, 4446,
5588  1023, 1024, 3071, 3869, 4136, 4320, 4418, 1025, 2647, 3423,
5589  4004, 4243, 112, 942, 593, 1433, 1428, 1430, 1931, 2464,
5590  113, 114
5591 };
5592 
5593 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
5594  STATE-NUM. */
5595 #define YYPACT_NINF -3874
5596 static const int yypact[] =
5597 {
5598  4741, 193, 87, -3874, 402, 788, 47577, 815, 1304, 1304,
5599  536, 2482, -3874, -3874, -3874, -3874, -3874, 3329, -3874, 47577,
5600  87, 1137, -3874, 23644, -3874, -3874, 776, 186, 179, 1304,
5601  87, -3874, 47577, -3874, 786, -143, 87, -3874, -3874, 41447,
5602  -3874, 536, 47577, -3874, -3874, -3874, 41447, -108, 812, 743,
5603  1028, -3874, -3874, 47577, 1834, -155, 1461, 1339, -3874, -3874,
5604  1042, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5605  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5606  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5607  -3874, -3874, -3874, -3874, 24260, -3874, -3874, -3874, -3874, -3874,
5608  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5609  -3874, -3874, -3874, -3874, -3874, 1341, 47577, 1464, 47577, -3874,
5610  1439, 47577, 39608, 47577, -3874, 1130, 1489, -3874, -3874, 1569,
5611  -3874, -3874, 1304, 536, -3874, -3874, -3874, -3874, -3874, -3874,
5612  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5613  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5614  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5615  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5616  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5617  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5618  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5619  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5620  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5621  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5622  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5623  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5624  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5625  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5626  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5627  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5628  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5629  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5630  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5631  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5632  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5633  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5634  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5635  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5636  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5637  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5638  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5639  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5640  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5641  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5642  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5643  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5644  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5645  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5646  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5647  -3874, 1074, -3874, -3874, 1160, -3874, -3874, -3874, -3874, -3874,
5648  1715, 1538, -3874, 1572, 39608, -3874, 47577, -3874, -3874, -3874,
5649  1206, -3874, 1239, -3874, 1283, 1573, 1591, 1604, 155, 11131,
5650  1638, 1638, 1638, 47577, 1668, 1638, 1638, 47577, -3874, 1638,
5651  -3874, 1638, 1304, -3874, -3874, -3874, 1742, -3874, 47577, 1507,
5652  505, 624, 39608, 1497, 47577, -3874, -3874, 11131, -3874, 1653,
5653  -3874, -3874, -3874, 1304, 1862, 1733, 887, 47577, -3874, -3874,
5654  1304, 1246, 719, 1347, -3874, -3874, 1457, -3874, -3874, 162,
5655  -3874, -3874, -3874, 2130, 26108, 6178, 1457, -70, -124, -70,
5656  -3874, -3874, 47577, 1304, 1675, -3874, -3874, 276, 276, 276,
5657  -3874, 276, -3874, 276, -3874, -155, 1326, -3874, -3874, 1323,
5658  47577, 777, 1818, 2011, -3874, -3874, 1344, 858, -3874, 1410,
5659  36543, -3874, 47577, -3874, -3874, -3874, -3874, 1631, -3874, -3874,
5660  -3874, 2049, -3874, 36543, 23644, 47577, 1490, -3874, -3874, -3874,
5661  23644, 1390, 47577, -3874, 23644, 23644, 192, 13, 1587, 47577,
5662  47577, 1824, -3874, 2025, 36543, 1574, -3874, 166, -97, 1569,
5663  2032, -3874, 1538, -3874, 47577, 47577, 47577, -3874, -3874, -3874,
5664  42060, 155, 1406, 1417, 1419, 15569, -3874, 1424, 1448, 1450,
5665  11131, 1466, 1470, 1472, 1478, 1491, 1505, 1517, 1522, 1525,
5666  1525, 1543, 1547, 1563, 1565, -165, 1567, -3874, 1595, 1605,
5667  1636, -3874, -3874, 1642, 1649, 1660, 1677, -3874, 1691, 1697,
5668  1704, 11765, 1721, 1730, -3874, 20555, 1738, 1782, 1791, 1798,
5669  1806, 1823, 1833, 1835, 1837, -3874, -3874, 11131, 1543, -3874,
5670  -3874, 1840, -3874, 1852, 1860, 1869, 1871, 1891, 1900, 1903,
5671  1906, 1911, 1923, 1936, 1939, 1944, 1964, 1976, 1980, 1988,
5672  1543, -3874, 877, 1992, 1997, 1076, 2001, -3874, 2015, -3874,
5673  287, 2017, 1525, 1543, 1543, 2021, 2026, 2029, 2037, 2041,
5674  2050, 15569, 15569, 15569, 11131, -3874, 47577, -3874, 47577, -3874,
5675  1544, 3167, -3874, 2117, 15569, 901, -3874, -3874, -3874, -3874,
5676  -3874, -3874, -3874, 1437, 1531, -3874, -3874, -3874, -3874, -3874,
5677  -3874, 2059, 1453, 1928, 47577, 47577, 47577, 1750, 47577, 47577,
5678  39608, 54, 47577, 36543, -3874, 1638, 1545, 3242, 29183, 2746,
5679  -3874, 140, -3874, -3874, 47577, -3874, -3874, -3874, -3874, 1993,
5680  1731, 1544, 2235, 197, 23644, -3874, 783, -3874, 834, -3874,
5681  -3874, 2019, -3874, -3874, 36543, 23644, -3874, -3874, -3874, 21173,
5682  -3874, -3874, 2251, -3874, 1673, -3874, -3874, 1531, 3565, -3874,
5683  3810, 1870, 13, 1769, -3874, -3874, -3874, -3874, -3874, -3874,
5684  -3874, -3874, -3874, -3874, 1752, 2130, -3874, -3874, 314, 1941,
5685  1781, 321, 397, 34091, 94, 484, 96, 26723, 34704, 1786,
5686  -3874, -3874, -3874, 841, 2315, -3874, 273, 2064, 2282, 273,
5687  37156, 2229, 1576, -3874, 151, -3874, 2310, -3874, -3874, -3874,
5688  -3874, 2187, 2125, -3874, -3874, 290, 2515, -3874, 2559, -3874,
5689  681, -3874, 2206, 2229, 273, 1576, -3874, 2457, 2581, 486,
5690  957, -3874, -3874, -3874, -3874, 2122, -3874, 712, 2677, -3874,
5691  2134, -3874, -3874, 23644, -3874, -3874, 1993, -3874, -3874, -3874,
5692  2146, -3874, 2397, 2248, -3874, -3874, 40, -3874, 2152, 26,
5693  2635, -3874, 39608, 2071, 37769, -3874, -3874, -3874, 2669, 2693,
5694  1525, 2170, -3874, -3874, -3874, 2803, -3874, -3874, 2183, 2711,
5695  2711, 2711, 2815, -3874, -3874, -3874, 2199, 2448, -3874, -3874,
5696  2376, 2245, -3874, 1490, 23644, 2619, 2228, -3874, -3874, 2476,
5697  11131, -3874, -3874, 4162, 49, -3874, -3874, 1405, -3874, 2810,
5698  2435, -3874, -3874, -3874, -3874, 2701, -3874, -3874, 2803, 2762,
5699  2711, 2651, 2241, -3874, -3874, -3874, -3874, -3874, -3874, 233,
5700  -3874, -3874, -3874, -3874, -3874, -3874, -3874, 244, -3874, -3874,
5701  -3874, -3874, -3874, 1490, -3874, 23644, -3874, -3874, -3874, 23644,
5702  -3874, 2242, -3874, 2237, -3874, 11131, 11131, 316, 2809, 2869,
5703  2869, 2869, 1544, 2278, 11131, 11131, 11131, 11131, 11131, 11131,
5704  11131, 1298, 2256, -3874, -3874, 678, -3874, 2257, 11131, 11131,
5705  -3874, 11131, 11131, 24876, -3874, 3961, 11131, 11131, 1030, 2754,
5706  11131, 11131, 11131, 11131, 3139, 11131, 11131, 24876, 2884, 2262,
5707  -3874, 2260, 1374, 11131, 11131, 1420, 11131, 11131, 11131, 11131,
5708  11131, -3874, -3874, 11131, 11131, 11131, 11131, 15569, 11131, 11131,
5709  11131, 11131, 11131, 11131, 2268, 11131, 2869, 2869, 11131, 11131,
5710  1513, -3874, -3874, 11131, 2764, 2764, -3874, 11131, 7961, 11131,
5711  -3874, -3874, -3874, 2275, -3874, -3874, -3874, 24876, 2869, 2869,
5712  11131, 11131, 11131, 2809, 2809, 2809, 265, 2276, -133, 11131,
5713  27338, 2274, -3874, -3874, -3874, -3874, 11131, 11131, 11131, -3874,
5714  15569, -3874, -3874, 2449, -3874, -3874, -3874, 12399, 15569, 15569,
5715  2292, 15569, 15569, 15569, 15569, 15569, 2664, 15569, 15569, 16203,
5716  16837, 15569, 15569, 15569, 15569, 178, 2809, 39608, 15569, 11131,
5717  -3874, -3874, 47577, -3874, -3874, -3874, 2289, 23644, 54, -3874,
5718  -3874, -3874, -3874, -3874, -3874, 2297, 54, -3874, 2781, -3874,
5719  -3874, 2306, 23644, -3874, 2302, -3874, 2670, -3874, 2675, 2676,
5720  2686, -3874, -3874, -3874, 2914, 2689, -3874, 2690, -3874, -3874,
5721  2335, -3874, -3874, 17471, 39608, -3874, 2338, -3874, 2814, -3874,
5722  2563, 2516, 1674, -3874, -3874, -3874, -3874, -3874, 2604, -3874,
5723  -3874, 2439, -3874, 2620, -3874, -3874, 362, -3874, 106, -3874,
5724  -3874, -3874, -3874, -3874, -3874, 2625, 2351, -3874, -3874, -3874,
5725  47577, -3874, 48190, -3874, 21173, 402, -3874, -3874, -3874, 2727,
5726  172, 2368, -3874, 23644, -3874, 93, 93, 2616, 1532, 39608,
5727  -3874, -3874, 157, 2371, 2450, 2377, -3874, 2454, 23644, 23644,
5728  -3874, -3874, -3874, 2628, -3874, 3002, 719, -3874, -3874, -3874,
5729  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5730  2391, 2873, 2563, 2665, -3874, 2672, -3874, 47577, -3874, 1527,
5731  -3874, -3874, -3874, 2401, -3874, 11131, -3874, -3874, 47577, -3874,
5732  -3874, -3874, -3874, -3874, 2966, 11131, -3874, 36543, -62, 1138,
5733  977, 841, -3874, -3874, -3874, -3874, -3874, 47577, 42673, 2406,
5734  -3874, 2801, 402, 11131, -3874, 2415, 1538, 47577, 47577, 47577,
5735  23644, 47577, 23644, -3874, 966, 966, -3874, 35317, -3874, -3874,
5736  -3874, -3874, 273, 47577, 47577, 273, 36543, -3874, 1576, 47577,
5737  273, -3874, 2800, 2511, -3874, -3874, -3874, 2874, -3874, -3874,
5738  2865, 2422, -3874, 2801, -3874, -3874, 1576, -3874, -3874, 23644,
5739  -3874, -3874, 1576, -3874, 1576, 1576, 273, 273, 2474, -70,
5740  -3874, -3874, 2571, -124, -3874, 1069, 276, 2674, -3874, -3874,
5741  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 105, -3874,
5742  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5743  -3874, -3874, 116, -3874, -3874, -3874, 1970, 2930, -3874, 39608,
5744  2420, -103, 673, 2420, 1892, 402, 1680, -3874, 1680, -3874,
5745  36543, 2905, 3793, 2715, 212, 23644, -3874, 2452, 43286, 23644,
5746  -3874, -3874, -3874, 1404, 2459, 2461, 1544, 2939, 2940, 2943,
5747  2945, 2947, 2949, 2953, 2957, 2959, 2960, 2961, 2962, 2965,
5748  2967, 2968, 2969, 2973, 2977, 2982, 2985, 2986, 2987, 2992,
5749  2993, 2489, -3874, -3874, -3874, -3874, 23644, -3874, -3874, -3874,
5750  -3874, 2566, -3874, -3874, -3874, -3874, 2031, -3874, -3874, -3874,
5751  199, 2246, 2540, 2572, 76, 36543, 2971, 47577, 47577, 1538,
5752  47577, 47577, -3874, -3874, 935, 2789, 2794, 2812, 2535, -3874,
5753  2628, -3874, 1288, 47577, 2994, 31026, -3874, 308, 478, -3874,
5754  2869, 2550, -3874, 2553, 2556, 2557, 11131, 47, 1639, 547,
5755  1429, 1455, 1009, 345, 322, -3874, 2558, 2565, -3874, 2560,
5756  -3874, -3874, 347, 474, 1063, 1070, 2561, 2569, -3874, -3874,
5757  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5758  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 3012, -3874,
5759  517, 1500, -3874, -3874, -3874, -3874, 2579, -3874, -3874, 1110,
5760  531, 533, 336, 2589, 543, 1548, 1568, 2573, 24876, 47577,
5761  2869, 2584, 1112, 1122, 2869, 2588, 644, 1166, 1620, 1645,
5762  1694, 1168, 1213, 648, 1712, 2716, 1215, 770, 838, 1238,
5763  843, 861, -3874, 1256, 2590, 2593, 869, 241, 2869, 2594,
5764  349, 2597, 2602, 1262, 9229, 9863, 10497, 326, 895, -3874,
5765  2595, -3874, 2260, 2605, 2606, 386, 313, 1272, -3874, 11131,
5766  -3874, -3874, 529, 1141, 2657, 138, 977, -3874, 2761, 47577,
5767  2333, 121, -3874, -3874, -3874, -3874, -3874, -3874, 762, -3874,
5768  2611, -3874, 2626, 1770, 2618, 11131, 215, 2618, 2293, 1353,
5769  1353, 15569, 3049, 3073, 11765, 1359, 11765, 1359, 2618, 2618,
5770  2618, -3874, 15569, 2629, 15569, 15569, -3874, 2809, 1544, 2632,
5771  1044, 47577, -3874, 2297, 698, -3874, 841, 36543, 258, 23644,
5772  39608, 2633, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5773  3855, 23644, 2719, 2725, 2728, -3874, 29798, -3874, -3874, -3874,
5774  -3874, 29798, 741, -3874, -3874, -3874, -3874, -3874, 2731, -3874,
5775  -3874, -3874, 2630, -3874, 36543, 2630, -3874, -3874, 2630, -3874,
5776  -3874, 2630, 797, 3756, -3874, 732, 831, 3638, 2666, -3874,
5777  -3874, -3874, 23644, -3874, 3052, -32, 23644, 2452, 2652, -3874,
5778  -3874, -3874, -3874, -3874, 2691, 2753, -3874, 3276, -3874, 11131,
5779  402, -3874, 36543, 36543, 23644, 23644, 822, -3874, 1260, 2658,
5780  -3874, -3874, -3874, -3874, -3874, 3565, 17471, 2660, 36543, 941,
5781  -3874, -3874, -3874, -3874, -3874, 1223, 1544, -3874, 2656, -3874,
5782  38382, -3874, 1544, 841, 2667, 2668, -3874, -3874, 3030, 733,
5783  -3874, 2663, 2673, -3874, 2661, 2680, 2681, 43899, 11131, -3874,
5784  1138, -3874, -3874, 841, -3874, -3874, 8595, 402, 3107, -3874,
5785  1544, 2679, 47577, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5786  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 628, -3874,
5787  -3874, -3874, -3874, -3874, -3874, -3874, 273, -3874, -3874, -3874,
5788  -3874, -3874, 2890, 2229, 2515, 3107, 273, 1576, 23644, 273,
5789  273, -3874, -3874, 2857, 2723, -3874, -3874, -3874, -3874, -3874,
5790  47577, 2342, 2835, -3874, 2683, -3874, -3874, 23644, -3874, 2688,
5791  -3874, 3121, 3266, 2229, -3874, -3874, -3874, 841, 841, 2974,
5792  -3874, 402, 2817, 2819, 2821, 2823, 2825, 2868, -3874, -3874,
5793  402, 402, -3874, -3874, 841, -3874, 1365, -3874, -3874, -3874,
5794  -3874, 402, 402, 402, 402, 2722, 402, 402, 1722, -3874,
5795  -3874, 841, 841, -3874, 2104, -3874, -3874, -3874, -3874, -3874,
5796  -3874, -3874, 252, -3874, 2963, -3874, 2685, 841, 3277, 2964,
5797  841, 841, 3277, 841, 2976, 2978, 841, 841, 2806, 3233,
5798  841, 3117, 2829, 2831, 3126, 841, 2984, -3874, 2838, 3245,
5799  841, 841, 841, 841, 841, 3277, 2996, 3332, 841, -3874,
5800  841, 3000, 3001, 214, 3004, 3005, 841, 841, 841, 841,
5801  156, 47577, 841, 3009, 841, -3874, -3874, 6242, -3874, -3874,
5802  -3874, -3874, -3874, -3874, -78, 21789, -3874, -3874, -3874, -3874,
5803  438, -3874, 2975, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5804  -3874, -3874, -3874, -3874, -3874, 2749, -3874, -3874, 11131, 2757,
5805  2722, 402, 2722, 2722, 402, 402, 846, 402, 2722, 2722,
5806  402, 402, 402, 402, 402, 402, 402, 2722, 2722, 402,
5807  892, 402, 2722, 4162, -3874, -3874, -3874, -3874, 203, 841,
5808  841, 841, 841, -3874, 2136, -3874, -3874, -3874, -3874, -3874,
5809  -3874, -3874, -3874, 39608, 3124, 2129, 1134, 39608, -3874, 47577,
5810  -3874, 383, 47577, 2768, -116, 5337, 835, 835, -3874, 23644,
5811  23644, 23644, 47577, 2824, -3874, 31026, -3874, -3874, 1069, -3874,
5812  2767, 13033, -3874, 2771, -3874, 11131, -3874, -3874, -3874, 1482,
5813  11131, 11131, 3264, 2108, -3874, 38995, -3874, -3874, -3874, 11131,
5814  38995, 2108, 11131, -3874, 2786, -3874, 3184, 3185, -3874, -3874,
5815  -3874, -3874, 11131, 11131, -3874, 11131, 11131, -3874, 11131, 11131,
5816  11131, 11131, 11131, -3874, -3874, 15569, -3874, 2782, 2793, -3874,
5817  -3874, -3874, 2795, -3874, 11131, -3874, -3874, -3874, -3874, -3874,
5818  -3874, 11131, -3874, 11131, -3874, 11131, 11131, -3874, 11131, 11131,
5819  -3874, -3874, -3874, 13667, 11131, 11131, 2796, -3874, -3874, 11131,
5820  11131, 11131, -3874, 11131, 1553, 11131, 1702, 11131, 1747, 11131,
5821  -3874, 11131, -3874, -3874, -3874, -3874, 11131, 356, 2691, 2722,
5822  2797, -3874, 1735, -3874, -3874, 1789, -3874, 529, 2799, -3874,
5823  -3874, 1527, -3874, -3874, 39608, 11131, -3874, -3874, -3874, -3874,
5824  -3874, -3874, 15569, 407, 2813, 15569, -3874, 2293, 3139, 3139,
5825  1954, 11131, 215, 2293, 11131, 2820, 2805, -3874, 11131, 47577,
5826  -3874, -3874, -3874, -3874, 39608, -3874, -3874, -3874, -3874, 258,
5827  -3874, 2302, -3874, 2452, -3874, 3270, 2808, -3874, -3874, -3874,
5828  -3874, -3874, -3874, 47577, -3874, 2885, -3874, -3874, -3874, 22407,
5829  22407, -3874, 22407, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5830  -3874, -3874, -3874, -3874, -3874, -3874, 2229, 1260, -3874, 2811,
5831  -3874, -3874, 2476, 2900, 2842, 3187, -3874, -3874, -3874, 47577,
5832  15569, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5833  3411, 2828, 2836, 3310, 2837, 1544, -3874, 2913, -3874, -3874,
5834  -3874, -3874, -3874, -3874, -3874, -3874, 745, -3874, -3874, 2840,
5835  2840, 19321, -3874, -3874, -3874, 47577, 3318, -3874, 3274, 3286,
5836  22407, 22407, 22407, 622, -3874, 538, -3874, 195, 3241, 2229,
5837  -3874, 3289, 40221, -3874, 31639, -3874, -3874, -3874, -3874, -62,
5838  2936, 2937, 1289, -3874, -3874, 3239, 3068, -3874, -3874, -3874,
5839  841, 1544, -3874, 2406, 8595, 2853, 27953, -3874, 15569, 1595,
5840  -3874, 1544, -3874, -3874, 846, -3874, 84, -3874, 35317, 35317,
5841  -3874, 3128, -3874, -3874, -3874, -3874, 2666, 1576, -3874, -3874,
5842  3333, -3874, 3335, -3874, 2855, 3337, -3874, 3105, -3874, 886,
5843  3247, 3249, -3874, 3122, 945, 3122, 886, 886, 24876, 1069,
5844  2628, -3874, 2722, 3175, -3874, -3874, -3874, 38382, 35930, -3874,
5845  -3874, -3874, -3874, 3394, -3874, 3395, 236, -3874, -3874, 2369,
5846  1340, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5847  -3874, -3874, -3874, -3874, -3874, -3874, 1892, 2369, 2369, 1484,
5848  -3874, 132, -3874, -3874, -3874, -3874, 3341, -3874, 25492, 87,
5849  -3874, 286, -3874, 25492, -3874, 1404, 1404, -3874, 44512, 25492,
5850  87, 846, 2722, 25492, 2722, 45125, 87, 402, 402, 2312,
5851  841, 2722, -3874, -3874, 3254, 47577, 3263, 25492, 25492, -3874,
5852  39608, 47577, -3874, 841, 1235, 2722, 45738, 846, 846, 25492,
5853  87, 24876, 2337, -3874, 402, 87, -3874, -3874, -3874, -3874,
5854  23644, 87, 87, 1717, 2601, 2615, 2724, -3874, -3874, -3874,
5855  2722, 45125, -3874, -3874, 5955, -3874, -3874, -3874, 18705, 47577,
5856  301, 796, -3874, 2877, 30, 1060, 2970, 1469, 2888, 2889,
5857  46351, 1544, 2722, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5858  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5859  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5860  -3874, -3874, -3874, 402, 2691, 2369, 2369, 2341, -3874, 3151,
5861  3322, 841, -3874, 1391, -3874, -3874, -3874, -3874, -3874, -3874,
5862  -3874, -3874, -3874, 2989, -3874, 3511, 3083, 2906, -3874, -3874,
5863  261, -3874, -3874, 1348, 23644, 18089, -3874, 3150, -3874, 3051,
5864  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 2901,
5865  1069, 2666, 1434, 2666, 2915, -3874, 11765, 1278, -3874, 1544,
5866  11131, 1544, 1883, -3874, 2908, 2908, 2911, -3874, 2917, 2908,
5867  3308, 2911, 3309, 2920, 2938, 1296, 2944, 2948, 1437, -3874,
5868  11131, 11131, 1300, 429, 1306, 671, 925, 933, 437, -3874,
5869  1317, 2935, -3874, -3874, 1377, 1379, 1401, 1409, 939, 1440,
5870  1758, 11765, 1475, 1104, 465, -3874, 1487, 983, 985, 1503,
5871  11131, 1529, 11131, 1577, 11131, 1581, 1588, 1590, 2918, 2918,
5872  218, -3874, 2942, -3874, -3874, -3874, 2950, -3874, -3874, 1752,
5873  1789, -3874, -3874, 2955, -3874, -3874, 2932, 1544, 2956, -3874,
5874  -3874, 11131, -3874, 901, -3874, -3874, 15569, 472, 2972, -3874,
5875  1544, -3874, -3874, 2979, 1437, -3874, 253, -3874, -3874, -3874,
5876  -3874, 163, 3510, 29798, -3874, 1771, -3874, 36543, 2933, -3874,
5877  2946, 3020, 3025, 3034, 2988, 11131, -3874, -3874, 3204, 23644,
5878  -3874, 3371, -3874, -3874, -3874, -3874, 2981, 2983, -3874, -3874,
5879  -3874, 2293, 3330, 3208, -3874, -3874, 2691, 47577, 36543, -3874,
5880  2130, 24876, -3874, 2998, -3874, 2998, 1196, 2990, 1808, -3874,
5881  -3874, -3874, 2995, 1769, 1810, -3874, 17471, 3231, 36543, 3417,
5882  3419, 3420, -3874, 2666, 2666, 908, 3035, 3378, -3874, -3874,
5883  -3874, -3874, 46964, -3874, -3874, -3874, -3874, 1175, -3874, 3003,
5884  3006, 256, 3209, -3874, -3874, -3874, -3874, 8595, -3874, -3874,
5885  -3874, -3874, -3874, -3874, -3874, 2229, -3874, -3874, -3874, -3874,
5886  -3874, 2229, -3874, 273, 402, 402, 1655, 402, 3465, 3503,
5887  482, 1141, -3874, 2094, -3874, -3874, -3874, 3379, 886, 3122,
5888  3122, 3384, 3271, 1088, 3007, -3874, 841, -3874, 2456, -3874,
5889  2130, -3874, -3874, 11131, -3874, -3874, -3874, -3874, -3874, -3874,
5890  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5891  -3874, -3874, 252, -3874, -3874, -3874, -3874, -3874, 3010, 3386,
5892  3391, 1404, -3874, 25492, -3874, -3874, 25492, 25492, -3874, -3874,
5893  139, 45125, -3874, -3874, -3874, -3874, -3874, -3874, 3015, -3874,
5894  -3874, 2691, -3874, -3874, 35930, 402, -3874, 25492, 3015, -3874,
5895  -3874, 174, -3874, 3041, 402, -3874, -3874, -3874, -3874, -3874,
5896  -3874, -3874, -3874, -3874, -3874, 45125, 3022, -3874, 1618, -3874,
5897  -3874, 1862, -3874, 45125, -3874, -3874, -3874, 45125, -3874, -3874,
5898  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5899  -3874, -3874, -3874, 3027, 2603, 2264, -3874, 3029, 3033, -3874,
5900  -3874, -3874, -3874, 47577, -3874, -3874, 23644, -3874, -3874, -3874,
5901  5639, 47577, 3262, -3874, 11131, 11131, 3298, 47577, 3305, -3874,
5902  3596, 47577, 3659, 45125, -3874, 3048, -3874, 3050, -3874, 1815,
5903  -3874, -3874, -3874, -3874, -3874, -3874, -3874, 3054, 47577, 2369,
5904  2189, -3874, -3874, 402, 1348, -3874, -3874, -3874, -3874, 3316,
5905  3321, 47577, -3874, -3874, -3874, -3874, 3196, -3874, 23644, -3874,
5906  3221, -3874, 3059, 1000, 3197, -3874, 3061, 3062, 3063, 31026,
5907  2666, 3334, -3874, -3874, 3139, -3874, 1544, 11131, 948, -3874,
5908  -3874, 239, 3344, -3874, 1170, -3874, -3874, -3874, -3874, -3874,
5909  -3874, -3874, -3874, -3874, -3874, -3874, -3874, 3064, 3139, 3139,
5910  -3874, -3874, 11131, -3874, 3657, 3235, 11131, 11131, -3874, 11131,
5911  -3874, 856, 3075, 3101, -3874, -3874, -3874, -3874, 11131, -3874,
5912  -3874, 3139, -3874, 11131, -3874, -3874, 11131, -3874, 11131, 11131,
5913  -3874, 1592, -3874, 1616, -3874, 1629, -3874, -3874, -3874, 2691,
5914  3084, 3454, -3874, -3874, -3874, 2691, 3265, -3874, -3874, 2691,
5915  2722, 2401, -3874, -3874, -133, 47577, -3874, -3874, 1856, -3874,
5916  -3874, 11131, -3874, 40221, -3874, -3874, -3874, 3445, 3708, -3874,
5917  3304, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5918  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 47577, 1192,
5919  3096, 32252, 36543, 36543, 36543, 14301, 1544, 3580, -3874, -3874,
5920  -3874, 3371, 3467, -3874, 72, -3874, 47577, 3093, 1585, -3874,
5921  1872, -3874, -3874, 3094, -3874, 1752, 3098, -3874, 841, 14301,
5922  2840, 3221, -3874, -3874, 1196, 24876, 31639, -3874, -3874, 47577,
5923  -3874, 3539, 2241, 36543, 36543, 36543, 2229, 3529, 2900, 2900,
5924  -3874, 28568, -3874, -3874, 3255, -3874, -3874, 32865, -3874, -3874,
5925  -3874, -3874, -3874, -3874, 27953, 43899, -3874, -3874, -3874, -3874,
5926  -3874, -3874, -3874, 402, 3585, 3345, 1527, 2871, -3874, 1069,
5927  -3874, 886, -3874, 3494, 3496, 886, -3874, -3874, -3874, 24876,
5928  2666, 14301, -3874, 1752, 1544, 3112, 1618, -3874, -123, 11131,
5929  25492, -3874, -3874, -3874, 3115, -3874, -3874, 3626, 3627, -3874,
5930  25492, 2031, 47577, -3874, 2966, -3874, -3874, -3874, 3211, -3874,
5931  5639, -3874, 24876, -3874, -3874, -3874, -3874, -3874, 47577, -3874,
5932  23644, -3874, 18705, -3874, 3118, -3874, 2908, 2908, 2908, -3874,
5933  -3874, -3874, 2911, -3874, 2917, 3354, -3874, 2917, 2917, -3874,
5934  -3874, -3874, -3874, -3874, 239, 1515, -3874, -3874, 239, -3874,
5935  -3874, -3874, 136, 1426, 2917, -3874, -3874, -3874, -3874, -3874,
5936  -3874, -3874, 2908, 2911, 2911, -3874, -3874, 239, 2908, -3874,
5937  2908, 2641, -3874, 400, 127, 2908, 2908, 2908, 3123, 3114,
5938  -3874, 1544, 3139, 3676, -3874, -3874, 3269, 402, 3622, -3874,
5939  1874, -3874, 3130, -3874, 46351, -3874, 2722, 1892, -3874, -3874,
5940  -3874, -3874, 3273, 754, -3874, 3299, 3134, 3136, -3874, -3874,
5941  402, 3135, 3140, 6242, -3874, -3874, -3874, 3751, -3874, 47577,
5942  47577, 47577, 2767, -3874, 3509, -223, 1544, 3143, 3148, 3149,
5943  3152, 3754, 278, -3874, 3759, 38995, -3874, -3874, -3874, 3153,
5944  1884, -3874, 3163, 3164, 1644, -3874, 276, 3166, 1669, 995,
5945  1917, 3470, 3548, -3874, 3390, -3874, 1681, 1225, 1698, 1707,
5946  1787, 1794, -3874, -3874, -3874, -3874, -3874, 3174, -3874, -3874,
5947  436, -3874, 3177, 1446, 1141, -3874, -3874, 1929, -3874, -3874,
5948  -3874, 3637, 3538, -3874, 3611, -3874, -3874, -3874, 615, 615,
5949  615, 1595, 1544, 1959, -3874, -3874, -3874, -3874, 3578, -3874,
5950  -3874, 3186, 3276, 47577, -3874, 3208, -3874, 2401, 24876, 14301,
5951  3189, 3183, -3874, 26, -3874, -3874, 3188, -3874, -3874, 36543,
5952  2241, 2241, 2241, -3874, 3775, 3617, -3874, -3874, 39608, 3193,
5953  -3874, -3874, 3499, -3874, -3874, -3874, -3874, 402, 3673, -3874,
5954  -3874, -3874, 2683, 3214, 3244, 886, 886, 3385, 3246, 11131,
5955  11131, 3199, -3874, 3334, -3874, -3874, 167, 2401, 11131, -3874,
5956  2691, 3208, -3874, 1864, 3203, 3205, 47577, 3206, 3207, -3874,
5957  3433, 301, -3874, -3874, -3874, 23644, 2641, 87, -3874, -3874,
5958  3015, 745, 3210, -3874, 47577, 3535, -3874, -3874, -3874, -3874,
5959  944, -3874, 3213, 944, 944, -3874, 1941, -3874, 3248, 239,
5960  -3874, -3874, 3250, -3874, -3874, -3874, 944, 3215, 239, -3874,
5961  -3874, -3874, -3874, 944, -3874, 39608, 257, 402, 2445, -3874,
5962  3275, -3874, 3724, 1021, 3601, -3874, 2641, -3874, 3602, 3498,
5963  -3874, 239, -3874, -3874, 3823, -3874, 239, 3823, 944, 3500,
5964  -3874, 944, 47577, -3874, -3874, -3874, -3874, -3874, -3874, 47577,
5965  -3874, 938, -3874, -3874, -3874, 1967, 402, -3874, -3874, -3874,
5966  3232, 3230, -3874, -3874, -3874, 1060, -3874, 47577, 5639, -3874,
5967  -3874, -3874, 3150, -3874, 953, 1971, 1618, 3234, 1981, 1989,
5968  35317, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5969  38995, -3874, 3823, -3874, 3512, -3874, -3874, -3874, 11131, -3874,
5970  -3874, -3874, 11131, -3874, -3874, 3540, 3701, -3874, -3874, -3874,
5971  -3874, -3874, -3874, 3243, -3874, 2722, 195, 195, -3874, -3874,
5972  -3874, -3874, -3874, 3506, 1358, 3278, 3278, 3278, -3874, 14301,
5973  3628, 3338, -3874, -3874, 3252, 3287, -3874, -3874, 1446, -3874,
5974  -3874, -3874, -3874, 2241, 11131, -3874, 3334, 2312, -3874, 28568,
5975  -3874, -3874, 402, -133, -3874, 3295, -3874, -3874, -3874, 3302,
5976  1544, 1544, 47577, 3509, -3874, 288, 1446, 1618, -3874, 2007,
5977  -3874, 47577, 47577, 2012, 47577, 47577, 2719, 2725, 2728, 892,
5978  892, -3874, -3874, -3874, -3874, -3874, -3874, 3652, -3874, -3874,
5979  2038, -3874, 1032, 3532, -3874, -3874, -3874, -3874, 944, -3874,
5980  276, -3874, -3874, -3874, -3874, -3874, 276, -3874, -3874, -3874,
5981  -3874, -3874, -3874, -3874, -3874, -3874, -3874, 3544, 3300, -3874,
5982  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5983  -3874, 3268, -3874, -3874, 3389, -3874, 53707, -3874, -3874, 1013,
5984  3290, -3874, -3874, -3874, -3874, 1292, 47577, 23644, 3298, 3457,
5985  -3874, 2966, -3874, 26, 1000, 3221, -3874, 344, 47577, -3874,
5986  3545, 92, 1078, -3874, -3874, -3874, 3279, 3283, 1618, 1866,
5987  -3874, -3874, -3874, 3280, -3874, -3874, -3874, 3364, 3375, -3874,
5988  -3874, 3382, -3874, -3874, 133, 1663, -3874, -3874, -3874, -3874,
5989  3342, 23644, 15569, 3396, 47577, 169, 2509, -3874, -212, 1618,
5990  11131, 2229, 35930, -3874, -3874, -3874, -3874, 11131, 3301, 11131,
5991  3303, 2044, -3874, -3874, -3874, 1404, 1404, -3874, 288, -3874,
5992  -3874, -3874, 2047, 2061, 344, 2066, 2068, -3874, -3874, -3874,
5993  301, 3306, -3874, 47577, -3874, -3874, -3874, 254, -3874, -3874,
5994  2080, -3874, 2085, -3874, -3874, 11131, 3778, 3325, 47577, 1185,
5995  -3874, 54933, 54933, 47577, -3874, -3874, -3874, -3874, 4838, -3874,
5996  -3874, 728, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
5997  -3874, -3874, -3874, 3907, -3874, 3311, -3874, -3874, 1013, 3312,
5998  -3874, 1383, -3874, 1769, -3874, -3874, 5639, 3753, 1469, -3874,
5999  -3874, -3874, -3874, -3874, 3314, 1769, 402, 841, -3874, 344,
6000  -3874, -3874, -3874, 1618, 3320, 3558, -3874, 92, -3874, -3874,
6001  -3874, 1078, -3874, -3874, -3874, 11131, -3874, -3874, -3874, -3874,
6002  -3874, -3874, -3874, 165, 3572, 2722, 2722, 2722, 2722, 1663,
6003  -3874, 24876, 2628, -3874, 2691, -3874, 2116, -3874, -3874, -3874,
6004  3405, 841, 3822, 3824, 841, 841, 841, 841, 3324, 2509,
6005  -3874, 3806, -3874, -3874, 11131, -3874, -3874, 1544, 3557, -3874,
6006  3891, 1141, 1544, 47577, 1544, 47577, -3874, 3777, 3777, -3874,
6007  3541, 344, -3874, 92, 1078, -3874, 3208, -3874, 965, 965,
6008  239, 276, 239, 1544, 11131, -3874, 11131, 3359, -3874, -3874,
6009  3779, 47577, -3874, -3874, -3874, -3874, 11131, -3874, 53707, 53707,
6010  -3874, -3874, -3874, -3874, 3936, -3874, 3339, 26, 3908, 3603,
6011  3918, -3874, 3294, -3874, -3874, 3596, 5639, -3874, -3874, -3874,
6012  2722, 253, -3874, -3874, -3874, 1232, 253, -3874, 253, -3874,
6013  1618, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 3348, -3874,
6014  841, -3874, 3353, -3874, -3874, 47577, 3361, -3874, 402, 841,
6015  841, 1228, 1228, 2691, 39608, 3461, -3874, -3874, 841, 1618,
6016  3979, -3874, 86, 3729, -3874, 2119, 2121, 1266, -3874, -3874,
6017  -3874, -3874, -3874, -3874, 2133, -3874, 3991, -3874, 950, 3633,
6018  3634, -3874, -3874, -3874, 1544, 1544, -3874, 67, -3874, -3874,
6019  3766, 3853, 11131, 1544, 50642, 3368, -3874, -3874, -3874, -3874,
6020  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 54320,
6021  11131, -3874, 728, 3907, -3874, -3874, 3635, -3874, 3636, -3874,
6022  -3874, -3874, 3878, 53707, -3874, 3873, -3874, 26, -3874, -3874,
6023  -3874, -3874, -3874, -3874, 24876, 14301, 2312, -3874, 3396, -3874,
6024  3383, -3874, -3874, -47, -3874, 402, 402, -3874, -3874, -3874,
6025  -3874, -3874, 2139, -3874, 39608, -3874, -3874, 3968, 3969, 3869,
6026  3973, 86, -3874, -84, -3874, -3874, -3874, 3974, -3874, 3975,
6027  3392, 3393, -3874, -3874, -3874, -3874, 3442, 3901, 3422, 11131,
6028  53707, -3874, 3881, -3874, 3811, 1544, 3757, 3397, -3874, 3398,
6029  1544, 3913, 54933, 54933, -3874, -3874, -3874, -3874, 3899, -3874,
6030  -3874, -3874, -3874, -3874, -3874, -3874, -3874, 2144, -3874, 14935,
6031  -3874, -3874, -3874, -3874, -3874, 39608, -3874, 3461, -3874, 3416,
6032  276, 276, 4001, 276, -3874, 4002, 4004, -84, -3874, -3874,
6033  -3874, 46351, 46351, 965, 965, -3874, 176, -3874, 1544, 51255,
6034  4000, 47577, -3874, 3505, -3874, -3874, 11131, 3916, 40834, 51868,
6035  3423, -3874, -3874, -3874, 3599, -3874, 3294, 3598, -3874, 3383,
6036  -3874, 3428, -3874, 2293, 2509, -3874, -3874, 3703, -3874, -3874,
6037  276, -3874, 276, 276, -3874, 3431, 2160, -3874, -3874, 11131,
6038  -3874, 3914, 3518, -3874, 3436, -3874, 53707, 1544, 53707, -3874,
6039  -3874, 3864, 3438, 1851, -3874, 3435, -3874, -3874, 53707, 3860,
6040  3891, -3874, 14935, 3449, -3874, -3874, 3450, 3451, -3874, -3874,
6041  -3874, -3874, -3874, 1544, 4032, 53707, 47577, 48803, 3937, 52481,
6042  3902, 47577, 5639, 3904, 3905, -3874, 53707, -3874, 4039, 3729,
6043  -3874, -3874, -3874, 3703, 3547, -3874, 49416, -3874, 2378, 3649,
6044  3485, -3874, -3874, 3976, 2328, -3874, -3874, 276, 3872, -3874,
6045  53707, 53707, -3874, -3874, -3874, -3874, 33478, -3874, -3874, -3874,
6046  -3874, -3874, 622, -3874, 3739, 3468, 50029, 53094, -3874, -3874,
6047  -3874, 30413, -3874, -3874, -3874, 3912, -3874, 11131, -3874, 45,
6048  19937, 3631, 33478, -3874, -3874, 1544, -3874, -3874, -3874, -3874,
6049  39608, 2173, -3874, -3874, 24876, -3874, -3874, -3874, -3874, 23026,
6050  3471, -3874, 841, -3874, 24876, -3874, -3874, 14301, -3874, -3874
6051 };
6052 
6053 /* YYPGOTO[NTERM-NUM]. */
6054 static const yytype_int16 yypgoto[] =
6055 {
6056  -3874, -3874, -3874, -3874, -3874, 124, -3874, -3874, -3874, -3874,
6057  -3874, -3874, -3874, -3874, 1813, -3874, -3874, -3874, -3874, -3874,
6058  2016, -3874, 692, -1823, -3874, -3874, -3874, -3874, -3874, -3874,
6059  -3874, -3874, -3874, -3874, -3874, 693, 1615, 3464, -3874, 428,
6060  -3874, 107, -3874, -3874, -3874, -2942, -21, -203, -3874, -3874,
6061  501, 21, 3154, -202, -3095, -3874, -3874, -3874, -3874, -3874,
6062  -3874, -3874, -3874, -3874, 439, 433, -3874, -3874, 259, -3874,
6063  -3874, -1305, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -377,
6064  -338, 1846, -3874, -3874, -3874, 4081, -3874, 3552, -3874, -1743,
6065  2307, -3874, -3874, -3874, -3874, -3874, 2370, -1671, -3874, -3874,
6066  -3874, 1350, -3874, -3874, -3874, -3874, -447, 279, -3874, 280,
6067  -3874, 281, -3874, 282, -3874, 283, 289, 298, 299, -3874,
6068  306, -3874, -3874, -329, -3874, -3874, -3874, -3874, 307, -3874,
6069  -3874, -3874, -3874, -3874, -3874, -3874, -222, -3874, -3874, -50,
6070  -3874, -3874, -191, 311, -3874, -144, 315, -3874, 323, -3874,
6071  -63, -3874, -60, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6072  -3874, -3874, -3874, -3874, -3874, -3874, 3176, -3874, -3874, -3874,
6073  -2257, -3874, -3874, -2250, 2714, -3874, -1763, -3874, -3874, -1924,
6074  -3874, -3874, -1771, 1274, -3874, -3874, -93, -328, -3874, -1290,
6075  -1890, -1889, -3874, -3874, -3874, -2028, -2012, -1364, -1285, -2309,
6076  -3874, -3874, -3874, 309, -3874, -3874, -2587, 2141, 2717, -3874,
6077  -1977, -3874, -3874, 1195, -3874, -3874, 1375, 672, 1378, -3874,
6078  971, 2912, -1209, -3874, -3874, -3874, -3874, -3874, -3874, 34,
6079  292, -58, -3874, -3359, 676, -3874, -3874, -3874, -3874, -3874,
6080  -3874, -3874, -3874, -3873, -3874, -3874, -3874, -220, -3874, -3874,
6081  -132, -3874, -3874, -178, -3874, 141, -2303, -3874, -3874, -3874,
6082  -3874, 2678, -1299, -3874, 3693, -3874, -563, 778, 2172, -2462,
6083  -1401, -3874, -886, -872, -2494, -3874, -3874, -3874, -2612, 1149,
6084  1560, -3874, 874, 2174, -1904, -3874, 1640, -3874, -3874, 897,
6085  -3874, -2123, -3874, -3874, -3874, 855, -3874, 857, -3874, -3874,
6086  -3874, -1044, 825, -2578, 1397, -416, -3874, 412, -2423, -2521,
6087  -3874, 635, -3874, 586, -3763, -3338, -3874, -568, -2099, -2411,
6088  -23, -3874, -3874, 600, -3159, 1772, -3874, -3874, -3874, -3114,
6089  -1710, 1501, -3874, -3874, 1075, -3874, -2054, 1067, -3874, -3874,
6090  -3874, 1082, -3874, 154, -3874, -3874, -3874, -3874, -3830, -3874,
6091  -3874, -1464, -2264, -3874, -3874, 4234, 4235, -1007, -2670, -2496,
6092  159, 153, -3874, -3874, -3874, 2705, -900, 234, 223, 228,
6093  2131, -656, 378, -2416, -3874, 434, -3874, -3874, -3874, -3874,
6094  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6095  -3874, -3874, -3874, 2215, -426, -3874, -3874, -3874, -3874, -3874,
6096  -3874, -3874, -2439, -2441, -3874, -3874, 1687, -3874, -3874, -3874,
6097  -2310, -1421, -1418, -1908, -474, -2188, -3352, -3874, -3874, -3874,
6098  -3874, -3874, -3874, 2839, -3874, -3874, -3874, -3874, -3874, 3685,
6099  -3874, 2846, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 666,
6100  1904, -3874, -3874, -3874, -3874, -3874, -3874, 951, 2745, -3874,
6101  -3874, -3874, 2, -3874, -3874, -3874, -3874, 2460, -3874, -3874,
6102  -3874, -3874, 2798, -3874, -3874, -3874, -3874, -3874, -3874, 1474,
6103  -3874, 1943, -3874, -1428, -3874, -3874, 1055, -945, 1896, 3688,
6104  2033, -3874, -3874, -590, -3874, -3874, -3874, -1657, -2446, -3874,
6105  3424, -1011, -2588, 2462, -645, -1826, 1105, 324, 3593, -3874,
6106  -1101, -1049, -3874, -3874, -637, -3874, -3874, -3874, -616, -3874,
6107  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6108  1518, -3874, -3874, -3874, -3874, -1170, -3874, -3874, -3874, -3874,
6109  -3874, -3874, -3874, 1267, -3874, 2137, -3874, -499, -3874, 3216,
6110  -3874, -3874, -3874, -2358, -1954, 1836, 1008, -3874, -3874, -3874,
6111  -3874, -3874, -3874, -3874, -3874, -3874, -1532, -3874, -2378, -3874,
6112  -3874, -3874, -3874, -3874, 2054, -3874, -3874, -3874, -3874, -3874,
6113  -3874, -3874, -1723, -3874, -2268, 213, -3874, 364, -3874, -3874,
6114  -3874, -3874, -3874, -3874, -3874, -46, 890, -41, -2710, -1060,
6115  1713, -3874, -3874, -1241, 3251, -2325, -3874, -3874, -3874, 2034,
6116  -3874, -3874, -3874, -3874, -3874, 981, -2982, 2879, -3874, -3874,
6117  -3192, -869, -2262, -848, -3874, -2353, 532, -1817, -1759, -409,
6118  -1349, -2424, -3874, -3874, -3874, -3874, -135, -3874, -3874, -3874,
6119  550, 1932, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6120  -3874, -3874, -3874, -483, -760, -3874, -3874, 2190, 2426, -3874,
6121  3125, -3874, -1024, 3372, -3874, -3874, 3373, -3874, -3874, -3874,
6122  -3874, 3047, 3028, 2004, -3874, -3874, -2388, -3874, -3874, 1958,
6123  -3874, 804, -858, -1797, 1084, -3874, -3874, 1095, -3241, -3874,
6124  -3874, 3399, -3874, -3874, -3874, 1036, -3874, 82, 3755, 3400,
6125  -3874, -3874, -3874, -3874, -3874, -3874, 2784, -1015, 3682, -3874,
6126  -3874, -3874, -3874, -3874, -3874, 2440, -3874, -3874, -3874, -3874,
6127  -3874, -3874, 2999, 3772, -570, -1244, -3874, -717, 2951, 2443,
6128  -808, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6129  -3874, -3874, -3874, -3874, -3874, -3874, 2599, 1010, -3874, -3874,
6130  -3874, 3045, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6131  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, 1135,
6132  -59, -3874, 77, -89, -3874, 16, -3874, -3874, -3874, -3874,
6133  -3874, -154, -3874, -3874, -160, -3874, -940, -1354, 730, -1212,
6134  -2038, -3874, 1128, 3040, -2460, -668, -1108, -1128, -1896, 27,
6135  -3874, -3874, 3429, 2067, 101, -392, -410, -6, -2215, -110,
6136  -575, -3874, -2541, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6137  -3874, 1963, -3874, -3874, -3874, 1103, -3874, 3804, -3874, 2694,
6138  1106, 3805, -3874, -1317, 2522, 1977, 1982, -3874, -3874, 1986,
6139  -2208, -3874, -3874, 285, -3874, 2592, -3874, -3874, -3874, -3874,
6140  -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874, -3874,
6141  -3874, -3874, 2562, 3536, 3067, -3874, 2607, -3874, -3874, -3874,
6142  -3874, -3874, 350, -3874, -217, -3874, -2669, 2860, 459, -3874,
6143  1188, -659, -891, -3874, -3874, 348, -3874, -3874, 1584, 3829,
6144  3549, -3874, -3874, -3874, -3874, -3874, -2764, -843, -3874, -3425,
6145  -2824, -1649, -3874, -3874, -2172, -3031, -3874, -3874, -1012, -3874,
6146  -3874, -3874, -3874, -2005, -3874, -3874, -3874, 90, 3889, 3892,
6147  -3874, -3874, 670, -3874, -119, -3874, -3874, -3874, -3874, -3874,
6148  -3874, -3874, 405, 734, -3874, -3874, 3758, -3874, -3874, -3874,
6149  -3874, 3760, -3874, -3874, -3874, -3874, -3874, 3761, -3874, -3874,
6150  -3874, -3874, -3874, 1867, -3874, -3874, -3874, -3874, -3874, -3874,
6151  -3874, -3874
6152 };
6153 
6154 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
6155  positive, shift that token. If negative, reduce the rule which
6156  number is the opposite. If zero, do what YYDEFACT says.
6157  If YYTABLE_NINF, syntax error. */
6158 #define YYTABLE_NINF -2610
6159 static const yytype_int16 yytable[] =
6160 {
6161  491, 1005, 1019, 1027, 947, 918, 878, 914, 1442, 1671,
6162  1331, 2393, 617, 533, 1449, 1345, 1348, 541, 2134, 2065,
6163  783, 1758, 534, 1889, 1623, 1360, 555, 489, 1556, 1670,
6164  1546, 1547, 553, 567, 2250, 962, 570, 1090, 560, 1795,
6165  567, 1863, 2553, 1379, 1407, 2347, 2972, 585, 977, 1048,
6166  539, 2047, 2619, 2062, 2048, 2925, 2694, 2915, 1645, 1693,
6167  3574, 2696, 1587, 1757, 2796, 1379, 1701, 3288, 2827, 3247,
6168  3083, 2037, 1454, 2925, 2925, 2878, 2879, 1803, 2902, 2755,
6169  2519, 1373, 2510, 2377, 2523, 2295, 1455, 2639, 606, 1035,
6170  2443, 2893, 2504, 2505, 3404, 2538, 2968, 2944, 1959, 2903,
6171  2973, 2779, 1979, 2640, 1979, 135, 1408, 2549, 3762, 3444,
6172  609, 2882, 491, 3110, 3579, 491, 616, 622, 3209, 1703,
6173  1704, 605, 2116, 1707, 1708, 1709, 1710, 2850, 1712, 1713,
6174  1715, 1717, 1718, 1719, 1720, 1721, 1185, 1152, 1153, 611,
6175  2467, 2468, 613, 3494, 1896, 1143, 1144, 1145, 2492, 2582,
6176  4042, 994, 997, 1936, 1152, 1153, 1971, 2479, 1186, 1268,
6177  3653, 3171, 1906, 1798, 3101, 3594, 4016, 2111, 3108, 3252,
6178  1909, 1910, 1958, 1424, 2497, 2498, 1015, 1960, 2388, 636,
6179  2628, 1980, 1735, 1980, 2673, 2481, 1809, 2901, 2929, 2930,
6180  2518, 1268, 2150, 2521, 2522, 3622, 2524, 3085, 1409, 2527,
6181  2528, 2925, 2925, 2531, 115, 2461, 2869, -1794, 2540, 1722,
6182  1779, 2500, 4300, 2544, 2545, 2546, 2547, 2548, 1384, 627,
6183  1514, 2552, 3789, 2554, 2286, 2636, 2637, 3897, 1210, 2563,
6184  2564, 2565, 2566, 2557, 4277, 2570, 1451, 2572, 3162, 3803,
6185  2751, 2106, 2876, 4133, 2933, 4278, 2112, 998, 2334, 1341,
6186  3615, 3620, 2947, 2593, 3621, 2596, 2597, 1152, 1153, 1294,
6187  3451, 2607, 2608, 3580, 1987, 3107, 4330, -901, 545, 4200,
6188  2616, 2617, 3452, 3631, 3314, 2621, 1971, 1277, 3317, 3652,
6189  1347, 1152, 1153, 1187, -2493, 548, 3453, 1431, 3760, -2557,
6190  2567, -1518, 927, 3434, 498, 1269, 116, 885, 869, 3708,
6191  3834, 1844, 2623, 2624, 2625, 2626, 1016, 2019, 2286, 3023,
6192  4506, 937, 1008, 594, 552, 117, 3054, 3055, 1950, 1451,
6193  559, 4300, 1130, 1451, 1152, 1153, 1845, 1269, 1559, 1152,
6194  1153, 3270, 2237, 2653, 2053, 1681, 885, 869, 1152, 1153,
6195  -2343, 4017, 1152, 1153, 3163, 1274, 3091, 2938, 3093, 3189,
6196  -567, -1478, 1152, 1153, -568, 2022, 130, 1389, 2918, 1954,
6197  922, 1152, 1153, 1152, 1153, 1152, 1153, 1000, 1377, 2558,
6198  1536, 1537, 1538, 4246, 3235, 2265, 657, 3830, 577, 4098,
6199  1070, 2846, 3032, 3061, 2335, 118, 3066, 4328, -1478, 2738,
6200  4332, 2648, 1190, 495, 641, 1539, 496, 4072, 4073, -2557,
6201  3831, 2181, 1152, 1153, 549, 1586, 1539, 4059, 3702, 1201,
6202  3898, 980, 2649, 643, 119, 2739, 1723, 628, 4016, 1090,
6203  4074, 3451, 2746, 1152, 1153, 1540, 1776, 4345, 4060, 3033,
6204  2214, 2844, 815, 3452, 801, 658, 1541, 3832, 3242, 923,
6205  1724, 1972, 558, 131, 1001, 1152, 1153, 3453, 4012, 2054,
6206  578, 1560, -1518, 1152, 1153, 1307, 3162, 4279, 885, 869,
6207  4346, 1515, 1425, 1017, 3303, 1071, 120, 2847, 1951, -1994,
6208  1198, 2939, 3933, 2919, 2568, 595, -2131, 1278, 1932, 1954,
6209  3024, 1152, 1153, 1846, 928, 938, 1929, 1432, 1152, 1153,
6210  1152, 1153, 3067, 1858, 1152, 1153, 1131, 1682, 616, 3963,
6211  622, 1477, 4507, -2609, 3879, 3823, 4421, 3581, 3909, 3934,
6212  1154, 3435, -2343, 1155, 3827, 2229, 2584, 797, 3256, 3257,
6213  3292, 622, 632, 4397, 4398, 2012, 1698, 3313, 1021, 1029,
6214  3315, 3316, 810, 1152, 1153, 1362, 616, 3846, 820, 2537,
6215  2410, 568, 3848, 3508, 3509, 3510, 999, 1152, 1153, 1152,
6216  1153, 833, -2153, 3324, 2574, 1706, 1412, 1570, 1571, 1152,
6217  1153, 1972, 3163, 1152, 1153, 1759, 1454, 659, 879, 1016,
6218  812, 1342, 1727, 2238, 1891, 911, 934, 1894, 1611, 2994,
6219  1455, 2336, 1898, 4326, 3540, 3541, 3542, 1625, -1518, 1188,
6220  1934, 3783, 1959, 4017, 951, 3940, 121, 546, 4095, 1638,
6221  1639, 1640, 1329, 1725, 616, 2639, 966, 1644, 1911, 1912,
6222  1979, 2504, 2505, 1154, 1758, 3318, 1155, 616, 606, 491,
6223  2287, 2640, 3438, 2950, 606, 623, 992, 2954, 606, 606,
6224  4280, 3293, 3294, 1006, 966, 2925, 2037, 1154, 616, -2271,
6225  1155, 2970, 2971, 3585, 1454, 2911, 979, 3527, 1036, 1037,
6226  1038, 978, 2151, 2984, 1043, 1202, 1757, 989, 1455, 3273,
6227  1152, 1153, 2267, 2436, 1152, 1153, 1958, 122, 1385, 3164,
6228  3739, 1960, 4206, 2270, 980, 3307, 2273, 3312, 2843, 4463,
6229  1154, 1516, 2582, 1155, 2117, 1154, 2877, 2940, 1155, 1980,
6230  1200, 3901, 2503, 2264, 1154, 1908, 4036, 1155, 1154, 1091,
6231  4025, 1155, 4235, 3056, 2287, 2953, 1780, 2955, 1154, 2927,
6232  2282, 1155, 4011, 1810, 2966, 3577, 3090, 1154, 851, 1154,
6233  1155, 1154, 1155, 1799, 1155, 2892, 1017, 4076, 2979, 1738,
6234  123, 3623, -1005, 2965, 2851, 2990, 2931, 4194, 1156, 1033,
6235  2111, -2493, 3926, 2636, 2637, 3172, 2974, 3006, 3008, 3010,
6236  3419, 2641, -901, 3011, -1478, 1156, 2094, 3098, 1154, 2582,
6237  1149, 1155, 1151, 1346, 2932, 3443, -2609, 1351, 1356, -2493,
6238  2559, 3190, 1843, 2253, 3609, 3051, -1518, 3432, 124, 1154,
6239  1376, 4355, 1155, 3327, 3921, -1518, 1152, 1153, 1194, 491,
6240  1196, -1994, 966, 491, 616, 550, 491, 616, -2131, 1936,
6241  1797, 1154, 1239, 1872, 1155, 3629, 3630, 1390, 1273, 1154,
6242  3420, 1895, 1155, 3454, 2106, 1816, 1195, 805, 606, 2112,
6243  1199, 939, 4321, 1209, 3271, 2635, -1794, 3608, 616, 606,
6244  2642, 4143, 1132, 606, 3059, -567, 4099, 1154, 825, -568,
6245  1155, 3165, 1441, 3068, 1154, 836, 1154, 1155, 1777, 1155,
6246  1154, 1280, 3709, 1155, 1152, 1153, 3534, 2938, 1156, 1152,
6247  1153, 3628, 1297, 2941, 1476, 3053, 1303, 616, 935, 3633,
6248  3763, 616, 616, 2215, -2153, 3935, 3658, 1152, 1153, 1363,
6249  2660, 3593, 1156, -2422, 616, 1152, 1153, 3164, 1938, 1154,
6250  1516, 1413, 1155, 1404, 3584, 1984, 1678, 1679, 3471, 3600,
6251  1954, 2585, -1821, 1154, 2801, 1154, 1155, 3391, 1155, 2126,
6252  2160, 1152, 1153, 3564, 1542, 1154, 2361, 3568, 1155, 1154,
6253  829, 813, 1155, 3606, 3607, 1156, 4009, 606, 2908, 1291,
6254  1156, 3107, 2127, 3563, 3107, 3107, 2257, 3567, 2827, 1156,
6255  2141, 1152, 1153, 1156, 3183, 2239, 616, 134, 1450, 1152,
6256  1153, 3107, -1994, 1156, 2161, 1152, 1153, 2230, 4253, -2131,
6257  2186, -2271, 1156, 2600, 1156, 3632, 1156, 1678, 2180, 1187,
6258  3651, 3654, 3656, 3657, 3454, 3573, 2122, 2159, 606, 2166,
6259  2218, 2219, -2423, 3677, 3227, 2399, 4201, 4275, 4203, 2309,
6260  2428, -1966, 3678, 2361, 3543, -2422, 1341, 2246, 3650, 1152,
6261  1153, 1152, 1153, 1156, 1064, 2414, 1918, 4118, -1821, 687,
6262  644, 1152, 1153, 136, 4323, 4195, 1154, 2235, 2236, 1155,
6263  1154, 841, 1414, 1155, 1156, 1152, 1153, 2601, 1201, 606,
6264  3098, 803, 2639, 1552, 2432, -2153, 1579, 4240, 2760, 2761,
6265  1688, 2661, 2504, 2505, 3124, 1415, 1156, 1284, 2640, 3258,
6266  1285, 2945, 2945, 1201, 1156, 1379, 3744, 3232, 3286, 834,
6267  3121, 3122, 1543, 3281, 2466, 3447, 1550, 1091, 3128, 3129,
6268  4294, 3326, 3931, 692, 1889, 1889, 1134, 1726, 1420, 1152,
6269  1153, 1091, 1156, 3034, 2274, 1379, 1152, 1153, 2430, 1156,
6270  43, 1156, 1232, 3250, -2423, 1156, 3145, 3146, 2435, 2403,
6271  2299, 2438, 2439, 3180, 3181, 3874, 2167, 2538, 2272, 2142,
6272  2510, 3488, 2295, 3287, 3560, 3490, 1959, 494, 3787, 2258,
6273  1152, 1153, -2271, 2602, 1760, 2675, 1152, 1153, 1152, 1153,
6274  842, 1672, 3679, 2380, 1156, 1979, 2711, 1612, 1152, 1153,
6275  1613, 3839, 1154, 2815, 616, 1155, 3917, 499, 1156, 2173,
6276  1156, -472, 4016, 2047, 2340, 3840, 2048, 2362, 1759, 2247,
6277  1156, 2759, 2285, 2178, 1156, 2179, 4119, 544, 1919, 704,
6278  2636, 2637, 1920, 2037, 3939, 2182, 1854, 955, 2154, 1808,
6279  651, 616, 1152, 1153, 1152, 1153, 1730, 3776, 3777, 830,
6280  1958, 606, 2898, 2883, 911, 1960, 1286, 3472, 1405, 2305,
6281  2310, 2300, 3323, 2899, 2603, 843, 606, 3596, 2764, 2765,
6282  1154, 2503, 1454, 1155, 1980, 1154, -1821, 115, 1155, 911,
6283  3026, 3434, 3954, 3035, 1732, 3448, 1455, 1091, 616, 1152,
6284  1153, 1152, 1153, 1154, 2362, 535, 1155, 2357, 2358, 4131,
6285  1879, 1154, 2250, 1671, 1155, -1821, 1855, 1535, 557, 2758,
6286  720, 4138, 55, 2379, 1152, 1153, 2289, 4184, 3888, 2768,
6287  2429, 1156, 814, 2111, 1784, 1156, 1787, 1154, 606, 2641,
6288  1155, 3537, 1152, 1153, 1202, 1188, 2194, 606, 1152, 1153,
6289  2201, 4240, 580, 616, 1458, 3259, 4528, 3447, 1152, 1153,
6290  3143, 2811, 606, 606, 1152, 1153, 2662, 1154, 579, 1202,
6291  1155, 1303, 1880, 1189, 3919, 1154, 3449, 4295, 1155, 1580,
6292  1559, 1154, 1152, 1153, 1155, 3996, 1152, 1153, 1342, 4196,
6293  1034, 1830, 1152, 1153, 2259, 1421, 1303, 4017, 117, 1838,
6294  1671, 2363, 1839, 1152, 1153, 4120, 2311, 2106, -2422, 3841,
6295  2260, 616, 2112, 2635, 2381, 2341, 2404, 3883, 2642, 1940,
6296  2906, 1859, 879, 3492, 1918, 1154, 3712, 1154, 1155, -1821,
6297  1155, 491, 491, 491, 606, 491, 606, 1154, -2422, 837,
6298  1155, 1890, 3221, 4185, 4109, 4186, 1791, 1892, 491, 134,
6299  616, 1154, 1848, 491, 1155, -206, 1559, 1156, 1873, 1874,
6300  1875, 3876, 1877, 1152, 1153, 1152, 1153, 1876, 2900, 1878,
6301  3485, 956, 2205, 606, -2557, 1893, 3858, -1821, 2363, 2342,
6302  1897, 4197, 2385, 2604, 2975, 1971, 3955, 1152, 1153, 582,
6303  3897, 2367, 1122, 1671, 2582, 1152, 1153, 957, 3814, 2454,
6304  3996, 3996, 1559, 1575, 4128, 1154, 1907, -2423, 1155, 3435,
6305  600, 4198, 1154, 2988, 4129, 1155, 2582, 3448, 4092, 255,
6306  1856, 257, 3297, 616, 1516, 1156, 1152, 1153, 2386, 749,
6307  1156, 597, 1518, 1869, 616, 2099, 3072, -2423, 4287, 606,
6308  2206, 1289, 2058, 606, 1416, 2208, 1154, 2945, 1156, 1155,
6309  2311, 3858, 1154, 1881, 1154, 1155, 1156, 1155, 2976, 1169,
6310  598, 1152, 1153, 2209, 1154, 1169, 607, 1155, 1152, 1153,
6311  2126, 2213, 2055, 1152, 1153, 2920, 2060, 1123, 1971, 1630,
6312  606, 4079, 1156, 4288, -2557, 3450, 1919, 3956, -1794, 1152,
6313  1153, 3677, 2643, 2127, 3815, 1559, 838, 2231, 3460, 616,
6314  3678, 491, 491, 4110, 2124, 491, 3451, 1918, 1154, 1831,
6315  1154, 1155, 1156, 1155, -1794, 1152, 1153, 1043, 3452, 2140,
6316  1156, 2537, 2867, 1417, 1849, 1634, 1156, 3126, 2120, 2121,
6317  1152, 1153, 3453, 2631, 3816, 3127, 1970, 1954, 3859, 1152,
6318  1153, 3138, 4014, 885, 3616, 4150, 1519, 3996, 3996, 1614,
6319  1520, 645, 1615, 3875, 3073, 1154, 2921, 1154, 1155, 2977,
6320  1155, 1521, 1954, 1152, 1153, 4191, 1932, 1152, 1153, 3051,
6321  1156, 3038, 1156, 3898, 1152, 1153, 1152, 1153, 1152, 1153,
6322  1154, 3884, 1156, 1155, 4179, 3148, 3039, 3149, 1954, 610,
6323  816, 1126, 1091, 2187, 1758, 569, 1156, 3722, 1154, 2063,
6324  2290, 1155, 1152, 1153, 1154, 2385, -472, 1155, 3333, 4289,
6325  2158, 612, 2503, 3998, 1154, 1152, 1153, 1155, 1658, 2763,
6326  1154, 625, 4130, 1155, 2064, 1152, 1153, 3092, 2153, 4078,
6327  1152, 1153, 1832, 2698, 2367, 3179, 1757, 3302, 1154, 624,
6328  3679, 1155, 1154, 3996, 2278, 1155, 3298, 2705, 1154, 2644,
6329  1156, 1155, 2279, 2256, 1172, 1152, 1153, 1156, 3996, 1154,
6330  1172, 117, 1155, 1671, 2168, 1201, 2641, 1152, 1153, 1919,
6331  1972, 2169, 3996, 1920, 1971, 2861, 1127, 817, 3899, 1377,
6332  2720, 1954, 632, 3238, 1152, 1153, 633, 629, 1152, 1153,
6333  1201, 1156, 1522, 1152, 1153, 2280, 2862, 1156, 2367, 1156,
6334  2398, 616, 636, 606, 616, 3144, 2368, 3450, 1806, 1156,
6335  2100, 2177, 2730, 2190, 3334, 606, 1201, 2925, 2925, 1154,
6336  1239, 1154, 1155, 2191, 1155, 1239, 4113, 4114, 638, 3996,
6337  2863, 3947, 3948, 1152, 1153, 1380, 3074, 3500, 616, 3499,
6338  2635, 3996, 3996, 1154, 640, 2642, 1155, 818, 652, 2774,
6339  4338, 1154, 1807, 1156, 1155, 1156, 606, 2262, 2369, 2370,
6340  606, 3521, 2801, 1972, 2998, 2922, 2999, 2195, 654, 2199,
6341  3504, 854, 1048, 1152, 1153, 2278, 616, 616, 606, 606,
6342  1152, 1153, 1154, 3267, 1381, 1155, 655, 1523, 3996, 2332,
6343  1091, 3788, 616, 1280, 1535, 507, 3241, 3949, 3996, 656,
6344  1156, 4249, 1156, -1794, 616, 3522, 4251, 3000, 4252, 1201,
6345  495, 1297, 2360, 496, 2200, 2250, 2204, 1154, 878, 2181,
6346  1155, 879, 2369, 2370, 1154, 1156, 3728, 1155, 793, 1154,
6347  3001, 911, 1155, 4044, 586, 3996, 2427, 3996, 3900, 2207,
6348  798, 3075, 808, 1156, 811, 1154, -1716, 3996, 1155, 1156,
6349  1152, 1153, 1152, 1153, 3901, 564, 911, 2210, 822, 1156,
6350  2371, 2732, 564, 2222, 3996, 1156, 3996, 3002, 3996, 1152,
6351  1153, 1154, 606, 2241, 1155, 3996, 1169, 1954, 826, 3095,
6352  587, 2356, 911, 1156, 2449, 3996, 1154, 1156, 3893, 1155,
6353  -1716, 606, 828, 1156, 855, 1154, 2135, 3114, 1155, 3996,
6354  3996, 3120, 4443, 848, 1156, 2437, 2734, 3123, 1003, 1004,
6355  846, 1202, 1493, 1494, 3847, 3996, 3996, 3849, 3130, 1154,
6356  3996, 4444, 1155, 1154, 2460, 838, 1155, 949, 1863, 950,
6357  1154, 2964, 1154, 1155, 1154, 1155, 1202, 1155, 2423, 4045,
6358  4046, 2766, 3902, 952, 4047, 4048, 1179, 1180, 1181, 1182,
6359  1183, 1184, 814, 588, 1181, 1182, 1183, 1184, 1154, 1972,
6360  1331, 1155, 1202, 959, 1156, 1961, 1156, 2480, 980, 856,
6361  968, 1154, 3885, 2629, 1155, 911, 3276, 2645, 3134, 1009,
6362  3135, 1154, 3277, 1014, 1155, 2874, 1154, 2155, 1156, 1155,
6363  990, 3624, -1716, 3060, 3625, 2569, 1156, 1379, 885, 869,
6364  2680, 1010, 3136, 1379, 3445, 1201, 1045, 1516, 1937, 2583,
6365  3137, 1154, 2470, 115, 1155, 1346, 3561, 1046, 3301, 1047,
6366  1346, 2477, 2478, 1154, 1049, 969, 1155, 1156, 3462, 3463,
6367  2156, 1189, 2482, 2483, 2484, 2485, -1716, 2493, 2494, 1189,
6368  1154, 3139, 2674, 1155, 1154, 3278, 939, 1155, 1050, 1154,
6369  1051, 3477, 1155, 1509, 1510, 1202, 2157, 1189, 1518, 3454,
6370  1169, 1192, 1156, 2792, 1193, 2793, 1054, 4372, 4372, 1156,
6371  1055, 1172, 1056, 1962, 1156, 970, 3142, 616, 1057, 3617,
6372  3389, 616, 2952, 2646, 1197, 1102, 491, 1671, 3147, 1154,
6373  1156, 1058, 1155, 606, 606, 606, 2669, 2274, 1971, 2672,
6374  1766, 2174, 1189, 1214, 3150, 1059, -1822, 1121, 2982, 2983,
6375  3003, 2684, 854, 2651, 2756, 3012, 1156, 1060, 1168, 616,
6376  1135, 1136, 1061, 1971, 616, 1062, 2665, 2666, 2667, 1154,
6377  3152, 1156, 1155, 2839, 2840, 2841, 1154, 2685, 1759, 1155,
6378  1156, 1671, 2595, 1065, 2778, 2595, 2595, 1067, 2595, 2183,
6379  1189, 2595, 2595, 2595, 2595, 2595, 2595, 2595, 971, 2450,
6380  2595, 2906, 2595, 1068, 1156, 1069, 13, 1072, 1156, 2184,
6381  1628, 911, 1519, 2099, 1671, 1156, 1520, 1156, 3154, 1156,
6382  2099, 1767, 3156, 1971, 119, 2686, 1768, 1521, 2687, 3157,
6383  4140, 3158, 1275, 3482, 2988, 1073, 2688, 4162, 4153, 4154,
6384  4155, 4156, 589, 1156, 2306, 1074, 1154, 2307, 1154, 1155,
6385  2308, 1155, -1822, 3234, 1467, 1468, 1156, 3483, 616, 1174,
6386  1175, 2196, 1189, 1169, 590, 1154, 1156, -1794, 1155, 1769,
6387  3484, 1156, 3178, 2099, 4168, 855, 1075, 4171, 4172, 4173,
6388  4174, 1963, 1076, 2775, 1770, 3717, 2197, 1189, 616, 1077,
6389  1964, 1202, -1794, 1276, 1533, 1172, 1156, 1965, 591, -1794,
6390  1078, 857, 858, 1292, 860, 4163, 862, 2784, 1156, 1304,
6391  3721, 2631, 25, 2790, 2790, 1306, 2790, 1079, 3587, 3588,
6392  3610, 863, 3727, 3613, 3614, 1156, 1563, 1564, 1565, 1156,
6393  2099, 1080, 2451, 4248, 1156, 2198, 1189, 1081, 1576, 3729,
6394  3626, 1954, 1326, 2809, 1082, 2507, 2789, 2789, 3730, 2789,
6395  856, 2452, 3663, 2202, 1189, 1329, 1889, 592, 1522, 1152,
6396  1153, 1085, 2453, 2495, 2496, 1170, 1954, 2398, 1346, 1631,
6397  1086, 2631, 1635, 1954, 1156, 2832, 2748, 1189, 1092, 2835,
6398  885, 869, 4265, 4266, 2790, 2790, 2790, 1332, 3802, 1171,
6399  3529, 4274, 1966, 1654, 1655, 1366, 2855, 1659, 2857, 3140,
6400  1189, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, -1794,
6401  1671, 972, 3207, 3208, 1156, 1673, 1674, 2789, 2789, 2789,
6402  879, 1156, 1093, 1972, 4269, 2099, 1954, 1337, 3731, 1338,
6403  3238, 1094, 1890, 1890, 1357, 3732, 3802, 3092, 1095, 1169,
6404  2778, 3097, 2250, 1174, 1175, 2454, 1096, 2450, 1972, 3244,
6405  3245, 3248, 3249, 1523, 1367, 2486, 3415, 3416, 1172, 2534,
6406  -1822, 2689, 1672, 1097, 2486, 943, 944, 2989, 945, 1201,
6407  946, 616, 616, 1098, 973, 1099, 974, 1100, 1003, 1004,
6408  1103, 4087, 4088, 1954, 1368, 1268, 1361, 1967, 2100, -1822,
6409  666, 1156, 1104, 1156, 1201, 2100, 2341, 3496, 1189, 2063,
6410  1105, 1201, 1377, 2854, 1941, 3790, 1386, 4037, 1972, 1106,
6411  1156, 1107, 2583, 3524, 3525, 3668, 3669, 2583, 1942, 2487,
6412  37, 2937, 2949, 2583, 2064, 3705, 3714, 2583, 2487, 2960,
6413  4161, 1108, 2951, 4471, 4472, 3319, 3719, 1391, 2961, 2960,
6414  1109, 2583, 2583, 1110, 616, 2960, 1111, 2488, 2100, 43,
6415  2981, 1112, 1173, 2583, 1201, 1672, 2488, 2455, 3723, 1189,
6416  2342, -1518, 2985, 1113, 606, 3796, 1392, 2993, 2101, 3331,
6417  3740, 1189, 687, 2996, 2997, 2960, 1114, 3337, 1954, 1115,
6418  2451, 3339, 2583, 3022, 1116, 1177, 1178, 1179, 1180, 1181,
6419  1182, 1183, 1184, 4061, 3048, 501, 255, 2995, 257, 2452,
6420  3748, 3749, 2690, -1822, 1117, 2100, 1174, 1175, 3862, 2496,
6421  2453, 1201, 3877, 3878, 1393, 2489, 1118, -1518, 1394, 1176,
6422  1119, 1269, 3881, 3878, 2489, 4062, 2456, 3412, 1120, 691,
6423  3882, 3878, 1124, 1694, 1172, 911, 692, 1125, 2962, 2963,
6424  3470, 1128, 857, 858, 859, 860, 861, 862, 3941, 3525,
6425  -1518, -1822, -1518, 3944, 3878, 1129, 2920, 1133, 606, 2583,
6426  911, 1137, 863, 52, 697, 2992, 1138, 911, -1518, 1139,
6427  2691, 1388, -1794, -1518, -653, 2536, 3634, 1140, 2101, 3952,
6428  3953, 1141, 1943, 502, 2507, 4086, 3249, -1518, 4090, 3878,
6429  1142, 3077, 3497, 2454, -1518, 1369, 2490, 2508, 2692, 1191,
6430  2100, -1518, 4091, 3878, 1365, 2490, 1201, 4093, 3878, 4094,
6431  3878, 55, 4529, -1518, 1387, 1202, 878, -857, 2102, 3635,
6432  911, 4100, 4101, 3636, -1518, 3637, 4102, 4101, 2486, -1518,
6433  1403, 3005, 704, 1406, 3052, 3894, 3895, 2921, -1518, 3290,
6434  1202, 1410, 2486, 1411, 4063, 3007, 2499, 1202, 1177, 1178,
6435  1179, 1180, 1181, 1182, 1183, 1184, -653, 4164, 4165, 1944,
6436  4285, 3249, 4286, 3249, 1419, 503, 2507, 1395, 1240, 1241,
6437  1422, 3638, 1427, 2101, 4292, 3525, 1423, 911, 2627, 2508,
6438  4336, 4337, 1174, 1175, 1945, 4378, 4379, 1239, 1426, 3684,
6439  1429, 616, 2487, 1434, 3698, 3699, 1439, 715, -653, 1451,
6440  1202, 4432, 3414, 606, 502, 2455, 2487, -1518, 718, 1457,
6441  1003, 1004, 719, 720, 4518, 4519, 1695, 1459, 2341, 1461,
6442  2488, 2809, 616, 1464, 4229, 1672, 1465, 4064, 2102, 1469,
6443  -1518, 1370, 4267, 4268, 2488, 563, 3220, 2143, 2063, -1518,
6444  1091, 1470, 616, 1396, 1946, 4065, 1471, 1661, 1662, 2486,
6445  1242, 2486, 1371, 1474, 3009, 1475, 3266, 1202, 3546, 3547,
6446  3746, 3747, 1169, 2064, 1346, 3907, 3908, 1478, 4066, -1518,
6447  1479, 1480, 911, 2811, 2456, 1527, 1528, 1529, 1532, 1534,
6448  -653, 1243, 2342, 1535, 1553, 1555, 502, 1187, 2489, 1592,
6449  3961, 1559, 1372, 1566, 3710, 1244, 3961, 1578, 1581, 1617,
6450  1268, -826, 2489, 1627, 1628, 2491, 1397, 2188, 1629, 1652,
6451  2343, 2192, 2507, 2487, 2491, 2487, 1669, 1680, 1245, -1518,
6452  2063, 1246, 1689, 2102, 1177, 1178, 1179, 1180, 1181, 1182,
6453  1183, 1184, 1705, 1671, 1247, 2216, 1711, 1731, 1947, 1734,
6454  3793, 2488, -1518, 2488, 1736, 2064, 2922, 2583, 1737, 1740,
6455  2583, 2583, 1202, 4160, 1743, 2960, 1248, 795, 796, 1744,
6456  1745, 799, 800, 3265, 2203, 802, 504, 804, 616, 2490,
6457  1746, 2583, 1747, 1748, 1749, 1763, -1518, 1750, 2344, 1762,
6458  1761, 1249, 1765, 2490, 1771, 1773, 505, 1250, -1518, 2960,
6459  1596, 4028, 4032, 1783, 1774, 3279, 3280, 2960, 3282, 1782,
6460  741, 2960, 1003, 1004, 3797, 4359, 1793, 3798, 3639, 2489,
6461  1796, 2489, 1804, 1812, -653, 3640, 1813, 747, 1398, 1814,
6462  1815, 1696, 749, 1819, 1822, 750, 2534, 3343, 1251, 506,
6463  606, -573, -1518, 1825, 507, 3399, 1269, 1697, 1826, 1828,
6464  911, 491, -1518, 1834, 1840, 3409, 1829, 2960, 1864, 1867,
6465  1871, 1899, 3641, -1518, -1518, 1900, 4067, 1172, 1399, 2345,
6466  1901, 1902, 3418, 3344, 1904, 1913, 2063, -1518, 3405, 508,
6467  1916, 1939, -1518, 1930, -1518, 3429, 3325, 509, 3799, 3800,
6468  2509, 1169, 606, -1518, 1985, 3329, 1990, 1991, -1518, 2050,
6469  2490, 2064, 2490, 3442, 1516, 1597, -653, -1518, -1518, 1600,
6470  2067, -1518, -1518, 2068, 2069, 2070, 1601, 505, 2071, -1518,
6471  2072, 4437, 2073, 4439, 2074, 3431, -1518, 3912, 2075, -791,
6472  -791, 1993, 2076, 3642, 2077, 2078, 2079, 2080, -1518, -791,
6473  2081, 2093, 2082, 2083, 2084, 1996, 1671, 4028, 2085, -1518,
6474  4456, 4032, 2086, 1997, -1518, 3942, 3943, 2087, 3945, 3946,
6475  2088, 2089, 2090, -1518, 1493, 1494, 4160, 2091, 2092, 2095,
6476  1252, 3551, 2113, 2129, 1253, 1152, 1153, 1999, 2130, 2114,
6477  1331, 4202, 3643, 2119, 3421, 4486, 4487, 2132, 2491, 3495,
6478  1254, 1451, 1331, 3131, 1602, 2000, 2131, 2855, 1255, 505,
6479  -653, 2144, 2491, 2138, 2146, 1169, 1256, 2147, 2148, 2163,
6480  2164, 2165, 2170, 4028, 4032, 1174, 1175, 3821, 3822, 3922,
6481  2171, 2172, 2784, 2185, 2005, 1273, 616, 616, 616, 1169,
6482  3825, 2175, -1518, 2181, 1257, 2189, 2535, 3828, 3644, 2193,
6483  2809, 2211, 1990, 1991, 2212, 2217, 2232, 1258, 1259, 2220,
6484  1604, 1213, 2536, 2251, 2221, -1518, 2233, 2234, 2255, 2832,
6485  3536, -1222, 3850, 3538, -1518, 3852, 1184, 616, 616, 616,
6486  1588, 1589, 1590, 1591, 1592, 616, 2261, 1993, 2346, 2271,
6487  2303, 2775, -653, -1344, 1070, 2291, 1172, 2302, 879, 879,
6488  1122, 1996, 2325, 1126, -1518, 1216, 2009, 1260, 2333, 1997,
6489  4383, 2350, 2339, 2010, 2854, 1509, 1510, 2353, 2375, 2491,
6490  2402, 2491, 2378, 1672, 2394, 2405, 2424, 2400, 2401, 2407,
6491  2011, 2431, 4255, 1999, 2583, 2406, 1261, 2463, 2445, 2450,
6492  2426, 2458, 2465, 2469, 2583, 2459, 2960, 1451, 2408, 2409,
6493  2462, 2000, 1159, 1160, -1518, 2471, 1672, 2472, 1262, 2473,
6494  1263, 2474, 2960, 2475, 606, 2476, 2583, 1177, 1178, 1179,
6495  1180, 1181, 1182, 1183, 1184, 1346, 4071, -1518, 2507, 2520,
6496  2005, 2506, 1593, 1594, 1595, 1596, 2440, 2441, 2442, 2013,
6497  1161, 2525, 2529, 2526, 2530, 2532, 2533, 1605, 1941, 2541,
6498  1217, 1162, 1671, 4383, 2539, 2542, 2543, 2014, 2551, 2590,
6499  1172, 2550, 1942, 1607, 3556, 2555, 1671, 2592, 2556, 2561,
6500  2562, 1671, 4513, -1518, 2571, 1218, 1671, 2630, 2652, 1219,
6501  4388, 4389, 2678, 4391, 1172, 2674, 4522, 4125, 3048, 2586,
6502  1163, 4513, 2670, 2683, 1174, 1175, 4522, 2699, 2700, 2701,
6503  2279, 1164, 2009, 4239, 2712, 2782, 2713, 2725, 2747, 2010,
6504  2754, 2018, 520, 3697, 3697, 3697, 1220, 2772, 3768, 2020,
6505  2783, 2787, 2451, 2799, 2762, 2802, 2011, -1518, 1165, 616,
6506  4428, 2771, 4429, 4430, 1221, 2804, 2805, 2812, 2813, -1518,
6507  1597, 2452, 1598, 1599, 1600, 2816, 1799, 2817, 666, 2818,
6508  2822, 1601, 2453, 2836, 2837, 2838, 2386, -1518, 2385, -1518,
6509  2450, 2859, 2860, 1848, 1849, 2870, 2880, 2886, 2884, 4244,
6510  2885, 521, 2887, 2888, 2894, 4242, 2895, 2912, 2896, 4071,
6511  2916, 2917, -1518, -1518, 2967, 2013, -1518, -1518, 3665, 2026,
6512  2934, 1154, 1166, 2969, 1155, 3031, 1222, 3756, 3041, 3043,
6513  3057, 522, 1672, 2014, 3058, 2398, 3037, 4483, 1174, 1175,
6514  3063, 3689, 3064, 616, 3062, 2019, 3065, 4498, 3098, 3089,
6515  2139, 3102, 616, 3796, 3109, 3111, 1943, 3104, 3159, 1602,
6516  687, 3112, 1174, 1175, 523, 2454, 1177, 1178, 1179, 1180,
6517  1181, 1182, 1183, 1184, 3192, 2027, 2028, 2029, 3217, 3113,
6518  3175, 3210, 2030, 3193, 3169, 3115, 3212, 2018, 3774, 3116,
6519  3697, 3213, 3170, 3194, 3211, 2020, 3173, 3177, 2031, 606,
6520  3214, 2032, 3222, 3229, 1284, 3195, 3196, 3197, 3811, 3806,
6521  1346, 3251, 524, 3182, 1603, 1604, 3253, 691, 3254, 3255,
6522  3185, 3198, 3225, 2451, 692, 3226, 3264, 3263, 3215, 1308,
6523  3283, 3243, 3804, 1944, 3284, 3272, 3291, 2034, 1309, 616,
6524  3240, 3295, 2452, 3246, 3268, 3296, 3310, 3269, 1310, 3299,
6525  3309, 3311, 697, 2453, 1223, 1003, 1004, 3322, 1945, 3328,
6526  1311, 1312, 1313, 1224, 3332, 2026, 3853, 3340, 3771, 3551,
6527  3341, 3400, 3403, 3857, 4525, 3342, 1314, 2455, 1225, 3406,
6528  3407, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 3411, 3413,
6529  3424, 3429, 3414, 3084, 3417, 3425, 1226, 3430, 3922, 2367,
6530  3433, 3439, 3440, 3441, 1890, 3461, 1179, 1180, 1181, 1182,
6531  1183, 1184, 3459, 3465, 616, 3466, 3473, 1932, 1946, 3474,
6532  704, 2027, 2028, 2029, 2238, 3486, 3164, 2012, 2030, 1987,
6533  3502, 3506, 3515, 3517, 3520, 3526, 2454, -64, 3539, 1227,
6534  3528, 3544, 525, 3552, 2031, 3558, 2456, 2032, 3833, 4242,
6535  3557, 3565, 1605, 3566, 3578, 3586, 3589, 3590, 3604, 3778,
6536  3595, 3611, 3662, 3659, 2584, 3664, 1156, 1606, 1607, 1228,
6537  3666, 3672, 3685, 616, 3676, 3686, 3690, 4307, 3687, 1241,
6538  3693, 3691, 3700, 2034, 3703, 715, 2835, 3863, 495, 3704,
6539  3705, 496, 4307, 3706, 3713, 3697, 3697, 3707, 3697, 3697,
6540  719, 720, 3711, 2314, 3715, 3716, 4317, 3720, 3724, 1986,
6541  3725, 3726, 1947, 526, 1987, 3734, 1988, 3741, 1989, 3735,
6542  3742, 3743, 1346, 3751, 4071, 3749, 3752, 2315, 1990, 1991,
6543  3761, 3764, 1322, 1241, 3765, 3769, 3267, 3770, 3772, 3782,
6544  3199, 2316, -1430, 3791, -1435, 3792, 3794, 3795, 2455, 4495,
6545  3812, 3809, 2317, 3820, 3838, 3826, 3650, 3200, 3824, 1992,
6546  1242, 3842, 3844, 1993, 1994, 3845, 3653, 3837, 3851, 1995,
6547  4006, 606, 3865, 3864, 3880, 4495, 527, 1996, 3890, 3891,
6548  3886, 528, 3697, 3925, 3892, 1997, 3896, 3911, 3910, 3915,
6549  4527, 1243, 3914, 3928, 1998, 1315, 3905, 3951, 1216, 529,
6550  3930, 2318, 2319, 3964, 4007, 1244, 3957, 718, 4001, 1999,
6551  3714, 3965, 1316, 4024, 1242, 606, 4010, 2456, 4058, 4039,
6552  4034, 4038, 4307, 1451, 530, 4035, 616, 2000, 1245, 2320,
6553  4040, 1246, 4415, 4054, 4051, 2001, 2002, 4041, 4104, 531,
6554  -346, 4083, 2003, 4085, 1247, 1243, 4096, 4122, 4052, 4134,
6555  2004, 4145, 4152, 4127, -931, 4137, 2005, 4097, 791, 1244,
6556  4124, 4144, 4167, 4169, 4175, 4170, 1248, 2006, 3201, 4178,
6557  4180, 4182, 4108, 4187, 4206, 3026, -364, 4115, 4209, 4236,
6558  4234, 4447, 1245, 4237, 3202, 1246, 791, 2007, 741, 4238,
6559  4254, 1249, 3797, 1217, 4257, 3798, 2321, 1250, 1247, 4271,
6560  4307, 4260, 4307, 4276, 4283, 747, 4293, 4296, 4297, 4466,
6561  749, 4303, 4304, 750, 4308, 4314, 4315, 4316, 1218, 4307,
6562  1248, 4319, 1219, 4326, 4340, 4341, 2008, 4342, 2009, 4343,
6563  4349, 4350, 4351, 4352, 4353, 2010, 4354, 4355, 1251, 1317,
6564  4360, 4362, 4368, 4365, 3203, 1249, 4364, -2325, 2322, 4307,
6565  4307, 1250, 2011, 4374, 4503, 1672, 4387, 4390, 4392, 1220,
6566  4393, 3204, 4403, 4406, 4408, 4419, 3799, 3800, 4417, 4416,
6567  4422, 4425, 4431, 4434, 4270, 2012, 4435, 1221, 4436, 4440,
6568  4441, 4445, 1588, 1589, 1590, 1591, 1592, 2835, 4448, 2835,
6569  4451, 4452, 1251, 4453, 4455, 4467, 4459, 4474, 4461, 1318,
6570  4464, 4465, 4475, 4484, 791, 4470, 4477, 4499, 4500, 791,
6571  4504, 2013, 4117, 4524, 2780, 4210, 1319, 4514, 3674, 2622,
6572  3675, 2928, 1026, 3868, 4245, 4135, 4375, 4139, 4376, 2014,
6573  3870, 1463, 3866, 2015, 4005, 4516, 4479, 576, 921, 1222,
6574  791, 2298, 2376, 3206, 4400, 3976, 3977, 3979, 3980, 3982,
6575  821, 2598, 2599, 4488, 2606, 3983, 791, 2609, 2610, 2611,
6576  2612, 2613, 2614, 2615, 3984, 3985, 2618, 4301, 2620, 4058,
6577  1252, 2016, 3986, 3987, 2778, 4401, 2017, 3990, 616, 4373,
6578  4313, 3991, 4312, 2018, 1593, 1594, 1595, 1596, 2019, 3992,
6579  1254, 2020, 1983, 4013, 1531, 2575, 3336, 3228, 1255, 2035,
6580  791, 791, 791, 791, 3754, 3233, 1256, 3519, 1802, 4259,
6581  4325, 3757, 4450, 791, 4053, 4386, 4424, 653, 2098, 2573,
6582  4177, 3692, 2021, 3422, 1252, 3082, 3603, 3591, 1323, 2580,
6583  3618, 3028, 3619, 3660, 1257, 4385, 2022, 2023, 2024, 2025,
6584  3959, 3805, 3843, 4324, 1254, 3829, 3491, 1258, 1259, 2914,
6585  3161, 3489, 1255, 3487, 4190, 516, 517, 4193, 1672, 2128,
6586  1256, 2026, 4192, 4142, 4149, 4147, 4023, 1223, 2664, 2577,
6587  3962, 3016, 1917, 1052, 932, 1915, 1224, 3808, 616, 4264,
6588  2819, 2096, 3592, 3219, 2359, 2800, 3516, 2059, 1257, 2842,
6589  2753, 1225, 1597, 948, 1598, 1599, 1600, 1260, 3498, 1336,
6590  3184, 1258, 1259, 1601, 1084, 2907, 2384, 3562, 2697, 1226,
6591  2752, 4189, 4089, 1626, 3673, 4395, 2769, 2027, 2028, 2029,
6592  1101, 4396, 1577, 3598, 2030, 3932, 1261, 1933, 4469, 3924,
6593  2849, 1790, 2668, 1733, 3532, 1443, 1444, 1817, 2825, 616,
6594  2031, 2798, 3759, 2032, 3531, 3572, 4322, 2137, 1262, 936,
6595  1263, 1260, 1227, 1044, 2433, 3048, 3048, 917, 2434, 2292,
6596  3602, 1824, 1445, 1446, 1905, 4405, 2033, 1146, 4344, 3518,
6597  4468, 4449, 4413, 4394, 4526, 4523, 4333, 4334, 3836, 2034,
6598  1261, 1602, 1228, 3535, 1883, 1837, 2868, 3554, 881, 882,
6599  2254, 3555, 2412, 2866, 1487, 2858, 1325, 2865, 2338, 1827,
6600  2313, 2382, 1262, 4151, 1263, 2118, 3503, 4157, 852, 647,
6601  4517, 1328, 648, 4126, 0, 3861, 1030, 0, 1031, 1032,
6602  0, 0, 0, 0, 0, 0, 0, 0, 0, 791,
6603  0, 0, 0, 0, 0, 0, 1603, 1604, 0, -931,
6604  4457, 0, 0, 0, 0, 4462, 0, 0, 0, 0,
6605  0, 0, 0, 0, 1488, 1489, 1490, 1491, 1492, 1493,
6606  1494, 1495, 1496, 1497, 0, 1498, 1499, 1500, 1501, 1502,
6607  1503, 1504, 1505, 1506, 0, 1507, 1508, 0, 0, 0,
6608  4496, 0, 0, 0, 791, 791, 0, 0, 0, 0,
6609  0, 0, 0, 791, 791, 791, 791, 791, 791, 791,
6610  0, 0, 0, 0, 1672, 0, 4496, 791, 791, 0,
6611  791, 791, 0, 0, 616, 791, 791, 0, 1672, 791,
6612  791, 791, 791, 1672, 791, 791, 0, 0, 1672, 0,
6613  0, 0, 791, 791, 0, 791, 791, 791, 791, 791,
6614  0, 0, 791, 791, 791, 791, 791, 791, 791, 791,
6615  791, 791, 791, 0, 791, 0, 0, 791, 791, 0,
6616  0, 0, 791, 0, 0, 0, 791, 791, 791, 0,
6617  0, 0, 0, 0, 1605, 0, 0, 0, 0, 791,
6618  791, 791, 0, 0, 0, 0, 0, 0, 791, 1606,
6619  1607, 0, 0, 1486, 0, 791, 791, 791, 0, 791,
6620  1509, 1510, 0, 0, 0, 0, 791, 791, 791, 0,
6621  791, 791, 791, 791, 791, 0, 791, 791, 791, 791,
6622  791, 791, 791, 791, 0, 0, 0, 791, 791, 0,
6623  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6624  0, 0, 0, 0, 0, 0, 0, 0, 1557, 1558,
6625  0, 0, 0, 0, 0, 0, 0, 1568, 1569, 0,
6626  0, 1572, 1573, 1574, 0, 0, 0, 0, 0, 0,
6627  0, 1582, 1583, 0, 1584, 1585, 0, 0, 0, 1610,
6628  0, 0, 0, 1619, 1620, 1621, 1622, 0, 1624, 0,
6629  0, 0, 0, 0, 0, 0, 1632, 1633, 0, 1636,
6630  1637, 0, 0, 0, 0, 0, 1641, 1642, 1643, 0,
6631  0, 1646, 1647, 1648, 1649, 1650, 1651, 0, 1653, 0,
6632  0, 1656, 1657, 0, 0, 0, 1660, 0, 0, 0,
6633  1663, 1667, 1668, 0, 0, 0, 0, 0, 0, 0,
6634  0, 0, 0, 1675, 1676, 1677, 0, 0, 0, 0,
6635  0, 0, 1685, 0, 0, 0, 0, 0, 0, 1690,
6636  1691, 1692, 0, 0, 1, 0, 2, 0, 0, 0,
6637  0, 0, 0, 0, 791, 0, 0, 0, 0, 0,
6638  0, 3, 0, 0, 791, 4, 0, 0, 0, 0,
6639  0, 0, 1728, 0, 0, 0, 0, 0, 0, 5,
6640  6, 0, 791, 0, 0, 0, 0, 7, 0, 0,
6641  0, 8, 9, 0, 0, 0, 0, 0, 0, 0,
6642  0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
6643  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6644  0, 0, 0, 0, 0, 11, 0, 0, 0, 0,
6645  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6646  0, 1, 0, 2, 0, 0, 0, 12, 0, 0,
6647  0, 0, 0, 0, 0, 0, 13, 14, 15, 0,
6648  0, 0, 4, 0, 0, 0, 0, 0, 0, 16,
6649  17, 0, 0, 0, 0, 0, 5, 6, 0, 0,
6650  0, 0, 18, 0, 7, 0, 0, 0, 8, 9,
6651  0, 0, 0, 0, 0, 0, 19, 0, 0, 0,
6652  0, 0, 0, 0, 10, 0, 0, 0, 0, 0,
6653  0, 0, 0, 0, 20, 0, 0, 0, 1836, 0,
6654  0, 0, 11, 0, 0, 0, 0, 0, 1842, 21,
6655  0, 22, 0, 0, 0, 0, 23, 0, 0, 24,
6656  0, 0, 0, 0, 12, 0, 1870, 0, 0, 0,
6657  0, 0, 0, 13, 14, 15, 0, 0, 0, 0,
6658  0, 0, 25, 0, 26, 0, 16, 17, 0, 0,
6659  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6660  0, 0, 27, 0, 0, 791, 0, 0, 0, 0,
6661  0, 0, 0, 19, 0, 0, 0, 0, 0, 28,
6662  0, 0, 0, 29, 0, 0, 0, 0, 0, 0,
6663  0, 20, 0, 0, 0, 0, 0, 0, 0, 0,
6664  0, 0, 0, 0, 0, 0, 21, 0, 22, 0,
6665  0, 0, 0, 23, 0, 0, 24, 0, 0, 0,
6666  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6667  0, 0, 0, 0, 0, 0, 0, 0, 0, 25,
6668  0, 26, 0, 0, 0, 0, 0, 0, 0, 0,
6669  0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
6670  0, 0, 0, 791, 791, 791, 0, 0, 0, 0,
6671  0, 0, 0, 0, 0, 0, 28, 0, 791, 30,
6672  29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6673  0, 0, 0, 0, 0, 0, 31, 0, 0, 0,
6674  0, 0, 0, 0, 791, 0, 0, 0, 0, 32,
6675  791, 0, 0, 791, 0, 791, 0, 0, 0, 0,
6676  33, 791, 0, 791, 791, 0, 0, 0, 0, 2149,
6677  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6678  0, 0, 34, 0, 0, 35, 0, 36, 0, 0,
6679  37, 0, 0, 38, 39, 0, 0, 0, 0, 0,
6680  0, 0, 0, 40, 0, 41, 0, 0, 0, 0,
6681  0, 0, 0, 42, 0, 0, 30, 0, 0, 43,
6682  0, 0, 0, 0, 0, 0, 0, 44, 0, 0,
6683  0, 0, 45, 31, 46, 0, 0, 0, 0, 0,
6684  0, 0, 0, 0, 0, 0, 32, 0, 791, 0,
6685  0, 0, 0, 0, 0, 0, 0, 33, 0, 0,
6686  0, 0, 0, 0, 47, 0, 0, 2224, 2226, 2228,
6687  0, 48, 0, 0, 0, 0, 0, 0, 0, 34,
6688  0, 0, 35, 0, 36, 0, 0, 37, 0, 0,
6689  38, 39, 0, 0, 0, 0, 0, 791, 0, 0,
6690  40, 0, 41, 0, 0, 791, 0, 0, 2263, 0,
6691  42, 0, 0, 0, 49, 0, 43, 2268, 0, 2269,
6692  0, 0, 0, 0, 44, 0, 50, 0, 0, 45,
6693  51, 46, 0, 52, 0, 0, 0, 0, 53, 0,
6694  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6695  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6696  0, 47, 0, 0, 0, 0, 54, 0, 48, 0,
6697  0, 0, 1990, 1991, 0, 0, 0, 0, 0, 0,
6698  0, 55, 0, 0, 0, 0, 0, 0, 0, 0,
6699  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6700  0, 0, 0, 0, 0, -791, -791, 1993, 0, 0,
6701  0, 49, 2355, 0, 0, -791, 0, 0, 0, 0,
6702  0, 1996, 0, 50, 0, 0, 0, 51, 0, 1997,
6703  52, 0, 0, 0, 0, 53, 0, 0, 0, 0,
6704  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6705  0, 0, 0, 1999, 0, 0, 0, 0, 0, 0,
6706  0, 2411, 0, 54, 0, 0, 0, 1451, 0, 2421,
6707  0, 2000, 0, 0, 0, 0, 0, 0, 55, 0,
6708  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6709  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6710  2005, 0, 0, 0, 0, 0, 0, 791, 0, 0,
6711  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6712  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6713  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6714  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6715  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6716  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6717  0, 0, 2009, 0, 0, 0, 0, 0, 0, 2010,
6718  791, 0, 0, 0, 791, 0, 0, 0, 0, 791,
6719  791, 0, 0, 0, 0, 0, 2011, 0, 791, 0,
6720  0, 791, 0, 0, 0, 0, 0, 0, 0, 2654,
6721  0, 791, 791, 0, 791, 791, 0, 791, 791, 791,
6722  791, 791, 0, 0, 791, 0, 0, 0, 0, 0,
6723  0, 0, 0, 791, 0, 0, 0, 0, 0, 0,
6724  791, 0, 791, 0, 791, 791, 0, 791, 791, 0,
6725  0, 0, 791, 791, 791, 2013, 0, 0, 791, 791,
6726  791, 0, 791, 0, 791, 0, 791, 0, 791, 0,
6727  791, 2591, 0, 2014, 0, 791, 0, 0, 0, 0,
6728  0, 3345, 3346, 0, 0, 0, 0, 3347, 0, 3348,
6729  0, 3349, 3350, 0, 791, 0, 0, 0, 0, 0,
6730  0, 791, 0, 0, 791, 0, 0, 0, 3351, 0,
6731  791, 0, 0, 791, 0, 0, 0, 791, 0, 0,
6732  0, 0, 0, 0, 0, 0, 0, 2018, 0, 0,
6733  0, 0, 0, 0, 0, 2020, 0, 0, 0, 0,
6734  0, 0, 0, 0, 2677, 0, 0, 0, 2679, 0,
6735  0, 0, 0, 2681, 2682, 0, 3352, 0, 0, 3353,
6736  0, 0, 2695, 0, 0, 0, 0, 3354, 0, 0,
6737  0, 0, 0, 0, 0, 2702, 2703, 0, 2704, 791,
6738  0, 2706, 2707, 2708, 2709, 2710, 3355, 0, 0, 0,
6739  0, 0, 0, 0, 0, 0, 0, 2714, 0, 0,
6740  0, 0, 0, 3356, 2715, 2026, 2716, 0, 2717, 2718,
6741  0, 2719, 0, 0, 0, 0, 2722, 2723, 2724, 0,
6742  0, 0, 2726, 2727, 2728, 0, 2729, 0, 2731, 3357,
6743  2733, 3358, 2735, 0, 2736, 0, 0, 0, 0, 2737,
6744  0, 0, 0, 0, 3359, 3360, 0, 0, 0, 0,
6745  0, 0, 0, 791, 0, 0, 0, 791, 2757, 0,
6746  0, 2027, 2028, 2029, 0, 0, 0, 0, 2030, 0,
6747  0, 0, 0, 0, 2767, 0, 0, 2770, 0, 0,
6748  0, 0, 0, 0, 2031, 3361, 0, 2032, 0, 0,
6749  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6750  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6751  0, 0, 0, 0, 0, 3362, 0, 0, 2926, 0,
6752  0, 0, 0, 2034, 3363, 3364, 0, 3365, 0, 0,
6753  0, 0, 0, 0, 0, 0, 2926, 2926, 0, 0,
6754  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6755  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6756  0, 0, 0, 3366, 3367, 3368, 0, 0, 0, 0,
6757  0, 3014, 0, 0, 0, 0, 1987, 2655, 1988, 0,
6758  0, 0, 3369, 3370, 3371, 0, 0, 0, 0, 3372,
6759  1990, 1991, 3373, 0, 0, 0, 0, 0, 0, 0,
6760  0, 0, 0, 0, 0, 0, 0, 0, 0, 3374,
6761  3375, 0, 0, 0, 0, 0, 0, 2421, 0, 0,
6762  0, 1992, 0, 0, 0, 1993, 0, 0, 0, 0,
6763  0, 0, 0, 0, 0, 0, 0, 0, 0, 1996,
6764  0, 0, 3376, 3377, 0, 0, 0, 1997, 0, 0,
6765  0, 0, 0, 0, 0, 0, 1998, 0, 0, 0,
6766  0, 0, 0, 0, 2926, 2926, 0, 3378, 0, 0,
6767  0, 1999, 0, 0, 0, 0, 0, 0, 0, 0,
6768  0, 0, 0, 0, 0, 1451, 0, 0, 0, 2000,
6769  0, 0, 0, 0, 0, 0, 0, 2001, 0, 0,
6770  0, 0, 0, 0, 3015, 0, 0, 0, 0, 0,
6771  0, 0, 2004, 0, 0, 791, 0, 0, 2005, 791,
6772  0, 3379, 0, 0, 0, 3380, 0, 0, 0, 0,
6773  0, 0, 0, 0, 0, 0, 0, 3381, 0, 791,
6774  791, 0, 0, 0, 0, 0, 0, 0, 0, 2007,
6775  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6776  791, 0, 0, 0, 0, 0, 0, 0, 0, 791,
6777  0, 791, 0, 791, 0, 0, 0, 0, 0, 0,
6778  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6779  2009, 0, 0, 0, 0, 3382, 0, 2010, 3383, 0,
6780  791, 3384, 3385, 3386, 3387, 791, 0, 0, 0, 0,
6781  0, 0, 0, 0, 2011, 0, 0, 0, 0, 0,
6782  0, 829, 884, 0, 0, 0, 0, 0, 0, 0,
6783  0, 0, 0, 0, 791, 0, 0, 2012, 0, 0,
6784  0, 0, 0, 3388, 3389, 0, 885, 869, 0, 0,
6785  0, 0, 0, 0, 0, 0, 0, 886, 0, 0,
6786  0, 0, 0, 0, 0, 0, 0, 0, 3390, 0,
6787  0, 0, 0, 2013, 0, 0, 0, 1990, 1991, 3094,
6788  887, 0, 888, 3096, 0, 0, 0, 0, 0, 0,
6789  0, 2014, 889, 0, 0, 2015, 0, 0, 0, 0,
6790  0, 0, 0, 3118, 3119, 0, 791, 0, 0, 0,
6791  -791, -791, 1993, 0, 0, 0, 0, 0, 0, 0,
6792  -791, 0, 0, 0, 3141, 0, 1996, 0, 0, 0,
6793  0, 0, 0, 3151, 1997, 3153, 0, 3155, 2017, 0,
6794  -1794, 890, 0, 0, 0, 2018, 891, 0, 0, 892,
6795  0, 0, 791, 2020, 0, 0, 0, 0, 1999, 0,
6796  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6797  0, 0, 1451, 0, 0, 0, 2000, 0, 893, 0,
6798  894, 0, 0, 0, 0, 0, 0, 895, 0, 896,
6799  0, 0, 0, 0, 0, 0, 0, 0, 3216, 2023,
6800  0, 0, 0, 0, 0, 2005, 0, 0, 0, 0,
6801  0, 0, 897, 898, 0, 0, 0, 0, 0, 0,
6802  0, 0, 0, 2026, 0, 0, 0, 0, 0, 0,
6803  0, 0, 0, 0, 0, 0, 899, 0, 0, 0,
6804  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6805  0, 0, 0, 0, 0, 0, 0, 900, 0, 0,
6806  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6807  2421, 0, 0, 791, 791, 0, 0, 2009, 0, 2027,
6808  2028, 2029, 0, 0, 2010, 0, 2030, 0, 0, 0,
6809  901, 0, 0, 0, 0, 0, 0, 0, 2926, 0,
6810  0, 2011, 2031, 0, 0, 2032, 0, 0, 0, 0,
6811  0, 0, 0, 0, 0, 0, 3304, 0, 0, 0,
6812  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6813  0, 0, 0, 0, 0, 0, 791, 0, 0, 0,
6814  0, 2034, 0, 0, 0, 0, 0, 0, 0, 0,
6815  0, 0, 0, 0, 0, 902, 0, 0, 0, 0,
6816  2013, 791, 0, 0, 0, 791, 791, 0, 791, 0,
6817  0, 0, 0, 0, 0, 0, 0, 791, 2014, 0,
6818  903, 0, 791, 0, 0, 791, 0, 791, 791, 0,
6819  904, 905, 0, 0, 906, 907, 0, 0, 0, 0,
6820  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6821  0, 0, 0, 0, 0, 908, 0, 0, 0, 0,
6822  791, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6823  0, 0, 2018, 0, 0, 0, 0, 3401, 3402, 0,
6824  2020, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6825  0, 0, 0, 0, 791, 0, 0, 0, 0, 0,
6826  0, 909, 0, 0, 0, 0, 0, 0, 0, 0,
6827  0, 0, 0, 0, 910, 0, 0, 0, 791, 0,
6828  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6829  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6830  3446, 0, 0, 0, 0, -2362, 0, 0, 0, 911,
6831  2026, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6832  0, 0, 0, 0, 0, 3464, 0, 912, 0, 3468,
6833  3469, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6834  791, 3476, 0, 0, 0, 0, 3478, 0, 791, 3479,
6835  0, 3480, 3481, 0, 0, 0, 0, 0, 0, 0,
6836  0, 0, 0, 0, 0, 0, 2027, 2028, 2029, 0,
6837  0, 0, 0, 2030, 0, 0, 0, 0, 0, 0,
6838  0, 0, 0, 0, -2362, 0, 0, 0, 0, 2031,
6839  913, 0, 2032, 0, 0, 0, 0, 0, 0, 0,
6840  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6841  0, 0, 0, 0, 0, 0, 0, 0, 3512, 0,
6842  0, 0, 0, 0, 0, 0, 0, 0, 2034, 0,
6843  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6844  0, 0, 3512, 0, 0, 0, 0, 0, 0, 0,
6845  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6846  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6847  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6848  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6849  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6850  0, 0, 0, 0, 3512, 0, 0, 0, 0, 0,
6851  0, 0, 3583, 0, 0, 0, 0, 0, 0, 0,
6852  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6853  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6854  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6855  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6856  0, 0, 0, 0, 0, 0, 0, 0, 791, 0,
6857  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6858  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6859  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6860  0, 0, 0, 0, 0, 0, 0, 0, 791, 791,
6861  0, 0, 0, 0, 0, 0, 0, 791, 0, 0,
6862  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6863  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6864  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6865  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6866  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6867  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6868  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6869  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6870  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6871  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6872  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6873  0, 0, 3512, 0, 0, 0, 0, 0, 0, 0,
6874  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6875  0, 0, 0, 0, 0, 0, 0, 791, 0, 0,
6876  0, 791, 0, 0, 0, 0, 0, 0, 0, 0,
6877  0, 0, 3780, 3781, 0, 0, 0, 0, 0, 0,
6878  0, 3304, 0, 0, 0, 0, 0, 0, 791, 0,
6879  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6880  0, 0, 0, 791, 0, 0, 0, 0, 0, 0,
6881  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6882  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6883  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6884  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6885  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6886  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6887  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6888  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6889  0, 0, 0, 0, 0, 3994, 0, 0, 0, 0,
6890  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6891  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6892  0, 3304, 0, 0, 0, 3889, 0, 0, 0, 0,
6893  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6894  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6895  0, 791, 3512, 0, 0, 0, 0, 0, 0, 791,
6896  0, 0, 0, 0, 0, 0, 791, 3304, 791, 0,
6897  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6898  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6899  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6900  0, 0, 0, 0, 791, 0, 0, 0, 0, 0,
6901  3994, 3994, 0, 0, 0, 0, 0, 0, 0, 0,
6902  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6903  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6904  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6905  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6906  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6907  0, 0, 0, 0, 791, 0, 0, 0, 0, 0,
6908  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6909  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6910  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6911  0, 0, 0, 791, 0, 0, 0, 0, 0, 0,
6912  0, 0, 0, 4077, 0, 0, 0, 0, 0, 0,
6913  4082, 0, 4084, 0, 0, 0, 0, 0, 0, 0,
6914  0, 0, 0, 791, 0, 791, 0, 0, 0, 0,
6915  0, 0, 0, 0, 0, 791, 0, 3994, 3994, 0,
6916  0, 0, 0, 0, 0, 0, 0, 0, 4103, 0,
6917  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6918  0, 0, 0, 0, 4250, 0, 0, 0, 0, 0,
6919  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6920  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6921  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6922  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6923  0, 0, 0, 0, 0, 0, 0, 0, 3304, 0,
6924  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6925  0, 791, 0, 3994, 0, 0, 0, 0, 0, 0,
6926  0, 0, 0, 0, 0, 0, 0, 0, 3994, 791,
6927  0, 0, 0, 0, 0, 0, 0, 3304, 0, 0,
6928  0, 0, 3994, 0, 0, 0, 0, 0, 0, 0,
6929  0, 0, 0, 0, 791, 0, 0, 0, 0, 0,
6930  0, 0, 0, 0, 0, 0, 0, 4204, 0, 4205,
6931  0, 0, 0, 0, 0, 0, 0, 0, 0, 4213,
6932  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6933  0, 0, 0, 0, 0, 0, 0, 0, 791, 3994,
6934  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6935  0, 3994, 3994, 0, 0, 0, 0, 0, 0, 0,
6936  0, 0, 0, 0, 0, 0, 0, 0, 791, 0,
6937  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6938  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6939  0, 0, 0, 0, 0, 0, 0, 0, 3994, 0,
6940  0, 0, 0, 0, 0, 791, 0, 0, 3994, 0,
6941  0, 0, 0, 0, 0, 4305, 0, 0, 0, 0,
6942  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6943  0, 0, 0, 4310, 0, 0, 0, 0, 791, 0,
6944  0, 0, 0, 0, 0, 3994, 0, 3994, 0, 0,
6945  0, 0, 0, 0, 0, 0, 0, 3994, 3512, 0,
6946  0, 791, 0, 0, 0, 0, 0, 0, 0, 0,
6947  0, 0, 0, 0, 3994, 0, 3994, 0, 3994, 0,
6948  0, 0, 0, 0, 0, 3994, 0, 0, 0, 0,
6949  0, 0, 0, 0, 0, 3994, 0, 0, 0, 0,
6950  0, 0, 4358, 0, 0, 0, 0, 0, 0, 3994,
6951  3994, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6952  0, 0, 0, 0, 0, 3994, 3994, 0, 0, 0,
6953  3994, 0, 0, 0, 0, 0, 791, 0, 0, 0,
6954  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6955  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6956  0, 0, 0, 0, 0, 0, 791, 0, 0, 4407,
6957  0, 0, 0, 0, 0, 0, 137, 0, 662, 139,
6958  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
6959  0, 0, 663, 0, 146, 147, 148, 149, 664, 151,
6960  0, 152, 4433, 0, 665, 153, 666, 667, 668, 154,
6961  669, 0, 155, 156, 157, 1664, 158, 0, 159, 160,
6962  0, 0, 161, 670, 671, 162, 163, 0, 164, 672,
6963  673, 166, 0, 167, 168, 169, 170, 674, 172, 0,
6964  675, 174, 0, 175, 176, 177, 178, 179, 180, 181,
6965  182, 183, 0, 184, 185, 0, 186, 187, 188, 676,
6966  190, 0, 677, 678, 191, 0, 0, 192, 679, 193,
6967  680, 0, 194, 681, 682, 0, 195, 196, 197, 683,
6968  684, 685, 0, 0, 0, 0, 686, 200, 687, 0,
6969  0, 688, 201, 202, 0, 203, 0, 0, 0, 204,
6970  4505, 205, 206, 207, 208, 209, 0, 0, 0, 210,
6971  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
6972  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
6973  3512, 222, 223, 224, 225, 226, 227, 689, 0, 228,
6974  229, 230, 231, 232, 690, 691, 233, 234, 0, 235,
6975  236, 237, 692, 0, 238, 0, 0, 0, 693, 240,
6976  0, 241, 0, 242, 0, 243, 694, 245, 695, 0,
6977  247, 0, 248, 0, 696, 0, 249, 250, 0, 251,
6978  697, 0, 252, 253, 0, 0, 0, 698, 255, 256,
6979  257, 699, 0, 258, 259, 260, 0, 0, 261, 0,
6980  0, 0, 700, 262, 263, 701, 0, 0, 264, 0,
6981  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
6982  269, 0, 0, 270, 271, 0, 1665, 272, 0, 702,
6983  273, 274, 0, 0, 0, 0, 0, 703, 276, 0,
6984  277, 0, 278, 0, 279, 280, 0, 0, 704, 0,
6985  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
6986  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
6987  297, 298, 0, 299, 300, 301, 705, 302, 303, 304,
6988  305, 706, 306, 307, 0, 0, 0, 0, 308, 309,
6989  310, 311, 707, 313, 0, 0, 708, 315, 709, 316,
6990  0, 317, 710, 711, 712, 713, 714, 322, 323, 324,
6991  325, 326, 0, 715, 327, 328, 0, 0, 329, 330,
6992  331, 332, 716, 717, 718, 333, 334, 0, 719, 720,
6993  335, 0, 336, 337, 721, 0, 339, 340, 341, 0,
6994  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6995  343, 344, 345, 722, 346, 347, 0, 348, 349, 723,
6996  351, 352, 353, 354, 724, 725, 357, 726, 0, 358,
6997  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
6998  0, 727, 368, 369, 0, 0, 370, 0, 0, 0,
6999  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
7000  379, 380, 0, 381, 382, 0, 383, 384, 385, 728,
7001  729, 386, 0, 387, 0, 388, 389, 0, 390, 391,
7002  392, 0, 730, 0, 731, 394, 395, 396, 397, 398,
7003  732, 733, 401, 402, 403, 404, 0, 734, 406, 0,
7004  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
7005  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
7006  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
7007  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
7008  428, 0, 0, 429, 430, 431, 432, 433, 434, 735,
7009  736, 435, 436, 0, 437, 438, 737, 440, 441, 442,
7010  738, 739, 443, 444, 445, 446, 740, 447, 448, 0,
7011  0, 449, 450, 451, 452, 0, 741, 453, 454, 0,
7012  742, 743, 744, 745, 0, 0, 0, 0, 1666, 459,
7013  460, 0, 746, 747, 748, 462, 463, 464, 749, 465,
7014  466, 750, 467, 468, 0, 469, 470, 0, 0, 471,
7015  0, 0, 472, 0, 473, 0, 751, 475, 0, 0,
7016  752, 753, 754, 755, 476, 0, 0, 477, 756, 0,
7017  757, 478, 479, 480, 758, 759, 0, 0, 0, 0,
7018  0, 0, 483, 484, 0, 485, 486, 487, 0, 0,
7019  760, 0, 0, 0, 761, 762, 0, 0, 0, 0,
7020  763, 764, 0, 0, 765, 766, 0, 0, 767, 768,
7021  137, 0, 662, 139, 140, 141, 142, 2417, 0, 143,
7022  0, 0, 0, 144, 0, 0, 663, 0, 146, 147,
7023  148, 149, 664, 151, 0, 152, 0, 0, 2418, 153,
7024  666, 667, 668, 154, 669, 0, 155, 156, 157, 0,
7025  158, 0, 159, 160, 0, 0, 161, 670, 671, 162,
7026  163, 0, 164, 672, 673, 166, 0, 167, 168, 169,
7027  170, 674, 172, 0, 675, 174, 0, 175, 176, 177,
7028  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
7029  186, 187, 188, 676, 190, 0, 677, 678, 191, 0,
7030  0, 192, 679, 193, 680, 0, 194, 681, 682, 0,
7031  195, 196, 197, 683, 684, 685, 0, 0, 0, 0,
7032  686, 200, 687, 0, 0, 2419, 201, 202, 0, 203,
7033  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
7034  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
7035  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
7036  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
7037  227, 689, 0, 228, 229, 230, 231, 232, 690, 691,
7038  233, 234, 0, 235, 236, 237, 692, 0, 238, 0,
7039  0, 0, 693, 240, 0, 241, 0, 242, 0, 243,
7040  694, 245, 695, 0, 247, 0, 248, 0, 696, 0,
7041  249, 250, 0, 251, 697, 0, 252, 253, 0, 0,
7042  0, 698, 255, 256, 257, 699, 0, 258, 259, 260,
7043  0, 0, 261, 0, 0, 0, 700, 262, 263, 701,
7044  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
7045  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
7046  0, 272, 0, 702, 273, 274, 0, 0, 0, 0,
7047  0, 703, 276, 0, 277, 0, 278, 0, 279, 280,
7048  0, 0, 704, 0, 0, 0, 0, 281, 0, 282,
7049  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
7050  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
7051  705, 302, 303, 304, 305, 706, 306, 307, 0, 0,
7052  0, 0, 308, 309, 310, 311, 707, 313, 0, 0,
7053  708, 315, 709, 316, 0, 317, 710, 711, 712, 713,
7054  714, 322, 323, 324, 325, 326, 0, 715, 327, 328,
7055  0, 0, 329, 330, 331, 332, 716, 717, 718, 333,
7056  334, 0, 719, 720, 335, 0, 336, 337, 721, 2420,
7057  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
7058  0, 0, 0, 0, 343, 344, 345, 722, 346, 347,
7059  0, 348, 349, 723, 351, 352, 353, 354, 724, 725,
7060  357, 726, 0, 358, 359, 360, 0, 361, 0, 362,
7061  363, 364, 365, 366, 0, 727, 368, 369, 0, 0,
7062  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
7063  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
7064  383, 384, 385, 728, 729, 386, 0, 387, 0, 388,
7065  389, 0, 390, 391, 392, 0, 730, 0, 731, 394,
7066  395, 396, 397, 398, 732, 733, 401, 402, 403, 404,
7067  0, 734, 406, 0, 0, 0, 407, 408, 409, 410,
7068  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
7069  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
7070  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
7071  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
7072  432, 433, 434, 735, 736, 435, 436, 0, 437, 438,
7073  737, 440, 441, 442, 738, 739, 443, 444, 445, 446,
7074  740, 447, 448, 0, 0, 449, 450, 451, 452, 0,
7075  741, 453, 454, 0, 742, 743, 744, 745, 0, 0,
7076  0, 0, 0, 459, 460, 0, 746, 747, 748, 462,
7077  463, 464, 749, 465, 466, 750, 467, 468, 0, 469,
7078  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
7079  751, 475, 0, 0, 752, 753, 754, 755, 476, 0,
7080  0, 477, 756, 0, 757, 478, 479, 480, 758, 759,
7081  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
7082  486, 487, 0, 0, 760, 0, 0, 0, 761, 762,
7083  0, 0, 0, 0, 763, 764, 0, 0, 765, 766,
7084  0, 0, 767, 768, 137, 0, 662, 139, 140, 141,
7085  142, 0, 0, 143, 0, 0, 0, 144, 0, 0,
7086  663, 0, 146, 147, 148, 149, 664, 151, 0, 152,
7087  0, 0, 665, 153, 666, 667, 668, 154, 669, 0,
7088  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
7089  161, 670, 671, 162, 163, 0, 164, 672, 673, 166,
7090  0, 167, 168, 169, 170, 674, 172, 0, 675, 174,
7091  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
7092  0, 184, 185, 0, 186, 187, 188, 676, 190, 0,
7093  677, 678, 191, 0, 0, 192, 679, 193, 680, 0,
7094  194, 681, 682, 0, 195, 196, 197, 683, 684, 685,
7095  0, 0, 0, 0, 686, 200, 687, 0, 0, 688,
7096  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
7097  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
7098  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
7099  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
7100  223, 224, 225, 226, 227, 689, 0, 228, 229, 230,
7101  231, 232, 690, 691, 233, 234, 0, 235, 236, 237,
7102  692, 0, 238, 0, 0, 0, 693, 240, 2223, 241,
7103  0, 242, 0, 243, 694, 245, 695, 0, 247, 0,
7104  248, 0, 696, 0, 249, 250, 0, 251, 697, 0,
7105  252, 253, 0, 0, 0, 698, 255, 256, 257, 699,
7106  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
7107  700, 262, 263, 701, 0, 0, 264, 0, 0, 0,
7108  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
7109  0, 270, 271, 0, 0, 272, 0, 702, 273, 274,
7110  0, 0, 0, 0, 0, 703, 276, 0, 277, 0,
7111  278, 0, 279, 280, 0, 0, 704, 0, 0, 0,
7112  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
7113  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
7114  0, 299, 300, 301, 705, 302, 303, 304, 305, 706,
7115  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
7116  707, 313, 0, 0, 708, 315, 709, 316, 0, 317,
7117  710, 711, 712, 713, 714, 322, 323, 324, 325, 326,
7118  0, 715, 327, 328, 0, 0, 329, 330, 331, 332,
7119  716, 717, 718, 333, 334, 0, 719, 720, 335, 0,
7120  336, 337, 721, 0, 339, 340, 341, 0, 342, 0,
7121  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
7122  345, 722, 346, 347, 0, 348, 349, 723, 351, 352,
7123  353, 354, 724, 725, 357, 726, 0, 358, 359, 360,
7124  0, 361, 0, 362, 363, 364, 365, 366, 0, 727,
7125  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
7126  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
7127  0, 381, 382, 0, 383, 384, 385, 728, 729, 386,
7128  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
7129  730, 0, 731, 394, 395, 396, 397, 398, 732, 733,
7130  401, 402, 403, 404, 0, 734, 406, 0, 0, 0,
7131  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
7132  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
7133  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
7134  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
7135  0, 429, 430, 431, 432, 433, 434, 735, 736, 435,
7136  436, 0, 437, 438, 737, 440, 441, 442, 738, 739,
7137  443, 444, 445, 446, 740, 447, 448, 0, 0, 449,
7138  450, 451, 452, 0, 741, 453, 454, 0, 742, 743,
7139  744, 745, 0, 0, 0, 0, 0, 459, 460, 0,
7140  746, 747, 748, 462, 463, 464, 749, 465, 466, 750,
7141  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
7142  472, 0, 473, 0, 751, 475, 0, 0, 752, 753,
7143  754, 755, 476, 0, 0, 477, 756, 0, 757, 478,
7144  479, 480, 758, 759, 0, 0, 0, 0, 0, 0,
7145  483, 484, 0, 485, 486, 487, 0, 0, 760, 0,
7146  0, 0, 761, 762, 0, 0, 0, 0, 763, 764,
7147  0, 0, 765, 766, 0, 0, 767, 768, 137, 0,
7148  662, 139, 140, 141, 142, 0, 0, 143, 0, 0,
7149  0, 144, 0, 0, 663, 0, 146, 147, 148, 149,
7150  664, 151, 0, 152, 0, 0, 665, 153, 666, 667,
7151  668, 154, 669, 0, 155, 156, 157, 0, 158, 0,
7152  159, 160, 0, 0, 161, 670, 671, 162, 163, 0,
7153  164, 672, 673, 166, 0, 167, 168, 169, 170, 674,
7154  172, 0, 675, 174, 0, 175, 176, 177, 178, 179,
7155  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
7156  188, 676, 190, 0, 677, 678, 191, 0, 0, 192,
7157  679, 193, 680, 0, 194, 681, 682, 0, 195, 196,
7158  197, 683, 684, 685, 0, 0, 0, 0, 686, 200,
7159  687, 0, 0, 688, 201, 202, 0, 203, 0, 0,
7160  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
7161  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
7162  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
7163  220, 221, 0, 222, 223, 224, 225, 226, 227, 689,
7164  0, 228, 229, 230, 231, 232, 690, 691, 233, 234,
7165  0, 235, 236, 237, 692, 0, 238, 0, 0, 0,
7166  693, 240, 2225, 241, 0, 242, 0, 243, 694, 245,
7167  695, 0, 247, 0, 248, 0, 696, 0, 249, 250,
7168  0, 251, 697, 0, 252, 253, 0, 0, 0, 698,
7169  255, 256, 257, 699, 0, 258, 259, 260, 0, 0,
7170  261, 0, 0, 0, 700, 262, 263, 701, 0, 0,
7171  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
7172  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
7173  0, 702, 273, 274, 0, 0, 0, 0, 0, 703,
7174  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
7175  704, 0, 0, 0, 0, 281, 0, 282, 283, 284,
7176  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
7177  295, 296, 297, 298, 0, 299, 300, 301, 705, 302,
7178  303, 304, 305, 706, 306, 307, 0, 0, 0, 0,
7179  308, 309, 310, 311, 707, 313, 0, 0, 708, 315,
7180  709, 316, 0, 317, 710, 711, 712, 713, 714, 322,
7181  323, 324, 325, 326, 0, 715, 327, 328, 0, 0,
7182  329, 330, 331, 332, 716, 717, 718, 333, 334, 0,
7183  719, 720, 335, 0, 336, 337, 721, 0, 339, 340,
7184  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
7185  0, 0, 343, 344, 345, 722, 346, 347, 0, 348,
7186  349, 723, 351, 352, 353, 354, 724, 725, 357, 726,
7187  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
7188  365, 366, 0, 727, 368, 369, 0, 0, 370, 0,
7189  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
7190  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
7191  385, 728, 729, 386, 0, 387, 0, 388, 389, 0,
7192  390, 391, 392, 0, 730, 0, 731, 394, 395, 396,
7193  397, 398, 732, 733, 401, 402, 403, 404, 0, 734,
7194  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
7195  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
7196  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
7197  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
7198  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
7199  434, 735, 736, 435, 436, 0, 437, 438, 737, 440,
7200  441, 442, 738, 739, 443, 444, 445, 446, 740, 447,
7201  448, 0, 0, 449, 450, 451, 452, 0, 741, 453,
7202  454, 0, 742, 743, 744, 745, 0, 0, 0, 0,
7203  0, 459, 460, 0, 746, 747, 748, 462, 463, 464,
7204  749, 465, 466, 750, 467, 468, 0, 469, 470, 0,
7205  0, 471, 0, 0, 472, 0, 473, 0, 751, 475,
7206  0, 0, 752, 753, 754, 755, 476, 0, 0, 477,
7207  756, 0, 757, 478, 479, 480, 758, 759, 0, 0,
7208  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
7209  0, 0, 760, 0, 0, 0, 761, 762, 0, 0,
7210  0, 0, 763, 764, 0, 0, 765, 766, 0, 0,
7211  767, 768, 137, 0, 662, 139, 140, 141, 142, 0,
7212  0, 143, 0, 0, 0, 144, 0, 0, 663, 0,
7213  146, 147, 148, 149, 664, 151, 0, 152, 0, 0,
7214  665, 153, 666, 667, 668, 154, 669, 0, 155, 156,
7215  157, 0, 158, 0, 159, 160, 0, 0, 161, 670,
7216  671, 162, 163, 0, 164, 672, 673, 166, 0, 167,
7217  168, 169, 170, 674, 172, 0, 675, 174, 0, 175,
7218  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
7219  185, 0, 186, 187, 188, 676, 190, 0, 677, 678,
7220  191, 0, 0, 192, 679, 193, 680, 0, 194, 681,
7221  682, 0, 195, 196, 197, 683, 684, 685, 0, 0,
7222  0, 0, 686, 200, 687, 0, 0, 688, 201, 202,
7223  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
7224  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
7225  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
7226  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
7227  225, 226, 227, 689, 0, 228, 229, 230, 231, 232,
7228  690, 691, 233, 234, 0, 235, 236, 237, 692, 0,
7229  238, 0, 0, 0, 693, 240, 2227, 241, 0, 242,
7230  0, 243, 694, 245, 695, 0, 247, 0, 248, 0,
7231  696, 0, 249, 250, 0, 251, 697, 0, 252, 253,
7232  0, 0, 0, 698, 255, 256, 257, 699, 0, 258,
7233  259, 260, 0, 0, 261, 0, 0, 0, 700, 262,
7234  263, 701, 0, 0, 264, 0, 0, 0, 265, 266,
7235  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
7236  271, 0, 0, 272, 0, 702, 273, 274, 0, 0,
7237  0, 0, 0, 703, 276, 0, 277, 0, 278, 0,
7238  279, 280, 0, 0, 704, 0, 0, 0, 0, 281,
7239  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
7240  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
7241  300, 301, 705, 302, 303, 304, 305, 706, 306, 307,
7242  0, 0, 0, 0, 308, 309, 310, 311, 707, 313,
7243  0, 0, 708, 315, 709, 316, 0, 317, 710, 711,
7244  712, 713, 714, 322, 323, 324, 325, 326, 0, 715,
7245  327, 328, 0, 0, 329, 330, 331, 332, 716, 717,
7246  718, 333, 334, 0, 719, 720, 335, 0, 336, 337,
7247  721, 0, 339, 340, 341, 0, 342, 0, 0, 0,
7248  0, 0, 0, 0, 0, 0, 343, 344, 345, 722,
7249  346, 347, 0, 348, 349, 723, 351, 352, 353, 354,
7250  724, 725, 357, 726, 0, 358, 359, 360, 0, 361,
7251  0, 362, 363, 364, 365, 366, 0, 727, 368, 369,
7252  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
7253  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
7254  382, 0, 383, 384, 385, 728, 729, 386, 0, 387,
7255  0, 388, 389, 0, 390, 391, 392, 0, 730, 0,
7256  731, 394, 395, 396, 397, 398, 732, 733, 401, 402,
7257  403, 404, 0, 734, 406, 0, 0, 0, 407, 408,
7258  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
7259  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
7260  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
7261  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
7262  430, 431, 432, 433, 434, 735, 736, 435, 436, 0,
7263  437, 438, 737, 440, 441, 442, 738, 739, 443, 444,
7264  445, 446, 740, 447, 448, 0, 0, 449, 450, 451,
7265  452, 0, 741, 453, 454, 0, 742, 743, 744, 745,
7266  0, 0, 0, 0, 0, 459, 460, 0, 746, 747,
7267  748, 462, 463, 464, 749, 465, 466, 750, 467, 468,
7268  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
7269  473, 0, 751, 475, 0, 0, 752, 753, 754, 755,
7270  476, 0, 0, 477, 756, 0, 757, 478, 479, 480,
7271  758, 759, 0, 0, 0, 0, 0, 0, 483, 484,
7272  0, 485, 486, 487, 0, 0, 760, 0, 0, 0,
7273  761, 762, 0, 0, 0, 0, 763, 764, 0, 0,
7274  765, 766, 0, 0, 767, 768, 137, 0, 662, 139,
7275  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
7276  0, 0, 663, 0, 146, 147, 148, 149, 664, 151,
7277  0, 152, 0, 0, 665, 153, 666, 667, 668, 154,
7278  669, 0, 155, 156, 157, 0, 158, 0, 159, 160,
7279  0, 0, 161, 670, 671, 162, 163, 0, 164, 672,
7280  673, 166, 0, 167, 168, 169, 170, 674, 172, 0,
7281  675, 174, 0, 175, 176, 177, 178, 179, 180, 181,
7282  182, 183, 0, 184, 185, 0, 186, 187, 188, 676,
7283  190, 0, 677, 678, 191, 0, 0, 192, 679, 193,
7284  680, 0, 194, 681, 682, 0, 195, 196, 197, 683,
7285  684, 685, 0, 0, 0, 0, 686, 200, 687, 0,
7286  0, 688, 201, 202, 0, 203, 0, 0, 0, 204,
7287  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
7288  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
7289  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
7290  0, 222, 223, 224, 225, 226, 227, 689, 0, 228,
7291  229, 230, 231, 232, 690, 691, 233, 234, 0, 235,
7292  236, 237, 692, 0, 238, 0, 0, 0, 693, 240,
7293  0, 241, 0, 242, 0, 243, 694, 245, 695, 0,
7294  247, 0, 248, 0, 696, 0, 249, 250, 0, 251,
7295  697, 0, 252, 253, 0, 0, 0, 698, 255, 256,
7296  257, 699, 0, 258, 259, 260, 0, 0, 261, 0,
7297  0, 0, 700, 262, 263, 701, 0, 0, 264, 0,
7298  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
7299  269, 0, 0, 270, 271, 0, 0, 272, 0, 702,
7300  273, 274, 0, 0, 0, 0, 0, 703, 276, 0,
7301  277, 0, 278, 0, 279, 280, 0, 0, 704, 0,
7302  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
7303  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
7304  297, 298, 0, 299, 300, 301, 705, 302, 303, 304,
7305  305, 706, 306, 307, 0, 0, 0, 0, 308, 309,
7306  310, 311, 707, 313, 0, 0, 708, 315, 709, 316,
7307  0, 317, 710, 711, 712, 713, 714, 322, 323, 324,
7308  325, 326, 0, 715, 327, 328, 0, 0, 329, 330,
7309  331, 332, 716, 717, 718, 333, 334, 0, 719, 720,
7310  335, 0, 336, 337, 721, 0, 339, 340, 341, 0,
7311  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
7312  343, 344, 345, 722, 346, 347, 0, 348, 349, 723,
7313  351, 352, 353, 354, 724, 725, 357, 726, 0, 358,
7314  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
7315  0, 727, 368, 369, 0, 0, 370, 0, 0, 0,
7316  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
7317  379, 380, 0, 381, 382, 0, 383, 384, 385, 728,
7318  729, 386, 0, 387, 0, 388, 389, 0, 390, 391,
7319  392, 0, 730, 0, 731, 394, 395, 396, 397, 398,
7320  732, 733, 401, 402, 403, 404, 0, 734, 406, 0,
7321  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
7322  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
7323  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
7324  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
7325  428, 0, 0, 429, 430, 431, 432, 433, 434, 735,
7326  736, 435, 436, 0, 437, 438, 737, 440, 441, 442,
7327  738, 739, 443, 444, 445, 446, 740, 447, 448, 0,
7328  0, 449, 450, 451, 452, 0, 741, 453, 454, 0,
7329  742, 743, 744, 745, 0, 0, 0, 0, 0, 459,
7330  460, 0, 746, 747, 748, 462, 463, 464, 749, 465,
7331  466, 750, 467, 468, 0, 469, 470, 0, 0, 471,
7332  0, 0, 472, 0, 473, 0, 751, 475, 0, 0,
7333  752, 753, 754, 755, 476, 0, 0, 477, 756, 0,
7334  757, 478, 479, 480, 758, 759, 0, 0, 0, 0,
7335  0, 0, 483, 484, 0, 485, 486, 487, 0, 0,
7336  760, 0, 0, 0, 761, 762, 0, 0, 0, 0,
7337  763, 764, 0, 0, 765, 766, 0, 0, 767, 768,
7338  137, 0, 662, 139, 140, 141, 142, 0, 0, 143,
7339  0, 0, 0, 144, 0, 0, 663, 0, 146, 147,
7340  148, 149, 664, 151, 0, 152, 0, 0, 665, 153,
7341  666, 667, 668, 154, 669, 0, 155, 156, 157, 0,
7342  158, 0, 159, 160, 0, 0, 161, 670, 671, 162,
7343  163, 0, 164, 672, 673, 166, 0, 167, 168, 169,
7344  170, 674, 172, 0, 675, 174, 0, 175, 176, 177,
7345  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
7346  186, 187, 188, 676, 190, 0, 677, 678, 191, 0,
7347  0, 192, 679, 193, 680, 0, 194, 681, 682, 0,
7348  195, 196, 197, 683, 684, 685, 0, 0, 0, 0,
7349  686, 200, 687, 0, 0, 688, 201, 202, 0, 203,
7350  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
7351  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
7352  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
7353  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
7354  227, 689, 0, 228, 229, 230, 231, 232, 690, 691,
7355  233, 234, 0, 235, 236, 237, 692, 0, 238, 0,
7356  0, 0, 693, 240, 0, 241, 0, 242, 0, 243,
7357  694, 245, 695, 0, 247, 0, 248, 0, 696, 0,
7358  249, 250, 0, 251, 697, 0, 252, 253, 0, 0,
7359  0, 698, 255, 256, 257, 699, 0, 258, 259, 260,
7360  0, 0, 261, 0, 0, 0, 700, 262, 263, 701,
7361  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
7362  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
7363  0, 272, 0, 702, 273, 274, 0, 0, 0, 0,
7364  0, 703, 276, 0, 277, 0, 278, 0, 279, 280,
7365  0, 0, 704, 0, 0, 0, 0, 281, 0, 282,
7366  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
7367  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
7368  705, 302, 303, 304, 305, 706, 306, 307, 0, 0,
7369  0, 0, 308, 309, 310, 311, 707, 313, 0, 0,
7370  708, 315, 709, 316, 0, 317, 710, 711, 712, 713,
7371  714, 322, 323, 324, 325, 326, 0, 715, 327, 328,
7372  0, 0, 329, 330, 331, 332, 716, 717, 718, 333,
7373  334, 0, 719, 720, 335, 0, 336, 337, 721, 0,
7374  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
7375  0, 0, 0, 0, 343, 344, 345, 722, 346, 347,
7376  0, 348, 349, 723, 351, 352, 353, 354, 724, 725,
7377  357, 726, 0, 358, 359, 360, 0, 361, 0, 362,
7378  363, 364, 365, 366, 0, 727, 368, 369, 0, 0,
7379  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
7380  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
7381  383, 384, 385, 728, 729, 386, 0, 387, 0, 388,
7382  389, 0, 390, 391, 392, 0, 730, 0, 731, 394,
7383  395, 396, 397, 398, 732, 733, 401, 402, 403, 404,
7384  0, 734, 406, 0, 0, 0, 407, 408, 409, 410,
7385  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
7386  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
7387  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
7388  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
7389  432, 433, 434, 735, 736, 435, 436, 0, 437, 438,
7390  737, 440, 441, 442, 738, 739, 443, 444, 445, 446,
7391  740, 447, 448, 0, 0, 449, 450, 451, 452, 0,
7392  741, 453, 454, 0, 742, 743, 744, 745, 0, 0,
7393  0, 0, 0, 459, 460, 0, 746, 747, 748, 462,
7394  463, 464, 749, 465, 466, 750, 467, 468, 0, 469,
7395  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
7396  751, 475, 0, 0, 752, 753, 754, 755, 476, 0,
7397  0, 477, 756, 0, 757, 478, 479, 480, 758, 759,
7398  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
7399  486, 487, 0, 0, 760, 0, 0, 0, 761, 762,
7400  0, 0, 0, 0, 763, 1083, 0, 0, 765, 766,
7401  0, 0, 767, 768, 137, 0, 662, 139, 140, 141,
7402  142, 1699, 0, 143, 0, 0, 0, 1700, 0, 0,
7403  663, 0, 146, 147, 148, 149, 664, 151, 0, 152,
7404  0, 0, 665, 153, 666, 667, 668, 154, 669, 0,
7405  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
7406  161, 670, 671, 162, 163, 0, 164, 672, 673, 166,
7407  0, 167, 168, 169, 170, 674, 172, 0, 675, 174,
7408  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
7409  0, 184, 185, 0, 186, 187, 188, 676, 190, 0,
7410  677, 678, 191, 0, 0, 192, 679, 193, 680, 0,
7411  194, 681, 682, 0, 195, 196, 197, 683, 684, 685,
7412  0, 0, 0, 0, 686, 200, 687, 0, 0, 688,
7413  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
7414  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
7415  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
7416  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
7417  223, 224, 225, 226, 227, 689, 0, 228, 229, 230,
7418  231, 232, 690, 691, 233, 234, 0, 235, 236, 237,
7419  692, 0, 238, 0, 0, 0, 693, 240, 0, 241,
7420  0, 242, 0, 243, 694, 245, 695, 0, 247, 0,
7421  248, 0, 696, 0, 249, 250, 0, 251, 697, 0,
7422  252, 253, 0, 0, 0, 698, 255, 256, 257, 699,
7423  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
7424  700, 262, 263, 701, 0, 0, 264, 0, 0, 0,
7425  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
7426  0, 270, 271, 0, 0, 272, 0, 702, 273, 274,
7427  0, 0, 0, 0, 0, 703, 276, 0, 277, 0,
7428  278, 0, 279, 280, 0, 0, 704, 0, 0, 0,
7429  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
7430  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
7431  0, 299, 300, 301, 705, 302, 303, 304, 305, 706,
7432  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
7433  707, 313, 0, 0, 708, 315, 709, 316, 0, 317,
7434  710, 711, 712, 713, 714, 322, 323, 324, 325, 326,
7435  0, 715, 327, 328, 0, 0, 329, 330, 331, 332,
7436  716, 0, 718, 333, 334, 0, 719, 720, 335, 0,
7437  336, 337, 721, 0, 339, 340, 341, 0, 342, 0,
7438  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
7439  345, 722, 346, 347, 0, 348, 349, 723, 351, 352,
7440  353, 354, 724, 725, 357, 726, 0, 358, 359, 360,
7441  0, 361, 0, 362, 363, 364, 365, 366, 0, 727,
7442  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
7443  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
7444  0, 381, 382, 0, 383, 384, 385, 728, 729, 386,
7445  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
7446  730, 0, 731, 394, 395, 396, 397, 398, 732, 733,
7447  401, 402, 403, 404, 0, 734, 406, 0, 0, 0,
7448  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
7449  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
7450  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
7451  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
7452  0, 429, 430, 431, 432, 433, 434, 735, 736, 435,
7453  436, 0, 437, 438, 737, 440, 441, 442, 738, 739,
7454  443, 444, 445, 446, 740, 447, 448, 0, 0, 449,
7455  450, 451, 452, 0, 741, 453, 454, 0, 742, 743,
7456  744, 745, 0, 0, 0, 0, 0, 459, 460, 0,
7457  746, 747, 748, 462, 463, 464, 749, 465, 466, 750,
7458  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
7459  472, 0, 473, 0, 751, 475, 0, 0, 752, 753,
7460  754, 755, 476, 0, 0, 477, 756, 0, 757, 478,
7461  479, 480, 758, 759, 0, 0, 0, 0, 0, 0,
7462  483, 484, 0, 485, 486, 487, 0, 0, 760, 0,
7463  0, 0, 761, 762, 0, 0, 0, 0, 763, 764,
7464  0, 0, 765, 766, 0, 0, 767, 768, 137, 0,
7465  662, 139, 140, 141, 142, 0, 0, 143, 0, 0,
7466  0, 144, 0, 0, 663, 0, 146, 147, 148, 149,
7467  664, 151, 0, 152, 0, 0, 665, 153, 666, 667,
7468  668, 154, 669, 0, 155, 156, 157, 0, 158, 0,
7469  159, 160, 0, 0, 161, 670, 671, 162, 163, 0,
7470  164, 672, 673, 166, 0, 167, 168, 169, 170, 674,
7471  172, 0, 675, 174, 0, 175, 176, 177, 178, 179,
7472  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
7473  188, 676, 190, 0, 677, 678, 191, 0, 0, 192,
7474  679, 193, 680, 0, 194, 681, 682, 0, 195, 196,
7475  197, 683, 684, 685, 0, 0, 0, 0, 686, 200,
7476  687, 0, 0, 688, 201, 202, 0, 203, 0, 0,
7477  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
7478  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
7479  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
7480  220, 221, 0, 222, 223, 224, 225, 226, 227, 689,
7481  0, 228, 229, 230, 231, 232, 690, 691, 233, 234,
7482  0, 235, 236, 237, 692, 0, 238, 0, 0, 0,
7483  693, 240, 0, 241, 0, 242, 0, 243, 694, 245,
7484  695, 0, 247, 0, 248, 0, 696, 0, 249, 250,
7485  0, 251, 697, 0, 252, 253, 0, 0, 0, 698,
7486  255, 256, 257, 699, 0, 258, 259, 260, 0, 0,
7487  261, 0, 0, 0, 700, 262, 263, 2676, 0, 0,
7488  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
7489  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
7490  0, 702, 273, 274, 0, 0, 0, 0, 0, 703,
7491  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
7492  704, 0, 0, 0, 0, 281, 0, 282, 283, 284,
7493  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
7494  295, 296, 297, 298, 0, 299, 300, 301, 705, 302,
7495  303, 304, 305, 706, 306, 307, 0, 0, 0, 0,
7496  308, 309, 310, 311, 707, 313, 0, 0, 708, 315,
7497  709, 316, 0, 317, 710, 711, 712, 713, 714, 322,
7498  323, 324, 325, 326, 0, 715, 327, 328, 0, 0,
7499  329, 330, 331, 332, 716, 717, 718, 333, 334, 0,
7500  719, 720, 335, 0, 336, 337, 721, 0, 339, 340,
7501  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
7502  0, 0, 343, 344, 345, 722, 346, 347, 0, 348,
7503  349, 723, 351, 352, 353, 354, 724, 725, 357, 726,
7504  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
7505  365, 366, 0, 727, 368, 369, 0, 0, 370, 0,
7506  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
7507  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
7508  385, 728, 729, 386, 0, 387, 0, 388, 389, 0,
7509  390, 391, 392, 0, 730, 0, 731, 394, 395, 396,
7510  397, 398, 732, 733, 401, 402, 403, 404, 0, 734,
7511  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
7512  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
7513  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
7514  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
7515  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
7516  434, 735, 736, 435, 436, 0, 437, 438, 737, 440,
7517  441, 442, 738, 739, 443, 444, 445, 446, 740, 447,
7518  448, 0, 0, 449, 450, 451, 452, 0, 741, 453,
7519  454, 0, 742, 743, 744, 745, 0, 0, 0, 0,
7520  0, 459, 460, 0, 746, 747, 748, 462, 463, 464,
7521  749, 465, 466, 750, 467, 468, 0, 469, 470, 0,
7522  0, 471, 0, 0, 472, 0, 473, 0, 751, 475,
7523  0, 0, 752, 753, 754, 755, 476, 0, 0, 477,
7524  756, 0, 757, 478, 479, 480, 758, 759, 0, 0,
7525  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
7526  0, 0, 760, 0, 0, 0, 761, 762, 0, 0,
7527  0, 0, 763, 764, 0, 0, 765, 766, 0, 0,
7528  767, 768, 137, 0, 662, 139, 140, 141, 142, 0,
7529  0, 143, 0, 0, 0, 144, 0, 0, 663, 0,
7530  146, 147, 148, 149, 664, 151, 0, 152, 0, 0,
7531  665, 153, 666, 667, 668, 154, 669, 0, 155, 156,
7532  157, 0, 158, 0, 159, 160, 0, 0, 161, 670,
7533  671, 162, 163, 0, 164, 672, 673, 166, 0, 167,
7534  168, 169, 170, 674, 172, 0, 675, 174, 0, 175,
7535  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
7536  185, 0, 186, 187, 188, 676, 190, 0, 677, 678,
7537  191, 0, 0, 192, 679, 193, 680, 0, 194, 681,
7538  682, 0, 195, 196, 197, 683, 684, 685, 0, 0,
7539  0, 0, 686, 200, 687, 0, 0, 688, 201, 202,
7540  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
7541  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
7542  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
7543  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
7544  225, 226, 227, 689, 0, 228, 229, 230, 231, 232,
7545  690, 691, 233, 234, 0, 235, 236, 237, 692, 0,
7546  238, 0, 0, 0, 693, 240, 0, 241, 0, 242,
7547  0, 243, 694, 245, 695, 0, 247, 0, 248, 0,
7548  696, 0, 249, 250, 0, 251, 697, 0, 252, 253,
7549  0, 0, 0, 698, 255, 256, 257, 699, 0, 258,
7550  259, 260, 0, 0, 261, 0, 0, 0, 700, 262,
7551  263, 2721, 0, 0, 264, 0, 0, 0, 265, 266,
7552  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
7553  271, 0, 0, 272, 0, 702, 273, 274, 0, 0,
7554  0, 0, 0, 703, 276, 0, 277, 0, 278, 0,
7555  279, 280, 0, 0, 704, 0, 0, 0, 0, 281,
7556  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
7557  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
7558  300, 301, 705, 302, 303, 304, 305, 706, 306, 307,
7559  0, 0, 0, 0, 308, 309, 310, 311, 707, 313,
7560  0, 0, 708, 315, 709, 316, 0, 317, 710, 711,
7561  712, 713, 714, 322, 323, 324, 325, 326, 0, 715,
7562  327, 328, 0, 0, 329, 330, 331, 332, 716, 717,
7563  718, 333, 334, 0, 719, 720, 335, 0, 336, 337,
7564  721, 0, 339, 340, 341, 0, 342, 0, 0, 0,
7565  0, 0, 0, 0, 0, 0, 343, 344, 345, 722,
7566  346, 347, 0, 348, 349, 723, 351, 352, 353, 354,
7567  724, 725, 357, 726, 0, 358, 359, 360, 0, 361,
7568  0, 362, 363, 364, 365, 366, 0, 727, 368, 369,
7569  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
7570  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
7571  382, 0, 383, 384, 385, 728, 729, 386, 0, 387,
7572  0, 388, 389, 0, 390, 391, 392, 0, 730, 0,
7573  731, 394, 395, 396, 397, 398, 732, 733, 401, 402,
7574  403, 404, 0, 734, 406, 0, 0, 0, 407, 408,
7575  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
7576  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
7577  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
7578  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
7579  430, 431, 432, 433, 434, 735, 736, 435, 436, 0,
7580  437, 438, 737, 440, 441, 442, 738, 739, 443, 444,
7581  445, 446, 740, 447, 448, 0, 0, 449, 450, 451,
7582  452, 0, 741, 453, 454, 0, 742, 743, 744, 745,
7583  0, 0, 0, 0, 0, 459, 460, 0, 746, 747,
7584  748, 462, 463, 464, 749, 465, 466, 750, 467, 468,
7585  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
7586  473, 0, 751, 475, 0, 0, 752, 753, 754, 755,
7587  476, 0, 0, 477, 756, 0, 757, 478, 479, 480,
7588  758, 759, 0, 0, 0, 0, 0, 0, 483, 484,
7589  0, 485, 486, 487, 0, 0, 760, 0, 0, 0,
7590  761, 762, 0, 0, 0, 0, 763, 764, 0, 0,
7591  765, 766, 0, 0, 767, 768, 137, 0, 662, 139,
7592  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
7593  0, 0, 663, 0, 146, 147, 148, 149, 664, 151,
7594  0, 152, 0, 0, 665, 153, 666, 667, 668, 154,
7595  669, 0, 155, 156, 157, 0, 158, 0, 159, 160,
7596  0, 0, 161, 670, 671, 162, 163, 0, 164, 672,
7597  673, 166, 0, 167, 168, 169, 170, 674, 172, 0,
7598  675, 174, 0, 175, 176, 177, 178, 179, 180, 181,
7599  182, 183, 0, 184, 185, 0, 186, 187, 188, 676,
7600  190, 0, 677, 678, 191, 0, 0, 192, 679, 193,
7601  680, 0, 194, 681, 682, 0, 195, 196, 197, 683,
7602  684, 685, 0, 0, 0, 0, 686, 200, 687, 0,
7603  0, 3511, 201, 202, 0, 203, 0, 0, 0, 204,
7604  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
7605  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
7606  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
7607  0, 222, 223, 224, 225, 226, 227, 689, 0, 228,
7608  229, 230, 231, 232, 690, 691, 233, 234, 0, 235,
7609  236, 237, 692, 0, 238, 0, 0, 0, 693, 240,
7610  0, 241, 0, 242, 0, 243, 694, 245, 695, 0,
7611  247, 0, 248, 0, 696, 0, 249, 250, 0, 251,
7612  697, 0, 252, 253, 0, 0, 0, 698, 255, 256,
7613  257, 699, 0, 258, 259, 260, 0, 0, 261, 0,
7614  0, 0, 700, 262, 263, 701, 0, 0, 264, 0,
7615  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
7616  269, 0, 0, 270, 271, 0, 0, 272, 0, 702,
7617  273, 274, 0, 0, 0, 0, 0, 703, 276, 0,
7618  277, 0, 278, 0, 279, 280, 0, 0, 704, 0,
7619  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
7620  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
7621  297, 298, 0, 299, 300, 301, 705, 302, 303, 304,
7622  305, 706, 306, 307, 0, 0, 0, 0, 308, 309,
7623  310, 311, 707, 313, 0, 0, 708, 315, 709, 316,
7624  0, 317, 710, 711, 712, 713, 714, 322, 323, 324,
7625  325, 326, 0, 715, 327, 328, 0, 0, 329, 330,
7626  331, 332, 716, 717, 718, 333, 334, 0, 719, 720,
7627  335, 0, 336, 337, 721, 0, 339, 340, 341, 0,
7628  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
7629  343, 344, 345, 722, 346, 347, 0, 348, 349, 723,
7630  351, 352, 353, 354, 724, 725, 357, 726, 0, 358,
7631  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
7632  0, 727, 368, 369, 0, 0, 370, 0, 0, 0,
7633  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
7634  379, 380, 0, 381, 382, 0, 383, 384, 385, 728,
7635  729, 386, 0, 387, 0, 388, 389, 0, 390, 391,
7636  392, 0, 730, 0, 731, 394, 395, 396, 397, 398,
7637  732, 733, 401, 402, 403, 404, 0, 734, 406, 0,
7638  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
7639  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
7640  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
7641  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
7642  428, 0, 0, 429, 430, 431, 432, 433, 434, 735,
7643  736, 435, 436, 0, 437, 438, 737, 440, 441, 442,
7644  738, 739, 443, 444, 445, 446, 740, 447, 448, 0,
7645  0, 449, 450, 451, 452, 0, 741, 453, 454, 0,
7646  742, 743, 744, 745, 0, 0, 0, 0, 0, 459,
7647  460, 0, 746, 747, 748, 462, 463, 464, 749, 465,
7648  466, 750, 467, 468, 0, 469, 470, 0, 0, 471,
7649  0, 0, 472, 0, 473, 0, 751, 475, 0, 0,
7650  752, 753, 754, 755, 476, 0, 0, 477, 756, 0,
7651  757, 478, 479, 480, 758, 759, 0, 0, 0, 0,
7652  0, 0, 483, 484, 0, 485, 486, 487, 0, 0,
7653  760, 0, 0, 0, 761, 762, 0, 0, 0, 0,
7654  763, 764, 0, 0, 765, 766, 0, 0, 767, 768,
7655  137, 0, 662, 139, 140, 141, 142, 0, 0, 143,
7656  0, 0, 0, 144, 0, 0, 663, 0, 146, 147,
7657  148, 149, 664, 151, 0, 152, 0, 0, 665, 153,
7658  666, 667, 668, 154, 669, 0, 155, 156, 157, 0,
7659  158, 0, 159, 160, 0, 0, 161, 670, 671, 162,
7660  163, 0, 164, 672, 673, 166, 0, 167, 168, 169,
7661  170, 674, 172, 0, 675, 174, 0, 175, 176, 177,
7662  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
7663  186, 187, 188, 676, 190, 0, 677, 678, 191, 0,
7664  0, 192, 679, 193, 680, 0, 194, 681, 682, 0,
7665  195, 196, 197, 683, 684, 685, 0, 0, 0, 0,
7666  686, 200, 687, 0, 0, 688, 201, 202, 0, 203,
7667  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
7668  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
7669  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
7670  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
7671  227, 689, 0, 228, 229, 230, 231, 232, 690, 691,
7672  233, 234, 0, 235, 236, 237, 692, 0, 238, 0,
7673  0, 0, 693, 240, 0, 241, 0, 242, 0, 243,
7674  694, 245, 695, 0, 247, 0, 248, 0, 696, 0,
7675  249, 250, 0, 251, 697, 0, 252, 253, 0, 0,
7676  0, 698, 255, 256, 257, 699, 0, 258, 259, 260,
7677  0, 0, 261, 0, 0, 0, 700, 262, 263, 701,
7678  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
7679  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
7680  0, 272, 0, 702, 273, 274, 0, 0, 0, 0,
7681  0, 703, 276, 0, 277, 0, 278, 0, 279, 280,
7682  0, 0, 704, 0, 0, 0, 0, 281, 0, 282,
7683  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
7684  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
7685  705, 302, 303, 304, 305, 706, 306, 307, 4380, 0,
7686  0, 0, 308, 309, 310, 311, 707, 313, 0, 0,
7687  708, 315, 709, 316, 0, 317, 710, 711, 712, 713,
7688  714, 322, 323, 324, 325, 326, 0, 715, 327, 328,
7689  0, 0, 329, 330, 331, 332, 716, 0, 718, 333,
7690  334, 0, 719, 720, 335, 0, 336, 337, 721, 0,
7691  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
7692  0, 0, 0, 0, 343, 344, 345, 722, 346, 347,
7693  0, 348, 349, 723, 351, 352, 353, 354, 724, 725,
7694  357, 726, 0, 358, 359, 360, 0, 361, 0, 362,
7695  363, 364, 365, 366, 0, 727, 368, 369, 0, 0,
7696  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
7697  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
7698  383, 384, 385, 728, 729, 386, 0, 387, 0, 388,
7699  389, 0, 390, 391, 392, 0, 730, 0, 731, 394,
7700  395, 396, 397, 398, 732, 733, 401, 402, 403, 404,
7701  0, 734, 406, 0, 0, 0, 407, 408, 409, 410,
7702  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
7703  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
7704  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
7705  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
7706  432, 433, 434, 735, 736, 435, 436, 0, 437, 438,
7707  737, 440, 441, 442, 738, 739, 443, 444, 445, 446,
7708  740, 447, 448, 0, 0, 449, 450, 451, 452, 0,
7709  741, 453, 454, 0, 742, 743, 744, 745, 0, 0,
7710  0, 0, 0, 459, 460, 0, 746, 747, 748, 462,
7711  463, 464, 749, 465, 466, 750, 467, 468, 0, 469,
7712  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
7713  751, 475, 0, 0, 752, 753, 754, 755, 476, 0,
7714  0, 477, 756, 0, 757, 478, 479, 480, 758, 759,
7715  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
7716  486, 487, 0, 0, 760, 0, 0, 0, 761, 762,
7717  0, 0, 0, 0, 763, 764, 0, 0, 765, 766,
7718  0, 0, 767, 768, 137, 0, 662, 139, 140, 141,
7719  142, 0, 0, 143, 0, 0, 0, 144, 0, 0,
7720  663, 0, 146, 147, 148, 149, 664, 151, 0, 152,
7721  0, 0, 665, 153, 666, 667, 668, 154, 669, 0,
7722  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
7723  161, 670, 671, 162, 163, 0, 164, 672, 673, 166,
7724  0, 167, 168, 169, 170, 674, 172, 0, 675, 174,
7725  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
7726  0, 184, 185, 0, 186, 187, 188, 676, 190, 0,
7727  677, 678, 191, 0, 0, 192, 679, 193, 680, 0,
7728  194, 681, 682, 0, 195, 196, 197, 683, 684, 685,
7729  0, 0, 0, 0, 686, 200, 687, 0, 0, 688,
7730  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
7731  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
7732  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
7733  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
7734  223, 224, 225, 226, 227, 689, 0, 228, 229, 230,
7735  231, 232, 690, 691, 233, 234, 0, 235, 236, 237,
7736  692, 0, 238, 0, 0, 0, 693, 240, 0, 241,
7737  0, 242, 0, 243, 694, 245, 695, 0, 247, 0,
7738  248, 0, 696, 0, 249, 250, 0, 251, 697, 0,
7739  252, 253, 0, 0, 0, 698, 255, 256, 257, 699,
7740  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
7741  700, 262, 263, 701, 0, 0, 264, 0, 0, 0,
7742  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
7743  0, 270, 271, 0, 0, 272, 0, 702, 273, 274,
7744  0, 0, 0, 0, 0, 703, 276, 0, 277, 0,
7745  278, 0, 279, 280, 0, 0, 704, 0, 0, 0,
7746  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
7747  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
7748  0, 299, 300, 301, 705, 302, 303, 304, 305, 706,
7749  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
7750  707, 313, 0, 0, 708, 315, 709, 316, 0, 317,
7751  710, 711, 712, 713, 714, 322, 323, 324, 325, 326,
7752  0, 715, 327, 328, 0, 0, 329, 330, 331, 332,
7753  716, 0, 718, 333, 334, 0, 719, 720, 335, 0,
7754  336, 337, 721, 0, 339, 340, 341, 0, 342, 0,
7755  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
7756  345, 722, 346, 347, 0, 348, 349, 723, 351, 352,
7757  353, 354, 724, 725, 357, 726, 0, 358, 359, 360,
7758  0, 361, 0, 362, 363, 364, 365, 366, 0, 727,
7759  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
7760  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
7761  0, 381, 382, 0, 383, 384, 385, 728, 729, 386,
7762  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
7763  730, 0, 731, 394, 395, 396, 397, 398, 732, 733,
7764  401, 402, 403, 404, 0, 734, 406, 0, 0, 0,
7765  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
7766  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
7767  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
7768  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
7769  0, 429, 430, 431, 432, 433, 434, 735, 736, 435,
7770  436, 0, 437, 438, 737, 440, 441, 442, 738, 739,
7771  443, 444, 445, 446, 740, 447, 448, 0, 0, 449,
7772  450, 451, 452, 0, 741, 453, 454, 0, 742, 743,
7773  744, 745, 0, 0, 0, 0, 0, 459, 460, 0,
7774  746, 747, 748, 462, 463, 464, 749, 465, 466, 750,
7775  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
7776  472, 0, 473, 0, 751, 475, 0, 0, 752, 753,
7777  754, 755, 476, 0, 0, 477, 756, 0, 757, 478,
7778  479, 480, 758, 759, 0, 0, 0, 0, 0, 0,
7779  483, 484, 0, 485, 486, 487, 0, 0, 760, 0,
7780  0, 0, 761, 762, 0, 0, 0, 0, 763, 764,
7781  0, 0, 765, 766, 0, 0, 767, 768, 137, 0,
7782  662, 139, 140, 141, 142, 0, 0, 143, 0, 0,
7783  0, 144, 0, 0, 663, 0, 146, 147, 148, 149,
7784  664, 151, 0, 152, 0, 0, 665, 153, 666, 667,
7785  668, 154, 669, 0, 155, 156, 157, 0, 158, 0,
7786  159, 160, 0, 0, 161, 670, 671, 162, 163, 0,
7787  164, 672, 673, 166, 0, 167, 168, 169, 170, 674,
7788  172, 0, 675, 174, 0, 175, 176, 177, 178, 179,
7789  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
7790  188, 676, 190, 0, 677, 678, 191, 0, 0, 192,
7791  679, 193, 680, 0, 194, 681, 682, 0, 195, 196,
7792  197, 683, 684, 685, 0, 0, 0, 0, 686, 200,
7793  687, 0, 0, 688, 201, 202, 0, 203, 0, 0,
7794  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
7795  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
7796  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
7797  220, 221, 0, 222, 223, 224, 225, 226, 227, 689,
7798  0, 228, 229, 230, 231, 232, 690, 691, 233, 234,
7799  0, 235, 236, 237, 692, 0, 238, 0, 0, 0,
7800  693, 240, 0, 241, 0, 242, 0, 243, 694, 245,
7801  695, 0, 247, 0, 248, 0, 696, 0, 249, 250,
7802  0, 251, 697, 0, 252, 253, 0, 0, 0, 698,
7803  255, 256, 257, 699, 0, 258, 259, 260, 0, 0,
7804  261, 0, 0, 0, 700, 262, 263, 1714, 0, 0,
7805  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
7806  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
7807  0, 702, 273, 274, 0, 0, 0, 0, 0, 703,
7808  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
7809  704, 0, 0, 0, 0, 281, 0, 282, 283, 284,
7810  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
7811  295, 296, 297, 298, 0, 299, 300, 301, 705, 302,
7812  303, 304, 305, 706, 306, 307, 0, 0, 0, 0,
7813  308, 309, 310, 311, 707, 313, 0, 0, 708, 315,
7814  709, 316, 0, 317, 710, 711, 712, 713, 714, 322,
7815  323, 324, 325, 326, 0, 715, 327, 328, 0, 0,
7816  329, 330, 331, 332, 716, 0, 718, 333, 334, 0,
7817  719, 720, 335, 0, 336, 337, 721, 0, 339, 340,
7818  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
7819  0, 0, 343, 344, 345, 722, 346, 347, 0, 348,
7820  349, 723, 351, 352, 353, 354, 724, 725, 357, 726,
7821  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
7822  365, 366, 0, 727, 368, 369, 0, 0, 370, 0,
7823  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
7824  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
7825  385, 728, 729, 386, 0, 387, 0, 388, 389, 0,
7826  390, 391, 392, 0, 730, 0, 731, 394, 395, 396,
7827  397, 398, 732, 733, 401, 402, 403, 404, 0, 734,
7828  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
7829  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
7830  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
7831  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
7832  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
7833  434, 735, 736, 435, 436, 0, 437, 438, 737, 440,
7834  441, 442, 738, 739, 443, 444, 445, 446, 740, 447,
7835  448, 0, 0, 449, 450, 451, 452, 0, 741, 453,
7836  454, 0, 742, 743, 744, 745, 0, 0, 0, 0,
7837  0, 459, 460, 0, 746, 747, 748, 462, 463, 464,
7838  749, 465, 466, 750, 467, 468, 0, 469, 470, 0,
7839  0, 471, 0, 0, 472, 0, 473, 0, 751, 475,
7840  0, 0, 752, 753, 754, 755, 476, 0, 0, 477,
7841  756, 0, 757, 478, 479, 480, 758, 759, 0, 0,
7842  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
7843  0, 0, 760, 0, 0, 0, 761, 762, 0, 0,
7844  0, 0, 763, 764, 0, 0, 765, 766, 0, 0,
7845  767, 768, 137, 0, 662, 139, 140, 141, 142, 0,
7846  0, 143, 0, 0, 0, 144, 0, 0, 663, 0,
7847  146, 147, 148, 149, 664, 151, 0, 152, 0, 0,
7848  665, 153, 666, 667, 668, 154, 669, 0, 155, 156,
7849  157, 0, 158, 0, 159, 160, 0, 0, 161, 670,
7850  671, 162, 163, 0, 164, 672, 673, 166, 0, 167,
7851  168, 169, 170, 674, 172, 0, 675, 174, 0, 175,
7852  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
7853  185, 0, 186, 187, 188, 676, 190, 0, 677, 678,
7854  191, 0, 0, 192, 679, 193, 680, 0, 194, 681,
7855  682, 0, 195, 196, 197, 683, 684, 685, 0, 0,
7856  0, 0, 686, 200, 687, 0, 0, 688, 201, 202,
7857  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
7858  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
7859  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
7860  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
7861  225, 226, 227, 689, 0, 228, 229, 230, 231, 232,
7862  690, 691, 233, 234, 0, 235, 236, 237, 692, 0,
7863  238, 0, 0, 0, 693, 240, 0, 241, 0, 242,
7864  0, 243, 694, 245, 695, 0, 247, 0, 248, 0,
7865  696, 0, 249, 250, 0, 251, 697, 0, 252, 253,
7866  0, 0, 0, 698, 255, 256, 257, 699, 0, 258,
7867  259, 260, 0, 0, 261, 0, 0, 0, 700, 262,
7868  263, 1716, 0, 0, 264, 0, 0, 0, 265, 266,
7869  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
7870  271, 0, 0, 272, 0, 702, 273, 274, 0, 0,
7871  0, 0, 0, 703, 276, 0, 277, 0, 278, 0,
7872  279, 280, 0, 0, 704, 0, 0, 0, 0, 281,
7873  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
7874  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
7875  300, 301, 705, 302, 303, 304, 305, 706, 306, 307,
7876  0, 0, 0, 0, 308, 309, 310, 311, 707, 313,
7877  0, 0, 708, 315, 709, 316, 0, 317, 710, 711,
7878  712, 713, 714, 322, 323, 324, 325, 326, 0, 715,
7879  327, 328, 0, 0, 329, 330, 331, 332, 716, 0,
7880  718, 333, 334, 0, 719, 720, 335, 0, 336, 337,
7881  721, 0, 339, 340, 341, 0, 342, 0, 0, 0,
7882  0, 0, 0, 0, 0, 0, 343, 344, 345, 722,
7883  346, 347, 0, 348, 349, 723, 351, 352, 353, 354,
7884  724, 725, 357, 726, 0, 358, 359, 360, 0, 361,
7885  0, 362, 363, 364, 365, 366, 0, 727, 368, 369,
7886  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
7887  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
7888  382, 0, 383, 384, 385, 728, 729, 386, 0, 387,
7889  0, 388, 389, 0, 390, 391, 392, 0, 730, 0,
7890  731, 394, 395, 396, 397, 398, 732, 733, 401, 402,
7891  403, 404, 0, 734, 406, 0, 0, 0, 407, 408,
7892  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
7893  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
7894  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
7895  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
7896  430, 431, 432, 433, 434, 735, 736, 435, 436, 0,
7897  437, 438, 737, 440, 441, 442, 738, 739, 443, 444,
7898  445, 446, 740, 447, 448, 0, 0, 449, 450, 451,
7899  452, 0, 741, 453, 454, 0, 742, 743, 744, 745,
7900  0, 0, 0, 0, 0, 459, 460, 0, 746, 747,
7901  748, 462, 463, 464, 749, 465, 466, 750, 467, 468,
7902  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
7903  473, 0, 751, 475, 0, 0, 752, 753, 754, 755,
7904  476, 0, 0, 477, 756, 0, 757, 478, 479, 480,
7905  758, 759, 0, 0, 0, 0, 0, 0, 483, 484,
7906  0, 485, 486, 487, 0, 0, 760, 0, 0, 0,
7907  761, 762, 0, 0, 0, 0, 763, 764, 0, 0,
7908  765, 766, 0, 0, 767, 768, 137, 0, 138, 139,
7909  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
7910  0, 0, 145, 0, 146, 147, 148, 149, 150, 151,
7911  0, 152, 0, 0, 0, 153, 666, 0, 0, 154,
7912  0, 0, 155, 156, 157, 0, 158, 0, 159, 160,
7913  0, 0, 161, 0, 0, 162, 163, 0, 164, 165,
7914  0, 166, 0, 167, 168, 169, 170, 171, 172, 0,
7915  173, 174, 0, 175, 176, 177, 178, 179, 180, 181,
7916  182, 183, 0, 184, 185, 0, 186, 187, 188, 189,
7917  190, 0, 0, 0, 191, 0, 0, 192, 0, 193,
7918  0, 0, 194, 0, 0, 0, 195, 196, 197, 0,
7919  0, 1752, 0, 0, 0, 0, 199, 200, 687, 0,
7920  0, 0, 201, 202, 0, 203, 0, 0, 0, 204,
7921  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
7922  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
7923  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
7924  0, 222, 223, 224, 225, 226, 227, 0, 0, 228,
7925  229, 230, 231, 232, 0, 691, 233, 234, 0, 235,
7926  236, 237, 692, 0, 238, 0, 0, 0, 239, 240,
7927  0, 241, 0, 242, 0, 243, 244, 245, 246, 0,
7928  247, 0, 248, 0, 0, 0, 249, 250, 0, 251,
7929  697, 0, 252, 253, 0, 0, 0, 254, 255, 256,
7930  257, 0, 0, 258, 259, 260, 0, 0, 261, 0,
7931  0, 0, 0, 262, 263, 0, 0, 0, 264, 0,
7932  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
7933  269, 0, 0, 270, 271, 0, 0, 272, 0, 0,
7934  273, 274, 0, 0, 0, 0, 0, 275, 276, 0,
7935  277, 0, 278, 0, 279, 280, 0, 0, 704, 0,
7936  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
7937  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
7938  297, 298, 0, 299, 300, 301, 0, 302, 303, 304,
7939  305, 0, 306, 307, 0, 0, 0, 0, 308, 309,
7940  310, 311, 312, 313, 0, 0, 314, 315, 0, 316,
7941  0, 317, 0, 318, 319, 320, 321, 322, 323, 324,
7942  325, 326, 0, 715, 327, 328, 0, 0, 329, 330,
7943  331, 332, 0, 0, 0, 333, 334, 0, 719, 720,
7944  335, 0, 336, 337, 338, 0, 339, 340, 341, 0,
7945  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
7946  343, 344, 345, 0, 346, 347, 0, 348, 349, 350,
7947  351, 352, 353, 354, 355, 356, 357, 0, 0, 358,
7948  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
7949  0, 367, 368, 369, 0, 0, 370, 0, 0, 0,
7950  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
7951  379, 380, 0, 381, 382, 0, 383, 384, 385, 0,
7952  0, 386, 0, 387, 0, 388, 389, 0, 390, 391,
7953  392, 0, 393, 0, 0, 394, 395, 396, 397, 398,
7954  399, 400, 401, 402, 403, 404, 0, 405, 406, 0,
7955  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
7956  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
7957  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
7958  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
7959  428, 0, 0, 429, 430, 431, 432, 433, 434, 0,
7960  0, 435, 436, 0, 437, 438, 439, 440, 441, 442,
7961  0, 0, 443, 444, 445, 446, 0, 447, 448, 0,
7962  0, 449, 450, 451, 452, 0, 741, 453, 454, 0,
7963  1753, 456, 457, 1754, 0, 0, 0, 0, 0, 459,
7964  460, 0, 0, 747, 461, 462, 463, 464, 749, 465,
7965  466, 750, 467, 468, 0, 469, 470, 0, 0, 471,
7966  0, 0, 472, 0, 473, 0, 474, 475, 0, 0,
7967  0, 0, 0, 0, 476, 0, 0, 477, 0, 0,
7968  0, 478, 479, 480, 481, 482, 0, 0, 0, 0,
7969  0, 0, 483, 484, 0, 485, 486, 487, 0, 0,
7970  488, 0, 0, 0, 137, 0, 138, 139, 140, 141,
7971  142, 0, 0, 143, 0, 0, 0, 144, 767, 768,
7972  145, 0, 146, 147, 148, 149, 150, 151, 0, 152,
7973  0, 0, 0, 153, 0, 0, 0, 154, 0, 0,
7974  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
7975  161, 0, 0, 162, 163, 0, 164, 165, 0, 166,
7976  0, 167, 168, 169, 170, 171, 172, 0, 173, 174,
7977  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
7978  0, 184, 185, 2508, 186, 187, 188, 189, 190, 0,
7979  0, 0, 191, 0, 0, 192, 0, 193, 0, 0,
7980  194, 0, 0, 0, 195, 196, 197, 0, 0, 198,
7981  0, 0, 0, 0, 199, 200, 0, 0, 0, 0,
7982  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
7983  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
7984  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
7985  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
7986  223, 224, 225, 226, 227, 0, 0, 228, 229, 230,
7987  231, 232, 0, 0, 233, 234, 0, 235, 236, 237,
7988  0, 0, 238, 0, 0, 0, 239, 240, 0, 241,
7989  502, 242, 0, 243, 244, 245, 246, 0, 247, 0,
7990  248, 0, 0, 0, 249, 250, 0, 251, 0, 0,
7991  252, 253, 0, 0, 0, 254, 255, 256, 257, 0,
7992  0, 258, 259, 260, 2063, 0, 261, 0, 0, 0,
7993  0, 262, 263, 0, 0, 0, 264, 0, 0, 0,
7994  265, 266, 0, 267, 268, 0, 0, 0, 269, 2064,
7995  0, 270, 271, 0, 0, 272, 0, 0, 273, 274,
7996  0, 3078, 0, 0, 0, 275, 276, 0, 277, 0,
7997  278, 0, 279, 280, 0, 0, 0, 0, 0, 0,
7998  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
7999  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
8000  0, 299, 300, 301, 0, 302, 303, 304, 305, 0,
8001  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
8002  312, 313, 0, 0, 314, 315, 0, 316, 0, 317,
8003  0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
8004  0, 0, 327, 328, 0, 0, 329, 330, 331, 332,
8005  0, 0, 0, 333, 334, 0, 0, 0, 335, 0,
8006  336, 337, 338, 0, 339, 340, 341, 0, 342, 0,
8007  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
8008  345, 0, 346, 347, 2019, 348, 349, 350, 351, 352,
8009  353, 354, 355, 356, 357, 0, 0, 358, 359, 360,
8010  0, 361, 0, 362, 363, 364, 365, 366, 0, 367,
8011  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
8012  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
8013  0, 381, 382, 0, 383, 384, 385, 0, 0, 386,
8014  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
8015  393, 0, 0, 394, 395, 396, 397, 398, 399, 400,
8016  401, 402, 403, 404, 0, 405, 406, -478, 0, 0,
8017  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
8018  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
8019  419, 420, 421, 505, 0, 0, 0, 0, 422, 423,
8020  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
8021  0, 429, 430, 431, 432, 433, 434, 0, 0, 435,
8022  436, 0, 437, 438, 439, 440, 441, 442, 0, 0,
8023  443, 444, 445, 446, 0, 447, 448, 0, 0, 449,
8024  450, 451, 452, 0, 0, 453, 454, 0, 455, 456,
8025  457, 458, 0, 0, 0, 0, 0, 459, 460, 0,
8026  0, 0, 461, 462, 463, 464, 0, 465, 466, 0,
8027  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
8028  472, 0, 473, 0, 474, 475, 0, 0, 0, 0,
8029  0, 0, 476, 0, 0, 477, 0, 0, 0, 478,
8030  479, 480, 481, 482, 0, 0, 0, 0, 0, 0,
8031  483, 484, 0, 485, 486, 487, 0, 0, 488, 0,
8032  137, 0, 138, 139, 140, 141, 142, 0, 0, 143,
8033  0, 0, 0, 144, 0, 0, 145, 2579, 146, 147,
8034  148, 149, 150, 151, 0, 152, 0, 0, 0, 153,
8035  0, 0, 0, 154, 0, 0, 155, 156, 157, 0,
8036  158, 0, 159, 160, 0, 0, 161, 0, 0, 162,
8037  163, 0, 164, 165, 0, 166, 0, 167, 168, 169,
8038  170, 171, 172, 0, 173, 174, 0, 175, 176, 177,
8039  178, 179, 180, 181, 182, 183, 0, 184, 185, 2508,
8040  186, 187, 188, 189, 190, 0, 0, 0, 191, 0,
8041  0, 192, 0, 193, 0, 0, 194, 0, 0, 0,
8042  195, 196, 197, 0, 0, 198, 0, 0, 0, 0,
8043  199, 200, 0, 0, 0, 0, 201, 202, 0, 203,
8044  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
8045  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
8046  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
8047  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
8048  227, 0, 0, 228, 229, 230, 231, 232, 0, 0,
8049  233, 234, 0, 235, 236, 237, 0, 0, 238, 0,
8050  0, 0, 239, 240, 0, 241, 502, 242, 0, 243,
8051  244, 245, 246, 0, 247, 0, 248, 0, 0, 0,
8052  249, 250, 0, 251, 0, 0, 252, 253, 0, 0,
8053  0, 254, 255, 256, 257, 0, 0, 258, 259, 260,
8054  2063, 0, 261, 0, 0, 0, 0, 262, 263, 0,
8055  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
8056  268, 0, 0, 0, 269, 2064, 0, 270, 271, 0,
8057  0, 272, 0, 0, 273, 274, 0, 0, 0, 0,
8058  0, 275, 276, 0, 277, 0, 278, 0, 279, 280,
8059  0, 0, 0, 0, 0, 0, 0, 281, 0, 282,
8060  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
8061  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
8062  0, 302, 303, 304, 305, 0, 306, 307, 0, 0,
8063  0, 0, 308, 309, 310, 311, 312, 313, 0, 0,
8064  314, 315, 0, 316, 0, 317, 0, 318, 319, 320,
8065  321, 322, 323, 324, 325, 326, 0, 0, 327, 328,
8066  0, 0, 329, 330, 331, 332, 0, 0, 0, 333,
8067  334, 0, 0, 0, 335, 0, 336, 337, 338, 0,
8068  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
8069  0, 0, 0, 0, 343, 344, 345, 0, 346, 347,
8070  0, 348, 349, 350, 351, 352, 353, 354, 355, 356,
8071  357, 0, 0, 358, 359, 360, 0, 361, 0, 362,
8072  363, 364, 365, 366, 0, 367, 368, 369, 0, 0,
8073  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
8074  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
8075  383, 384, 385, 0, 0, 386, 0, 387, 0, 388,
8076  389, 0, 390, 391, 392, 0, 393, 0, 0, 394,
8077  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
8078  0, 405, 406, 0, 0, 0, 407, 408, 409, 410,
8079  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
8080  414, 415, 416, 0, 417, 418, 419, 420, 421, 505,
8081  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
8082  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
8083  432, 433, 434, 0, 0, 435, 436, 0, 437, 438,
8084  439, 440, 441, 442, 0, 0, 443, 444, 445, 446,
8085  0, 447, 448, 0, 0, 449, 450, 451, 452, 0,
8086  0, 453, 454, 0, 455, 456, 457, 458, 0, 0,
8087  0, 0, 0, 459, 460, 0, 0, 0, 461, 462,
8088  463, 464, 0, 465, 466, 0, 467, 468, 0, 469,
8089  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
8090  474, 475, 0, 0, 0, 0, 0, 0, 476, 0,
8091  0, 477, 0, 0, 0, 478, 479, 480, 481, 482,
8092  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
8093  486, 487, 0, 0, 488, 0, 137, 0, 138, 139,
8094  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
8095  0, 0, 145, 2579, 146, 147, 148, 149, 150, 151,
8096  0, 152, 0, 0, 0, 153, 0, 0, 0, 154,
8097  0, 0, 155, 156, 157, 0, 158, 0, 159, 160,
8098  0, 0, 161, 0, 0, 162, 163, 0, 164, 165,
8099  0, 166, 0, 167, 168, 169, 170, 171, 172, 0,
8100  173, 174, 0, 175, 176, 177, 178, 179, 180, 181,
8101  182, 183, 0, 184, 185, 0, 186, 187, 188, 189,
8102  190, 0, 0, 0, 191, 0, 0, 192, 0, 193,
8103  0, 0, 194, 0, 0, 0, 195, 196, 197, 0,
8104  0, 198, 0, 0, 0, 0, 199, 200, 0, 0,
8105  0, 0, 201, 202, 0, 203, 0, 0, 0, 204,
8106  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
8107  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
8108  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
8109  0, 222, 223, 224, 225, 226, 227, 0, 0, 228,
8110  229, 230, 231, 232, 0, 0, 233, 234, 0, 235,
8111  236, 237, 0, 0, 238, 0, 0, 0, 239, 240,
8112  0, 241, 0, 242, 0, 243, 244, 245, 246, 0,
8113  247, 0, 248, 0, 0, 0, 249, 250, 0, 251,
8114  0, 0, 252, 253, 0, 0, 0, 254, 255, 256,
8115  257, 0, 0, 258, 259, 260, 0, 0, 261, 0,
8116  0, 0, 0, 262, 263, 0, 0, 0, 264, 0,
8117  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
8118  269, 0, 0, 270, 271, 0, 0, 272, 0, 0,
8119  273, 274, 0, 0, 0, 0, 0, 275, 276, 0,
8120  277, 0, 278, 0, 279, 280, 0, 0, 0, 0,
8121  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
8122  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
8123  297, 298, 0, 299, 300, 301, 0, 302, 303, 304,
8124  305, 0, 306, 307, 0, 0, 0, 0, 308, 309,
8125  310, 311, 312, 313, 0, 0, 314, 315, 0, 316,
8126  0, 317, 0, 318, 319, 320, 321, 322, 323, 324,
8127  325, 326, 0, 0, 327, 328, 0, 0, 329, 330,
8128  331, 332, 0, 0, 0, 333, 334, 0, 0, 0,
8129  335, 0, 336, 337, 338, 0, 339, 340, 341, 0,
8130  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8131  343, 344, 345, 0, 346, 347, 0, 348, 349, 350,
8132  351, 352, 353, 354, 355, 356, 357, 0, 0, 358,
8133  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
8134  0, 367, 368, 369, 0, 0, 370, 0, 0, 0,
8135  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
8136  379, 380, 0, 381, 382, 0, 383, 384, 385, 0,
8137  0, 386, 0, 387, 0, 388, 389, 0, 390, 391,
8138  392, 0, 393, 0, 0, 394, 395, 396, 397, 398,
8139  399, 400, 401, 402, 403, 404, 0, 405, 406, 2367,
8140  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
8141  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
8142  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
8143  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
8144  428, 0, 0, 429, 430, 431, 432, 433, 434, 0,
8145  0, 435, 436, 0, 437, 438, 439, 440, 441, 442,
8146  0, 0, 443, 444, 445, 446, 0, 447, 448, 0,
8147  0, 449, 450, 451, 452, 0, 0, 453, 454, 0,
8148  455, 456, 457, 458, 0, 0, 0, 0, 0, 459,
8149  460, 0, 0, 0, 461, 462, 463, 464, 0, 465,
8150  466, 0, 467, 468, 0, 469, 470, 0, 0, 471,
8151  0, 0, 472, 0, 473, 0, 474, 475, 0, 0,
8152  0, 0, 0, 0, 476, 0, 0, 477, 0, 0,
8153  0, 478, 479, 480, 481, 482, 0, 0, 0, 0,
8154  0, 0, 483, 484, 0, 485, 486, 487, 0, 0,
8155  488, 0, 137, 0, 138, 139, 140, 141, 142, 0,
8156  0, 143, 2826, 0, 0, 144, 0, 0, 145, 768,
8157  146, 147, 148, 149, 150, 151, 0, 152, 0, 0,
8158  0, 153, 0, 0, 0, 154, 0, 0, 155, 156,
8159  157, 0, 158, 0, 159, 160, 0, 0, 161, 0,
8160  0, 162, 163, 0, 164, 165, 0, 166, 0, 167,
8161  168, 169, 170, 171, 172, 0, 173, 174, 0, 175,
8162  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
8163  185, 0, 186, 187, 188, 189, 190, 0, 0, 0,
8164  191, 0, 0, 192, 0, 193, 0, 0, 194, 0,
8165  0, 0, 195, 196, 197, 0, 0, 198, 0, 0,
8166  0, 0, 199, 200, 0, 0, 0, 0, 201, 202,
8167  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
8168  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
8169  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
8170  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
8171  225, 226, 227, 0, 0, 228, 229, 230, 231, 232,
8172  0, 0, 233, 234, 0, 235, 236, 237, 0, 0,
8173  238, 0, 0, 0, 239, 240, 0, 241, 0, 242,
8174  0, 243, 244, 245, 246, 0, 247, 0, 248, 0,
8175  0, 0, 249, 250, 0, 251, 0, 0, 252, 253,
8176  0, 0, 0, 254, 255, 256, 257, 0, 0, 258,
8177  259, 260, 0, 0, 261, 0, 0, 0, 0, 262,
8178  263, 0, 0, 0, 264, 0, 0, 0, 265, 266,
8179  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
8180  271, 0, 0, 272, 0, 0, 273, 274, 0, 0,
8181  0, 0, 0, 275, 276, 0, 277, 0, 278, 0,
8182  279, 280, 0, 0, 0, 0, 0, 0, 0, 281,
8183  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
8184  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
8185  300, 301, 0, 302, 303, 304, 305, 0, 306, 307,
8186  0, 0, 0, 0, 308, 309, 310, 311, 312, 313,
8187  0, 0, 314, 315, 0, 316, 0, 317, 0, 318,
8188  319, 320, 321, 322, 323, 324, 325, 326, 0, 0,
8189  327, 328, 0, 0, 329, 330, 331, 332, 0, 0,
8190  0, 333, 334, 0, 0, 0, 335, 0, 336, 337,
8191  338, 0, 339, 340, 341, 0, 342, 0, 0, 0,
8192  0, 0, 0, 0, 0, 0, 343, 344, 345, 0,
8193  346, 347, 0, 348, 349, 350, 351, 352, 353, 354,
8194  355, 356, 357, 0, 0, 358, 359, 360, 0, 361,
8195  0, 362, 363, 364, 365, 366, 0, 367, 368, 369,
8196  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
8197  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
8198  382, 0, 383, 384, 385, 0, 0, 386, 0, 387,
8199  0, 388, 389, 0, 390, 391, 392, 0, 393, 0,
8200  0, 394, 395, 396, 397, 398, 399, 400, 401, 402,
8201  403, 404, 0, 405, 406, 0, 0, 0, 407, 408,
8202  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
8203  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
8204  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
8205  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
8206  430, 431, 432, 433, 434, 0, 0, 435, 436, 0,
8207  437, 438, 439, 440, 441, 442, 0, 0, 443, 444,
8208  445, 446, 0, 447, 448, 0, 0, 449, 450, 451,
8209  452, 0, 0, 453, 454, 0, 455, 456, 457, 458,
8210  0, 0, 0, 0, 0, 459, 460, 0, 0, 0,
8211  461, 462, 463, 464, 0, 465, 466, 0, 467, 468,
8212  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
8213  473, 0, 474, 475, 0, 0, 0, 0, 0, 0,
8214  476, 0, 0, 477, 0, 0, 0, 478, 479, 480,
8215  481, 482, 0, 0, 0, 0, 0, 0, 483, 484,
8216  0, 485, 486, 487, 0, 0, 488, 0, 0, 0,
8217  137, 0, 138, 139, 140, 141, 142, 0, 4509, 143,
8218  0, 0, 0, 144, 4510, 768, 145, 0, 146, 147,
8219  148, 149, 150, 151, 0, 152, 0, 0, 0, 153,
8220  0, 0, 0, 154, 0, 0, 155, 156, 157, 0,
8221  158, 0, 159, 160, 0, 0, 161, 0, 0, 162,
8222  163, 0, 164, 165, 0, 166, 0, 167, 168, 169,
8223  170, 171, 172, 0, 173, 174, 0, 175, 176, 177,
8224  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
8225  186, 187, 188, 189, 190, 0, 0, 0, 191, 0,
8226  0, 192, 0, 193, 0, 0, 194, 0, 0, 0,
8227  195, 196, 197, 0, 0, 198, 0, 0, 0, 0,
8228  199, 200, 0, 0, 0, 0, 201, 202, 0, 203,
8229  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
8230  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
8231  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
8232  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
8233  227, 0, 0, 228, 229, 230, 231, 232, 0, 0,
8234  233, 234, 0, 235, 236, 237, 0, 0, 238, 0,
8235  0, 0, 239, 240, 0, 241, 0, 242, 0, 243,
8236  244, 245, 246, 0, 247, 0, 248, 0, 0, 0,
8237  249, 250, 0, 251, 0, 0, 252, 253, 0, 0,
8238  0, 254, 255, 256, 257, 0, 0, 258, 259, 260,
8239  0, 0, 261, 0, 0, 0, 0, 262, 263, 0,
8240  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
8241  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
8242  0, 272, 0, 0, 273, 274, 0, 0, 0, 0,
8243  0, 275, 276, 0, 277, 0, 278, 0, 279, 280,
8244  0, 0, 0, 0, 0, 0, 0, 281, 0, 282,
8245  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
8246  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
8247  0, 302, 303, 304, 305, 0, 306, 307, 0, 0,
8248  0, 0, 308, 309, 310, 311, 312, 313, 0, 0,
8249  314, 315, 0, 316, 0, 317, 0, 318, 319, 320,
8250  321, 322, 323, 324, 325, 326, 0, 0, 327, 328,
8251  0, 0, 329, 330, 331, 332, 0, 0, 0, 333,
8252  334, 0, 0, 0, 335, 0, 336, 337, 338, 0,
8253  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
8254  0, 0, 0, 0, 343, 344, 345, 0, 346, 347,
8255  0, 348, 349, 350, 351, 352, 353, 354, 355, 356,
8256  357, 0, 0, 358, 359, 360, 0, 361, 0, 362,
8257  363, 364, 365, 366, 0, 367, 368, 369, 0, 0,
8258  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
8259  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
8260  383, 384, 385, 0, 0, 386, 0, 387, 0, 388,
8261  389, 0, 390, 391, 392, 0, 393, 0, 0, 394,
8262  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
8263  0, 405, 406, 0, 0, 0, 407, 408, 409, 410,
8264  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
8265  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
8266  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
8267  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
8268  432, 433, 434, 0, 0, 435, 436, 0, 437, 438,
8269  439, 440, 441, 442, 0, 0, 443, 444, 445, 446,
8270  0, 447, 448, 0, 0, 449, 450, 451, 452, 0,
8271  0, 453, 454, 0, 455, 456, 457, 458, 0, 0,
8272  0, 0, 0, 459, 460, 0, 0, 0, 461, 462,
8273  463, 464, 0, 465, 466, 0, 467, 468, 0, 469,
8274  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
8275  474, 475, 0, 0, 0, 0, 0, 0, 476, 0,
8276  0, 477, 0, 0, 0, 478, 479, 480, 481, 482,
8277  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
8278  486, 487, 0, 0, 488, 0, 0, 0, 137, 0,
8279  138, 139, 140, 141, 142, 1087, 0, 143, 0, 0,
8280  0, 144, 0, 768, 145, 0, 146, 147, 148, 149,
8281  150, 151, 0, 152, 0, 0, 0, 153, 0, 0,
8282  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
8283  159, 160, 0, 0, 161, 0, 0, 162, 163, 0,
8284  164, 165, 0, 166, 0, 167, 168, 169, 170, 171,
8285  172, 0, 173, 174, 0, 175, 176, 177, 178, 179,
8286  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
8287  188, 189, 190, 0, 0, 0, 191, 0, 0, 192,
8288  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
8289  197, 0, 0, 198, 0, 0, 0, 0, 199, 200,
8290  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
8291  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
8292  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
8293  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
8294  220, 221, 0, 222, 223, 224, 225, 226, 227, 0,
8295  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
8296  0, 235, 236, 237, 0, 0, 238, 0, 0, 0,
8297  239, 240, 0, 241, 0, 242, 0, 243, 244, 245,
8298  246, 0, 247, 0, 248, 0, 0, 0, 249, 250,
8299  0, 251, 0, 0, 252, 253, 0, 0, 0, 254,
8300  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
8301  261, 0, 0, 0, 0, 262, 263, 0, 1299, 0,
8302  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
8303  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
8304  0, 0, 273, 274, 0, 0, 0, 0, 0, 275,
8305  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
8306  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
8307  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
8308  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
8309  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
8310  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
8311  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
8312  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
8313  329, 330, 331, 332, 0, 0, 0, 333, 334, 0,
8314  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
8315  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
8316  0, 0, 343, 344, 345, 0, 346, 347, 0, 348,
8317  349, 350, 351, 352, 353, 354, 355, 356, 357, 0,
8318  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
8319  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
8320  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
8321  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
8322  385, 0, 0, 386, 0, 387, 0, 388, 389, 0,
8323  390, 391, 392, 0, 393, 0, 0, 394, 395, 396,
8324  397, 398, 399, 400, 401, 402, 403, 404, 0, 405,
8325  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
8326  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
8327  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
8328  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
8329  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
8330  434, 0, 0, 435, 436, 0, 437, 438, 439, 440,
8331  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
8332  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
8333  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
8334  0, 459, 460, 0, 0, 0, 461, 462, 463, 464,
8335  0, 465, 466, 0, 467, 468, 0, 469, 470, 0,
8336  0, 471, 0, 0, 472, 0, 473, 0, 474, 475,
8337  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
8338  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
8339  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
8340  0, 0, 488, 0, 137, 0, 138, 139, 140, 141,
8341  142, 0, 0, 143, 0, 0, 0, 144, 0, 0,
8342  145, 538, 146, 147, 148, 149, 150, 151, 0, 152,
8343  0, 0, 0, 153, 0, 0, 0, 154, 0, 0,
8344  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
8345  161, 0, 0, 162, 163, 0, 164, 165, 0, 166,
8346  0, 167, 168, 169, 170, 171, 172, 0, 173, 174,
8347  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
8348  0, 184, 185, 0, 186, 187, 188, 189, 190, 0,
8349  0, 0, 191, 0, 0, 192, 0, 193, 0, 0,
8350  194, 0, 0, 0, 195, 196, 197, 0, 0, 198,
8351  0, 0, 0, 0, 199, 200, 0, 0, 0, 0,
8352  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
8353  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
8354  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
8355  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
8356  223, 224, 225, 226, 227, 0, 0, 228, 229, 230,
8357  231, 232, 0, 0, 233, 234, 0, 235, 236, 237,
8358  0, 0, 238, 0, 0, 0, 239, 240, 0, 241,
8359  0, 242, 0, 243, 244, 245, 246, 0, 247, 0,
8360  248, 0, 0, 0, 249, 250, 0, 251, 0, 0,
8361  252, 253, 0, 0, 0, 254, 255, 256, 257, 0,
8362  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
8363  0, 262, 263, 0, 0, 0, 264, 0, 0, 0,
8364  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
8365  0, 270, 271, 0, 0, 272, 0, 0, 273, 274,
8366  0, 0, 0, 0, 0, 275, 276, 0, 277, 0,
8367  278, 0, 279, 280, 0, 0, 0, 0, 0, 0,
8368  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
8369  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
8370  0, 299, 300, 301, 0, 302, 303, 304, 305, 0,
8371  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
8372  312, 313, 0, 0, 314, 315, 0, 316, 0, 317,
8373  0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
8374  0, 0, 327, 328, 0, 0, 329, 330, 331, 332,
8375  0, 0, 0, 333, 334, 0, 0, 0, 335, 0,
8376  336, 337, 338, 0, 339, 340, 341, 0, 342, 0,
8377  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
8378  345, 0, 346, 347, 0, 348, 349, 350, 351, 352,
8379  353, 354, 355, 356, 357, 0, 0, 358, 359, 360,
8380  0, 361, 0, 362, 363, 364, 365, 366, 0, 367,
8381  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
8382  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
8383  0, 381, 382, 0, 383, 384, 385, 0, 0, 386,
8384  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
8385  393, 0, 0, 394, 395, 396, 397, 398, 399, 400,
8386  401, 402, 403, 404, 0, 405, 406, 0, 0, 0,
8387  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
8388  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
8389  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
8390  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
8391  0, 429, 430, 431, 432, 433, 434, 0, 0, 435,
8392  436, 0, 437, 438, 439, 440, 441, 442, 0, 0,
8393  443, 444, 445, 446, 0, 447, 448, 0, 0, 449,
8394  450, 451, 452, 0, 0, 453, 454, 0, 455, 456,
8395  457, 458, 0, 0, 0, 0, 0, 459, 460, 0,
8396  0, 0, 461, 462, 463, 464, 0, 465, 466, 0,
8397  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
8398  472, 0, 473, 0, 474, 475, 0, 0, 0, 0,
8399  0, 0, 476, 0, 0, 477, 0, 0, 0, 478,
8400  479, 480, 481, 482, 0, 0, 0, 0, 0, 0,
8401  483, 484, 0, 485, 486, 487, 0, 0, 488, 0,
8402  0, 0, 137, 0, 138, 139, 140, 141, 142, 2578,
8403  0, 143, 0, 0, 0, 144, 0, 2579, 145, 0,
8404  146, 147, 148, 149, 150, 151, 0, 152, 0, 0,
8405  0, 153, 0, 0, 0, 154, 0, 0, 155, 156,
8406  157, 0, 158, 0, 159, 160, 0, 0, 161, 0,
8407  0, 162, 163, 0, 164, 165, 0, 166, 0, 167,
8408  168, 169, 170, 171, 172, 0, 173, 174, 0, 175,
8409  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
8410  185, 0, 186, 187, 188, 189, 190, 0, 0, 0,
8411  191, 0, 0, 192, 0, 193, 0, 0, 194, 0,
8412  0, 0, 195, 196, 197, 0, 0, 198, 0, 0,
8413  0, 0, 199, 200, 0, 0, 0, 0, 201, 202,
8414  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
8415  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
8416  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
8417  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
8418  225, 226, 227, 0, 0, 228, 229, 230, 231, 232,
8419  0, 0, 233, 234, 0, 235, 236, 237, 0, 0,
8420  238, 0, 0, 0, 239, 240, 0, 241, 0, 242,
8421  0, 243, 244, 245, 246, 0, 247, 0, 248, 0,
8422  0, 0, 249, 250, 0, 251, 0, 0, 252, 253,
8423  0, 0, 0, 254, 255, 256, 257, 0, 0, 258,
8424  259, 260, 0, 0, 261, 0, 0, 0, 0, 262,
8425  263, 0, 0, 0, 264, 0, 0, 0, 265, 266,
8426  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
8427  271, 0, 0, 272, 0, 0, 273, 274, 0, 0,
8428  0, 0, 0, 275, 276, 0, 277, 0, 278, 0,
8429  279, 280, 0, 0, 0, 0, 0, 0, 0, 281,
8430  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
8431  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
8432  300, 301, 0, 302, 303, 304, 305, 0, 306, 307,
8433  0, 0, 0, 0, 308, 309, 310, 311, 312, 313,
8434  0, 0, 314, 315, 0, 316, 0, 317, 0, 318,
8435  319, 320, 321, 322, 323, 324, 325, 326, 0, 0,
8436  327, 328, 0, 0, 329, 330, 331, 332, 0, 0,
8437  0, 333, 334, 0, 0, 0, 335, 0, 336, 337,
8438  338, 0, 339, 340, 341, 0, 342, 0, 0, 0,
8439  0, 0, 0, 0, 0, 0, 343, 344, 345, 0,
8440  346, 347, 0, 348, 349, 350, 351, 352, 353, 354,
8441  355, 356, 357, 0, 0, 358, 359, 360, 0, 361,
8442  0, 362, 363, 364, 365, 366, 0, 367, 368, 369,
8443  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
8444  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
8445  382, 0, 383, 384, 385, 0, 0, 386, 0, 387,
8446  0, 388, 389, 0, 390, 391, 392, 0, 393, 0,
8447  0, 394, 395, 396, 397, 398, 399, 400, 401, 402,
8448  403, 404, 0, 405, 406, 0, 0, 0, 407, 408,
8449  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
8450  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
8451  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
8452  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
8453  430, 431, 432, 433, 434, 0, 0, 435, 436, 0,
8454  437, 438, 439, 440, 441, 442, 0, 0, 443, 444,
8455  445, 446, 0, 447, 448, 0, 0, 449, 450, 451,
8456  452, 0, 0, 453, 454, 0, 455, 456, 457, 458,
8457  0, 0, 0, 0, 0, 459, 460, 0, 0, 0,
8458  461, 462, 463, 464, 0, 465, 466, 0, 467, 468,
8459  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
8460  473, 0, 474, 475, 0, 0, 0, 0, 0, 0,
8461  476, 0, 0, 477, 0, 0, 0, 478, 479, 480,
8462  481, 482, 0, 0, 0, 0, 0, 0, 483, 484,
8463  0, 485, 486, 487, 0, 0, 488, 0, 0, 0,
8464  0, 137, 2788, 138, 139, 140, 141, 142, 0, 0,
8465  143, 0, 0, 0, 144, 538, 0, 145, 0, 146,
8466  147, 148, 149, 150, 151, 0, 152, 0, 0, 0,
8467  153, 0, 0, 0, 154, 0, 0, 155, 156, 157,
8468  0, 158, 0, 159, 160, 0, 0, 161, 0, 0,
8469  162, 163, 0, 164, 165, 0, 166, 0, 167, 168,
8470  169, 170, 171, 172, 0, 173, 174, 0, 175, 176,
8471  177, 178, 179, 180, 181, 182, 183, 0, 184, 185,
8472  0, 186, 187, 188, 189, 190, 0, 0, 0, 191,
8473  0, 0, 192, 0, 193, 0, 0, 194, 0, 0,
8474  0, 195, 196, 197, 0, 0, 198, 0, 0, 0,
8475  0, 199, 200, 0, 0, 0, 0, 201, 202, 0,
8476  203, 0, 0, 0, 204, 0, 205, 206, 207, 208,
8477  209, 0, 0, 0, 210, 0, 0, 211, 212, 213,
8478  0, 0, 0, 214, 0, 215, 216, 0, 217, 218,
8479  219, 0, 0, 220, 221, 0, 222, 223, 224, 225,
8480  226, 227, 0, 0, 228, 229, 230, 231, 232, 0,
8481  0, 233, 234, 0, 235, 236, 237, 0, 0, 238,
8482  0, 0, 0, 239, 240, 0, 241, 0, 242, 0,
8483  243, 244, 245, 246, 0, 247, 0, 248, 0, 0,
8484  0, 249, 250, 0, 251, 0, 0, 252, 253, 0,
8485  0, 0, 254, 255, 256, 257, 0, 0, 258, 259,
8486  260, 0, 0, 261, 0, 0, 0, 0, 262, 263,
8487  0, 0, 0, 264, 0, 0, 0, 265, 266, 0,
8488  267, 268, 0, 0, 0, 269, 0, 0, 270, 271,
8489  0, 0, 272, 0, 0, 273, 274, 0, 0, 0,
8490  0, 0, 275, 276, 0, 277, 0, 278, 0, 279,
8491  280, 0, 0, 0, 0, 0, 0, 0, 281, 0,
8492  282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
8493  292, 293, 294, 295, 296, 297, 298, 0, 299, 300,
8494  301, 0, 302, 303, 304, 305, 0, 306, 307, 0,
8495  0, 0, 0, 308, 309, 310, 311, 312, 313, 0,
8496  0, 314, 315, 0, 316, 0, 317, 0, 318, 319,
8497  320, 321, 322, 323, 324, 325, 326, 0, 0, 327,
8498  328, 0, 0, 329, 330, 331, 332, 0, 0, 0,
8499  333, 334, 0, 0, 0, 335, 0, 336, 337, 338,
8500  0, 339, 340, 341, 0, 342, 0, 0, 0, 0,
8501  0, 0, 0, 0, 0, 343, 344, 345, 0, 346,
8502  347, 0, 348, 349, 350, 351, 352, 353, 354, 355,
8503  356, 357, 0, 0, 358, 359, 360, 0, 361, 0,
8504  362, 363, 364, 365, 366, 0, 367, 368, 369, 0,
8505  0, 370, 0, 0, 0, 371, 372, 373, 374, 375,
8506  0, 0, 376, 377, 378, 379, 380, 0, 381, 382,
8507  0, 383, 384, 385, 0, 0, 386, 0, 387, 0,
8508  388, 389, 0, 390, 391, 392, 0, 393, 0, 0,
8509  394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
8510  404, 0, 405, 406, 0, 0, 0, 407, 408, 409,
8511  410, 0, 0, 0, 411, 0, 0, 0, 412, 0,
8512  413, 414, 415, 416, 0, 417, 418, 419, 420, 421,
8513  0, 0, 0, 0, 0, 422, 423, 424, 0, 425,
8514  426, 0, 427, 0, 0, 428, 0, 0, 429, 430,
8515  431, 432, 433, 434, 0, 0, 435, 436, 0, 437,
8516  438, 439, 440, 441, 442, 0, 0, 443, 444, 445,
8517  446, 0, 447, 448, 0, 0, 449, 450, 451, 452,
8518  0, 0, 453, 454, 0, 455, 456, 457, 458, 0,
8519  0, 0, 0, 0, 459, 460, 0, 0, 0, 461,
8520  462, 463, 464, 0, 465, 466, 0, 467, 468, 0,
8521  469, 470, 0, 0, 471, 0, 0, 472, 0, 473,
8522  0, 474, 475, 0, 0, 0, 0, 0, 0, 476,
8523  0, 0, 477, 0, 0, 0, 478, 479, 480, 481,
8524  482, 0, 0, 0, 0, 0, 0, 483, 484, 0,
8525  485, 486, 487, 0, 0, 488, 0, 0, 0, 137,
8526  0, 138, 139, 140, 141, 142, 0, 0, 143, 0,
8527  0, 0, 144, 4510, 768, 145, 0, 146, 147, 148,
8528  149, 150, 151, 0, 152, 0, 0, 0, 153, 0,
8529  0, 0, 154, 0, 0, 155, 156, 157, 0, 158,
8530  0, 159, 160, 0, 0, 161, 0, 0, 162, 163,
8531  0, 164, 165, 0, 166, 0, 167, 168, 169, 170,
8532  171, 172, 0, 173, 174, 0, 175, 176, 177, 178,
8533  179, 180, 181, 182, 183, 0, 184, 185, 0, 186,
8534  187, 188, 189, 190, 0, 0, 0, 191, 0, 0,
8535  192, 0, 193, 0, 0, 194, 0, 0, 0, 195,
8536  196, 197, 0, 0, 198, 0, 0, 0, 0, 199,
8537  200, 0, 0, 0, 0, 201, 202, 0, 203, 0,
8538  0, 0, 204, 0, 205, 206, 207, 208, 209, 0,
8539  0, 0, 210, 0, 0, 211, 212, 213, 0, 0,
8540  0, 214, 0, 215, 216, 0, 217, 218, 219, 0,
8541  0, 220, 221, 0, 222, 223, 224, 225, 226, 227,
8542  0, 0, 228, 229, 230, 231, 232, 0, 0, 233,
8543  234, 0, 235, 236, 237, 0, 0, 238, 0, 0,
8544  0, 239, 240, 0, 241, 0, 242, 0, 243, 244,
8545  245, 246, 0, 247, 0, 248, 0, 0, 0, 249,
8546  250, 0, 251, 0, 0, 252, 253, 0, 0, 0,
8547  254, 255, 256, 257, 0, 0, 258, 259, 260, 0,
8548  0, 261, 0, 0, 0, 0, 262, 263, 0, 0,
8549  0, 264, 0, 0, 0, 265, 266, 0, 267, 268,
8550  0, 0, 0, 269, 0, 0, 270, 271, 0, 0,
8551  272, 0, 0, 273, 274, 0, 0, 0, 0, 0,
8552  275, 276, 0, 277, 0, 278, 0, 279, 280, 0,
8553  0, 0, 0, 0, 0, 0, 281, 0, 282, 283,
8554  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
8555  294, 295, 296, 297, 298, 0, 299, 300, 301, 0,
8556  302, 303, 304, 305, 0, 306, 307, 0, 0, 0,
8557  0, 308, 309, 310, 311, 312, 313, 0, 0, 314,
8558  315, 0, 316, 0, 317, 0, 318, 319, 320, 321,
8559  322, 323, 324, 325, 326, 0, 0, 327, 328, 0,
8560  0, 329, 330, 331, 332, 0, 0, 0, 333, 334,
8561  0, 0, 0, 335, 0, 336, 337, 338, 0, 339,
8562  340, 341, 0, 342, 0, 0, 0, 0, 0, 0,
8563  0, 0, 0, 343, 344, 345, 0, 346, 347, 0,
8564  348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
8565  0, 0, 358, 359, 360, 0, 361, 0, 362, 363,
8566  364, 365, 366, 0, 367, 368, 369, 0, 0, 370,
8567  0, 0, 0, 371, 372, 373, 374, 375, 0, 0,
8568  376, 377, 378, 379, 380, 0, 381, 382, 0, 383,
8569  384, 385, 0, 0, 386, 0, 387, 0, 388, 389,
8570  0, 390, 391, 392, 0, 393, 0, 0, 394, 395,
8571  396, 397, 398, 399, 400, 401, 402, 403, 404, 0,
8572  405, 406, 0, 0, 0, 407, 408, 409, 410, 0,
8573  0, 0, 411, 0, 0, 0, 412, 0, 413, 414,
8574  415, 416, 0, 417, 418, 419, 420, 421, 0, 0,
8575  0, 0, 0, 422, 423, 424, 0, 425, 426, 0,
8576  427, 0, 0, 428, 0, 0, 429, 430, 431, 432,
8577  433, 434, 0, 0, 435, 436, 0, 437, 438, 439,
8578  440, 441, 442, 0, 0, 443, 444, 445, 446, 0,
8579  447, 448, 0, 0, 449, 450, 451, 452, 0, 0,
8580  453, 454, 0, 455, 456, 457, 458, 0, 0, 0,
8581  0, 0, 459, 460, 0, 0, 0, 461, 462, 463,
8582  464, 0, 465, 466, 0, 467, 468, 0, 469, 470,
8583  0, 0, 471, 0, 0, 472, 0, 473, 0, 474,
8584  475, 0, 0, 0, 0, 0, 0, 476, 0, 0,
8585  477, 0, 0, 0, 478, 479, 480, 481, 482, 0,
8586  0, 0, 0, 0, 0, 483, 484, 0, 485, 486,
8587  487, 0, 0, 488, 0, 137, 0, 138, 139, 140,
8588  141, 142, 0, 0, 143, 0, 0, 0, 144, 0,
8589  0, 145, 538, 146, 147, 148, 149, 150, 151, 0,
8590  152, 0, 0, 0, 153, 0, 0, 0, 154, 0,
8591  0, 155, 156, 157, 0, 158, 0, 159, 160, 0,
8592  0, 161, 0, 0, 162, 163, 0, 164, 165, 0,
8593  166, 0, 167, 168, 169, 170, 171, 172, 0, 173,
8594  174, 0, 175, 176, 177, 178, 179, 180, 181, 182,
8595  183, 0, 184, 185, 0, 186, 187, 188, 189, 190,
8596  0, 0, 0, 191, 0, 0, 192, 0, 193, 0,
8597  0, 194, 0, 0, 0, 195, 196, 197, 0, 0,
8598  198, 0, 0, 0, 0, 199, 200, 0, 0, 0,
8599  0, 201, 202, 0, 203, 0, 0, 0, 204, 0,
8600  205, 206, 207, 208, 209, 0, 0, 0, 210, 0,
8601  0, 211, 212, 213, 0, 0, 0, 214, 0, 215,
8602  216, 0, 217, 218, 219, 0, 0, 220, 221, 0,
8603  222, 223, 224, 225, 226, 227, 0, 0, 228, 229,
8604  230, 601, 232, 0, 0, 233, 234, 0, 235, 236,
8605  237, 0, 0, 238, 0, 0, 0, 602, 240, 0,
8606  241, 0, 242, 0, 243, 244, 245, 246, 0, 247,
8607  0, 248, 0, 0, 0, 249, 250, 0, 251, 0,
8608  0, 252, 253, 0, 0, 0, 254, 255, 256, 257,
8609  0, 0, 258, 259, 260, 0, 0, 261, 0, 0,
8610  0, 0, 262, 263, 0, 0, 0, 264, 0, 0,
8611  0, 265, 266, 0, 267, 268, 0, 0, 0, 269,
8612  0, 0, 270, 271, 0, 0, 272, 0, 0, 273,
8613  274, 0, 0, 0, 0, 0, 275, 276, 0, 277,
8614  0, 278, 0, 279, 280, 0, 0, 0, 0, 0,
8615  0, 0, 281, 0, 282, 283, 284, 285, 286, 287,
8616  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
8617  298, 0, 299, 300, 301, 0, 302, 303, 304, 305,
8618  0, 306, 307, 0, 0, 0, 0, 308, 309, 310,
8619  311, 312, 313, 0, 0, 314, 315, 0, 316, 0,
8620  317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
8621  326, 0, 0, 327, 328, 0, 0, 329, 330, 331,
8622  332, 0, 0, 0, 333, 334, 0, 0, 0, 335,
8623  0, 336, 337, 338, 0, 339, 340, 341, 0, 342,
8624  0, 0, 0, 0, 0, 0, 0, 0, 0, 343,
8625  344, 345, 0, 346, 347, 0, 603, 349, 350, 351,
8626  352, 353, 354, 355, 356, 357, 0, 0, 358, 359,
8627  360, 0, 361, 0, 362, 363, 364, 365, 366, 0,
8628  367, 368, 369, 0, 0, 370, 0, 0, 0, 371,
8629  372, 373, 374, 375, 0, 0, 376, 377, 378, 379,
8630  380, 0, 381, 382, 0, 383, 384, 385, 0, 0,
8631  386, 0, 387, 0, 388, 389, 0, 390, 391, 392,
8632  0, 393, 0, 0, 394, 395, 396, 397, 398, 399,
8633  400, 401, 402, 403, 404, 0, 405, 406, 0, 0,
8634  0, 407, 408, 409, 410, 0, 0, 0, 411, 0,
8635  0, 0, 412, 0, 413, 414, 415, 416, 0, 417,
8636  418, 419, 420, 421, 0, 0, 0, 0, 0, 422,
8637  423, 424, 0, 425, 426, 0, 427, 0, 0, 428,
8638  0, 0, 429, 430, 431, 432, 433, 434, 0, 0,
8639  435, 436, 0, 437, 438, 439, 440, 441, 442, 0,
8640  0, 443, 444, 445, 446, 0, 447, 448, 0, 0,
8641  449, 450, 451, 452, 0, 0, 453, 454, 0, 455,
8642  456, 457, 458, 0, 0, 0, 0, 0, 459, 460,
8643  0, 0, 0, 461, 462, 463, 464, 0, 465, 466,
8644  0, 467, 468, 0, 469, 470, 0, 0, 471, 0,
8645  0, 472, 0, 473, 0, 474, 475, 0, 0, 0,
8646  0, 0, 0, 476, 0, 0, 477, 0, 0, 0,
8647  478, 479, 480, 481, 482, 0, 0, 0, 0, 0,
8648  0, 483, 484, 0, 485, 486, 487, 0, 0, 488,
8649  0, 137, 0, 138, 139, 140, 141, 142, 0, 0,
8650  143, 0, 0, 0, 144, 0, 0, 145, 538, 146,
8651  147, 148, 149, 150, 151, 0, 152, 0, 0, 0,
8652  153, 0, 0, 0, 154, 0, 0, 155, 156, 157,
8653  0, 158, 0, 159, 160, 0, 0, 161, 0, 0,
8654  162, 163, 0, 164, 165, 0, 166, 0, 167, 168,
8655  169, 170, 171, 172, 0, 173, 174, 0, 175, 176,
8656  177, 178, 179, 180, 181, 182, 183, 0, 184, 185,
8657  0, 186, 187, 188, 189, 190, 0, 0, 0, 191,
8658  0, 0, 192, 0, 193, 0, 0, 194, 0, 0,
8659  0, 195, 196, 197, 0, 0, 198, 0, 0, 0,
8660  0, 199, 200, 0, 0, 0, 0, 201, 202, 0,
8661  203, 0, 0, 0, 204, 0, 205, 206, 207, 208,
8662  209, 0, 0, 0, 210, 0, 0, 211, 212, 213,
8663  0, 0, 0, 214, 0, 215, 216, 0, 217, 218,
8664  219, 0, 0, 220, 221, 0, 222, 223, 224, 225,
8665  226, 227, 0, 0, 228, 229, 230, 231, 232, 0,
8666  0, 233, 234, 0, 235, 236, 237, 0, 0, 238,
8667  0, 0, 0, 239, 240, 0, 241, 0, 242, 0,
8668  243, 244, 245, 246, 0, 247, 0, 248, 0, 0,
8669  0, 249, 250, 0, 251, 0, 0, 252, 253, 0,
8670  0, 0, 254, 255, 256, 257, 0, 0, 258, 259,
8671  260, 0, 0, 261, 0, 0, 0, 0, 262, 263,
8672  0, 0, 0, 264, 0, 0, 0, 265, 266, 0,
8673  267, 268, 0, 0, 0, 269, 0, 0, 270, 271,
8674  0, 0, 272, 0, 0, 273, 274, 0, 0, 0,
8675  0, 0, 275, 276, 0, 277, 0, 278, 0, 279,
8676  280, 0, 0, 0, 0, 0, 0, 0, 281, 0,
8677  282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
8678  292, 293, 294, 295, 296, 297, 298, 0, 299, 300,
8679  301, 0, 302, 303, 304, 305, 0, 306, 307, 0,
8680  0, 0, 0, 308, 309, 310, 311, 312, 313, 0,
8681  0, 314, 315, 0, 316, 0, 317, 0, 318, 319,
8682  320, 321, 322, 323, 324, 325, 326, 0, 0, 327,
8683  328, 0, 0, 329, 330, 331, 332, 0, 0, 0,
8684  333, 334, 0, 0, 0, 335, 0, 336, 337, 338,
8685  0, 339, 340, 341, 0, 342, 0, 0, 0, 0,
8686  0, 0, 0, 0, 0, 343, 344, 345, 0, 346,
8687  347, 0, 348, 349, 350, 351, 352, 353, 354, 355,
8688  356, 357, 0, 0, 358, 359, 360, 0, 361, 0,
8689  362, 363, 364, 365, 366, 0, 367, 368, 369, 0,
8690  0, 370, 0, 0, 0, 371, 372, 373, 374, 375,
8691  0, 0, 376, 377, 378, 379, 380, 0, 381, 382,
8692  0, 383, 384, 385, 0, 0, 386, 0, 387, 0,
8693  388, 389, 0, 390, 391, 392, 0, 393, 0, 0,
8694  394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
8695  404, 0, 405, 406, 0, 0, 0, 407, 408, 409,
8696  410, 0, 0, 0, 411, 0, 0, 0, 412, 0,
8697  413, 414, 415, 416, 0, 417, 418, 419, 420, 421,
8698  0, 0, 0, 0, 0, 422, 423, 424, 0, 425,
8699  426, 0, 427, 0, 0, 428, 0, 0, 429, 430,
8700  431, 432, 433, 434, 0, 0, 435, 436, 0, 437,
8701  438, 439, 440, 441, 442, 0, 0, 443, 444, 445,
8702  446, 0, 447, 448, 0, 0, 449, 450, 451, 452,
8703  0, 0, 453, 454, 0, 455, 456, 457, 458, 0,
8704  0, 0, 0, 0, 459, 460, 0, 0, 0, 461,
8705  462, 463, 464, 0, 465, 466, 0, 467, 468, 0,
8706  469, 470, 0, 0, 471, 0, 0, 472, 0, 473,
8707  0, 474, 475, 0, 0, 0, 0, 0, 0, 476,
8708  0, 0, 477, 0, 0, 0, 478, 479, 480, 481,
8709  482, 0, 0, 0, 0, 0, 0, 483, 484, 0,
8710  485, 486, 487, 0, 0, 488, 0, 137, 0, 138,
8711  139, 140, 141, 142, 0, 0, 143, 0, 0, 0,
8712  144, 0, 0, 145, 768, 146, 147, 148, 149, 150,
8713  151, 0, 152, 0, 0, 0, 153, 0, 0, 0,
8714  154, 0, 0, 155, 156, 157, 0, 158, 0, 159,
8715  160, 0, 0, 161, 0, 0, 162, 163, 0, 164,
8716  165, 0, 166, 0, 167, 168, 169, 170, 171, 172,
8717  0, 173, 174, 0, 175, 176, 177, 178, 179, 180,
8718  181, 182, 183, 0, 184, 185, 0, 186, 187, 188,
8719  189, 190, 0, 0, 0, 191, 0, 0, 192, 0,
8720  193, 0, 0, 194, 0, 0, 0, 195, 196, 197,
8721  0, 0, 198, 0, 0, 0, 0, 199, 200, 0,
8722  0, 0, 0, 201, 202, 0, 203, 0, 0, 0,
8723  204, 0, 205, 206, 207, 208, 209, 0, 0, 0,
8724  210, 0, 0, 211, 212, 213, 0, 0, 0, 214,
8725  0, 215, 216, 0, 217, 218, 219, 0, 0, 220,
8726  221, 0, 222, 223, 224, 225, 226, 227, 0, 0,
8727  228, 229, 230, 231, 232, 0, 0, 233, 234, 0,
8728  235, 236, 237, 0, 0, 238, 0, 0, 0, 239,
8729  240, 0, 241, 0, 242, 0, 243, 244, 245, 246,
8730  0, 247, 0, 248, 0, 0, 0, 249, 250, 0,
8731  251, 0, 0, 252, 253, 0, 0, 0, 254, 255,
8732  256, 257, 0, 0, 258, 259, 260, 0, 0, 261,
8733  0, 0, 0, 0, 262, 263, 0, 0, 0, 264,
8734  0, 0, 0, 265, 266, 0, 267, 268, 0, 0,
8735  0, 269, 0, 0, 270, 271, 0, 0, 272, 0,
8736  0, 273, 274, 0, 0, 0, 0, 0, 275, 276,
8737  0, 277, 0, 278, 0, 279, 280, 0, 0, 0,
8738  0, 0, 0, 0, 281, 0, 282, 283, 284, 285,
8739  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
8740  296, 297, 298, 0, 299, 300, 301, 0, 302, 303,
8741  304, 305, 0, 306, 307, 0, 0, 0, 0, 308,
8742  309, 310, 311, 312, 313, 0, 0, 314, 315, 0,
8743  316, 0, 317, 0, 318, 319, 320, 321, 322, 323,
8744  324, 325, 326, 0, 0, 327, 328, 0, 0, 329,
8745  330, 331, 332, 0, 0, 0, 333, 334, 0, 0,
8746  0, 335, 0, 336, 337, 338, 0, 339, 340, 341,
8747  0, 342, 0, 0, 0, 0, 0, 0, 0, 0,
8748  0, 343, 344, 345, 0, 346, 347, 0, 348, 349,
8749  350, 351, 352, 353, 354, 355, 356, 357, 0, 0,
8750  358, 359, 360, 0, 361, 0, 362, 363, 364, 365,
8751  366, 0, 367, 368, 369, 0, 0, 370, 0, 0,
8752  0, 371, 372, 373, 374, 375, 0, 0, 376, 377,
8753  378, 379, 380, 0, 381, 382, 0, 383, 384, 385,
8754  0, 0, 386, 0, 387, 0, 388, 389, 0, 390,
8755  391, 392, 0, 393, 0, 0, 394, 395, 396, 397,
8756  398, 399, 400, 401, 402, 403, 404, 0, 405, 406,
8757  0, 0, 0, 407, 408, 409, 410, 0, 0, 0,
8758  411, 0, 0, 0, 412, 0, 413, 414, 415, 416,
8759  0, 417, 418, 419, 420, 421, 0, 0, 0, 0,
8760  0, 422, 423, 424, 0, 425, 426, 0, 427, 0,
8761  0, 428, 0, 0, 429, 430, 431, 432, 433, 434,
8762  0, 0, 435, 436, 0, 437, 438, 439, 440, 441,
8763  442, 0, 0, 443, 444, 445, 446, 0, 447, 448,
8764  0, 0, 449, 450, 451, 452, 0, 0, 453, 454,
8765  0, 455, 456, 457, 458, 0, 0, 0, 0, 0,
8766  459, 460, 0, 0, 0, 461, 462, 463, 464, 0,
8767  465, 466, 0, 467, 468, 0, 469, 470, 0, 0,
8768  471, 0, 0, 472, 0, 473, 0, 474, 475, 0,
8769  0, 0, 0, 0, 0, 476, 0, 0, 477, 0,
8770  0, 0, 478, 479, 480, 481, 482, 0, 0, 0,
8771  0, 0, 0, 483, 484, 0, 485, 486, 487, 0,
8772  0, 488, 0, 137, 0, 138, 139, 140, 141, 142,
8773  0, 0, 143, 0, 0, 0, 144, 0, 0, 145,
8774  2579, 146, 147, 148, 149, 150, 151, 0, 152, 0,
8775  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
8776  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
8777  0, 0, 162, 163, 0, 164, 868, 869, 166, 0,
8778  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
8779  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
8780  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
8781  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
8782  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
8783  0, 0, 0, 199, 200, 0, 0, 0, 870, 201,
8784  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
8785  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
8786  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
8787  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
8788  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
8789  232, 0, 0, 233, 234, 0, 235, 236, 237, 0,
8790  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
8791  242, 0, 243, 244, 245, 246, 0, 871, 0, 248,
8792  0, 0, 0, 249, 250, 0, 251, 0, 0, 252,
8793  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
8794  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
8795  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
8796  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
8797  270, 271, 0, 0, 272, 0, 0, 273, 274, 0,
8798  0, 0, 0, 0, 275, 276, 0, 872, 0, 278,
8799  0, 279, 280, 0, 0, 0, 0, 0, 0, 0,
8800  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
8801  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
8802  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
8803  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
8804  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
8805  318, 319, 320, 321, 322, 323, 873, 325, 326, 0,
8806  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
8807  0, 0, 333, 334, 0, 0, 0, 335, 0, 336,
8808  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
8809  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
8810  0, 346, 347, 0, 348, 349, 874, 351, 352, 353,
8811  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
8812  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
8813  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
8814  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
8815  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
8816  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
8817  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
8818  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
8819  408, 875, 410, 0, 0, 0, 411, 0, 0, 0,
8820  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
8821  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
8822  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
8823  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
8824  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
8825  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
8826  451, 452, 0, 0, 453, 454, 0, 455, 456, 457,
8827  458, 0, 0, 0, 0, 0, 876, 460, 0, 0,
8828  0, 461, 462, 463, 464, 0, 465, 466, 0, 467,
8829  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
8830  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
8831  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
8832  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
8833  484, 0, 485, 486, 487, 0, 0, 488, 137, 0,
8834  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
8835  0, 144, 0, 0, 145, 877, 146, 147, 148, 149,
8836  150, 151, 0, 152, 0, 0, 0, 153, 0, 0,
8837  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
8838  159, 160, 0, 0, 161, 0, 0, 162, 163, 0,
8839  164, 165, 0, 166, 0, 167, 168, 169, 170, 171,
8840  172, 0, 173, 174, 0, 175, 176, 177, 178, 179,
8841  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
8842  188, 189, 190, 0, 0, 0, 191, 0, 0, 192,
8843  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
8844  197, 0, 0, 198, 0, 0, 0, 0, 199, 200,
8845  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
8846  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
8847  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
8848  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
8849  220, 221, 0, 222, 223, 224, 225, 226, 227, 0,
8850  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
8851  0, 235, 236, 237, 0, 0, 238, 0, 0, 0,
8852  239, 240, 0, 241, 0, 242, 0, 243, 244, 245,
8853  246, 0, 247, 0, 248, 0, 0, 0, 249, 250,
8854  0, 251, 0, 0, 252, 253, 0, 0, 0, 254,
8855  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
8856  261, 0, 0, 0, 0, 262, 263, 0, 0, 0,
8857  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
8858  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
8859  0, 0, 273, 274, 614, 0, 0, 0, 0, 275,
8860  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
8861  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
8862  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
8863  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
8864  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
8865  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
8866  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
8867  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
8868  329, 330, 331, 332, 0, 0, 0, 333, 334, 0,
8869  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
8870  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
8871  0, 0, 343, 344, 345, 0, 346, 347, 0, 348,
8872  349, 350, 351, 352, 353, 354, 355, 356, 357, 0,
8873  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
8874  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
8875  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
8876  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
8877  385, 0, 0, 386, 0, 387, 0, 388, 389, 0,
8878  390, 391, 392, 0, 393, 0, 0, 394, 395, 396,
8879  397, 398, 399, 400, 401, 402, 403, 404, 0, 405,
8880  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
8881  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
8882  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
8883  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
8884  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
8885  434, 0, 0, 435, 436, 0, 437, 438, 439, 440,
8886  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
8887  448, 0, 0, 449, 450, 451, 452, 0, 134, 453,
8888  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
8889  0, 459, 460, 0, 0, 0, 461, 462, 463, 464,
8890  0, 465, 466, 0, 467, 468, 0, 469, 470, 0,
8891  0, 471, 0, 0, 472, 0, 473, 0, 474, 475,
8892  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
8893  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
8894  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
8895  0, 0, 488, 137, 0, 138, 139, 140, 141, 142,
8896  0, 0, 143, 0, 0, 0, 144, 0, 0, 145,
8897  1350, 146, 147, 148, 149, 150, 151, 0, 152, 0,
8898  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
8899  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
8900  0, 0, 162, 163, 0, 164, 165, 0, 166, 0,
8901  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
8902  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
8903  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
8904  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
8905  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
8906  0, 0, 0, 199, 200, 0, 0, 0, 0, 201,
8907  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
8908  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
8909  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
8910  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
8911  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
8912  232, 0, 0, 233, 234, 0, 235, 236, 237, 0,
8913  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
8914  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
8915  0, 0, 0, 249, 250, 0, 251, 0, 0, 252,
8916  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
8917  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
8918  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
8919  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
8920  270, 271, 0, 0, 272, 0, 0, 273, 274, 614,
8921  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
8922  0, 279, 280, 0, 0, 0, 0, 0, 0, 0,
8923  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
8924  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
8925  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
8926  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
8927  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
8928  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
8929  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
8930  0, 0, 333, 334, 0, 0, 0, 335, 0, 336,
8931  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
8932  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
8933  0, 346, 347, 0, 348, 349, 350, 351, 352, 353,
8934  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
8935  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
8936  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
8937  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
8938  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
8939  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
8940  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
8941  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
8942  408, 409, 410, 0, 0, 0, 411, 0, 0, 0,
8943  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
8944  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
8945  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
8946  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
8947  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
8948  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
8949  451, 452, 0, 134, 453, 454, 0, 455, 456, 457,
8950  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
8951  0, 461, 462, 463, 464, 0, 465, 466, 0, 467,
8952  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
8953  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
8954  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
8955  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
8956  484, 0, 485, 486, 487, 0, 0, 488, 137, 0,
8957  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
8958  0, 144, 0, 0, 145, 1686, 146, 147, 148, 149,
8959  150, 151, 0, 152, 0, 0, 0, 153, 0, 0,
8960  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
8961  159, 160, 0, 0, 161, 0, 0, 162, 163, 0,
8962  164, 868, 869, 166, 0, 167, 168, 169, 170, 171,
8963  172, 0, 173, 174, 0, 175, 176, 177, 178, 179,
8964  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
8965  188, 189, 190, 0, 0, 0, 191, 0, 0, 192,
8966  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
8967  197, 0, 0, 198, 0, 0, 0, 0, 199, 200,
8968  0, 0, 0, 870, 201, 202, 0, 203, 0, 0,
8969  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
8970  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
8971  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
8972  220, 221, 0, 222, 223, 224, 225, 226, 227, 0,
8973  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
8974  0, 235, 236, 237, 0, 0, 238, 0, 0, 0,
8975  239, 240, 0, 241, 0, 242, 0, 243, 244, 245,
8976  246, 0, 871, 0, 248, 0, 0, 0, 249, 250,
8977  0, 251, 0, 0, 252, 253, 0, 0, 0, 254,
8978  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
8979  261, 0, 0, 0, 0, 262, 263, 0, 0, 0,
8980  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
8981  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
8982  0, 0, 273, 274, 0, 0, 0, 0, 0, 275,
8983  276, 0, 872, 0, 278, 0, 279, 280, 0, 0,
8984  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
8985  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
8986  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
8987  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
8988  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
8989  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
8990  323, 873, 325, 326, 0, 0, 327, 328, 0, 0,
8991  329, 330, 331, 332, 0, 0, 0, 333, 334, 0,
8992  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
8993  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
8994  0, 0, 343, 344, 345, 0, 346, 347, 0, 348,
8995  349, 874, 351, 352, 353, 354, 355, 356, 357, 0,
8996  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
8997  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
8998  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
8999  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
9000  385, 0, 0, 386, 0, 387, 0, 388, 389, 0,
9001  390, 391, 392, 0, 393, 0, 0, 394, 395, 396,
9002  397, 398, 399, 400, 401, 402, 403, 404, 0, 405,
9003  406, 0, 0, 0, 407, 408, 875, 410, 0, 0,
9004  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
9005  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
9006  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
9007  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
9008  434, 0, 0, 435, 436, 0, 437, 438, 439, 440,
9009  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
9010  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
9011  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
9012  0, 459, 460, 0, 0, 0, 461, 462, 463, 464,
9013  0, 465, 466, 0, 467, 468, 0, 469, 470, 0,
9014  0, 471, 0, 0, 472, 0, 473, 0, 474, 475,
9015  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
9016  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
9017  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
9018  0, 0, 488, 137, 0, 138, 139, 140, 141, 142,
9019  0, 0, 143, 0, 0, 0, 144, 0, 0, 145,
9020  877, 146, 147, 148, 149, 150, 151, 0, 152, 0,
9021  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
9022  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
9023  0, 0, 162, 163, 0, 164, 165, 0, 166, 0,
9024  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
9025  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
9026  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
9027  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
9028  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
9029  0, 0, 0, 199, 200, 0, 0, 0, 0, 201,
9030  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
9031  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
9032  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
9033  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
9034  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
9035  232, 0, 0, 233, 234, 0, 235, 236, 237, 0,
9036  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
9037  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
9038  0, 0, 0, 249, 250, 0, 251, 0, 0, 252,
9039  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
9040  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
9041  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
9042  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
9043  270, 271, 0, 0, 272, 0, 0, 273, 274, 614,
9044  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
9045  0, 279, 280, 0, 0, 0, 0, 0, 0, 0,
9046  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
9047  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
9048  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
9049  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
9050  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
9051  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
9052  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
9053  0, 0, 333, 334, 0, 0, 0, 335, 0, 336,
9054  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
9055  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
9056  0, 346, 347, 0, 348, 349, 350, 351, 352, 353,
9057  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
9058  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
9059  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
9060  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
9061  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
9062  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
9063  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
9064  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
9065  408, 409, 410, 0, 0, 0, 411, 0, 0, 0,
9066  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
9067  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
9068  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
9069  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
9070  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
9071  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
9072  451, 452, 0, 134, 453, 454, 0, 455, 456, 457,
9073  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
9074  0, 461, 462, 463, 464, 0, 465, 466, 0, 467,
9075  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
9076  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
9077  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
9078  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
9079  484, 0, 485, 486, 487, 0, 0, 488, 137, 0,
9080  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
9081  0, 144, 0, 0, 145, 3548, 146, 147, 148, 149,
9082  150, 151, 0, 152, 0, 0, 0, 153, 0, 0,
9083  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
9084  159, 160, 0, 0, 161, 0, 0, 162, 163, 0,
9085  164, 165, 0, 166, 0, 167, 168, 169, 170, 171,
9086  172, 0, 173, 174, 0, 175, 176, 177, 178, 179,
9087  180, 181, 182, 183, 1233, 184, 185, 0, 186, 187,
9088  188, 189, 190, 0, 0, 0, 191, 0, 0, 192,
9089  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
9090  197, 0, 0, 198, 0, 0, 0, 0, 199, 200,
9091  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
9092  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
9093  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
9094  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
9095  220, 221, 0, 222, 223, 224, 225, 226, 227, 0,
9096  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
9097  0, 235, 236, 237, 0, 0, 238, 0, 0, 0,
9098  239, 240, 0, 241, 0, 242, 0, 243, 244, 245,
9099  246, 0, 247, 0, 248, 0, 0, 0, 249, 250,
9100  0, 251, 0, 0, 252, 253, 0, 0, 0, 254,
9101  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
9102  261, 0, 0, 0, 0, 262, 263, 0, 0, 0,
9103  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
9104  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
9105  0, 0, 273, 274, 0, 0, 0, 0, 0, 275,
9106  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
9107  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
9108  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
9109  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
9110  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
9111  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
9112  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
9113  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
9114  329, 330, 331, 332, 0, 0, 0, 333, 334, 0,
9115  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
9116  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
9117  0, 0, 343, 344, 345, 0, 346, 347, 0, 348,
9118  349, 350, 351, 352, 353, 354, 355, 356, 357, 0,
9119  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
9120  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
9121  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
9122  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
9123  385, 0, 0, 386, 0, 387, 0, 388, 389, 0,
9124  390, 391, 392, 0, 393, 0, 0, 394, 395, 396,
9125  397, 398, 399, 400, 401, 402, 403, 404, 0, 405,
9126  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
9127  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
9128  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
9129  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
9130  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
9131  434, 0, 0, 435, 436, 0, 437, 438, 439, 440,
9132  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
9133  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
9134  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
9135  0, 459, 460, 0, 0, 0, 461, 462, 463, 464,
9136  0, 465, 466, 0, 467, 468, 0, 469, 470, 0,
9137  0, 471, 0, 0, 472, 0, 473, 0, 474, 475,
9138  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
9139  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
9140  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
9141  0, 0, 488, 137, 0, 138, 139, 140, 141, 142,
9142  0, 0, 143, 0, 0, 0, 144, 0, 0, 145,
9143  1234, 146, 147, 148, 149, 150, 151, 0, 152, 0,
9144  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
9145  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
9146  0, 0, 162, 163, 0, 164, 165, 0, 166, 0,
9147  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
9148  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
9149  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
9150  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
9151  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
9152  0, 0, 0, 199, 200, 0, 0, 0, 0, 201,
9153  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
9154  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
9155  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
9156  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
9157  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
9158  232, 0, 0, 233, 234, 0, 235, 236, 237, 0,
9159  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
9160  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
9161  0, 0, 0, 249, 250, 0, 251, 0, 0, 252,
9162  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
9163  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
9164  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
9165  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
9166  270, 271, 0, 0, 272, 0, 0, 273, 274, 0,
9167  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
9168  0, 279, 280, 0, 0, 0, 0, 0, 0, 0,
9169  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
9170  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
9171  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
9172  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
9173  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
9174  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
9175  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
9176  0, 0, 333, 334, 0, 0, 0, 335, 0, 336,
9177  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
9178  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
9179  0, 346, 347, 0, 348, 349, 350, 351, 352, 353,
9180  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
9181  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
9182  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
9183  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
9184  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
9185  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
9186  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
9187  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
9188  408, 409, 410, 0, 0, 0, 411, 0, 0, 0,
9189  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
9190  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
9191  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
9192  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
9193  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
9194  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
9195  451, 452, 0, 0, 453, 454, 0, 455, 456, 457,
9196  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
9197  0, 461, 462, 463, 464, 0, 465, 466, 0, 467,
9198  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
9199  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
9200  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
9201  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
9202  484, 0, 485, 486, 487, 0, 0, 488, 137, 0,
9203  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
9204  0, 144, 0, 0, 0, 1234, 146, 147, 148, 149,
9205  150, 0, 0, -366, 0, 0, 0, 153, 0, 0,
9206  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
9207  0, 0, 0, 0, 161, 3967, 0, 162, 163, 0,
9208  164, 0, 0, 0, 0, 167, 168, 169, 3968, 171,
9209  172, 0, 173, 174, 0, 175, 176, 0, 178, 0,
9210  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
9211  188, 0, 190, 0, 0, 0, 191, 0, 0, 192,
9212  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
9213  197, 0, 0, 198, 0, 0, 0, 0, 199, 0,
9214  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
9215  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
9216  0, 0, 0, 0, 211, 212, 213, 0, 0, 0,
9217  214, 0, 0, 216, 0, 217, 218, 219, 0, 0,
9218  220, 221, 0, 222, 223, 224, 225, 226, 0, 0,
9219  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
9220  3969, 235, 236, 237, 0, 0, 0, 0, 0, 0,
9221  0, 240, 0, 241, 0, 242, 0, 243, 244, 245,
9222  246, 0, 247, 0, 248, 0, 0, 0, 0, 250,
9223  0, 0, 0, 0, 0, 253, 0, 0, 0, 254,
9224  255, 256, 257, 3970, 0, 258, 259, 260, 0, 0,
9225  261, 0, 0, 0, 0, 262, 0, 0, 0, 0,
9226  264, 0, 0, 0, 265, 266, 0, 267, 268, 3971,
9227  0, 0, 269, 0, 0, 0, 271, 0, 0, 272,
9228  3972, 0, 273, 274, 0, 0, 0, 0, 0, 275,
9229  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
9230  0, 0, -321, 0, 0, 281, 0, 282, 283, 284,
9231  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
9232  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
9233  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
9234  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
9235  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
9236  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
9237  329, 330, 331, 332, 0, 0, 0, 0, 334, 0,
9238  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
9239  3973, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9240  0, 0, 0, 344, 345, 0, 0, 347, 0, 348,
9241  349, 350, 351, 352, 353, 354, 355, 356, 0, 0,
9242  0, 0, 359, 360, 0, 361, 0, 362, 363, 364,
9243  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
9244  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
9245  377, 378, 379, 380, 0, 381, 0, 0, 383, 0,
9246  385, -321, 0, 386, 0, 0, 0, 388, 0, 0,
9247  390, 391, 392, 3974, 393, 0, 0, 0, 395, 396,
9248  397, 398, 399, 400, 401, 0, 403, 404, 0, 405,
9249  0, 0, 0, 0, 407, 408, 409, 0, 0, 0,
9250  0, 411, 0, 0, 0, 412, 0, 0, 414, 0,
9251  416, 0, 417, 0, 0, 420, 421, 0, 0, 0,
9252  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
9253  0, 0, 428, 0, 0, 429, 0, 431, 432, 433,
9254  434, 0, 0, 0, 436, 0, 437, 438, 439, 440,
9255  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
9256  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
9257  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
9258  0, 459, 460, 0, 0, 0, 0, 462, 463, 464,
9259  0, 465, 466, 0, 467, 468, 0, 0, 0, 0,
9260  0, 471, 0, 0, 472, 0, 0, 0, 474, 475,
9261  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
9262  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
9263  -321, 0, 0, 0, 483, 0, 0, 485, 0, 487,
9264  0, 137, 488, 138, 139, 140, 141, 142, 0, 0,
9265  143, 0, 0, 0, 144, 4502, 0, 145, 0, 146,
9266  147, 148, 149, 150, 151, 0, 152, 0, 0, 0,
9267  153, 0, 0, 0, 154, 0, 0, 155, 156, 157,
9268  0, 158, 0, 159, 160, 0, 0, 161, 0, 0,
9269  162, 163, 0, 164, 165, 0, 166, 0, 167, 168,
9270  169, 170, 171, 172, 0, 173, 174, 0, 175, 176,
9271  177, 178, 179, 180, 181, 182, 183, 0, 184, 185,
9272  0, 186, 187, 188, 189, 190, 0, 0, 0, 191,
9273  0, 0, 192, 0, 193, 0, 0, 194, 0, 0,
9274  0, 195, 196, 197, 0, 0, 198, 0, 0, 0,
9275  0, 199, 200, 0, 0, 0, 0, 201, 202, 0,
9276  203, 0, 0, 0, 204, 0, 205, 206, 207, 208,
9277  209, 0, 0, 0, 210, 0, 0, 211, 212, 213,
9278  0, 0, 0, 214, 0, 215, 216, 0, 217, 218,
9279  219, 0, 0, 220, 221, 0, 222, 223, 224, 225,
9280  226, 227, 0, 0, 228, 229, 230, 231, 232, 0,
9281  0, 233, 234, 0, 235, 236, 237, 0, 0, 238,
9282  0, 0, 0, 239, 240, 0, 241, 0, 242, 0,
9283  243, 244, 245, 246, 0, 247, 0, 248, 0, 0,
9284  0, 249, 250, 0, 251, 0, 0, 252, 253, 0,
9285  0, 0, 254, 255, 256, 257, 0, 0, 258, 259,
9286  260, 0, 0, 261, 0, 0, 0, 0, 262, 263,
9287  0, 0, 0, 264, 0, 0, 0, 265, 266, 0,
9288  267, 268, 0, 0, 0, 269, 0, 0, 270, 271,
9289  0, 0, 272, 0, 0, 273, 274, 0, 0, 0,
9290  0, 0, 275, 276, 0, 277, 0, 278, 0, 279,
9291  280, 0, 0, 0, 0, 0, 0, 0, 281, 0,
9292  282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
9293  292, 293, 294, 295, 296, 297, 298, 0, 299, 300,
9294  301, 0, 302, 303, 304, 305, 0, 306, 307, 0,
9295  0, 0, 0, 308, 309, 310, 311, 312, 313, 0,
9296  0, 314, 315, 0, 316, 0, 317, 0, 318, 319,
9297  320, 321, 322, 323, 324, 325, 326, 0, 0, 327,
9298  328, 0, 0, 329, 330, 331, 332, 0, 0, 0,
9299  333, 334, 0, 0, 0, 335, 0, 336, 337, 338,
9300  0, 339, 340, 341, 0, 342, 0, 0, 0, 0,
9301  0, 0, 0, 0, 0, 343, 344, 345, 0, 346,
9302  347, 0, 348, 349, 350, 351, 352, 353, 354, 355,
9303  356, 357, 0, 0, 358, 359, 360, 0, 361, 0,
9304  362, 363, 364, 365, 366, 0, 367, 368, 369, 0,
9305  0, 370, 0, 0, 0, 371, 372, 373, 374, 375,
9306  0, 0, 376, 377, 378, 379, 380, 0, 381, 382,
9307  0, 383, 384, 385, 0, 0, 386, 0, 387, 0,
9308  388, 389, 0, 390, 391, 392, 0, 393, 0, 0,
9309  394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
9310  404, 0, 405, 406, 0, 0, 0, 407, 408, 409,
9311  410, 0, 0, 0, 411, 0, 0, 0, 412, 0,
9312  413, 414, 415, 416, 0, 417, 418, 419, 420, 421,
9313  0, 0, 0, 0, 0, 422, 423, 424, 0, 425,
9314  426, 0, 427, 0, 0, 428, 0, 0, 429, 430,
9315  431, 432, 433, 434, 0, 0, 435, 436, 0, 437,
9316  438, 439, 440, 441, 442, 0, 0, 443, 444, 445,
9317  446, 0, 447, 448, 0, 0, 449, 450, 451, 452,
9318  0, 0, 453, 454, 0, 455, 456, 457, 458, 0,
9319  0, 0, 0, 0, 459, 460, 0, 0, 0, 461,
9320  462, 463, 464, 0, 465, 466, 0, 467, 468, 0,
9321  469, 470, 0, 0, 471, 0, 0, 472, 0, 473,
9322  0, 474, 475, 0, 0, 0, 0, 0, 0, 476,
9323  0, 0, 477, 0, 0, 0, 478, 479, 480, 481,
9324  482, 0, 0, 0, 0, 0, 0, 483, 484, 0,
9325  485, 486, 487, 0, 137, 488, 138, 139, 140, 141,
9326  142, 2139, 0, 143, 0, 0, 0, 144, 0, 0,
9327  145, 0, 146, 147, 148, 149, 150, 151, 0, 152,
9328  0, 0, 0, 153, 0, 0, 0, 154, 0, 0,
9329  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
9330  161, 0, 0, 162, 163, 0, 164, 165, 0, 166,
9331  0, 167, 168, 169, 170, 171, 172, 0, 173, 174,
9332  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
9333  0, 184, 185, 0, 186, 187, 188, 189, 190, 0,
9334  0, 0, 191, 0, 0, 192, 0, 193, 0, 0,
9335  194, 0, 0, 0, 195, 196, 197, 0, 0, 198,
9336  0, 0, 0, 0, 199, 200, 0, 0, 0, 0,
9337  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
9338  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
9339  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
9340  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
9341  223, 224, 225, 226, 227, 0, 0, 228, 229, 230,
9342  231, 232, 0, 0, 233, 234, 0, 235, 236, 237,
9343  0, 0, 238, 0, 0, 0, 239, 240, 0, 241,
9344  0, 242, 0, 243, 244, 245, 246, 0, 247, 0,
9345  248, 0, 0, 0, 249, 250, 0, 251, 0, 0,
9346  252, 253, 0, 0, 0, 254, 255, 256, 257, 0,
9347  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
9348  0, 262, 263, 0, 0, 0, 264, 0, 0, 0,
9349  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
9350  0, 270, 271, 0, 0, 272, 0, 0, 273, 274,
9351  0, 0, 0, 0, 0, 275, 276, 0, 277, 0,
9352  278, 0, 279, 280, 0, 0, 0, 0, 0, 0,
9353  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
9354  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
9355  0, 299, 300, 301, 0, 302, 303, 304, 305, 0,
9356  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
9357  312, 313, 0, 0, 314, 315, 0, 316, 0, 317,
9358  0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
9359  0, 0, 327, 328, 0, 0, 329, 330, 331, 332,
9360  0, 0, 0, 333, 334, 0, 0, 0, 335, 0,
9361  336, 337, 338, 0, 339, 340, 341, 0, 342, 0,
9362  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
9363  345, 0, 346, 347, 0, 348, 349, 350, 351, 352,
9364  353, 354, 355, 356, 357, 0, 0, 358, 359, 360,
9365  0, 361, 0, 362, 363, 364, 365, 366, 0, 367,
9366  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
9367  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
9368  0, 381, 382, 0, 383, 384, 385, 0, 0, 386,
9369  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
9370  393, 0, 0, 394, 395, 396, 397, 398, 399, 400,
9371  401, 402, 403, 404, 0, 405, 406, 0, 0, 0,
9372  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
9373  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
9374  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
9375  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
9376  0, 429, 430, 431, 432, 433, 434, 0, 0, 435,
9377  436, 0, 437, 438, 439, 440, 441, 442, 0, 0,
9378  443, 444, 445, 446, 0, 447, 448, 0, 0, 449,
9379  450, 451, 452, 0, 0, 453, 454, 0, 455, 456,
9380  457, 458, 0, 0, 0, 0, 0, 459, 460, 0,
9381  0, 0, 461, 462, 463, 464, 0, 465, 466, 0,
9382  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
9383  472, 0, 473, 0, 474, 475, 0, 0, 0, 0,
9384  0, 0, 476, 0, 0, 477, 0, 0, 0, 478,
9385  479, 480, 481, 482, 0, 0, 0, 0, 0, 0,
9386  483, 484, 0, 485, 486, 487, 0, 137, 488, 138,
9387  139, 140, 141, 142, 2856, 0, 143, 0, 0, 0,
9388  144, 0, 0, 145, 0, 146, 147, 148, 149, 150,
9389  151, 0, 152, 0, 0, 0, 153, 0, 0, 0,
9390  154, 0, 0, 155, 156, 157, 0, 158, 0, 159,
9391  160, 0, 0, 161, 0, 0, 162, 163, 0, 164,
9392  165, 0, 166, 0, 167, 168, 169, 170, 171, 172,
9393  0, 173, 174, 0, 175, 176, 177, 178, 179, 180,
9394  181, 182, 183, 0, 184, 185, 0, 186, 187, 188,
9395  189, 190, 0, 0, 0, 191, 0, 0, 192, 0,
9396  193, 0, 0, 194, 0, 0, 0, 195, 196, 197,
9397  0, 0, 198, 0, 0, 0, 0, 199, 200, 0,
9398  0, 0, 0, 201, 202, 0, 203, 0, 0, 0,
9399  204, 0, 205, 206, 207, 208, 209, 0, 0, 0,
9400  210, 0, 0, 211, 212, 213, 0, 0, 0, 214,
9401  0, 215, 216, 0, 217, 218, 219, 0, 0, 220,
9402  221, 0, 222, 223, 224, 225, 226, 227, 0, 0,
9403  228, 229, 230, 231, 232, 0, 0, 233, 234, 0,
9404  235, 236, 237, 0, 0, 238, 0, 0, 0, 239,
9405  240, 0, 241, 0, 242, 0, 243, 244, 245, 246,
9406  0, 247, 0, 248, 0, 0, 0, 249, 250, 0,
9407  251, 0, 0, 252, 253, 0, 0, 0, 254, 255,
9408  256, 257, 0, 0, 258, 259, 260, 0, 0, 261,
9409  0, 0, 0, 0, 262, 263, 0, 0, 0, 264,
9410  0, 0, 0, 265, 266, 0, 267, 268, 0, 0,
9411  0, 269, 0, 0, 270, 271, 0, 0, 272, 0,
9412  0, 273, 274, 0, 0, 0, 0, 0, 275, 276,
9413  0, 277, 0, 278, 0, 279, 280, 0, 0, 0,
9414  0, 0, 0, 0, 281, 0, 282, 283, 284, 285,
9415  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
9416  296, 297, 298, 0, 299, 300, 301, 0, 302, 303,
9417  304, 305, 0, 306, 307, 0, 0, 0, 0, 308,
9418  309, 310, 311, 312, 313, 0, 0, 314, 315, 0,
9419  316, 0, 317, 0, 318, 319, 320, 321, 322, 323,
9420  324, 325, 326, 0, 0, 327, 328, 0, 0, 329,
9421  330, 331, 332, 0, 0, 0, 333, 334, 0, 0,
9422  0, 335, 0, 336, 337, 338, 0, 339, 340, 341,
9423  0, 342, 0, 0, 0, 0, 0, 0, 0, 0,
9424  0, 343, 344, 345, 0, 346, 347, 0, 348, 349,
9425  350, 351, 352, 353, 354, 355, 356, 357, 0, 0,
9426  358, 359, 360, 0, 361, 0, 362, 363, 364, 365,
9427  366, 0, 367, 368, 369, 0, 0, 370, 0, 0,
9428  0, 371, 372, 373, 374, 375, 0, 0, 376, 377,
9429  378, 379, 380, 0, 381, 382, 0, 383, 384, 385,
9430  0, 0, 386, 0, 387, 0, 388, 389, 0, 390,
9431  391, 392, 0, 393, 0, 0, 394, 395, 396, 397,
9432  398, 399, 400, 401, 402, 403, 404, 0, 405, 406,
9433  0, 0, 0, 407, 408, 409, 410, 0, 0, 0,
9434  411, 0, 0, 0, 412, 0, 413, 414, 415, 416,
9435  0, 417, 418, 419, 420, 421, 0, 0, 0, 0,
9436  0, 422, 423, 424, 0, 425, 426, 0, 427, 0,
9437  0, 428, 0, 0, 429, 430, 431, 432, 433, 434,
9438  0, 0, 435, 436, 0, 437, 438, 439, 440, 441,
9439  442, 0, 0, 443, 444, 445, 446, 0, 447, 448,
9440  0, 0, 449, 450, 451, 452, 0, 0, 453, 454,
9441  0, 455, 456, 457, 458, 0, 0, 0, 0, 0,
9442  459, 460, 0, 0, 0, 461, 462, 463, 464, 0,
9443  465, 466, 0, 467, 468, 0, 469, 470, 0, 0,
9444  471, 0, 0, 472, 0, 473, 0, 474, 475, 0,
9445  0, 0, 0, 0, 0, 476, 0, 0, 477, 0,
9446  0, 0, 478, 479, 480, 481, 482, 0, 0, 0,
9447  0, 0, 0, 483, 484, 0, 485, 486, 487, 0,
9448  137, 488, 138, 139, 140, 141, 142, 3507, 0, 143,
9449  0, 0, 0, 144, 0, 0, 145, 0, 146, 147,
9450  148, 149, 150, 151, 0, 152, 0, 0, 0, 153,
9451  0, 0, 0, 154, 0, 0, 155, 156, 157, 0,
9452  158, 0, 159, 160, 0, 0, 161, 0, 0, 162,
9453  163, 0, 164, 165, 0, 166, 0, 167, 168, 169,
9454  170, 171, 172, 0, 173, 174, 0, 175, 176, 177,
9455  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
9456  186, 187, 188, 189, 190, 0, 0, 0, 191, 0,
9457  0, 192, 0, 193, 0, 0, 194, 0, 0, 0,
9458  195, 196, 197, 0, 0, 198, 0, 0, 0, 0,
9459  199, 200, 0, 0, 0, 0, 201, 202, 0, 203,
9460  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
9461  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
9462  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
9463  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
9464  227, 0, 0, 228, 229, 230, 231, 232, 0, 0,
9465  233, 234, 0, 235, 236, 237, 0, 0, 238, 0,
9466  0, 0, 239, 240, 0, 241, 0, 242, 0, 243,
9467  244, 245, 246, 0, 247, 0, 248, 0, 0, 0,
9468  249, 250, 0, 251, 0, 0, 252, 253, 0, 0,
9469  0, 254, 255, 256, 257, 0, 0, 258, 259, 260,
9470  0, 0, 261, 0, 0, 0, 0, 262, 263, 0,
9471  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
9472  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
9473  0, 272, 0, 0, 273, 274, 0, 0, 0, 0,
9474  0, 275, 276, 0, 277, 0, 278, 0, 279, 280,
9475  0, 0, 0, 0, 0, 0, 0, 281, 0, 282,
9476  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
9477  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
9478  0, 302, 303, 304, 305, 0, 306, 307, 0, 0,
9479  0, 0, 308, 309, 310, 311, 312, 313, 0, 0,
9480  314, 315, 0, 316, 0, 317, 0, 318, 319, 320,
9481  321, 322, 323, 324, 325, 326, 0, 0, 327, 328,
9482  0, 0, 329, 330, 331, 332, 0, 0, 0, 333,
9483  334, 0, 0, 0, 335, 0, 336, 337, 338, 0,
9484  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
9485  0, 0, 0, 0, 343, 344, 345, 0, 346, 347,
9486  0, 348, 349, 350, 351, 352, 353, 354, 355, 356,
9487  357, 0, 0, 358, 359, 360, 0, 361, 0, 362,
9488  363, 364, 365, 366, 0, 367, 368, 369, 0, 0,
9489  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
9490  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
9491  383, 384, 385, 0, 0, 386, 0, 387, 0, 388,
9492  389, 0, 390, 391, 392, 0, 393, 0, 0, 394,
9493  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
9494  0, 405, 406, 0, 0, 0, 407, 408, 409, 410,
9495  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
9496  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
9497  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
9498  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
9499  432, 433, 434, 0, 0, 435, 436, 0, 437, 438,
9500  439, 440, 441, 442, 0, 0, 443, 444, 445, 446,
9501  0, 447, 448, 0, 0, 449, 450, 451, 452, 0,
9502  0, 453, 454, 0, 455, 456, 457, 458, 0, 0,
9503  0, 0, 0, 459, 460, 0, 0, 0, 461, 462,
9504  463, 464, 0, 465, 466, 0, 467, 468, 0, 469,
9505  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
9506  474, 475, 0, 0, 0, 0, 0, 0, 476, 0,
9507  0, 477, 0, 0, 0, 478, 479, 480, 481, 482,
9508  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
9509  486, 487, 0, 137, 488, 138, 139, 140, 141, 142,
9510  3553, 0, 143, 0, 0, 0, 144, 0, 0, 145,
9511  0, 146, 147, 148, 149, 150, 151, 0, 152, 0,
9512  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
9513  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
9514  0, 0, 162, 163, 0, 164, 165, 0, 166, 0,
9515  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
9516  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
9517  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
9518  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
9519  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
9520  0, 0, 0, 199, 200, 2486, 0, 0, 0, 201,
9521  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
9522  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
9523  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
9524  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
9525  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
9526  232, 0, 0, 233, 234, 0, 235, 236, 237, 2487,
9527  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
9528  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
9529  0, 0, 0, 249, 250, 0, 251, 2488, 0, 252,
9530  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
9531  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
9532  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
9533  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
9534  270, 271, 0, 0, 272, 0, 0, 273, 274, 0,
9535  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
9536  0, 279, 280, 0, 0, 2489, 0, 0, 0, 0,
9537  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
9538  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
9539  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
9540  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
9541  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
9542  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
9543  0, 327, 328, 0, 0, 329, 330, 331, 332, 1003,
9544  1004, 0, 333, 334, 0, 0, 2490, 335, 0, 336,
9545  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
9546  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
9547  0, 346, 347, 0, 348, 349, 350, 351, 352, 353,
9548  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
9549  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
9550  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
9551  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
9552  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
9553  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
9554  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
9555  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
9556  408, 409, 410, 0, 0, 0, 411, 0, 0, 0,
9557  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
9558  420, 421, 0, 0, 4489, 563, 4490, 422, 423, 424,
9559  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
9560  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
9561  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
9562  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
9563  451, 452, 0, 0, 453, 454, 0, 455, 456, 457,
9564  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
9565  0, 461, 462, 463, 464, 2491, 465, 466, 0, 467,
9566  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
9567  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
9568  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
9569  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
9570  484, 0, 485, 486, 487, 0, 137, 488, 138, 139,
9571  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
9572  0, 0, 145, 0, 146, 147, 148, 149, 150, 151,
9573  0, 152, 0, 0, 1339, 153, 0, 0, 0, 154,
9574  0, 0, 155, 156, 157, 0, 158, 0, 159, 160,
9575  0, 0, 161, 0, 0, 162, 163, 0, 164, 165,
9576  0, 166, 0, 167, 168, 169, 170, 171, 172, 0,
9577  173, 174, 0, 175, 176, 177, 178, 179, 180, 181,
9578  182, 183, 0, 184, 185, 0, 186, 187, 188, 189,
9579  190, 0, 0, 0, 191, 0, 0, 192, 0, 193,
9580  0, 0, 194, 0, 0, 0, 195, 196, 197, 0,
9581  0, 198, 0, 0, 0, 0, 199, 200, 0, 0,
9582  0, 1340, 201, 202, 0, 203, 0, 0, 0, 204,
9583  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
9584  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
9585  215, 216, 0, 217, 218, 219, 1341, 0, 220, 221,
9586  0, 222, 223, 224, 225, 226, 227, 0, 0, 228,
9587  229, 230, 231, 232, 0, 0, 233, 234, 0, 235,
9588  236, 237, 0, 0, 238, 0, 0, 0, 239, 240,
9589  0, 241, 0, 242, 0, 243, 244, 245, 246, 0,
9590  247, 0, 248, 0, 0, 0, 249, 250, 0, 251,
9591  0, 0, 252, 253, 0, 0, 0, 254, 255, 256,
9592  257, 0, 0, 258, 259, 260, 0, 0, 261, 0,
9593  0, 0, 0, 262, 263, 0, 0, 0, 264, 0,
9594  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
9595  269, 0, 0, 270, 271, 0, 0, 272, 0, 0,
9596  273, 274, 614, 0, 0, 0, 0, 275, 276, 0,
9597  277, 0, 278, 0, 279, 280, 0, 0, 0, 0,
9598  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
9599  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
9600  297, 298, 0, 299, 300, 301, 0, 302, 303, 304,
9601  305, 0, 306, 307, 0, 0, 0, 0, 308, 309,
9602  310, 311, 312, 313, 0, 0, 314, 315, 0, 316,
9603  0, 317, 0, 318, 319, 320, 321, 322, 323, 324,
9604  325, 326, 0, 0, 327, 328, 0, 0, 329, 330,
9605  331, 332, 0, 0, 0, 333, 334, 0, 0, 0,
9606  335, 0, 336, 337, 338, 0, 339, 340, 341, 0,
9607  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9608  343, 344, 345, 0, 346, 347, 0, 348, 349, 350,
9609  351, 352, 353, 354, 355, 356, 357, 0, 0, 358,
9610  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
9611  0, 367, 368, 369, 0, 0, 370, 0, 0, 0,
9612  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
9613  379, 380, 0, 381, 382, 0, 383, 384, 385, 0,
9614  0, 386, 0, 387, 0, 388, 389, 0, 390, 391,
9615  392, 0, 393, 0, 0, 394, 395, 396, 397, 398,
9616  399, 400, 401, 402, 403, 404, 0, 405, 406, 0,
9617  0, 0, 407, 408, 409, 410, 0, 0, 1342, 411,
9618  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
9619  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
9620  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
9621  428, 0, 0, 429, 430, 431, 432, 433, 434, 0,
9622  0, 435, 436, 0, 437, 438, 439, 440, 441, 442,
9623  0, 0, 443, 444, 445, 446, 0, 447, 448, 0,
9624  0, 449, 450, 451, 452, 0, 134, 453, 454, 0,
9625  455, 456, 457, 458, 0, 0, 0, 0, 0, 459,
9626  460, 0, 0, 0, 461, 462, 463, 464, 0, 465,
9627  466, 0, 467, 468, 0, 469, 470, 0, 0, 471,
9628  0, 0, 472, 0, 473, 0, 474, 475, 0, 0,
9629  0, 0, 0, 0, 476, 0, 0, 477, 0, 0,
9630  0, 478, 479, 480, 481, 482, 0, 0, 0, 0,
9631  0, 0, 483, 484, 0, 485, 486, 487, 0, 137,
9632  488, 138, 139, 140, 141, 142, 0, 0, 143, 0,
9633  0, 0, 144, 0, 0, 145, 0, 146, 147, 148,
9634  149, 150, 151, 0, 152, 0, 0, 1352, 153, 0,
9635  0, 0, 154, 0, 0, 155, 156, 157, 0, 158,
9636  0, 159, 160, 0, 0, 161, 0, 0, 162, 163,
9637  0, 164, 165, 0, 166, 0, 167, 168, 169, 170,
9638  171, 172, 0, 173, 174, 0, 175, 176, 177, 178,
9639  179, 180, 181, 182, 183, 0, 184, 185, 0, 186,
9640  187, 188, 189, 190, 0, 0, 0, 191, 0, 0,
9641  192, 0, 193, 0, 0, 194, 0, 0, 0, 195,
9642  196, 197, 0, 0, 198, 0, 0, 0, 0, 199,
9643  200, 0, 0, 0, 1353, 201, 202, 0, 203, 0,
9644  0, 0, 204, 0, 205, 206, 207, 208, 209, 0,
9645  0, 0, 210, 0, 0, 211, 212, 213, 0, 0,
9646  0, 214, 0, 215, 216, 0, 217, 218, 219, 0,
9647  0, 220, 221, 0, 222, 223, 224, 225, 226, 227,
9648  0, 0, 228, 229, 230, 231, 232, 0, 0, 233,
9649  234, 0, 235, 236, 237, 0, 0, 238, 0, 0,
9650  0, 239, 240, 0, 241, 0, 242, 0, 243, 244,
9651  245, 246, 0, 247, 0, 248, 0, 0, 0, 249,
9652  250, 0, 251, 0, 0, 252, 253, 0, 0, 0,
9653  254, 255, 256, 257, 0, 0, 258, 259, 260, 0,
9654  0, 261, 0, 0, 0, 0, 262, 263, 0, 0,
9655  0, 264, 0, 0, 0, 265, 266, 0, 267, 268,
9656  0, 0, 0, 269, 0, 0, 270, 271, 0, 0,
9657  272, 0, 0, 273, 274, 614, 0, 0, 0, 0,
9658  275, 276, 0, 277, 0, 278, 0, 279, 280, 0,
9659  0, 0, 0, 0, 0, 0, 281, 0, 282, 283,
9660  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
9661  294, 295, 296, 297, 298, 0, 299, 300, 301, 0,
9662  302, 303, 304, 305, 0, 306, 307, 0, 0, 0,
9663  0, 308, 309, 310, 311, 312, 313, 0, 0, 314,
9664  315, 0, 316, 0, 317, 0, 318, 319, 320, 321,
9665  322, 323, 324, 325, 326, 0, 0, 327, 328, 0,
9666  0, 329, 330, 331, 332, 0, 0, 0, 333, 334,
9667  0, 0, 0, 335, 0, 336, 337, 338, 0, 339,
9668  340, 341, 0, 342, 0, 0, 0, 0, 0, 0,
9669  0, 0, 0, 343, 344, 345, 0, 346, 347, 0,
9670  348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
9671  0, 0, 358, 359, 360, 0, 361, 0, 362, 363,
9672  364, 365, 366, 0, 367, 368, 369, 0, 0, 370,
9673  0, 0, 0, 371, 372, 373, 374, 375, 0, 0,
9674  376, 377, 378, 379, 380, 0, 381, 382, 0, 383,
9675  384, 385, 0, 0, 386, 0, 387, 0, 388, 389,
9676  0, 390, 391, 392, 0, 393, 0, 0, 394, 395,
9677  396, 397, 398, 399, 400, 401, 402, 403, 404, 0,
9678  405, 406, 0, 0, 0, 407, 408, 409, 410, 0,
9679  0, 0, 411, 0, 0, 0, 412, 0, 413, 414,
9680  415, 416, 0, 417, 418, 419, 420, 421, 0, 0,
9681  0, 0, 0, 422, 423, 424, 0, 425, 426, 0,
9682  427, 0, 0, 428, 0, 0, 429, 430, 431, 432,
9683  433, 434, 0, 0, 435, 436, 0, 437, 438, 439,
9684  440, 441, 442, 0, 0, 443, 444, 445, 446, 0,
9685  447, 448, 0, 0, 449, 450, 451, 452, 0, 134,
9686  453, 454, 0, 455, 456, 457, 458, 0, 0, 0,
9687  0, 0, 459, 460, 0, 0, 0, 461, 462, 463,
9688  464, 0, 465, 466, 0, 467, 468, 0, 469, 470,
9689  0, 0, 471, 0, 0, 472, 0, 473, 0, 474,
9690  475, 0, 0, 0, 0, 0, 0, 476, 0, 0,
9691  477, 0, 0, 0, 478, 479, 480, 481, 482, 0,
9692  0, 0, 0, 0, 0, 483, 484, 0, 485, 486,
9693  487, 0, 137, 488, 138, 139, 140, 141, 142, 0,
9694  0, 143, 0, 0, 0, 144, 0, 0, 145, 0,
9695  146, 147, 148, 149, 150, 151, 0, 152, 0, 0,
9696  0, 153, 0, 0, 0, 154, 0, 0, 155, 156,
9697  157, 0, 158, 0, 159, 160, 0, 0, 161, 0,
9698  0, 162, 163, 0, 164, 165, 0, 166, 0, 167,
9699  168, 169, 170, 171, 172, 0, 173, 174, 0, 175,
9700  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
9701  185, 0, 186, 187, 188, 189, 190, 0, 0, 0,
9702  191, 0, 0, 192, 0, 193, 0, 0, 194, 0,
9703  0, 0, 195, 196, 197, 0, 0, 198, 0, 0,
9704  0, 0, 199, 200, 0, 0, 0, 0, 201, 202,
9705  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
9706  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
9707  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
9708  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
9709  225, 226, 227, 0, 0, 228, 229, 230, 231, 232,
9710  0, 0, 233, 234, 0, 235, 236, 237, 0, 0,
9711  238, 0, 0, 0, 239, 240, 0, 241, 0, 242,
9712  0, 243, 244, 245, 246, 0, 247, 0, 248, 0,
9713  0, 0, 249, 250, 0, 251, 0, 0, 252, 253,
9714  0, 0, 0, 254, 255, 256, 257, 0, 0, 258,
9715  259, 260, 0, 0, 261, 0, 0, 0, 0, 262,
9716  263, 0, 0, 0, 264, 0, 0, 0, 265, 266,
9717  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
9718  271, 0, 0, 272, 0, 0, 273, 274, 0, 0,
9719  0, 0, 0, 275, 276, 0, 277, 0, 278, 0,
9720  279, 280, 0, 0, 1884, 0, 0, 0, 0, 281,
9721  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
9722  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
9723  300, 301, 0, 302, 303, 304, 305, 0, 306, 307,
9724  0, 0, 0, 0, 308, 309, 310, 311, 312, 313,
9725  0, 0, 314, 315, 0, 316, 0, 317, 0, 318,
9726  319, 320, 321, 322, 323, 324, 325, 326, 0, 0,
9727  327, 328, 0, 0, 329, 330, 331, 332, 0, 0,
9728  0, 333, 334, 0, 0, 1885, 335, 0, 336, 337,
9729  338, 0, 339, 340, 341, 0, 342, 0, 0, 0,
9730  0, 0, 0, 0, 0, 0, 343, 344, 345, 722,
9731  346, 347, 0, 348, 349, 350, 351, 352, 353, 354,
9732  355, 356, 357, 0, 0, 358, 359, 360, 0, 361,
9733  0, 362, 363, 364, 365, 366, 0, 367, 368, 369,
9734  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
9735  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
9736  382, 0, 383, 384, 385, 0, 0, 386, 0, 387,
9737  0, 388, 389, 0, 390, 391, 392, 0, 393, 0,
9738  0, 394, 395, 396, 397, 398, 399, 400, 401, 402,
9739  403, 404, 0, 405, 406, 0, 0, 0, 407, 408,
9740  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
9741  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
9742  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
9743  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
9744  430, 431, 432, 433, 434, 0, 0, 435, 436, 0,
9745  437, 438, 439, 440, 441, 442, 0, 0, 443, 444,
9746  445, 446, 0, 447, 448, 0, 0, 449, 450, 451,
9747  452, 0, 0, 453, 454, 0, 455, 456, 457, 458,
9748  0, 0, 0, 0, 0, 459, 460, 0, 0, 0,
9749  461, 462, 463, 464, 1886, 465, 466, 0, 467, 468,
9750  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
9751  473, 0, 474, 475, 0, 0, 0, 0, 0, 0,
9752  476, 0, 0, 477, 0, 0, 0, 478, 479, 480,
9753  481, 482, 0, 0, 0, 0, 0, 0, 483, 484,
9754  0, 485, 486, 487, 0, 137, 488, 138, 139, 140,
9755  141, 142, 0, 0, 143, 0, 0, 0, 144, 0,
9756  0, 145, 0, 146, 147, 148, 149, 150, 151, 0,
9757  152, 0, 0, 1339, 153, 0, 0, 0, 154, 0,
9758  0, 155, 156, 157, 0, 158, 0, 159, 160, 0,
9759  0, 161, 0, 0, 162, 163, 0, 164, 165, 0,
9760  166, 0, 167, 168, 169, 170, 171, 172, 0, 173,
9761  174, 0, 175, 176, 177, 178, 179, 180, 181, 182,
9762  183, 0, 184, 185, 0, 186, 187, 188, 189, 190,
9763  0, 0, 0, 191, 0, 0, 192, 0, 193, 0,
9764  0, 194, 0, 0, 0, 195, 196, 197, 0, 0,
9765  198, 0, 0, 0, 0, 199, 200, 0, 0, 0,
9766  1340, 201, 202, 0, 203, 0, 0, 0, 204, 0,
9767  205, 206, 207, 208, 209, 0, 0, 0, 210, 0,
9768  0, 211, 212, 213, 0, 0, 0, 214, 0, 215,
9769  216, 0, 217, 218, 219, 0, 0, 220, 221, 0,
9770  222, 223, 224, 225, 226, 227, 0, 0, 228, 229,
9771  230, 231, 232, 0, 0, 233, 234, 0, 235, 236,
9772  237, 0, 0, 238, 0, 0, 0, 239, 240, 0,
9773  241, 0, 242, 0, 243, 244, 245, 246, 0, 247,
9774  0, 248, 0, 0, 0, 249, 250, 0, 251, 0,
9775  0, 252, 253, 0, 0, 0, 254, 255, 256, 257,
9776  0, 0, 258, 259, 260, 0, 0, 261, 0, 0,
9777  0, 0, 262, 263, 0, 0, 0, 264, 0, 0,
9778  0, 265, 266, 0, 267, 268, 0, 0, 0, 269,
9779  0, 0, 270, 271, 0, 0, 272, 0, 0, 273,
9780  274, 614, 0, 0, 0, 0, 275, 276, 0, 277,
9781  0, 278, 0, 279, 280, 0, 0, 0, 0, 0,
9782  0, 0, 281, 0, 282, 283, 284, 285, 286, 287,
9783  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
9784  298, 0, 299, 300, 301, 0, 302, 303, 304, 305,
9785  0, 306, 307, 0, 0, 0, 0, 308, 309, 310,
9786  311, 312, 313, 0, 0, 314, 315, 0, 316, 0,
9787  317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
9788  326, 0, 0, 327, 328, 0, 0, 329, 330, 331,
9789  332, 0, 0, 0, 333, 334, 0, 0, 0, 335,
9790  0, 336, 337, 338, 0, 339, 340, 341, 0, 342,
9791  0, 0, 0, 0, 0, 0, 0, 0, 0, 343,
9792  344, 345, 0, 346, 347, 0, 348, 349, 350, 351,
9793  352, 353, 354, 355, 356, 357, 0, 0, 358, 359,
9794  360, 0, 361, 0, 362, 363, 364, 365, 366, 0,
9795  367, 368, 369, 0, 0, 370, 0, 0, 0, 371,
9796  372, 373, 374, 375, 0, 0, 376, 377, 378, 379,
9797  380, 0, 381, 382, 0, 383, 384, 385, 0, 0,
9798  386, 0, 387, 0, 388, 389, 0, 390, 391, 392,
9799  0, 393, 0, 0, 394, 395, 396, 397, 398, 399,
9800  400, 401, 402, 403, 404, 0, 405, 406, 0, 0,
9801  0, 407, 408, 409, 410, 0, 0, 0, 411, 0,
9802  0, 0, 412, 0, 413, 414, 415, 416, 0, 417,
9803  418, 419, 420, 421, 0, 0, 0, 0, 0, 422,
9804  423, 424, 0, 425, 426, 0, 427, 0, 0, 428,
9805  0, 0, 429, 430, 431, 432, 433, 434, 0, 0,
9806  435, 436, 0, 437, 438, 439, 440, 441, 442, 0,
9807  0, 443, 444, 445, 446, 0, 447, 448, 0, 0,
9808  449, 450, 451, 452, 0, 134, 453, 454, 0, 455,
9809  456, 457, 458, 0, 0, 0, 0, 0, 459, 460,
9810  0, 0, 0, 461, 462, 463, 464, 0, 465, 466,
9811  0, 467, 468, 0, 469, 470, 0, 0, 471, 0,
9812  0, 472, 0, 473, 0, 474, 475, 0, 0, 0,
9813  0, 0, 0, 476, 0, 0, 477, 0, 0, 0,
9814  478, 479, 480, 481, 482, 0, 0, 0, 0, 0,
9815  0, 483, 484, 0, 485, 486, 487, 0, 137, 488,
9816  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
9817  0, 144, 0, 0, 145, 0, 146, 147, 148, 149,
9818  150, 151, 0, 152, 0, 0, 0, 153, 0, 0,
9819  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
9820  159, 160, 0, 0, 161, 0, 0, 162, 163, 0,
9821  164, 165, 0, 166, 0, 167, 168, 169, 170, 171,
9822  172, 0, 173, 174, 0, 175, 176, 177, 178, 179,
9823  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
9824  188, 189, 190, 0, 0, 0, 191, 0, 0, 192,
9825  0, 193, 960, 0, 194, 0, 0, 0, 195, 196,
9826  197, 0, 0, 198, 0, 0, 0, 0, 199, 200,
9827  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
9828  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
9829  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
9830  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
9831  220, 221, 0, 222, 223, 224, 225, 226, 227, 0,
9832  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
9833  0, 235, 236, 237, 0, 0, 238, 0, 0, 0,
9834  239, 240, 0, 241, 0, 242, 0, 243, 244, 245,
9835  246, 0, 247, 0, 248, 0, 0, 0, 249, 250,
9836  0, 251, 0, 0, 252, 253, 0, 0, 0, 254,
9837  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
9838  261, 0, 0, 0, 0, 262, 263, 0, 0, 0,
9839  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
9840  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
9841  0, 0, 273, 274, 614, 0, 0, 0, 0, 275,
9842  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
9843  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
9844  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
9845  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
9846  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
9847  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
9848  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
9849  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
9850  329, 330, 331, 332, 0, 0, 0, 333, 334, 0,
9851  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
9852  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
9853  0, 0, 343, 344, 345, 0, 346, 347, 0, 348,
9854  349, 350, 351, 352, 353, 354, 355, 356, 357, 0,
9855  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
9856  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
9857  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
9858  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
9859  385, 0, 0, 386, 0, 387, 0, 388, 389, 0,
9860  390, 391, 392, 0, 393, 0, 0, 394, 395, 396,
9861  397, 398, 399, 400, 401, 402, 403, 404, 0, 405,
9862  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
9863  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
9864  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
9865  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
9866  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
9867  434, 0, 0, 435, 436, 0, 437, 438, 439, 440,
9868  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
9869  448, 0, 0, 449, 450, 451, 452, 0, 134, 453,
9870  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
9871  0, 459, 460, 0, 0, 0, 461, 462, 463, 464,
9872  0, 465, 466, 0, 467, 468, 0, 469, 470, 0,
9873  0, 471, 0, 0, 472, 0, 473, 0, 474, 475,
9874  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
9875  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
9876  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
9877  0, 137, 488, 138, 139, 140, 141, 142, 1374, 0,
9878  143, 0, 0, 0, 144, 0, 0, 145, 0, 146,
9879  147, 148, 149, 150, 151, 0, 152, 0, 0, 0,
9880  153, 0, 0, 0, 154, 0, 0, 155, 156, 157,
9881  0, 158, 0, 159, 160, 0, 0, 161, 0, 0,
9882  162, 163, 0, 164, 165, 0, 166, 0, 167, 168,
9883  169, 170, 171, 172, 0, 173, 174, 0, 175, 176,
9884  177, 178, 179, 180, 181, 182, 183, 0, 184, 185,
9885  0, 186, 187, 188, 189, 190, 0, 0, 0, 191,
9886  0, 0, 192, 0, 193, 0, 0, 194, 0, 0,
9887  0, 195, 196, 197, 0, 0, 198, 0, 0, 0,
9888  0, 199, 200, 0, 0, 0, 0, 201, 202, 0,
9889  203, 0, 0, 0, 204, 0, 205, 206, 207, 208,
9890  209, 0, 0, 0, 210, 0, 0, 211, 212, 213,
9891  0, 0, 0, 214, 0, 215, 216, 0, 217, 218,
9892  219, 0, 0, 220, 221, 0, 222, 223, 224, 225,
9893  226, 227, 0, 0, 228, 229, 230, 231, 232, 0,
9894  0, 233, 234, 0, 235, 236, 237, 0, 0, 238,
9895  0, 0, 0, 239, 240, 0, 241, 0, 242, 0,
9896  243, 244, 245, 246, 0, 247, 0, 248, 0, 0,
9897  0, 249, 250, 0, 251, 0, 0, 252, 253, 0,
9898  0, 0, 254, 255, 256, 257, 0, 0, 258, 259,
9899  260, 0, 0, 261, 0, 0, 0, 0, 262, 263,
9900  0, 0, 0, 264, 0, 0, 0, 265, 266, 0,
9901  267, 268, 0, 0, 0, 269, 0, 0, 270, 271,
9902  0, 0, 272, 0, 0, 273, 274, 614, 0, 0,
9903  0, 0, 275, 276, 0, 277, 0, 278, 0, 279,
9904  280, 0, 0, 0, 0, 0, 0, 0, 281, 0,
9905  282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
9906  292, 293, 294, 295, 296, 297, 298, 0, 299, 300,
9907  301, 0, 302, 303, 304, 305, 0, 306, 307, 0,
9908  0, 0, 0, 308, 309, 310, 311, 312, 313, 0,
9909  0, 314, 315, 0, 316, 0, 317, 0, 318, 319,
9910  320, 321, 322, 323, 324, 325, 326, 0, 0, 327,
9911  328, 0, 0, 329, 330, 331, 332, 0, 0, 0,
9912  333, 334, 0, 0, 0, 335, 0, 336, 337, 338,
9913  0, 339, 340, 341, 0, 342, 0, 0, 0, 0,
9914  0, 0, 0, 0, 0, 343, 344, 345, 0, 346,
9915  347, 0, 348, 349, 350, 351, 352, 353, 354, 355,
9916  356, 357, 0, 0, 358, 359, 360, 0, 361, 0,
9917  362, 363, 364, 365, 366, 0, 367, 368, 369, 0,
9918  0, 370, 0, 0, 0, 371, 372, 373, 374, 375,
9919  0, 0, 376, 377, 378, 379, 380, 0, 381, 382,
9920  0, 383, 384, 385, 0, 0, 386, 0, 387, 0,
9921  388, 389, 0, 390, 391, 392, 0, 393, 0, 0,
9922  394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
9923  404, 0, 405, 406, 0, 0, 0, 407, 408, 409,
9924  410, 0, 0, 0, 411, 0, 0, 0, 412, 0,
9925  413, 414, 415, 416, 0, 417, 418, 419, 420, 421,
9926  0, 0, 0, 0, 0, 422, 423, 424, 0, 425,
9927  426, 0, 427, 0, 0, 428, 0, 0, 429, 430,
9928  431, 432, 433, 434, 0, 0, 435, 436, 0, 437,
9929  438, 439, 440, 441, 442, 0, 0, 443, 444, 445,
9930  446, 0, 447, 448, 0, 0, 449, 450, 451, 452,
9931  0, 134, 453, 454, 0, 455, 456, 457, 458, 0,
9932  0, 0, 0, 0, 459, 460, 0, 0, 0, 461,
9933  462, 463, 464, 0, 465, 466, 0, 467, 468, 0,
9934  469, 470, 0, 0, 471, 0, 0, 472, 0, 473,
9935  0, 474, 475, 0, 0, 0, 0, 0, 0, 476,
9936  0, 0, 477, 0, 0, 0, 478, 479, 480, 481,
9937  482, 0, 0, 0, 0, 0, 0, 483, 484, 0,
9938  485, 486, 487, 0, 137, 488, 138, 139, 140, 141,
9939  142, 0, 0, 143, 0, 0, 0, 144, 0, 0,
9940  145, 0, 146, 147, 148, 149, 150, 151, 0, 152,
9941  0, 0, 0, 153, 937, 0, 0, 154, 0, 0,
9942  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
9943  161, 0, 0, 162, 163, 0, 164, 165, 0, 166,
9944  0, 167, 168, 169, 170, 171, 172, 0, 173, 174,
9945  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
9946  0, 184, 185, 0, 186, 187, 188, 189, 190, 0,
9947  0, 0, 191, 0, 0, 192, 0, 193, 0, 0,
9948  194, 0, 0, 0, 195, 196, 197, 0, 0, 198,
9949  0, 0, 0, 0, 199, 200, 0, 0, 0, 0,
9950  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
9951  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
9952  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
9953  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
9954  223, 224, 225, 226, 227, 0, 0, 228, 229, 230,
9955  231, 232, 0, 0, 233, 234, 0, 235, 236, 237,
9956  0, 0, 238, 0, 0, 0, 239, 240, 0, 241,
9957  0, 242, 0, 243, 244, 245, 246, 0, 247, 0,
9958  248, 0, 0, 0, 249, 250, 0, 251, 938, 0,
9959  252, 253, 0, 0, 0, 254, 255, 256, 257, 0,
9960  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
9961  0, 262, 263, 0, 0, 0, 264, 0, 0, 0,
9962  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
9963  0, 270, 271, 0, 0, 272, 0, 0, 273, 274,
9964  0, 0, 0, 0, 0, 275, 276, 0, 277, 0,
9965  278, 0, 279, 280, 0, 0, 0, 0, 0, 0,
9966  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
9967  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
9968  0, 299, 300, 301, 0, 302, 303, 304, 305, 0,
9969  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
9970  312, 313, 0, 0, 314, 315, 0, 316, 0, 317,
9971  0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
9972  0, 0, 327, 328, 0, 0, 329, 330, 331, 332,
9973  0, 0, 0, 333, 334, 0, 0, 0, 335, 0,
9974  336, 337, 338, 0, 339, 340, 341, 0, 342, 0,
9975  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
9976  345, 0, 346, 347, 0, 348, 349, 350, 351, 352,
9977  353, 354, 355, 356, 357, 0, 0, 358, 359, 360,
9978  0, 361, 0, 362, 363, 364, 365, 366, 0, 367,
9979  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
9980  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
9981  0, 381, 382, 0, 383, 384, 385, 0, 0, 386,
9982  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
9983  393, 0, 0, 394, 395, 396, 397, 398, 399, 400,
9984  401, 402, 403, 404, 0, 405, 406, 0, 0, 0,
9985  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
9986  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
9987  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
9988  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
9989  0, 429, 430, 431, 432, 433, 434, 0, 0, 435,
9990  436, 0, 437, 438, 439, 440, 441, 442, 0, 0,
9991  443, 444, 445, 446, 0, 447, 448, 0, 0, 449,
9992  450, 451, 452, 0, 939, 453, 454, 0, 455, 456,
9993  457, 458, 0, 0, 0, 0, 0, 459, 460, 0,
9994  0, 0, 461, 462, 463, 464, 0, 465, 466, 0,
9995  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
9996  472, 0, 473, 0, 474, 475, 0, 0, 0, 0,
9997  0, 0, 476, 0, 0, 477, 0, 0, 0, 478,
9998  479, 480, 481, 482, 0, 0, 0, 0, 0, 0,
9999  483, 484, 0, 485, 486, 487, 0, 137, 488, 138,
10000  139, 140, 141, 142, 0, 0, 143, 0, 0, 0,
10001  144, 0, 0, 145, 0, 146, 147, 148, 149, 150,
10002  151, 0, 152, 0, 0, 0, 153, 0, 0, 0,
10003  154, 0, 0, 155, 156, 157, 0, 158, 0, 159,
10004  160, 0, 0, 161, 0, 0, 162, 163, 0, 164,
10005  165, 0, 166, 0, 167, 168, 169, 170, 171, 172,
10006  0, 173, 174, 0, 175, 176, 177, 178, 179, 180,
10007  181, 182, 183, 0, 184, 185, 0, 186, 187, 188,
10008  189, 190, 0, 0, 0, 191, 0, 0, 192, 0,
10009  193, 0, 0, 194, 0, 0, 0, 195, 196, 197,
10010  0, 0, 198, 0, 0, 0, 0, 199, 200, 0,
10011  0, 0, 2395, 201, 202, 0, 203, 0, 0, 0,
10012  204, 0, 205, 206, 207, 208, 209, 0, 0, 0,
10013  210, 0, 0, 211, 212, 213, 0, 0, 0, 214,
10014  0, 215, 216, 0, 217, 218, 219, 0, 0, 220,
10015  221, 0, 222, 223, 224, 225, 226, 227, 0, 0,
10016  228, 229, 230, 231, 232, 0, 0, 233, 234, 0,
10017  235, 236, 237, 0, 0, 238, 0, 0, 0, 239,
10018  240, 0, 241, 0, 242, 0, 243, 244, 245, 246,
10019  0, 247, 0, 248, 0, 0, 0, 249, 250, 0,
10020  251, 0, 0, 252, 253, 0, 0, 0, 254, 255,
10021  256, 257, 0, 0, 258, 259, 260, 0, 0, 261,
10022  0, 0, 0, 0, 262, 263, 0, 0, 0, 264,
10023  0, 0, 0, 265, 266, 0, 267, 268, 0, 0,
10024  0, 269, 0, 0, 270, 271, 0, 0, 272, 0,
10025  0, 273, 274, 614, 0, 0, 0, 0, 275, 276,
10026  0, 277, 0, 278, 0, 279, 280, 0, 0, 0,
10027  0, 0, 0, 0, 281, 0, 282, 283, 284, 285,
10028  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
10029  296, 297, 298, 0, 299, 300, 301, 0, 302, 303,
10030  304, 305, 0, 306, 307, 0, 0, 0, 0, 308,
10031  309, 310, 311, 312, 313, 0, 0, 314, 315, 0,
10032  316, 0, 317, 0, 318, 319, 320, 321, 322, 323,
10033  324, 325, 326, 0, 0, 327, 328, 0, 0, 329,
10034  330, 331, 332, 0, 0, 0, 333, 334, 0, 0,
10035  0, 335, 0, 336, 337, 338, 0, 339, 340, 341,
10036  0, 342, 0, 0, 0, 0, 0, 0, 0, 0,
10037  0, 343, 344, 345, 0, 346, 347, 0, 348, 349,
10038  350, 351, 352, 353, 354, 355, 356, 357, 0, 0,
10039  358, 359, 360, 0, 361, 0, 362, 363, 364, 365,
10040  366, 0, 367, 368, 369, 0, 0, 370, 0, 0,
10041  0, 371, 372, 373, 374, 375, 0, 0, 376, 377,
10042  378, 379, 380, 0, 381, 382, 0, 383, 384, 385,
10043  0, 0, 386, 0, 387, 0, 388, 389, 0, 390,
10044  391, 392, 0, 393, 0, 0, 394, 395, 396, 397,
10045  398, 399, 400, 401, 402, 403, 404, 0, 405, 406,
10046  0, 0, 0, 407, 408, 409, 410, 0, 0, 0,
10047  411, 0, 0, 0, 412, 0, 413, 414, 415, 416,
10048  0, 417, 418, 419, 420, 421, 0, 0, 0, 0,
10049  0, 422, 423, 424, 0, 425, 426, 0, 427, 0,
10050  0, 428, 0, 0, 429, 430, 431, 432, 433, 434,
10051  0, 0, 435, 436, 0, 437, 438, 439, 440, 441,
10052  442, 0, 0, 443, 444, 445, 446, 0, 447, 448,
10053  0, 0, 449, 450, 451, 452, 0, 134, 453, 454,
10054  0, 455, 456, 457, 458, 0, 0, 0, 0, 0,
10055  459, 460, 0, 0, 0, 461, 462, 463, 464, 0,
10056  465, 466, 0, 467, 468, 0, 469, 470, 0, 0,
10057  471, 0, 0, 472, 0, 473, 0, 474, 475, 0,
10058  0, 0, 0, 0, 0, 476, 0, 0, 477, 0,
10059  0, 0, 478, 479, 480, 481, 482, 0, 0, 0,
10060  0, 0, 0, 483, 484, 0, 485, 486, 487, 0,
10061  137, 488, 138, 139, 140, 141, 142, 0, 0, 143,
10062  0, 0, 0, 144, 0, 0, 145, 0, 146, 147,
10063  148, 149, 150, 151, 0, 152, 0, 0, 1339, 153,
10064  0, 0, 0, 154, 0, 0, 155, 156, 157, 0,
10065  158, 0, 159, 160, 0, 0, 161, 0, 0, 162,
10066  163, 0, 164, 165, 0, 166, 0, 167, 168, 169,
10067  170, 171, 172, 0, 173, 174, 0, 175, 176, 177,
10068  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
10069  186, 187, 188, 189, 190, 0, 0, 0, 191, 0,
10070  0, 192, 0, 193, 0, 0, 194, 0, 0, 0,
10071  195, 196, 197, 0, 0, 198, 0, 0, 0, 0,
10072  199, 200, 0, 0, 0, 0, 201, 202, 0, 203,
10073  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
10074  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
10075  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
10076  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
10077  227, 0, 0, 228, 229, 230, 231, 232, 0, 0,
10078  233, 234, 0, 235, 236, 237, 0, 0, 238, 0,
10079  0, 0, 239, 240, 0, 241, 0, 242, 0, 243,
10080  244, 245, 246, 0, 247, 0, 248, 0, 0, 0,
10081  249, 250, 0, 251, 0, 0, 252, 253, 0, 0,
10082  0, 254, 255, 256, 257, 0, 0, 258, 259, 260,
10083  0, 0, 261, 0, 0, 0, 0, 262, 263, 0,
10084  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
10085  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
10086  0, 272, 0, 0, 273, 274, 614, 0, 0, 0,
10087  0, 275, 276, 0, 277, 0, 278, 0, 279, 280,
10088  0, 0, 0, 0, 0, 0, 0, 281, 0, 282,
10089  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
10090  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
10091  0, 302, 303, 304, 305, 0, 306, 307, 0, 0,
10092  0, 0, 308, 309, 310, 311, 312, 313, 0, 0,
10093  314, 315, 0, 316, 0, 317, 0, 318, 319, 320,
10094  321, 322, 323, 324, 325, 326, 0, 0, 327, 328,
10095  0, 0, 329, 330, 331, 332, 0, 0, 0, 333,
10096  334, 0, 0, 0, 335, 0, 336, 337, 338, 0,
10097  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
10098  0, 0, 0, 0, 343, 344, 345, 0, 346, 347,
10099  0, 348, 349, 350, 351, 352, 353, 354, 355, 356,
10100  357, 0, 0, 358, 359, 360, 0, 361, 0, 362,
10101  363, 364, 365, 366, 0, 367, 368, 369, 0, 0,
10102  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
10103  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
10104  383, 384, 385, 0, 0, 386, 0, 387, 0, 388,
10105  389, 0, 390, 391, 392, 0, 393, 0, 0, 394,
10106  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
10107  0, 405, 406, 0, 0, 0, 407, 408, 409, 410,
10108  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
10109  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
10110  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
10111  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
10112  432, 433, 434, 0, 0, 435, 436, 0, 437, 438,
10113  439, 440, 441, 442, 0, 0, 443, 444, 445, 446,
10114  0, 447, 448, 0, 0, 449, 450, 451, 452, 0,
10115  134, 453, 454, 0, 455, 456, 457, 458, 0, 0,
10116  0, 0, 0, 459, 460, 0, 0, 0, 461, 462,
10117  463, 464, 0, 465, 466, 0, 467, 468, 0, 469,
10118  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
10119  474, 475, 0, 0, 0, 0, 0, 0, 476, 0,
10120  0, 477, 0, 0, 0, 478, 479, 480, 481, 482,
10121  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
10122  486, 487, 0, 137, 488, 138, 139, 140, 141, 142,
10123  0, 0, 143, 0, 0, 0, 144, 0, 0, 145,
10124  0, 146, 147, 148, 149, 150, 151, 0, 152, 0,
10125  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
10126  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
10127  0, 0, 162, 163, 0, 164, 165, 0, 166, 0,
10128  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
10129  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
10130  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
10131  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
10132  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
10133  0, 0, 0, 199, 200, 0, 0, 0, 0, 201,
10134  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
10135  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
10136  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
10137  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
10138  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
10139  232, 0, 0, 233, 234, 0, 235, 236, 237, 0,
10140  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
10141  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
10142  0, 0, 0, 249, 250, 0, 251, 0, 0, 252,
10143  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
10144  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
10145  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
10146  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
10147  270, 271, 0, 0, 272, 0, 0, 273, 274, 614,
10148  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
10149  0, 279, 280, 0, 0, 0, 0, 0, 0, 0,
10150  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
10151  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
10152  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
10153  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
10154  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
10155  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
10156  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
10157  0, 0, 333, 334, 0, 0, 0, 335, 0, 336,
10158  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
10159  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
10160  0, 346, 347, 0, 348, 349, 350, 351, 352, 353,
10161  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
10162  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
10163  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
10164  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
10165  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
10166  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
10167  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
10168  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
10169  408, 409, 410, 0, 0, 0, 411, 0, 0, 0,
10170  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
10171  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
10172  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
10173  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
10174  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
10175  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
10176  451, 452, 0, 134, 453, 454, 0, 455, 456, 457,
10177  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
10178  0, 461, 462, 463, 464, 0, 465, 466, 0, 467,
10179  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
10180  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
10181  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
10182  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
10183  484, 0, 485, 486, 487, 0, 137, 488, 138, 139,
10184  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
10185  2852, 0, 145, 0, 146, 147, 148, 149, 150, 151,
10186  0, 152, 0, 0, 0, 153, 0, 0, 0, 154,
10187  0, 0, 155, 156, 157, 0, 158, 0, 159, 160,
10188  0, 0, 161, 0, 0, 162, 163, 0, 164, 165,
10189  0, 166, 0, 167, 168, 169, 170, 171, 172, 0,
10190  173, 174, 0, 175, 176, 177, 178, 179, 180, 181,
10191  182, 183, 0, 184, 185, 0, 186, 187, 188, 189,
10192  190, 0, 0, 0, 191, 0, 0, 192, 0, 193,
10193  0, 0, 194, 0, 0, 0, 195, 196, 197, 0,
10194  0, 198, 0, 0, 0, 0, 199, 200, 0, 0,
10195  0, 0, 201, 202, 0, 203, 0, 0, 0, 204,
10196  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
10197  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
10198  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
10199  0, 222, 223, 224, 225, 226, 227, 0, 0, 228,
10200  229, 230, 231, 232, 0, 0, 233, 234, 0, 235,
10201  236, 237, 0, 0, 238, 0, 0, 0, 239, 240,
10202  0, 241, 0, 242, 0, 243, 244, 245, 246, 0,
10203  247, 0, 248, 0, 0, 0, 249, 250, 0, 251,
10204  0, 0, 252, 253, 0, 0, 0, 254, 255, 256,
10205  257, 0, 0, 258, 259, 260, 0, 0, 261, 0,
10206  0, 0, 0, 262, 263, 0, 0, 0, 264, 0,
10207  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
10208  269, 0, 0, 270, 271, 0, 0, 272, 0, 0,
10209  273, 274, 0, 0, 0, 0, 0, 275, 276, 0,
10210  277, 0, 278, 0, 279, 280, 0, 0, 0, 0,
10211  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
10212  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
10213  297, 298, 0, 299, 300, 301, 0, 302, 303, 304,
10214  305, 0, 306, 307, 0, 0, 0, 0, 308, 309,
10215  310, 311, 312, 313, 0, 0, 314, 315, 0, 316,
10216  0, 317, 0, 318, 319, 320, 321, 322, 323, 324,
10217  325, 326, 0, 0, 327, 328, 0, 0, 329, 330,
10218  331, 332, 0, 0, 0, 333, 334, 0, 0, 0,
10219  335, 0, 336, 337, 338, 0, 339, 340, 341, 0,
10220  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10221  343, 344, 345, 0, 346, 347, 0, 348, 349, 350,
10222  351, 352, 353, 354, 355, 356, 357, 0, 0, 358,
10223  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
10224  0, 367, 368, 369, 0, 0, 370, 0, 0, 0,
10225  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
10226  379, 380, 0, 381, 382, 0, 383, 384, 385, 0,
10227  0, 386, 0, 387, 0, 388, 389, 0, 390, 391,
10228  392, 0, 393, 0, 0, 394, 395, 396, 397, 398,
10229  399, 400, 401, 402, 403, 404, 0, 405, 406, 0,
10230  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
10231  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
10232  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
10233  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
10234  428, 0, 0, 429, 430, 431, 432, 433, 434, 0,
10235  0, 435, 436, 0, 437, 438, 439, 440, 441, 442,
10236  0, 0, 443, 444, 445, 446, 0, 447, 448, 0,
10237  0, 449, 450, 451, 452, 0, 134, 453, 454, 0,
10238  455, 456, 457, 458, 0, 0, 0, 0, 0, 459,
10239  460, 0, 0, 0, 461, 462, 463, 464, 0, 465,
10240  466, 0, 467, 468, 0, 469, 470, 0, 0, 471,
10241  0, 0, 472, 0, 473, 0, 474, 475, 0, 0,
10242  0, 0, 0, 0, 476, 0, 0, 477, 0, 0,
10243  0, 478, 479, 480, 481, 482, 0, 0, 0, 0,
10244  0, 0, 483, 484, 0, 485, 486, 487, 0, 137,
10245  488, 138, 139, 140, 141, 142, 0, 0, 143, 0,
10246  0, 0, 144, 0, 0, 145, 0, 146, 147, 148,
10247  149, 150, 151, 0, 152, 0, 0, 0, 153, 0,
10248  0, 0, 154, 0, 0, 155, 156, 157, 0, 158,
10249  0, 159, 160, 0, 0, 161, 0, 0, 162, 163,
10250  0, 164, 165, 0, 166, 0, 167, 168, 169, 170,
10251  171, 172, 0, 173, 174, 0, 175, 176, 177, 178,
10252  179, 180, 181, 182, 183, 0, 184, 185, 0, 186,
10253  187, 188, 189, 190, 4409, 0, 0, 191, 0, 0,
10254  192, 0, 193, 0, 0, 194, 0, 0, 0, 195,
10255  196, 197, 0, 0, 198, 0, 0, 0, 0, 199,
10256  200, 0, 0, 0, 0, 201, 202, 0, 203, 0,
10257  0, 0, 204, 0, 205, 206, 207, 208, 209, 0,
10258  0, 0, 210, 0, 0, 211, 212, 213, 0, 0,
10259  0, 214, 0, 215, 216, 0, 217, 218, 219, 0,
10260  0, 220, 221, 0, 222, 223, 224, 225, 226, 227,
10261  0, 4410, 228, 229, 230, 231, 232, 0, 0, 233,
10262  234, 0, 235, 236, 237, 0, 0, 238, 0, 0,
10263  0, 239, 240, 0, 241, 0, 242, 0, 243, 244,
10264  245, 246, 0, 247, 0, 248, 0, 0, 0, 249,
10265  250, 0, 251, 0, 0, 252, 253, 0, 0, 0,
10266  254, 255, 256, 257, 0, 0, 258, 259, 260, 0,
10267  0, 261, 0, 0, 0, 0, 262, 263, 0, 0,
10268  0, 264, 0, 0, 0, 265, 266, 0, 267, 268,
10269  0, 0, 0, 269, 0, 0, 270, 271, 0, 0,
10270  272, 0, 0, 273, 274, 0, 0, 0, 0, 0,
10271  275, 276, 0, 277, 0, 278, 0, 279, 280, 0,
10272  0, 0, 0, 0, 0, 0, 281, 0, 282, 283,
10273  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
10274  294, 295, 296, 297, 298, 0, 299, 300, 301, 0,
10275  302, 303, 304, 305, 0, 306, 307, 0, 0, 0,
10276  0, 308, 309, 310, 311, 312, 313, 0, 0, 314,
10277  315, 0, 316, 0, 317, 0, 318, 319, 320, 321,
10278  322, 323, 324, 325, 326, 0, 0, 327, 328, 0,
10279  0, 329, 330, 331, 332, 0, 0, 0, 333, 334,
10280  0, 0, 0, 335, 0, 336, 337, 338, 0, 339,
10281  340, 341, 0, 342, 0, 0, 0, 0, 0, 0,
10282  0, 0, 0, 343, 344, 345, 0, 346, 347, 0,
10283  348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
10284  0, 0, 358, 359, 360, 0, 361, 0, 362, 363,
10285  364, 365, 366, 0, 367, 368, 369, 0, 0, 370,
10286  0, 0, 0, 371, 372, 373, 374, 375, 0, 0,
10287  376, 377, 378, 379, 380, 0, 381, 382, 0, 383,
10288  384, 385, 0, 0, 386, 0, 387, 0, 388, 389,
10289  0, 390, 391, 392, 0, 393, 0, 0, 394, 395,
10290  396, 397, 398, 399, 400, 401, 402, 403, 404, 0,
10291  405, 406, 0, 0, 0, 407, 408, 409, 410, 0,
10292  0, 0, 411, 0, 0, 0, 412, 0, 413, 414,
10293  415, 416, 0, 417, 418, 419, 420, 421, 0, 0,
10294  0, 0, 0, 422, 423, 424, 0, 425, 426, 0,
10295  427, 0, 0, 428, 0, 0, 429, 430, 431, 432,
10296  433, 434, 0, 0, 435, 436, 0, 437, 438, 439,
10297  440, 441, 442, 0, 0, 443, 444, 445, 446, 0,
10298  447, 448, 0, 0, 449, 450, 451, 452, 0, 0,
10299  453, 454, 0, 455, 456, 457, 458, 0, 0, 0,
10300  0, 0, 459, 460, 0, 0, 0, 461, 462, 463,
10301  464, 0, 465, 466, 0, 467, 468, 0, 469, 470,
10302  0, 0, 471, 0, 0, 472, 0, 473, 0, 474,
10303  475, 0, 0, 0, 0, 0, 0, 476, 0, 0,
10304  477, 0, 0, 0, 478, 479, 480, 481, 482, 0,
10305  0, 0, 0, 0, 0, 483, 484, 0, 485, 486,
10306  487, 0, 137, 488, 138, 139, 140, 141, 142, 0,
10307  0, 143, 0, 0, 0, 144, 0, 0, 145, 0,
10308  146, 147, 148, 149, 150, 151, 0, 152, 0, 0,
10309  0, 153, 0, 0, 0, 154, 0, 0, 155, 156,
10310  157, 0, 158, 0, 159, 160, 0, 0, 161, 0,
10311  0, 162, 163, 0, 164, 165, 0, 166, 0, 167,
10312  168, 169, 170, 171, 172, 0, 173, 174, 0, 175,
10313  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
10314  185, 0, 186, 187, 188, 189, 190, 0, 0, 0,
10315  191, 0, 0, 192, 0, 193, 0, 0, 194, 0,
10316  0, 0, 195, 196, 197, 0, 0, 198, 0, 0,
10317  0, 0, 199, 200, 0, 0, 0, 0, 201, 202,
10318  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
10319  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
10320  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
10321  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
10322  225, 226, 227, 0, 0, 228, 229, 230, 231, 232,
10323  0, 0, 233, 234, 0, 235, 236, 237, 0, 0,
10324  238, 0, 0, 0, 239, 240, 0, 241, 0, 242,
10325  0, 243, 244, 245, 246, 0, 247, 0, 248, 0,
10326  0, 0, 249, 250, 0, 251, 0, 0, 252, 253,
10327  0, 0, 0, 254, 255, 256, 257, 0, 0, 258,
10328  259, 260, 0, 0, 261, 0, 0, 0, 0, 262,
10329  263, 0, 0, 0, 264, 0, 0, 0, 265, 266,
10330  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
10331  271, 0, 0, 272, 0, 0, 273, 274, 0, 0,
10332  0, 0, 0, 275, 276, 0, 277, 0, 278, 0,
10333  279, 280, 0, 0, 0, 0, 0, 0, 0, 281,
10334  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
10335  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
10336  300, 301, 0, 302, 303, 304, 305, 0, 306, 307,
10337  0, 0, 0, 0, 308, 309, 310, 311, 312, 313,
10338  0, 0, 314, 315, 0, 316, 0, 317, 0, 318,
10339  319, 320, 321, 322, 323, 324, 325, 326, 0, 0,
10340  327, 328, 0, 0, 329, 330, 331, 332, 0, 0,
10341  0, 333, 334, 0, 0, 0, 335, 0, 336, 337,
10342  338, 0, 339, 340, 341, 0, 342, 0, 0, 0,
10343  0, 0, 0, 0, 0, 0, 343, 344, 345, 0,
10344  346, 347, 0, 348, 349, 350, 351, 352, 353, 354,
10345  355, 356, 357, 0, 0, 358, 359, 360, 0, 361,
10346  0, 362, 363, 364, 365, 366, 0, 367, 368, 369,
10347  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
10348  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
10349  382, 0, 383, 384, 385, 0, 0, 386, 0, 387,
10350  0, 388, 389, 0, 390, 391, 392, 0, 393, 0,
10351  0, 394, 395, 396, 397, 398, 399, 400, 401, 402,
10352  403, 404, 0, 405, 406, 0, 0, 0, 407, 408,
10353  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
10354  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
10355  421, 0, 0, 0, 563, 0, 422, 423, 424, 0,
10356  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
10357  430, 431, 432, 433, 434, 0, 0, 435, 436, 0,
10358  437, 438, 439, 440, 441, 442, 0, 0, 443, 444,
10359  445, 446, 0, 447, 448, 0, 0, 449, 450, 451,
10360  452, 0, 0, 453, 454, 0, 455, 456, 457, 458,
10361  0, 0, 0, 0, 0, 459, 460, 0, 0, 0,
10362  461, 462, 463, 464, 0, 465, 466, 0, 467, 468,
10363  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
10364  473, 0, 474, 475, 0, 0, 0, 0, 0, 0,
10365  476, 0, 0, 477, 0, 0, 0, 478, 479, 480,
10366  481, 482, 0, 0, 0, 0, 0, 0, 483, 484,
10367  0, 485, 486, 487, 0, 137, 488, 138, 139, 140,
10368  141, 142, 0, 0, 143, 0, 0, 0, 144, 0,
10369  0, 145, 0, 146, 147, 148, 149, 150, 151, 0,
10370  152, 0, 0, 0, 153, 0, 0, 0, 154, 0,
10371  0, 155, 156, 157, 0, 158, 0, 159, 160, 0,
10372  0, 161, 0, 0, 162, 163, 0, 164, 165, 0,
10373  166, 0, 167, 168, 169, 170, 171, 172, 0, 173,
10374  174, 0, 175, 176, 177, 178, 179, 180, 181, 182,
10375  183, 0, 184, 185, 0, 186, 187, 188, 189, 190,
10376  0, 0, 0, 191, 0, 0, 192, 0, 193, 0,
10377  0, 194, 0, 0, 0, 195, 196, 197, 0, 0,
10378  198, 0, 0, 0, 0, 199, 200, 0, 0, 0,
10379  0, 201, 202, 0, 203, 0, 0, 0, 204, 0,
10380  205, 206, 207, 208, 209, 0, 0, 0, 210, 0,
10381  0, 211, 212, 213, 0, 0, 0, 214, 0, 215,
10382  216, 0, 217, 218, 219, 0, 0, 220, 221, 0,
10383  222, 223, 224, 225, 226, 227, 0, 0, 228, 229,
10384  230, 231, 232, 0, 0, 233, 234, 0, 235, 236,
10385  237, 0, 0, 238, 0, 0, 0, 239, 240, 1039,
10386  241, 0, 242, 0, 243, 244, 245, 246, 0, 247,
10387  0, 248, 0, 0, 0, 249, 250, 0, 251, 0,
10388  0, 252, 253, 0, 0, 0, 254, 255, 256, 257,
10389  0, 0, 258, 259, 260, 0, 0, 261, 0, 0,
10390  0, 0, 262, 263, 0, 0, 0, 264, 0, 0,
10391  0, 265, 266, 0, 267, 268, 0, 0, 0, 269,
10392  0, 0, 270, 271, 0, 0, 272, 0, 0, 273,
10393  274, 0, 0, 0, 0, 0, 275, 276, 0, 277,
10394  0, 278, 0, 279, 280, 0, 0, 0, 0, 0,
10395  0, 0, 281, 0, 282, 283, 284, 285, 286, 287,
10396  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
10397  298, 0, 299, 300, 301, 0, 302, 303, 304, 305,
10398  0, 306, 307, 0, 0, 0, 0, 308, 309, 310,
10399  311, 312, 313, 0, 0, 314, 315, 0, 316, 0,
10400  317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
10401  326, 0, 0, 327, 328, 0, 0, 329, 330, 331,
10402  332, 0, 0, 0, 333, 334, 0, 0, 0, 335,
10403  0, 336, 337, 338, 0, 339, 340, 341, 0, 342,
10404  0, 0, 0, 0, 0, 0, 0, 0, 0, 343,
10405  344, 345, 0, 346, 347, 0, 348, 349, 350, 351,
10406  352, 353, 354, 355, 356, 357, 0, 0, 358, 359,
10407  360, 0, 361, 0, 362, 363, 364, 365, 366, 0,
10408  367, 368, 369, 0, 0, 370, 0, 0, 0, 371,
10409  372, 373, 374, 375, 0, 0, 376, 377, 378, 379,
10410  380, 0, 381, 382, 0, 383, 384, 385, 0, 0,
10411  386, 0, 387, 0, 388, 389, 0, 390, 391, 392,
10412  0, 393, 0, 0, 394, 395, 396, 397, 398, 399,
10413  400, 401, 402, 403, 404, 0, 405, 406, 0, 0,
10414  0, 407, 408, 409, 410, 0, 0, 0, 411, 0,
10415  0, 0, 412, 0, 413, 414, 415, 416, 0, 417,
10416  418, 419, 420, 421, 0, 0, 0, 0, 0, 422,
10417  423, 424, 0, 425, 426, 0, 427, 0, 0, 428,
10418  0, 0, 429, 430, 431, 432, 433, 434, 0, 0,
10419  435, 436, 0, 437, 438, 439, 440, 441, 442, 0,
10420  0, 443, 444, 445, 446, 0, 447, 448, 0, 0,
10421  449, 450, 451, 452, 0, 0, 453, 454, 0, 455,
10422  456, 457, 458, 0, 0, 0, 0, 0, 459, 460,
10423  0, 0, 0, 461, 462, 463, 464, 0, 465, 466,
10424  0, 467, 468, 0, 469, 470, 0, 0, 471, 0,
10425  0, 472, 0, 473, 0, 474, 475, 0, 0, 0,
10426  0, 0, 0, 476, 0, 0, 477, 0, 0, 0,
10427  478, 479, 480, 481, 482, 0, 0, 0, 0, 0,
10428  0, 483, 484, 0, 485, 486, 487, 0, 137, 488,
10429  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
10430  0, 144, 0, 0, 145, 0, 146, 147, 148, 149,
10431  150, 151, 0, 152, 0, 0, 0, 153, 0, 0,
10432  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
10433  159, 160, 0, 0, 161, 0, 0, 162, 163, 0,
10434  164, 165, 0, 166, 0, 167, 168, 169, 170, 171,
10435  172, 0, 173, 174, 0, 175, 176, 177, 178, 179,
10436  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
10437  188, 189, 190, 0, 0, 0, 191, 0, 0, 192,
10438  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
10439  197, 0, 0, 198, 0, 0, 0, 0, 199, 200,
10440  0, 0, 0, 870, 201, 202, 0, 203, 0, 0,
10441  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
10442  0, 210, 0, 0, 211, 212, 213, 0, 0, 0,
10443  214, 0, 215, 216, 0, 217, 218, 219, 0, 0,
10444  220, 221, 0, 222, 223, 224, 225, 226, 227, 0,
10445  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
10446  0, 235, 236, 237, 0, 0, 238, 0, 0, 0,
10447  239, 240, 0, 241, 0, 242, 0, 243, 244, 245,
10448  246, 0, 247, 0, 248, 0, 0, 0, 249, 250,
10449  0, 251, 0, 0, 252, 253, 0, 0, 0, 254,
10450  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
10451  261, 0, 0, 0, 0, 262, 263, 0, 0, 0,
10452  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
10453  0, 0, 269, 0, 0, 270, 271, 0, 0, 272,
10454  0, 0, 273, 274, 0, 0, 0, 0, 0, 275,
10455  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
10456  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
10457  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
10458  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
10459  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
10460  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
10461  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
10462  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
10463  329, 330, 331, 332, 0, 0, 0, 333, 334, 0,
10464  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
10465  341, 0, 342, 0, 0, 0, 0, 0, 0, 0,
10466  0, 0, 343, 344, 345, 0, 346, 347, 0, 348,
10467  349, 350, 351, 352, 353, 354, 355, 356, 357, 0,
10468  0, 358, 359, 360, 0, 361, 0, 362, 363, 364,
10469  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
10470  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
10471  377, 378, 379, 380, 0, 381, 382, 0, 383, 384,
10472  385, 0, 0, 386, 0, 387, 0, 388, 389, 0,
10473  390, 391, 392, 0, 393, 0, 0, 394, 395, 396,
10474  397, 398, 399, 400, 401, 402, 403, 404, 0, 405,
10475  406, 0, 0, 0, 407, 408, 409, 410, 0, 0,
10476  0, 411, 0, 0, 0, 412, 0, 413, 414, 415,
10477  416, 0, 417, 418, 419, 420, 421, 0, 0, 0,
10478  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
10479  0, 0, 428, 0, 0, 429, 430, 431, 432, 433,
10480  434, 0, 0, 435, 436, 0, 437, 438, 439, 440,
10481  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
10482  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
10483  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
10484  0, 1860, 460, 0, 0, 0, 461, 462, 463, 464,
10485  0, 465, 466, 0, 467, 468, 0, 469, 470, 0,
10486  0, 471, 0, 0, 472, 0, 473, 0, 474, 475,
10487  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
10488  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
10489  0, 0, 0, 0, 483, 484, 0, 485, 486, 487,
10490  0, 137, 488, 138, 139, 140, 141, 142, 0, 0,
10491  143, 0, 0, 0, 144, 0, 0, 145, 0, 146,
10492  147, 148, 149, 150, 151, 0, 152, 0, 0, 0,
10493  153, 0, 0, 0, 154, 0, 0, 155, 156, 157,
10494  0, 158, 0, 159, 160, 0, 0, 161, 0, 0,
10495  162, 163, 0, 164, 165, 0, 166, 0, 167, 168,
10496  169, 170, 171, 172, 0, 173, 174, 0, 175, 176,
10497  177, 178, 179, 180, 181, 182, 183, 0, 184, 185,
10498  0, 186, 187, 188, 189, 190, 0, 0, 0, 191,
10499  0, 0, 192, 0, 193, 0, 0, 194, 0, 0,
10500  0, 195, 196, 197, 0, 0, 198, 0, 0, 0,
10501  0, 199, 200, 0, 0, 0, 2056, 201, 202, 0,
10502  203, 0, 0, 0, 204, 0, 205, 206, 207, 208,
10503  209, 0, 0, 0, 210, 0, 0, 211, 212, 213,
10504  0, 0, 0, 214, 0, 215, 216, 0, 217, 218,
10505  219, 0, 0, 220, 221, 0, 222, 223, 224, 225,
10506  226, 227, 0, 0, 228, 229, 230, 231, 232, 0,
10507  0, 233, 234, 0, 235, 236, 237, 0, 0, 238,
10508  0, 0, 0, 239, 240, 0, 241, 0, 242, 0,
10509  243, 244, 245, 246, 0, 247, 0, 248, 0, 0,
10510  0, 249, 250, 0, 251, 0, 0, 252, 253, 0,
10511  0, 0, 254, 255, 256, 257, 0, 0, 258, 259,
10512  260, 0, 0, 261, 0, 0, 0, 0, 262, 263,
10513  0, 0, 0, 264, 0, 0, 0, 265, 266, 0,
10514  267, 268, 0, 0, 0, 269, 0, 0, 270, 271,
10515  0, 0, 272, 0, 0, 273, 274, 0, 0, 0,
10516  0, 0, 275, 276, 0, 277, 0, 278, 0, 279,
10517  280, 0, 0, 0, 0, 0, 0, 0, 281, 0,
10518  282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
10519  292, 293, 294, 295, 296, 297, 298, 0, 299, 300,
10520  301, 0, 302, 303, 304, 305, 0, 306, 307, 0,
10521  0, 0, 0, 308, 309, 310, 311, 312, 313, 0,
10522  0, 314, 315, 0, 316, 0, 317, 0, 318, 319,
10523  320, 321, 322, 323, 324, 325, 326, 0, 0, 327,
10524  328, 0, 0, 329, 330, 331, 332, 0, 0, 0,
10525  333, 334, 0, 0, 0, 335, 0, 336, 337, 338,
10526  0, 339, 340, 341, 0, 342, 0, 0, 0, 0,
10527  0, 0, 0, 0, 0, 343, 344, 345, 0, 346,
10528  347, 0, 348, 349, 350, 351, 352, 353, 354, 355,
10529  356, 357, 0, 0, 358, 359, 360, 0, 361, 0,
10530  362, 363, 364, 365, 366, 0, 367, 368, 369, 0,
10531  0, 370, 0, 0, 0, 371, 372, 373, 374, 375,
10532  0, 0, 376, 377, 378, 379, 380, 0, 381, 382,
10533  0, 383, 384, 385, 0, 0, 386, 0, 387, 0,
10534  388, 389, 0, 390, 391, 392, 0, 393, 0, 0,
10535  394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
10536  404, 0, 405, 406, 0, 0, 0, 407, 408, 409,
10537  410, 0, 0, 0, 411, 0, 0, 0, 412, 0,
10538  413, 414, 415, 416, 0, 417, 418, 419, 420, 421,
10539  0, 0, 0, 0, 0, 422, 423, 424, 0, 425,
10540  426, 0, 427, 0, 0, 428, 0, 0, 429, 430,
10541  431, 432, 433, 434, 0, 0, 435, 436, 0, 437,
10542  438, 439, 440, 441, 442, 0, 0, 443, 444, 445,
10543  446, 0, 447, 448, 0, 0, 449, 450, 451, 452,
10544  0, 0, 453, 454, 0, 455, 456, 457, 458, 0,
10545  0, 0, 0, 0, 459, 460, 0, 0, 0, 461,
10546  462, 463, 464, 0, 465, 466, 0, 467, 468, 0,
10547  469, 470, 0, 0, 471, 0, 0, 472, 0, 473,
10548  0, 474, 475, 0, 0, 0, 0, 0, 0, 476,
10549  0, 0, 477, 0, 0, 0, 478, 479, 480, 481,
10550  482, 0, 0, 0, 0, 0, 0, 483, 484, 0,
10551  485, 486, 487, 0, 137, 488, 138, 139, 140, 141,
10552  142, 0, 0, 143, 0, 0, 0, 144, 0, 0,
10553  145, 0, 146, 147, 148, 149, 150, 151, 0, 152,
10554  0, 0, 0, 153, 0, 0, 0, 154, 0, 0,
10555  155, 156, 157, 0, 158, 0, 159, 160, 0, 0,
10556  161, 0, 0, 162, 163, 0, 164, 165, 0, 166,
10557  0, 167, 168, 169, 170, 171, 172, 0, 173, 174,
10558  0, 175, 176, 177, 178, 179, 180, 181, 182, 183,
10559  0, 184, 185, 0, 186, 187, 188, 189, 190, 0,
10560  0, 0, 191, 0, 0, 192, 0, 193, 0, 0,
10561  194, 0, 0, 0, 195, 196, 197, 0, 0, 198,
10562  0, 0, 0, 0, 199, 200, 0, 0, 0, 870,
10563  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
10564  206, 207, 208, 209, 0, 0, 0, 210, 0, 0,
10565  211, 212, 213, 0, 0, 0, 214, 0, 215, 216,
10566  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
10567  223, 224, 225, 226, 227, 0, 0, 228, 229, 230,
10568  231, 232, 0, 0, 233, 234, 0, 235, 236, 237,
10569  0, 0, 238, 0, 0, 0, 239, 240, 0, 241,
10570  0, 242, 0, 243, 244, 245, 246, 0, 247, 0,
10571  248, 0, 0, 0, 249, 250, 0, 251, 0, 0,
10572  252, 253, 0, 0, 0, 254, 255, 256, 257, 0,
10573  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
10574  0, 262, 263, 0, 0, 0, 264, 0, 0, 0,
10575  265, 266, 0, 267, 268, 0, 0, 0, 269, 0,
10576  0, 270, 271, 0, 0, 272, 0, 0, 273, 274,
10577  0, 0, 0, 0, 0, 275, 276, 0, 277, 0,
10578  278, 0, 279, 280, 0, 0, 0, 0, 0, 0,
10579  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
10580  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
10581  0, 299, 300, 301, 0, 302, 303, 304, 305, 0,
10582  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
10583  312, 313, 0, 0, 314, 315, 0, 316, 0, 317,
10584  0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
10585  0, 0, 327, 328, 0, 0, 329, 330, 331, 332,
10586  0, 0, 0, 333, 334, 0, 0, 0, 335, 0,
10587  336, 337, 338, 0, 339, 340, 341, 0, 342, 0,
10588  0, 0, 0, 0, 0, 0, 0, 0, 343, 344,
10589  345, 0, 346, 347, 0, 348, 349, 350, 351, 352,
10590  353, 354, 355, 356, 357, 0, 0, 358, 359, 360,
10591  0, 361, 0, 362, 363, 364, 365, 366, 0, 367,
10592  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
10593  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
10594  0, 381, 382, 0, 383, 384, 385, 0, 0, 386,
10595  0, 387, 0, 388, 389, 0, 390, 391, 392, 0,
10596  393, 0, 0, 394, 395, 396, 397, 398, 399, 400,
10597  401, 402, 403, 404, 0, 405, 406, 0, 0, 0,
10598  407, 408, 409, 410, 0, 0, 0, 411, 0, 0,
10599  0, 412, 0, 413, 414, 415, 416, 0, 417, 418,
10600  419, 420, 421, 0, 0, 0, 0, 0, 422, 423,
10601  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
10602  0, 429, 430, 431, 432, 433, 434, 0, 0, 435,
10603  436, 0, 437, 438, 439, 440, 441, 442, 0, 0,
10604  443, 444, 445, 446, 0, 447, 448, 0, 0, 449,
10605  450, 451, 452, 0, 0, 453, 454, 0, 455, 456,
10606  457, 458, 0, 0, 0, 0, 0, 459, 460, 0,
10607  0, 0, 461, 462, 463, 464, 0, 465, 466, 0,
10608  467, 468, 0, 469, 470, 0, 0, 471, 0, 0,
10609  472, 0, 473, 0, 474, 475, 0, 0, 0, 0,
10610  0, 0, 476, 0, 0, 477, 0, 0, 0, 478,
10611  479, 480, 481, 482, 0, 0, 0, 0, 0, 0,
10612  483, 484, 0, 485, 486, 487, 0, 137, 488, 138,
10613  139, 140, 141, 142, 0, 0, 143, 0, 0, 0,
10614  144, 0, 0, 145, 0, 146, 147, 148, 149, 150,
10615  151, 0, 152, 0, 0, 0, 153, 0, 0, 0,
10616  154, 0, 0, 155, 156, 157, 0, 158, 0, 159,
10617  160, 0, 0, 161, 0, 0, 162, 163, 0, 164,
10618  165, 0, 166, 0, 167, 168, 169, 170, 171, 172,
10619  0, 173, 174, 0, 175, 176, 177, 178, 179, 180,
10620  181, 182, 183, 0, 184, 185, 0, 186, 187, 188,
10621  189, 190, 0, 0, 0, 191, 0, 0, 192, 0,
10622  193, 0, 0, 194, 0, 0, 0, 195, 196, 197,
10623  0, 0, 198, 0, 0, 0, 0, 199, 200, 0,
10624  0, 0, 2948, 201, 202, 0, 203, 0, 0, 0,
10625  204, 0, 205, 206, 207, 208, 209, 0, 0, 0,
10626  210, 0, 0, 211, 212, 213, 0, 0, 0, 214,
10627  0, 215, 216, 0, 217, 218, 219, 0, 0, 220,
10628  221, 0, 222, 223, 224, 225, 226, 227, 0, 0,
10629  228, 229, 230, 231, 232, 0, 0, 233, 234, 0,
10630  235, 236, 237, 0, 0, 238, 0, 0, 0, 239,
10631  240, 0, 241, 0, 242, 0, 243, 244, 245, 246,
10632  0, 247, 0, 248, 0, 0, 0, 249, 250, 0,
10633  251, 0, 0, 252, 253, 0, 0, 0, 254, 255,
10634  256, 257, 0, 0, 258, 259, 260, 0, 0, 261,
10635  0, 0, 0, 0, 262, 263, 0, 0, 0, 264,
10636  0, 0, 0, 265, 266, 0, 267, 268, 0, 0,
10637  0, 269, 0, 0, 270, 271, 0, 0, 272, 0,
10638  0, 273, 274, 0, 0, 0, 0, 0, 275, 276,
10639  0, 277, 0, 278, 0, 279, 280, 0, 0, 0,
10640  0, 0, 0, 0, 281, 0, 282, 283, 284, 285,
10641  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
10642  296, 297, 298, 0, 299, 300, 301, 0, 302, 303,
10643  304, 305, 0, 306, 307, 0, 0, 0, 0, 308,
10644  309, 310, 311, 312, 313, 0, 0, 314, 315, 0,
10645  316, 0, 317, 0, 318, 319, 320, 321, 322, 323,
10646  324, 325, 326, 0, 0, 327, 328, 0, 0, 329,
10647  330, 331, 332, 0, 0, 0, 333, 334, 0, 0,
10648  0, 335, 0, 336, 337, 338, 0, 339, 340, 341,
10649  0, 342, 0, 0, 0, 0, 0, 0, 0, 0,
10650  0, 343, 344, 345, 0, 346, 347, 0, 348, 349,
10651  350, 351, 352, 353, 354, 355, 356, 357, 0, 0,
10652  358, 359, 360, 0, 361, 0, 362, 363, 364, 365,
10653  366, 0, 367, 368, 369, 0, 0, 370, 0, 0,
10654  0, 371, 372, 373, 374, 375, 0, 0, 376, 377,
10655  378, 379, 380, 0, 381, 382, 0, 383, 384, 385,
10656  0, 0, 386, 0, 387, 0, 388, 389, 0, 390,
10657  391, 392, 0, 393, 0, 0, 394, 395, 396, 397,
10658  398, 399, 400, 401, 402, 403, 404, 0, 405, 406,
10659  0, 0, 0, 407, 408, 409, 410, 0, 0, 0,
10660  411, 0, 0, 0, 412, 0, 413, 414, 415, 416,
10661  0, 417, 418, 419, 420, 421, 0, 0, 0, 0,
10662  0, 422, 423, 424, 0, 425, 426, 0, 427, 0,
10663  0, 428, 0, 0, 429, 430, 431, 432, 433, 434,
10664  0, 0, 435, 436, 0, 437, 438, 439, 440, 441,
10665  442, 0, 0, 443, 444, 445, 446, 0, 447, 448,
10666  0, 0, 449, 450, 451, 452, 0, 0, 453, 454,
10667  0, 455, 456, 457, 458, 0, 0, 0, 0, 0,
10668  459, 460, 0, 0, 0, 461, 462, 463, 464, 0,
10669  465, 466, 0, 467, 468, 0, 469, 470, 0, 0,
10670  471, 0, 0, 472, 0, 473, 0, 474, 475, 0,
10671  0, 0, 0, 0, 0, 476, 0, 0, 477, 0,
10672  0, 0, 478, 479, 480, 481, 482, 0, 0, 0,
10673  0, 0, 0, 483, 484, 0, 485, 486, 487, 0,
10674  137, 488, 138, 139, 140, 141, 142, 2956, 0, 143,
10675  0, 0, 0, 144, 0, 0, 145, 0, 146, 147,
10676  148, 149, 150, 151, 0, 152, 0, 0, 0, 153,
10677  0, 0, 0, 154, 0, 0, 155, 156, 157, 0,
10678  158, 0, 159, 160, 0, 0, 161, 0, 0, 162,
10679  163, 0, 164, 165, 0, 166, 0, 167, 168, 169,
10680  170, 171, 172, 0, 173, 174, 0, 175, 176, 177,
10681  178, 179, 180, 181, 182, 183, 0, 184, 185, 0,
10682  186, 187, 188, 189, 190, 0, 0, 0, 191, 0,
10683  0, 192, 0, 193, 0, 0, 194, 0, 0, 0,
10684  195, 196, 197, 0, 0, 198, 0, 0, 0, 0,
10685  199, 200, 0, 0, 0, 0, 201, 202, 0, 203,
10686  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
10687  0, 0, 0, 210, 0, 0, 211, 212, 213, 0,
10688  0, 0, 214, 0, 215, 216, 0, 217, 218, 219,
10689  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
10690  227, 0, 0, 228, 229, 230, 231, 232, 0, 0,
10691  233, 234, 0, 235, 236, 237, 0, 0, 238, 0,
10692  0, 0, 239, 240, 0, 241, 0, 242, 0, 243,
10693  244, 245, 246, 0, 247, 0, 248, 0, 0, 0,
10694  249, 250, 0, 251, 0, 0, 252, 253, 0, 0,
10695  0, 254, 255, 256, 257, 0, 0, 258, 259, 260,
10696  0, 0, 261, 0, 0, 0, 0, 262, 263, 0,
10697  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
10698  268, 0, 0, 0, 269, 0, 0, 270, 271, 0,
10699  0, 272, 0, 0, 273, 274, 0, 0, 0, 0,
10700  0, 275, 276, 0, 277, 0, 278, 0, 279, 280,
10701  0, 0, 0, 0, 0, 0, 0, 281, 0, 282,
10702  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
10703  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
10704  0, 302, 303, 304, 305, 0, 306, 307, 0, 0,
10705  0, 0, 308, 309, 310, 311, 312, 313, 0, 0,
10706  314, 315, 0, 316, 0, 317, 0, 318, 319, 320,
10707  321, 322, 323, 324, 325, 326, 0, 0, 327, 328,
10708  0, 0, 329, 330, 331, 332, 0, 0, 0, 333,
10709  334, 0, 0, 0, 335, 0, 336, 337, 338, 0,
10710  339, 340, 341, 0, 342, 0, 0, 0, 0, 0,
10711  0, 0, 0, 0, 343, 344, 345, 0, 346, 347,
10712  0, 348, 349, 350, 351, 352, 353, 354, 355, 356,
10713  357, 0, 0, 358, 359, 360, 0, 361, 0, 362,
10714  363, 364, 365, 366, 0, 367, 368, 369, 0, 0,
10715  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
10716  0, 376, 377, 378, 379, 380, 0, 381, 382, 0,
10717  383, 384, 385, 0, 0, 386, 0, 387, 0, 388,
10718  389, 0, 390, 391, 392, 0, 393, 0, 0, 394,
10719  395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
10720  0, 405, 406, 0, 0, 0, 407, 408, 409, 410,
10721  0, 0, 0, 411, 0, 0, 0, 412, 0, 413,
10722  414, 415, 416, 0, 417, 418, 419, 420, 421, 0,
10723  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
10724  0, 427, 0, 0, 428, 0, 0, 429, 430, 431,
10725  432, 433, 434, 0, 0, 435, 436, 0, 437, 438,
10726  439, 440, 441, 442, 0, 0, 443, 444, 445, 446,
10727  0, 447, 448, 0, 0, 449, 450, 451, 452, 0,
10728  0, 453, 454, 0, 455, 456, 457, 458, 0, 0,
10729  0, 0, 0, 459, 460, 0, 0, 0, 461, 462,
10730  463, 464, 0, 465, 466, 0, 467, 468, 0, 469,
10731  470, 0, 0, 471, 0, 0, 472, 0, 473, 0,
10732  474, 475, 0, 0, 0, 0, 0, 0, 476, 0,
10733  0, 477, 0, 0, 0, 478, 479, 480, 481, 482,
10734  0, 0, 0, 0, 0, 0, 483, 484, 0, 485,
10735  486, 487, 0, 137, 488, 138, 139, 140, 141, 142,
10736  0, 0, 143, 0, 0, 0, 144, 0, 0, 145,
10737  0, 146, 147, 148, 149, 150, 151, 0, 152, 0,
10738  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
10739  156, 157, 0, 158, 0, 159, 160, 0, 0, 161,
10740  0, 0, 162, 163, 0, 164, 165, 0, 166, 0,
10741  167, 168, 169, 170, 171, 172, 0, 173, 174, 0,
10742  175, 176, 177, 178, 179, 180, 181, 182, 183, 0,
10743  184, 185, 0, 186, 187, 188, 189, 190, 0, 0,
10744  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
10745  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
10746  0, 0, 0, 199, 200, 0, 0, 0, 2980, 201,
10747  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
10748  207, 208, 209, 0, 0, 0, 210, 0, 0, 211,
10749  212, 213, 0, 0, 0, 214, 0, 215, 216, 0,
10750  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
10751  224, 225, 226, 227, 0, 0, 228, 229, 230, 231,
10752  232, 0, 0, 233, 234, 0, 235, 236, 237, 0,
10753  0, 238, 0, 0, 0, 239, 240, 0, 241, 0,
10754  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
10755  0, 0, 0, 249, 250, 0, 251, 0, 0, 252,
10756  253, 0, 0, 0, 254, 255, 256, 257, 0, 0,
10757  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
10758  262, 263, 0, 0, 0, 264, 0, 0, 0, 265,
10759  266, 0, 267, 268, 0, 0, 0, 269, 0, 0,
10760  270, 271, 0, 0, 272, 0, 0, 273, 274, 0,
10761  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
10762  0, 279, 280, 0, 0, 0, 0, 0, 0, 0,
10763  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
10764  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
10765  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
10766  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
10767  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
10768  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
10769  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
10770  0, 0, 333, 334, 0, 0, 0, 335, 0, 336,
10771  337, 338, 0, 339, 340, 341, 0, 342, 0, 0,
10772  0, 0, 0, 0, 0, 0, 0, 343, 344, 345,
10773  0, 346, 347, 0, 348, 349, 350, 351, 352, 353,
10774  354, 355, 356, 357, 0, 0, 358, 359, 360, 0,
10775  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
10776  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
10777  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
10778  381, 382, 0, 383, 384, 385, 0, 0, 386, 0,
10779  387, 0, 388, 389, 0, 390, 391, 392, 0, 393,
10780  0, 0, 394, 395, 396, 397, 398, 399, 400, 401,
10781  402, 403, 404, 0, 405, 406, 0, 0, 0, 407,
10782  408, 409, 410, 0, 0, 0, 411, 0, 0, 0,
10783  412, 0, 413, 414, 415, 416, 0, 417, 418, 419,
10784  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
10785  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
10786  429, 430, 431, 432, 433, 434, 0, 0, 435, 436,
10787  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
10788  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
10789  451, 452, 0, 0, 453, 454, 0, 455, 456, 457,
10790  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
10791  0, 461, 462, 463, 464, 0, 465, 466, 0, 467,
10792  468, 0, 469, 470, 0, 0, 471, 0, 0, 472,
10793  0, 473, 0, 474, 475, 0, 0, 0, 0, 0,
10794  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
10795  480, 481, 482, 0, 0, 0, 0, 0, 0, 483,
10796  484, 0, 485, 486, 487, 0, 137, 488, 138, 139,
10797  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
10798  0, 0, 145, 0, 146, 147, 148, 149, 150, 151,
10799  0, 152, 0, 0, 0, 153, 0, 0, 0, 154,
10800  0, 0, 155, 156, 157, 0, 158, 0, 159, 160,
10801  0, 0, 161, 0, 0, 162, 163, 0, 164, 165,
10802  0, 166, 0, 167, 168, 169, 170, 171, 172, 0,
10803  173, 174, 0, 175, 176, 177, 178, 179, 180, 181,
10804  182, 183, 0, 184, 185, 0, 186, 187, 188, 189,
10805  190, 0, 0, 0, 191, 0, 0, 192, 0, 193,
10806  0, 0, 194, 0, 0, 0, 195, 196, 197, 0,
10807  0, 198, 0, 0, 0, 0, 199, 200, 0, 0,
10808  0, 0, 201, 202, 0, 203, 0, 0, 0, 204,
10809  0, 205, 206, 207, 208, 209, 0, 0, 0, 210,
10810  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
10811  215, 216, 0, 217, 218, 219, 0, 0, 220, 221,
10812  0, 222, 223, 224, 225, 226, 227, 0, 0, 228,
10813  229, 230, 231, 232, 0, 0, 233, 234, 0, 235,
10814  236, 237, 0, 0, 238, 0, 0, 0, 239, 240,
10815  0, 241, 0, 242, 0, 243, 244, 245, 246, 0,
10816  247, 0, 248, 0, 0, 0, 249, 250, 0, 251,
10817  0, 0, 252, 253, 0, 0, 0, 254, 255, 256,
10818  257, 0, 0, 258, 259, 260, 0, 0, 261, 0,
10819  0, 0, 0, 262, 263, 0, 0, 0, 264, 0,
10820  0, 0, 265, 266, 0, 267, 268, 0, 0, 0,
10821  269, 0, 0, 270, 271, 0, 0, 272, 0, 0,
10822  273, 274, 0, 0, 0, 0, 0, 275, 276, 0,
10823  277, 0, 278, 0, 279, 280, 0, 0, 0, 0,
10824  0, 0, 0, 281, 0, 282, 283, 284, 285, 286,
10825  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
10826  297, 298, 0, 299, 300, 301, 0, 302, 303, 304,
10827  305, 0, 306, 307, 0, 0, 0, 0, 308, 309,
10828  310, 311, 312, 313, 0, 0, 314, 315, 0, 316,
10829  0, 317, 0, 318, 319, 320, 321, 322, 323, 324,
10830  325, 326, 0, 0, 327, 328, 0, 0, 329, 330,
10831  331, 332, 0, 0, 0, 333, 334, 0, 0, 0,
10832  335, 0, 336, 337, 338, 0, 339, 340, 341, 0,
10833  342, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10834  343, 344, 345, 0, 346, 347, 0, 348, 349, 350,
10835  351, 352, 353, 354, 355, 356, 357, 0, 0, 358,
10836  359, 360, 3044, 361, 0, 362, 363, 364, 365, 366,
10837  0, 367, 368, 369, 0, 0, 370, 0, 0, 0,
10838  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
10839  379, 380, 0, 381, 382, 0, 383, 384, 385, 0,
10840  0, 386, 0, 387, 0, 388, 389, 0, 390, 391,
10841  392, 0, 393, 0, 0, 394, 395, 396, 397, 398,
10842  399, 400, 401, 402, 403, 404, 0, 405, 406, 0,
10843  0, 0, 407, 408, 409, 410, 0, 0, 0, 411,
10844  0, 0, 0, 412, 0, 413, 414, 415, 416, 0,
10845  417, 418, 419, 420, 421, 0, 0, 0, 0, 0,
10846  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
10847  428, 0, 0, 429, 430, 431, 432, 433, 434, 0,
10848  0, 435, 436, 0, 437, 438, 439, 440, 441, 442,
10849  0, 0, 443, 444, 445, 446, 0, 447, 448, 0,
10850  0, 449, 450, 451, 452, 0, 0, 453, 454, 0,
10851  455, 456, 457, 458, 0, 0, 0, 0, 0, 459,
10852  460, 0, 0, 0, 461, 462, 463, 464, 0, 465,
10853  466, 0, 467, 468, 0, 469, 470, 0, 0, 471,
10854  0, 0, 472, 0, 473, 0, 474, 475, 0, 0,
10855  0, 0, 0, 0, 476, 0, 0, 477, 0, 0,
10856  0, 478, 479, 480, 481, 482, 0, 0, 0, 0,
10857  0, 0, 483, 484, 0, 485, 486, 487, 0, 137,
10858  488, 138, 139, 140, 141, 142, 0, 0, 143, 0,
10859  0, 0, 144, 0, 0, 145, 0, 146, 147, 148,
10860  149, 150, 151, 0, 152, 0, 0, 0, 153, 0,
10861  0, 0, 154, 0, 0, 155, 156, 157, 0, 158,
10862  0, 159, 160, 0, 0, 161, 0, 0, 162, 163,
10863  0, 164, 165, 0, 166, 0, 167, 168, 169, 170,
10864  171, 172, 0, 173, 174, 0, 175, 176, 177, 178,
10865  179, 180, 181, 182, 183, 0, 184, 185, 0, 186,
10866  187, 188, 189, 190, 0, 0, 0, 191, 0, 0,
10867  192, 0, 193, 0, 0, 194, 0, 0, 0, 195,
10868  196, 197, 0, 0, 198, 0, 0, 0, 0, 199,
10869  200, 0, 0, 0, 0, 201, 202, 0, 203, 0,
10870  0, 0, 204, 0, 205, 206, 207, 208, 209, 0,
10871  0, 0, 210, 0, 0, 211, 212, 213, 0, 0,
10872  0, 214, 0, 215, 216, 0, 217, 218, 219, 0,
10873  0, 220, 221, 0, 222, 223, 224, 225, 226, 227,
10874  0, 0, 228, 229, 230, 231, 232, 0, 0, 233,
10875  234, 0, 235, 236, 237, 0, 0, 238, 0, 0,
10876  0, 239, 240, 0, 241, 0, 242, 0, 243, 244,
10877  245, 246, 0, 247, 0, 248, 0, 0, 0, 249,
10878  250, 0, 251, 0, 0, 252, 253, 0, 0, 0,
10879  254, 255, 256, 257, 0, 0, 258, 259, 260, 0,
10880  0, 261, 0, 0, 0, 0, 262, 263, 0, 0,
10881  0, 264, 0, 0, 0, 265, 266, 0, 267, 268,
10882  0, 0, 0, 269, 0, 0, 270, 271, 0, 0,
10883  272, 0, 0, 273, 274, 0, 0, 0, 0, 0,
10884  275, 276, 0, 277, 0, 278, 0, 279, 280, 0,
10885  0, 0, 0, 0, 0, 0, 281, 0, 282, 283,
10886  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
10887  294, 295, 296, 297, 298, 0, 299, 300, 301, 0,
10888  302, 303, 304, 305, 0, 306, 307, 0, 0, 0,
10889  0, 308, 309, 310, 311, 312, 313, 0, 0, 314,
10890  315, 0, 316, 0, 317, 0, 318, 319, 320, 321,
10891  322, 323, 324, 325, 326, 0, 0, 327, 328, 0,
10892  0, 329, 330, 331, 332, 0, 0, 0, 333, 334,
10893  0, 0, 0, 335, 0, 336, 337, 338, 0, 339,
10894  340, 341, 0, 342, 0, 0, 0, 0, 0, 0,
10895  0, 0, 0, 343, 344, 345, 0, 346, 347, 0,
10896  348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
10897  0, 0, 358, 359, 360, 0, 361, 0, 362, 363,
10898  364, 365, 366, 0, 367, 368, 369, 0, 0, 370,
10899  0, 0, 0, 371, 372, 373, 374, 375, 0, 0,
10900  376, 377, 378, 379, 380, 0, 381, 382, 0, 383,
10901  384, 385, 0, 0, 386, 0, 387, 0, 388, 389,
10902  0, 390, 391, 392, 0, 393, 0, 0, 394, 395,
10903  396, 397, 398, 399, 400, 401, 402, 403, 404, 0,
10904  405, 406, 0, 0, 0, 407, 408, 409, 410, 0,
10905  0, 0, 411, 0, 0, 0, 412, 0, 413, 414,
10906  415, 416, 0, 417, 418, 419, 420, 421, 0, 0,
10907  0, 0, 0, 422, 423, 424, 0, 425, 426, 0,
10908  427, 0, 0, 428, 0, 0, 429, 430, 431, 432,
10909  433, 434, 0, 0, 435, 436, 0, 437, 438, 439,
10910  440, 441, 442, 0, 0, 443, 444, 445, 446, 0,
10911  447, 448, 0, 0, 449, 450, 451, 452, 0, 134,
10912  453, 454, 0, 455, 456, 457, 458, 0, 0, 0,
10913  0, 0, 459, 460, 0, 0, 0, 461, 462, 463,
10914  464, 0, 465, 466, 0, 467, 468, 0, 469, 470,
10915  0, 0, 471, 0, 0, 472, 0, 473, 0, 474,
10916  475, 0, 0, 0, 0, 0, 0, 476, 0, 0,
10917  477, 0, 0, 0, 478, 479, 480, 481, 482, 0,
10918  0, 0, 0, 0, 0, 483, 484, 0, 485, 486,
10919  487, 0, 137, 488, 138, 139, 140, 141, 142, 0,
10920  0, 143, 0, 0, 0, 144, 0, 0, 145, 0,
10921  146, 147, 148, 149, 150, 151, 0, 152, 0, 0,
10922  0, 153, 0, 0, 0, 154, 0, 0, 155, 156,
10923  157, 0, 158, 0, 159, 160, 0, 0, 161, 0,
10924  0, 162, 163, 0, 164, 165, 0, 166, 0, 167,
10925  168, 169, 170, 171, 172, 0, 173, 174, 0, 175,
10926  176, 177, 178, 179, 180, 181, 182, 183, 0, 184,
10927  185, 0, 186, 187, 188, 189, 190, 0, 0, 0,
10928  191, 0, 0, 192, 0, 193, 0, 0, 194, 0,
10929  0, 0, 195, 196, 197, 0, 0, 198, 0, 0,
10930  0, 0, 199, 200, 0, 0, 0, 0, 201, 202,
10931  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
10932  208, 209, 0, 0, 0, 210, 0, 0, 211, 212,
10933  213, 0, 0, 0, 214, 0, 215, 216, 0, 217,
10934  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
10935  225, 226, 227, 0, 0, 228, 229, 230, 231, 232,
10936  0, 0, 233, 234, 0, 235, 236, 237, 0, 0,
10937  238, 0, 0, 0, 239, 240, 0, 241, 0, 242,
10938  0, 243, 244, 245, 246, 0, 247, 0, 248, 0,
10939  0, 0, 249, 250, 0, 251, 0, 0, 252, 253,
10940  0, 0, 0, 254, 255, 256, 257, 0, 0, 258,
10941  259, 260, 0, 0, 261, 0, 0, 0, 0, 262,
10942  263, 0, 0, 0, 264, 0, 0, 0, 265, 266,
10943  0, 267, 268, 0, 0, 0, 269, 0, 0, 270,
10944  271, 0, 0, 272, 0, 0, 273, 274, 0, 0,
10945  0, 0, 0, 275, 276, 0, 277, 0, 278, 0,
10946  279, 280, 0, 0, 0, 0, 0, 0, 0, 281,
10947  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
10948  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
10949  300, 301, 0, 302, 303, 304, 305, 0, 306, 307,
10950  0, 0, 0, 0, 308, 309, 310, 311, 312, 313,
10951  0, 0, 314, 315, 0, 316, 0, 317, 0, 318,
10952  319, 320, 321, 322, 323, 324, 325, 326, 0, 0,
10953  327, 328, 0, 0, 329, 330, 331, 332, 0, 0,
10954  0, 333, 334, 0, 0, 0, 335, 0, 336, 337,
10955  338, 0, 339, 340, 341, 0, 342, 0, 0, 0,
10956  0, 0, 0, 0, 0, 0, 343, 344, 345, 0,
10957  346, 347, 0, 348, 349, 350, 351, 352, 353, 354,
10958  355, 356, 357, 0, 0, 358, 359, 360, 0, 361,
10959  0, 362, 363, 364, 365, 366, 0, 367, 368, 369,
10960  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
10961  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
10962  382, 0, 383, 384, 385, 0, 0, 386, 0, 387,
10963  0, 388, 389, 0, 390, 391, 392, 0, 393, 0,
10964  0, 394, 395, 396, 397, 398, 399, 400, 401, 402,
10965  403, 404, 0, 405, 406, 0, 0, 0, 407, 408,
10966  409, 410, 0, 0, 0, 411, 0, 0, 0, 412,
10967  0, 413, 414, 415, 416, 0, 417, 418, 419, 420,
10968  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
10969  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
10970  430, 431, 432, 433, 434, 0, 0, 435, 436, 0,
10971  437, 438, 439, 440, 441, 442, 0, 0, 443, 444,
10972  445, 446, 0, 447, 448, 0, 0, 449, 450, 451,
10973  452, 0, 0, 453, 454, 0, 455, 456, 457, 458,
10974  0, 0, 0, 0, 0, 459, 460, 0, 0, 0,
10975  461, 462, 463, 464, 0, 465, 466, 0, 467, 468,
10976  0, 469, 470, 0, 0, 471, 0, 0, 472, 0,
10977  473, 0, 474, 475, 0, 0, 0, 0, 0, 0,
10978  476, 0, 0, 477, 0, 0, 0, 478, 479, 480,
10979  481, 482, 0, 0, 0, 0, 0, 0, 483, 484,
10980  0, 485, 486, 487, 0, 137, 488, 138, 139, 140,
10981  141, 142, 0, 0, 143, 0, 0, 0, 144, 0,
10982  0, 145, 0, 146, 147, 148, 149, 150, 151, 0,
10983  152, 0, 0, 0, 153, 0, 0, 0, 154, 0,
10984  0, 155, 156, 157, 0, 158, 0, 159, 160, 0,
10985  0, 161, 0, 0, 162, 163, 0, 164, 165, 0,
10986  166, 0, 167, 168, 169, 170, 171, 172, 0, 173,
10987  174, 0, 175, 176, 177, 178, 179, 180, 181, 182,
10988  183, 0, 184, 185, 0, 186, 187, 188, 189, 190,
10989  0, 0, 0, 191, 0, 0, 192, 0, 193, 0,
10990  0, 194, 0, 0, 0, 195, 196, 197, 0, 0,
10991  198, 0, 0, 0, 0, 199, 200, 0, 0, 0,
10992  0, 201, 202, 0, 203, 0, 0, 0, 204, 0,
10993  205, 206, 207, 208, 209, 0, 0, 0, 210, 0,
10994  0, 211, 212, 213, 0, 0, 0, 214, 0, 215,
10995  216, 0, 217, 218, 219, 0, 0, 220, 221, 0,
10996  222, 223, 224, 225, 226, 227, 0, 0, 228, 229,
10997  230, 231, 232, 0, 0, 233, 234, 0, 235, 1785,
10998  237, 0, 0, 238, 0, 0, 0, 239, 240, 0,
10999  241, 0, 242, 0, 243, 244, 245, 246, 0, 247,
11000  0, 248, 0, 0, 0, 249, 250, 0, 251, 0,
11001  0, 252, 253, 0, 0, 0, 254, 255, 256, 257,
11002  0, 0, 258, 259, 260, 0, 0, 261, 0, 0,
11003  0, 0, 262, 263, 0, 0, 0, 264, 0, 0,
11004  0, 265, 266, 0, 267, 268, 0, 0, 0, 269,
11005  0, 0, 270, 271, 0, 0, 272, 0, 0, 273,
11006  274, 0, 0, 0, 0, 0, 275, 276, 0, 277,
11007  0, 278, 0, 279, 280, 0, 0, 0, 0, 0,
11008  0, 0, 281, 0, 282, 283, 284, 285, 286, 287,
11009  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
11010  298, 0, 299, 300, 301, 0, 302, 303, 304, 305,
11011  0, 306, 307, 0, 0, 0, 0, 308, 309, 310,
11012  311, 312, 313, 0, 0, 314, 315, 0, 316, 0,
11013  317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
11014  326, 0, 0, 327, 328, 0, 0, 329, 1786, 331,
11015  332, 0, 0, 0, 333, 334, 0, 0, 0, 335,
11016  0, 336, 337, 338, 0, 339, 340, 341, 0, 342,
11017  0, 0, 0, 0, 0, 0, 0, 0, 0, 343,
11018  344, 345, 0, 346, 347, 0, 348, 349, 350, 351,
11019  352, 353, 354, 355, 356, 357, 0, 0, 358, 359,
11020  360, 0, 361, 0, 362, 363, 364, 365, 366, 0,
11021  367, 368, 369, 0, 0, 370, 0, 0, 0, 371,
11022  372, 373, 374, 375, 0, 0, 376, 377, 378, 379,
11023  380, 0, 381, 382, 0, 383, 384, 385, 0, 0,
11024  386, 0, 387, 0, 388, 389, 0, 390, 391, 392,
11025  0, 393, 0, 0, 394, 395, 396, 397, 398, 399,
11026  400, 401, 402, 403, 404, 0, 405, 406, 0, 0,
11027  0, 407, 408, 409, 410, 0, 0, 0, 411, 0,
11028  0, 0, 412, 0, 413, 414, 415, 416, 0, 417,
11029  418, 419, 420, 421, 0, 0, 0, 0, 0, 422,
11030  423, 424, 0, 425, 426, 0, 427, 0, 0, 428,
11031  0, 0, 429, 430, 431, 432, 433, 434, 0, 0,
11032  435, 436, 0, 437, 438, 439, 440, 441, 442, 0,
11033  0, 443, 444, 445, 446, 0, 447, 448, 0, 0,
11034  449, 450, 451, 452, 0, 0, 453, 454, 0, 455,
11035  456, 457, 458, 0, 0, 0, 0, 0, 459, 460,
11036  0, 0, 0, 461, 462, 463, 464, 0, 465, 466,
11037  0, 467, 468, 0, 469, 470, 0, 0, 471, 0,
11038  0, 472, 0, 473, 0, 474, 475, 0, 0, 0,
11039  0, 0, 0, 476, 0, 0, 477, 0, 0, 0,
11040  478, 479, 480, 481, 482, 0, 0, 0, 0, 0,
11041  0, 483, 484, 0, 485, 486, 487, 0, 137, 488,
11042  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
11043  0, 144, 0, 0, 0, 0, 146, 147, 148, 149,
11044  150, 0, 0, -366, 0, 0, 0, 153, 0, 0,
11045  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
11046  0, 0, 0, 0, 161, 3967, 0, 162, 163, 0,
11047  164, 0, 0, 0, 0, 167, 168, 169, 3968, 171,
11048  172, 0, 173, 174, 0, 175, 176, 0, 178, 0,
11049  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
11050  188, 0, 190, 0, 0, 0, 191, 0, 0, 192,
11051  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
11052  197, 0, 0, 198, 0, 0, 0, 0, 199, 0,
11053  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
11054  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
11055  0, 0, 0, 0, 211, 212, 213, 0, -336, -336,
11056  214, 0, -336, 216, 0, 217, 218, 219, 0, 0,
11057  220, 221, 0, 222, 223, 224, 225, 226, 0, 0,
11058  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
11059  3969, 235, 236, 237, 0, 0, 0, 0, 0, 0,
11060  0, 240, 0, 241, 0, 242, 0, 243, 244, 245,
11061  246, 0, 247, 0, 248, 0, 0, 0, 0, 250,
11062  0, 0, 0, 0, 0, 253, 0, 0, 0, 254,
11063  255, 256, 257, 3970, 0, 258, 259, 260, 0, 0,
11064  261, 0, 0, 0, 0, 262, 0, 0, 0, 0,
11065  264, 0, 0, 0, 265, 266, 0, 267, 268, 3971,
11066  0, 0, 269, 0, 0, 0, 271, 0, 0, 272,
11067  3972, 0, 273, 274, 0, 0, 0, 0, 0, 275,
11068  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
11069  0, 0, -321, 0, 0, 281, 0, 282, 283, 284,
11070  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
11071  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
11072  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
11073  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
11074  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
11075  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
11076  329, 330, 331, 332, 0, 0, 0, 0, 334, 0,
11077  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
11078  3973, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11079  0, 0, 0, 344, 345, 0, 0, 347, 0, 348,
11080  349, 350, 351, 352, 353, 354, 355, 356, 0, 0,
11081  0, 0, 359, 360, 0, 361, 0, 362, 363, 364,
11082  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
11083  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
11084  377, 378, 379, 380, 0, 381, 0, 0, 383, 0,
11085  385, -321, 0, 386, 0, 0, 0, 388, 0, 0,
11086  390, 391, 392, 3974, 393, 0, 0, 0, 395, 396,
11087  397, 398, 399, 400, 401, 0, 403, 404, 0, 405,
11088  0, 0, 0, 0, 407, 408, 409, 0, 0, 0,
11089  0, 411, 0, 0, 0, 412, 0, 0, 414, 0,
11090  416, 0, 417, 0, 0, 420, 421, 0, 0, 0,
11091  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
11092  0, 0, 428, 0, 0, 429, 0, 431, 432, 433,
11093  434, 0, 0, 0, 436, 0, 437, 438, 439, 440,
11094  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
11095  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
11096  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
11097  0, 459, 460, 0, 0, 0, 0, 462, 463, 464,
11098  0, 465, 466, 0, 467, 468, 0, 0, 0, 0,
11099  0, 471, 0, 0, 472, 0, 0, 0, 474, 475,
11100  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
11101  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
11102  -321, 0, 0, 0, 483, 0, 0, 485, 0, 487,
11103  0, 137, 488, 138, 139, 140, 141, 142, 0, 0,
11104  143, 0, 0, 0, 144, 0, 0, 0, 0, 146,
11105  147, 148, 149, 150, 0, 0, -366, 0, 0, 0,
11106  153, 0, 0, 0, 154, 0, 0, 155, 156, 157,
11107  0, 158, 0, 0, 0, 0, 0, 161, 3967, 0,
11108  162, 163, 0, 164, 0, 0, 0, 0, 167, 168,
11109  169, 3968, 171, 172, 0, 173, 174, 0, 175, 176,
11110  0, 178, 0, 180, 181, 182, 183, 0, 184, 185,
11111  0, 186, 187, 188, 0, 190, 0, 0, 0, 191,
11112  0, 0, 192, 0, 193, 0, 0, 194, 0, 0,
11113  0, 195, 196, 197, 0, 0, 198, 0, 0, 0,
11114  0, 199, 0, 0, 0, 0, 0, 201, 202, 0,
11115  203, 0, 0, 0, 204, 0, 205, 206, 207, 208,
11116  209, 0, 0, 0, 0, 0, 0, 211, 212, 213,
11117  0, -357, 0, 214, 0, -357, 216, 0, 217, 218,
11118  219, 0, 0, 220, 221, 0, 222, 223, 224, 225,
11119  226, 0, 0, 0, 228, 229, 230, 231, 232, 0,
11120  0, 233, 234, 3969, 235, 236, 237, 0, 0, 0,
11121  0, 0, 0, 0, 240, 0, 241, 0, 242, 0,
11122  243, 244, 245, 246, 0, 247, 0, 248, 0, 0,
11123  0, 0, 250, 0, 0, 0, 0, 0, 253, 0,
11124  0, 0, 254, 255, 256, 257, 3970, 0, 258, 259,
11125  260, 0, 0, 261, 0, 0, 0, 0, 262, 0,
11126  0, 0, 0, 264, 0, 0, 0, 265, 266, 0,
11127  267, 268, 3971, 0, 0, 269, 0, 0, 0, 271,
11128  0, 0, 272, 3972, 0, 273, 274, 0, 0, 0,
11129  0, 0, 275, 276, 0, 277, 0, 278, 0, 279,
11130  280, 0, 0, 0, 0, -321, 0, 0, 281, 0,
11131  282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
11132  292, 293, 294, 295, 296, 297, 298, 0, 299, 300,
11133  301, 0, 302, 303, 304, 305, 0, 306, 307, 0,
11134  0, 0, 0, 308, 309, 310, 311, 312, 313, 0,
11135  0, 314, 315, 0, 316, 0, 317, 0, 318, 319,
11136  320, 321, 322, 323, 324, 325, 326, 0, 0, 327,
11137  328, 0, 0, 329, 330, 331, 332, 0, 0, 0,
11138  0, 334, 0, 0, 0, 335, 0, 336, 337, 338,
11139  0, 339, 340, 3973, 0, 0, 0, 0, 0, 0,
11140  0, 0, 0, 0, 0, 0, 344, 345, 0, 0,
11141  347, 0, 348, 349, 350, 351, 352, 353, 354, 355,
11142  356, 0, 0, 0, 0, 359, 360, 0, 361, 0,
11143  362, 363, 364, 365, 366, 0, 367, 368, 369, 0,
11144  0, 370, 0, 0, 0, 371, 372, 373, 374, 375,
11145  0, 0, 376, 377, 378, 379, 380, 0, 381, 0,
11146  0, 383, 0, 385, -321, 0, 386, 0, 0, 0,
11147  388, 0, 0, 390, 391, 392, 3974, 393, 0, 0,
11148  0, 395, 396, 397, 398, 399, 400, 401, 0, 403,
11149  404, 0, 405, 0, 0, 0, 0, 407, 408, 409,
11150  0, 0, 0, 0, 411, 0, 0, 0, 412, 0,
11151  0, 414, 0, 416, 0, 417, 0, 0, 420, 421,
11152  0, 0, 0, 0, 0, 422, 423, 424, 0, 425,
11153  426, 0, 427, 0, 0, 428, 0, 0, 429, 0,
11154  431, 432, 433, 434, 0, 0, 0, 436, 0, 437,
11155  438, 439, 440, 441, 442, 0, 0, 443, 444, 445,
11156  446, 0, 447, 448, 0, 0, 449, 450, 451, 452,
11157  0, 0, 453, 454, 0, 455, 456, 457, 458, 0,
11158  0, 0, 0, 0, 459, 460, 0, 0, 0, 0,
11159  462, 463, 464, 0, 465, 466, 0, 467, 468, 0,
11160  0, 0, 0, 0, 471, 0, 0, 472, 0, 0,
11161  0, 474, 475, 0, 0, 0, 0, 0, 0, 476,
11162  0, 0, 477, 0, 0, 0, 478, 479, 480, 481,
11163  482, -357, 0, -321, 0, 0, 0, 483, 0, 0,
11164  485, 0, 487, 0, 137, 488, 138, 139, 140, 141,
11165  142, 0, 0, 143, 0, 0, 0, 144, 0, 0,
11166  0, 0, 146, 147, 148, 149, 150, 0, 0, -366,
11167  0, 0, 0, 153, 0, 0, 0, 154, 0, 0,
11168  155, 156, 157, 0, 158, 0, 0, 0, 0, 0,
11169  161, 3967, 0, 162, 163, 0, 164, 0, 0, 0,
11170  0, 167, 168, 169, 3968, 171, 172, 0, 173, 174,
11171  0, 175, 176, 0, 178, 0, 180, 181, 182, 183,
11172  0, 184, 185, 0, 186, 187, 188, 0, 190, 0,
11173  0, 0, 191, 0, 0, 192, 0, 193, 0, 0,
11174  194, 0, 0, 0, 195, 196, 197, 0, 0, 198,
11175  0, 0, 0, 0, 199, 0, 0, 0, 0, 0,
11176  201, 202, 0, 203, 0, 0, 0, 204, 0, 205,
11177  206, 207, 208, 209, 0, 0, 0, 0, 0, 0,
11178  211, 212, 213, 0, -354, 0, 214, 0, -354, 216,
11179  0, 217, 218, 219, 0, 0, 220, 221, 0, 222,
11180  223, 224, 225, 226, 0, 0, 0, 228, 229, 230,
11181  231, 232, 0, 0, 233, 234, 3969, 235, 236, 237,
11182  0, 0, 0, 0, 0, 0, 0, 240, 0, 241,
11183  0, 242, 0, 243, 244, 245, 246, 0, 247, 0,
11184  248, 0, 0, 0, 0, 250, 0, 0, 0, 0,
11185  0, 253, 0, 0, 0, 254, 255, 256, 257, 3970,
11186  0, 258, 259, 260, 0, 0, 261, 0, 0, 0,
11187  0, 262, 0, 0, 0, 0, 264, 0, 0, 0,
11188  265, 266, 0, 267, 268, 3971, 0, 0, 269, 0,
11189  0, 0, 271, 0, 0, 272, 3972, 0, 273, 274,
11190  0, 0, 0, 0, 0, 275, 276, 0, 277, 0,
11191  278, 0, 279, 280, 0, 0, 0, 0, -321, 0,
11192  0, 281, 0, 282, 283, 284, 285, 286, 287, 288,
11193  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
11194  0, 299, 300, 301, 0, 302, 303, 304, 305, 0,
11195  306, 307, 0, 0, 0, 0, 308, 309, 310, 311,
11196  312, 313, 0, 0, 314, 315, 0, 316, 0, 317,
11197  0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
11198  0, 0, 327, 328, 0, 0, 329, 330, 331, 332,
11199  0, 0, 0, 0, 334, 0, 0, 0, 335, 0,
11200  336, 337, 338, 0, 339, 340, 3973, 0, 0, 0,
11201  0, 0, 0, 0, 0, 0, 0, 0, 0, 344,
11202  345, 0, 0, 347, 0, 348, 349, 350, 351, 352,
11203  353, 354, 355, 356, 0, 0, 0, 0, 359, 360,
11204  0, 361, 0, 362, 363, 364, 365, 366, 0, 367,
11205  368, 369, 0, 0, 370, 0, 0, 0, 371, 372,
11206  373, 374, 375, 0, 0, 376, 377, 378, 379, 380,
11207  0, 381, 0, 0, 383, 0, 385, -321, 0, 386,
11208  0, 0, 0, 388, 0, 0, 390, 391, 392, 3974,
11209  393, 0, 0, 0, 395, 396, 397, 398, 399, 400,
11210  401, 0, 403, 404, 0, 405, 0, 0, 0, 0,
11211  407, 408, 409, 0, 0, 0, 0, 411, 0, 0,
11212  0, 412, 0, 0, 414, 0, 416, 0, 417, 0,
11213  0, 420, 421, 0, 0, 0, 0, 0, 422, 423,
11214  424, 0, 425, 426, 0, 427, 0, 0, 428, 0,
11215  0, 429, 0, 431, 432, 433, 434, 0, 0, 0,
11216  436, 0, 437, 438, 439, 440, 441, 442, 0, 0,
11217  443, 444, 445, 446, 0, 447, 448, 0, 0, 449,
11218  450, 451, 452, 0, 0, 453, 454, 0, 455, 456,
11219  457, 458, 0, 0, 0, 0, 0, 459, 460, 0,
11220  0, 0, 0, 462, 463, 464, 0, 465, 466, 0,
11221  467, 468, 0, 0, 0, 0, 0, 471, 0, 0,
11222  472, 0, 0, 0, 474, 475, 0, 0, 0, 0,
11223  0, 0, 476, 0, 0, 477, 0, 0, 0, 478,
11224  479, 480, 481, 482, -354, 0, -321, 0, 0, 0,
11225  483, 0, 0, 485, 0, 487, 0, 137, 488, 138,
11226  139, 140, 141, 142, 0, 0, 143, 0, 0, 0,
11227  144, 0, 0, 0, 0, 146, 147, 148, 149, 150,
11228  0, 0, -366, 0, 0, 0, 153, 0, 0, 0,
11229  154, 0, 0, 155, 156, 157, 0, 158, 0, 0,
11230  0, 0, 0, 161, 3967, 0, 162, 163, 0, 164,
11231  0, 0, 0, 0, 167, 168, 169, 3968, 171, 172,
11232  0, 173, 174, 0, 175, 176, 0, 178, 0, 180,
11233  181, 182, 183, 0, 184, 185, 0, 186, 187, 188,
11234  0, 190, 0, 0, 0, 191, 0, 0, 192, 0,
11235  193, 0, 0, 194, 0, 0, 0, 195, 196, 197,
11236  0, 0, 198, 0, 0, 0, 0, 199, 0, 0,
11237  0, 0, 0, 201, 202, 0, 203, 0, 0, 0,
11238  204, 0, 205, 206, 207, 208, 209, 0, 0, 0,
11239  0, 0, 0, 211, 212, 213, 0, 0, 0, 214,
11240  0, 4306, 216, 0, 217, 218, 219, 0, 0, 220,
11241  221, 0, 222, 223, 224, 225, 226, 0, 0, 0,
11242  228, 229, 230, 231, 232, 0, 0, 233, 234, 3969,
11243  235, 236, 237, 0, 0, 0, 0, 0, 0, 0,
11244  240, 0, 241, 0, 242, 0, 243, 244, 245, 246,
11245  0, 247, 0, 248, 0, 0, 0, 0, 250, 0,
11246  0, 0, 0, 0, 253, 0, 0, 0, 254, 255,
11247  256, 257, 3970, 0, 258, 259, 260, 0, 0, 261,
11248  0, 0, 0, 0, 262, 0, 0, 0, 0, 264,
11249  0, 0, 0, 265, 266, 0, 267, 268, 3971, 0,
11250  0, 269, 0, 0, 0, 271, 0, 0, 272, 3972,
11251  0, 273, 274, 0, 0, 0, 0, 0, 275, 276,
11252  0, 277, 0, 278, 0, 279, 280, 0, 0, 0,
11253  0, -321, 0, 0, 281, 0, 282, 283, 284, 285,
11254  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
11255  296, 297, 298, 0, 299, 300, 301, 0, 302, 303,
11256  304, 305, 0, 306, 307, 0, 0, 0, 0, 308,
11257  309, 310, 311, 312, 313, 0, 0, 314, 315, 0,
11258  316, 0, 317, 0, 318, 319, 320, 321, 322, 323,
11259  324, 325, 326, 0, 0, 327, 328, 0, 0, 329,
11260  330, 331, 332, 0, 0, 0, 0, 334, 0, 0,
11261  0, 335, 0, 336, 337, 338, 0, 339, 340, 3973,
11262  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11263  0, 0, 344, 345, 0, 0, 347, 0, 348, 349,
11264  350, 351, 352, 353, 354, 355, 356, 0, 0, 0,
11265  0, 359, 360, 0, 361, 0, 362, 363, 364, 365,
11266  366, 0, 367, 368, 369, 0, 0, 370, 0, 0,
11267  0, 371, 372, 373, 374, 375, 0, 0, 376, 377,
11268  378, 379, 380, 0, 381, 0, 0, 383, 0, 385,
11269  -321, 0, 386, 0, 0, 0, 388, 0, 0, 390,
11270  391, 392, 3974, 393, 0, 0, 0, 395, 396, 397,
11271  398, 399, 400, 401, 0, 403, 404, 0, 405, 0,
11272  0, 0, 0, 407, 408, 409, 0, 0, 0, 0,
11273  411, 0, 0, 0, 412, 0, 0, 414, 0, 416,
11274  0, 417, 0, 0, 420, 421, 0, 0, 0, 0,
11275  0, 422, 423, 424, 0, 425, 426, 0, 427, 0,
11276  0, 428, 0, 0, 429, 0, 431, 432, 433, 434,
11277  0, 0, 0, 436, 0, 437, 438, 439, 440, 441,
11278  442, 0, 0, 443, 444, 445, 446, 0, 447, 448,
11279  0, 0, 449, 450, 451, 452, 0, 0, 453, 454,
11280  0, 455, 456, 457, 458, 0, 0, 0, 0, 0,
11281  459, 460, 0, 0, 0, 0, 462, 463, 464, 0,
11282  465, 466, 0, 467, 468, 0, 0, 0, 0, 0,
11283  471, 0, 0, 472, 0, 0, 0, 474, 475, 0,
11284  0, 0, 0, 0, 0, 476, 0, 0, 477, 0,
11285  0, 0, 478, 479, 480, 481, 482, 0, 0, -321,
11286  0, 0, 0, 483, 0, 0, 485, 0, 487, 0,
11287  137, 488, 138, 139, 140, 141, 142, 0, 0, 143,
11288  0, 0, 0, 144, 0, 0, 0, 0, 146, 147,
11289  148, 149, 150, 0, 0, -366, 0, 0, 0, 153,
11290  0, 0, 0, 154, 0, 0, 155, 156, 157, 0,
11291  158, 0, 0, 0, 0, 0, 161, 3967, 0, 162,
11292  163, 0, 164, 0, 0, 0, 0, 167, 168, 169,
11293  3968, 171, 172, 0, 173, 174, 0, 175, 176, 0,
11294  178, 0, 180, 181, 182, 183, 0, 184, 185, 0,
11295  186, 187, 188, 0, 190, 0, 0, 0, 191, 0,
11296  0, 192, 0, 193, 0, 0, 194, 0, 0, 0,
11297  195, 196, 197, 0, 0, 198, 0, 0, 0, 0,
11298  199, 0, 0, 0, 0, 0, 201, 202, 0, 203,
11299  0, 0, 0, 204, 0, 205, 206, 207, 208, 209,
11300  0, 0, 0, 0, 0, 0, 211, 212, 213, 0,
11301  0, 0, 214, 0, -359, 216, 0, 217, 218, 219,
11302  0, 0, 220, 221, 0, 222, 223, 224, 225, 226,
11303  0, 0, 0, 228, 229, 230, 231, 232, 0, 0,
11304  233, 234, 3969, 235, 236, 237, 0, 0, 0, 0,
11305  0, 0, 0, 240, 0, 241, 0, 242, 0, 243,
11306  244, 245, 246, 0, 247, 0, 248, 0, 0, 0,
11307  0, 250, 0, 0, 0, 0, 0, 253, 0, 0,
11308  0, 254, 255, 256, 257, 3970, 0, 258, 259, 260,
11309  0, 0, 261, 0, 0, 0, 0, 262, 0, 0,
11310  0, 0, 264, 0, 0, 0, 265, 266, 0, 267,
11311  268, 3971, 0, 0, 269, 0, 0, 0, 271, 0,
11312  0, 272, 3972, 0, 273, 274, 0, 0, 0, 0,
11313  0, 275, 276, 0, 277, 0, 278, 0, 279, 280,
11314  0, 0, 0, 0, -321, 0, 0, 281, 0, 282,
11315  283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
11316  293, 294, 295, 296, 297, 298, 0, 299, 300, 301,
11317  0, 302, 303, 304, 305, 0, 306, 307, 0, 0,
11318  0, 0, 308, 309, 310, 311, 312, 313, 0, 0,
11319  314, 315, 0, 316, 0, 317, 0, 318, 319, 320,
11320  321, 322, 323, 324, 325, 326, 0, 0, 327, 328,
11321  0, 0, 329, 330, 331, 332, 0, 0, 0, 0,
11322  334, 0, 0, 0, 335, 0, 336, 337, 338, 0,
11323  339, 340, 3973, 0, 0, 0, 0, 0, 0, 0,
11324  0, 0, 0, 0, 0, 344, 345, 0, 0, 347,
11325  0, 348, 349, 350, 351, 352, 353, 354, 355, 356,
11326  0, 0, 0, 0, 359, 360, 0, 361, 0, 362,
11327  363, 364, 365, 366, 0, 367, 368, 369, 0, 0,
11328  370, 0, 0, 0, 371, 372, 373, 374, 375, 0,
11329  0, 376, 377, 378, 379, 380, 0, 381, 0, 0,
11330  383, 0, 385, -321, 0, 386, 0, 0, 0, 388,
11331  0, 0, 390, 391, 392, 3974, 393, 0, 0, 0,
11332  395, 396, 397, 398, 399, 400, 401, 0, 403, 404,
11333  0, 405, 0, 0, 0, 0, 407, 408, 409, 0,
11334  0, 0, 0, 411, 0, 0, 0, 412, 0, 0,
11335  414, 0, 416, 0, 417, 0, 0, 420, 421, 0,
11336  0, 0, 0, 0, 422, 423, 424, 0, 425, 426,
11337  0, 427, 0, 0, 428, 0, 0, 429, 0, 431,
11338  432, 433, 434, 0, 0, 0, 436, 0, 437, 438,
11339  439, 440, 441, 442, 0, 0, 443, 444, 445, 446,
11340  0, 447, 448, 0, 0, 449, 450, 451, 452, 0,
11341  0, 453, 454, 0, 455, 456, 457, 458, 0, 0,
11342  0, 0, 0, 459, 460, 0, 0, 0, 0, 462,
11343  463, 464, 0, 465, 466, 0, 467, 468, 0, 0,
11344  0, 0, 0, 471, 0, 0, 472, 0, 0, 0,
11345  474, 475, 0, 0, 0, 0, 0, 0, 476, 0,
11346  0, 477, 0, 0, 0, 478, 479, 480, 481, 482,
11347  0, 0, -321, 0, 0, 0, 483, 0, 0, 485,
11348  0, 487, 0, 137, 488, 138, 139, 140, 141, 142,
11349  0, 0, 143, 0, 0, 0, 144, 0, 0, 0,
11350  0, 146, 147, 148, 149, 150, 0, 0, -366, 0,
11351  0, 0, 153, 0, 0, 0, 154, 0, 0, 155,
11352  156, 157, 0, 158, 0, 0, 0, 0, 0, 161,
11353  3967, 0, 162, 163, 0, 164, 0, 0, 0, 0,
11354  167, 168, 169, 3968, 171, 172, 0, 173, 174, 0,
11355  175, 176, 0, 178, 0, 180, 181, 182, 183, 0,
11356  184, 185, 0, 186, 187, 188, 0, 190, 0, 0,
11357  0, 191, 0, 0, 192, 0, 193, 0, 0, 194,
11358  0, 0, 0, 195, 196, 197, 0, 0, 198, 0,
11359  0, 0, 0, 199, 0, 0, 0, 0, 0, 201,
11360  202, 0, 203, 0, 0, 0, 204, 0, 205, 206,
11361  207, 208, 209, 0, 0, 0, 0, 0, 0, 211,
11362  212, 213, 0, 0, 0, 214, 0, 4414, 216, 0,
11363  217, 218, 219, 0, 0, 220, 221, 0, 222, 223,
11364  224, 225, 226, 0, 0, 0, 228, 229, 230, 231,
11365  232, 0, 0, 233, 234, 3969, 235, 236, 237, 0,
11366  0, 0, 0, 0, 0, 0, 240, 0, 241, 0,
11367  242, 0, 243, 244, 245, 246, 0, 247, 0, 248,
11368  0, 0, 0, 0, 250, 0, 0, 0, 0, 0,
11369  253, 0, 0, 0, 254, 255, 256, 257, 3970, 0,
11370  258, 259, 260, 0, 0, 261, 0, 0, 0, 0,
11371  262, 0, 0, 0, 0, 264, 0, 0, 0, 265,
11372  266, 0, 267, 268, 3971, 0, 0, 269, 0, 0,
11373  0, 271, 0, 0, 272, 3972, 0, 273, 274, 0,
11374  0, 0, 0, 0, 275, 276, 0, 277, 0, 278,
11375  0, 279, 280, 0, 0, 0, 0, -321, 0, 0,
11376  281, 0, 282, 283, 284, 285, 286, 287, 288, 289,
11377  290, 291, 292, 293, 294, 295, 296, 297, 298, 0,
11378  299, 300, 301, 0, 302, 303, 304, 305, 0, 306,
11379  307, 0, 0, 0, 0, 308, 309, 310, 311, 312,
11380  313, 0, 0, 314, 315, 0, 316, 0, 317, 0,
11381  318, 319, 320, 321, 322, 323, 324, 325, 326, 0,
11382  0, 327, 328, 0, 0, 329, 330, 331, 332, 0,
11383  0, 0, 0, 334, 0, 0, 0, 335, 0, 336,
11384  337, 338, 0, 339, 340, 3973, 0, 0, 0, 0,
11385  0, 0, 0, 0, 0, 0, 0, 0, 344, 345,
11386  0, 0, 347, 0, 348, 349, 350, 351, 352, 353,
11387  354, 355, 356, 0, 0, 0, 0, 359, 360, 0,
11388  361, 0, 362, 363, 364, 365, 366, 0, 367, 368,
11389  369, 0, 0, 370, 0, 0, 0, 371, 372, 373,
11390  374, 375, 0, 0, 376, 377, 378, 379, 380, 0,
11391  381, 0, 0, 383, 0, 385, -321, 0, 386, 0,
11392  0, 0, 388, 0, 0, 390, 391, 392, 3974, 393,
11393  0, 0, 0, 395, 396, 397, 398, 399, 400, 401,
11394  0, 403, 404, 0, 405, 0, 0, 0, 0, 407,
11395  408, 409, 0, 0, 0, 0, 411, 0, 0, 0,
11396  412, 0, 0, 414, 0, 416, 0, 417, 0, 0,
11397  420, 421, 0, 0, 0, 0, 0, 422, 423, 424,
11398  0, 425, 426, 0, 427, 0, 0, 428, 0, 0,
11399  429, 0, 431, 432, 433, 434, 0, 0, 0, 436,
11400  0, 437, 438, 439, 440, 441, 442, 0, 0, 443,
11401  444, 445, 446, 0, 447, 448, 0, 0, 449, 450,
11402  451, 452, 0, 0, 453, 454, 0, 455, 456, 457,
11403  458, 0, 0, 0, 0, 0, 459, 460, 0, 0,
11404  0, 0, 462, 463, 464, 0, 465, 466, 0, 467,
11405  468, 0, 0, 0, 0, 0, 471, 0, 0, 472,
11406  0, 0, 0, 474, 475, 0, 0, 0, 0, 0,
11407  0, 476, 0, 0, 477, 0, 0, 0, 478, 479,
11408  480, 481, 482, 0, 0, -321, 0, 0, 0, 483,
11409  0, 0, 485, 0, 487, 0, 137, 488, 138, 139,
11410  140, 141, 142, 0, 0, 143, 0, 0, 0, 144,
11411  0, 0, 0, 0, 146, 147, 148, 149, 150, 0,
11412  0, -366, 0, 0, 0, 153, 0, 0, 0, 154,
11413  0, 0, 155, 156, 157, 0, 158, 0, 0, 0,
11414  0, 0, 161, 3967, 0, 162, 163, 0, 164, 0,
11415  0, 0, 0, 167, 168, 169, 3968, 171, 172, 0,
11416  173, 174, 0, 175, 176, 0, 178, 0, 180, 181,
11417  182, 183, 0, 184, 185, 0, 186, 187, 188, 0,
11418  190, 0, 0, 0, 191, 0, 0, 192, 0, 193,
11419  0, 0, 194, 0, 0, 0, 195, 196, 197, 0,
11420  0, 198, 0, 0, 0, 0, 199, 0, 0, 0,
11421  0, 0, 201, 202, 0, 203, 0, 0, 0, 204,
11422  0, 205, 206, 207, 208, 209, 0, 0, 0, 0,
11423  0, 0, 211, 212, 213, 0, 0, 0, 214, 0,
11424  4460, 216, 0, 217, 218, 219, 0, 0, 220, 221,
11425  0, 222, 223, 224, 225, 226, 0, 0, 0, 228,
11426  229, 230, 231, 232, 0, 0, 233, 234, 3969, 235,
11427  236, 237, 0, 0, 0, 0, 0, 0, 0, 240,
11428  0, 241, 0, 242, 0, 243, 244, 245, 246, 0,
11429  247, 0, 248, 0, 0, 0, 0, 250, 0, 0,
11430  0, 0, 0, 253, 0, 0, 0, 254, 255, 256,
11431  257, 3970, 0, 258, 259, 260, 0, 0, 261, 0,
11432  0, 0, 0, 262, 0, 0, 0, 0, 264, 0,
11433  0, 0, 265, 266, 0, 267, 268, 3971, 0, 0,
11434  269, 0, 0, 0, 271, 0, 0, 272, 3972, 0,
11435  273, 274, 0, 0, 0, 0, 0, 275, 276, 0,
11436  277, 0, 278, 0, 279, 280, 0, 0, 0, 0,
11437  -321, 0, 0, 281, 0, 282, 283, 284, 285, 286,
11438  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
11439  297, 298, 0, 299, 300, 301, 0, 302, 303, 304,
11440  305, 0, 306, 307, 0, 0, 0, 0, 308, 309,
11441  310, 311, 312, 313, 0, 0, 314, 315, 0, 316,
11442  0, 317, 0, 318, 319, 320, 321, 322, 323, 324,
11443  325, 326, 0, 0, 327, 328, 0, 0, 329, 330,
11444  331, 332, 0, 0, 0, 0, 334, 0, 0, 0,
11445  335, 0, 336, 337, 338, 0, 339, 340, 3973, 0,
11446  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11447  0, 344, 345, 0, 0, 347, 0, 348, 349, 350,
11448  351, 352, 353, 354, 355, 356, 0, 0, 0, 0,
11449  359, 360, 0, 361, 0, 362, 363, 364, 365, 366,
11450  0, 367, 368, 369, 0, 0, 370, 0, 0, 0,
11451  371, 372, 373, 374, 375, 0, 0, 376, 377, 378,
11452  379, 380, 0, 381, 0, 0, 383, 0, 385, -321,
11453  0, 386, 0, 0, 0, 388, 0, 0, 390, 391,
11454  392, 3974, 393, 0, 0, 0, 395, 396, 397, 398,
11455  399, 400, 401, 0, 403, 404, 0, 405, 0, 0,
11456  0, 0, 407, 408, 409, 0, 0, 0, 0, 411,
11457  0, 0, 0, 412, 0, 0, 414, 0, 416, 0,
11458  417, 0, 0, 420, 421, 0, 0, 0, 0, 0,
11459  422, 423, 424, 0, 425, 426, 0, 427, 0, 0,
11460  428, 0, 0, 429, 0, 431, 432, 433, 434, 0,
11461  0, 0, 436, 0, 437, 438, 439, 440, 441, 442,
11462  0, 0, 443, 444, 445, 446, 0, 447, 448, 0,
11463  0, 449, 450, 451, 452, 0, 0, 453, 454, 0,
11464  455, 456, 457, 458, 0, 0, 0, 0, 0, 459,
11465  460, 0, 0, 0, 0, 462, 463, 464, 0, 465,
11466  466, 0, 467, 468, 0, 0, 0, 0, 0, 471,
11467  0, 0, 472, 0, 0, 0, 474, 475, 0, 0,
11468  0, 0, 0, 0, 476, 0, 0, 477, 0, 0,
11469  0, 478, 479, 480, 481, 482, 0, 0, -321, 0,
11470  0, 0, 483, 0, 0, 485, 0, 487, 0, 137,
11471  488, 138, 139, 140, 141, 142, 0, 0, 143, 0,
11472  0, 0, 144, 0, 0, 0, 0, 146, 147, 148,
11473  149, 150, 0, 0, -366, 0, 0, 0, 153, 0,
11474  0, 0, 154, 0, 0, 155, 156, 157, 0, 158,
11475  0, 0, 0, 0, 0, 161, 3967, 0, 162, 163,
11476  0, 164, 0, 0, 0, 0, 167, 168, 169, 3968,
11477  171, 172, 0, 173, 174, 0, 175, 176, 0, 178,
11478  0, 180, 181, 182, 183, 0, 184, 185, 0, 186,
11479  187, 188, 0, 190, 0, 0, 0, 191, 0, 0,
11480  192, 0, 193, 0, 0, 194, 0, 0, 0, 195,
11481  196, 197, 0, 0, 198, 0, 0, 0, 0, 199,
11482  0, 0, 0, 0, 0, 201, 202, 0, 203, 0,
11483  0, 0, 204, 0, 205, 206, 207, 208, 209, 0,
11484  0, 0, 0, 0, 0, 211, 212, 213, 0, 0,
11485  0, 214, 0, -340, 216, 0, 217, 218, 219, 0,
11486  0, 220, 221, 0, 222, 223, 224, 225, 226, 0,
11487  0, 0, 228, 229, 230, 231, 232, 0, 0, 233,
11488  234, 3969, 235, 236, 237, 0, 0, 0, 0, 0,
11489  0, 0, 240, 0, 241, 0, 242, 0, 243, 244,
11490  245, 246, 0, 247, 0, 248, 0, 0, 0, 0,
11491  250, 0, 0, 0, 0, 0, 253, 0, 0, 0,
11492  254, 255, 256, 257, 3970, 0, 258, 259, 260, 0,
11493  0, 261, 0, 0, 0, 0, 262, 0, 0, 0,
11494  0, 264, 0, 0, 0, 265, 266, 0, 267, 268,
11495  3971, 0, 0, 269, 0, 0, 0, 271, 0, 0,
11496  272, 3972, 0, 273, 274, 0, 0, 0, 0, 0,
11497  275, 276, 0, 277, 0, 278, 0, 279, 280, 0,
11498  0, 0, 0, -321, 0, 0, 281, 0, 282, 283,
11499  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
11500  294, 295, 296, 297, 298, 0, 299, 300, 301, 0,
11501  302, 303, 304, 305, 0, 306, 307, 0, 0, 0,
11502  0, 308, 309, 310, 311, 312, 313, 0, 0, 314,
11503  315, 0, 316, 0, 317, 0, 318, 319, 320, 321,
11504  322, 323, 324, 325, 326, 0, 0, 327, 328, 0,
11505  0, 329, 330, 331, 332, 0, 0, 0, 0, 334,
11506  0, 0, 0, 335, 0, 336, 337, 338, 0, 339,
11507  340, 3973, 0, 0, 0, 0, 0, 0, 0, 0,
11508  0, 0, 0, 0, 344, 345, 0, 0, 347, 0,
11509  348, 349, 350, 351, 352, 353, 354, 355, 356, 0,
11510  0, 0, 0, 359, 360, 0, 361, 0, 362, 363,
11511  364, 365, 366, 0, 367, 368, 369, 0, 0, 370,
11512  0, 0, 0, 371, 372, 373, 374, 375, 0, 0,
11513  376, 377, 378, 379, 380, 0, 381, 0, 0, 383,
11514  0, 385, -321, 0, 386, 0, 0, 0, 388, 0,
11515  0, 390, 391, 392, 3974, 393, 0, 0, 0, 395,
11516  396, 397, 398, 399, 400, 401, 0, 403, 404, 0,
11517  405, 0, 0, 0, 0, 407, 408, 409, 0, 0,
11518  0, 0, 411, 0, 0, 0, 412, 0, 0, 414,
11519  0, 416, 0, 417, 0, 0, 420, 421, 0, 0,
11520  0, 0, 0, 422, 423, 424, 0, 425, 426, 0,
11521  427, 0, 0, 428, 0, 0, 429, 0, 431, 432,
11522  433, 434, 0, 0, 0, 436, 0, 437, 438, 439,
11523  440, 441, 442, 0, 0, 443, 444, 445, 446, 0,
11524  447, 448, 0, 0, 449, 450, 451, 452, 0, 0,
11525  453, 454, 0, 455, 456, 457, 458, 0, 0, 0,
11526  0, 0, 459, 460, 0, 0, 0, 0, 462, 463,
11527  464, 0, 465, 466, 0, 467, 468, 0, 0, 0,
11528  0, 0, 471, 0, 0, 472, 0, 0, 0, 474,
11529  475, 0, 0, 0, 0, 0, 0, 476, 0, 0,
11530  477, 0, 0, 0, 478, 479, 480, 481, 482, 0,
11531  0, -321, 0, 0, 0, 483, 0, 0, 485, 0,
11532  487, 0, 137, 488, 138, 139, 140, 141, 142, 0,
11533  0, 143, 0, 0, 0, 144, 0, 0, 0, 0,
11534  146, 147, 148, 149, 150, 0, 0, -366, 0, 0,
11535  0, 153, 0, 0, 0, 154, 0, 0, 155, 156,
11536  157, 0, 158, 0, 0, 0, 0, 0, 161, 3967,
11537  0, 162, 163, 0, 164, 0, 0, 0, 0, 167,
11538  168, 169, 3968, 171, 172, 0, 173, 174, 0, 175,
11539  176, 0, 178, 0, 180, 181, 182, 183, 0, 184,
11540  185, 0, 186, 187, 188, 0, 190, 0, 0, 0,
11541  191, 0, 0, 192, 0, 193, 0, 0, 194, 0,
11542  0, 0, 195, 196, 197, 0, 0, 198, 0, 0,
11543  0, 0, 199, 0, 0, 0, 0, 0, 201, 202,
11544  0, 203, 0, 0, 0, 204, 0, 205, 206, 207,
11545  208, 209, 0, 0, 0, 0, 0, 0, 211, 212,
11546  213, 0, 0, 0, 214, 0, 0, 216, 0, 217,
11547  218, 219, 0, 0, 220, 221, 0, 222, 223, 224,
11548  225, 226, 0, 0, 0, 228, 229, 230, 231, 232,
11549  0, 0, 233, 234, 3969, 235, 236, 237, 0, 0,
11550  0, 0, 0, 0, 0, 240, 0, 241, 0, 242,
11551  0, 243, 244, 245, 246, 0, 247, 0, 248, 0,
11552  0, 0, 0, 250, 0, 0, 0, 0, 0, 253,
11553  0, 0, 0, 254, 255, 256, 257, 3970, 0, 258,
11554  259, 260, 0, 0, 261, 0, 0, 0, 0, 262,
11555  0, 0, 0, 0, 264, 0, 0, 0, 265, 266,
11556  0, 267, 268, 3971, 0, 0, 269, 0, 0, 0,
11557  271, 0, 0, 272, 3972, 0, 273, 274, 0, 0,
11558  0, 0, 0, 275, 276, 0, 277, 0, 278, 0,
11559  279, 280, 0, 0, 0, 0, -321, 0, 0, 281,
11560  0, 282, 283, 284, 285, 286, 287, 288, 289, 290,
11561  291, 292, 293, 294, 295, 296, 297, 298, 0, 299,
11562  300, 301, 0, 302, 303, 304, 305, 0, 306, 307,
11563  0, 0, 0, 0, 308, 309, 310, 311, 312, 313,
11564  0, 0, 314, 315, 0, 316, 0, 317, 0, 318,
11565  319, 320, 321, 322, 323, 324, 325, 326, 0, 0,
11566  327, 328, 0, 0, 329, 330, 331, 332, 0, 0,
11567  0, 0, 334, 0, 0, 0, 335, 0, 336, 337,
11568  338, 0, 339, 340, 3973, 0, 0, 0, 0, 0,
11569  0, 0, 0, 0, 0, 0, 0, 344, 345, 0,
11570  0, 347, 0, 348, 349, 350, 351, 352, 353, 354,
11571  355, 356, 0, 0, 0, 0, 359, 360, 0, 361,
11572  0, 362, 363, 364, 365, 366, 0, 367, 368, 369,
11573  0, 0, 370, 0, 0, 0, 371, 372, 373, 374,
11574  375, 0, 0, 376, 377, 378, 379, 380, 0, 381,
11575  0, 0, 383, 0, 385, -321, 0, 386, 0, 0,
11576  0, 388, 0, 0, 390, 391, 392, 3974, 393, 0,
11577  0, 0, 395, 396, 397, 398, 399, 400, 401, 0,
11578  403, 404, 0, 405, 0, 0, 0, 0, 407, 408,
11579  409, 0, 0, 0, 0, 411, 0, 0, 0, 412,
11580  0, 0, 414, 0, 416, 0, 417, 0, 0, 420,
11581  421, 0, 0, 0, 0, 0, 422, 423, 424, 0,
11582  425, 426, 0, 427, 0, 0, 428, 0, 0, 429,
11583  0, 431, 432, 433, 434, 0, 0, 0, 436, 0,
11584  437, 438, 439, 440, 441, 442, 0, 0, 443, 444,
11585  445, 446, 0, 447, 448, 0, 0, 449, 450, 451,
11586  452, 0, 0, 453, 454, 0, 455, 456, 457, 458,
11587  0, 0, 0, 0, 0, 459, 460, 0, 0, 0,
11588  0, 462, 463, 464, 0, 465, 466, 0, 467, 468,
11589  0, 0, 0, 0, 0, 471, 0, 0, 472, 0,
11590  0, 0, 474, 475, 0, 0, 0, 0, 0, 0,
11591  476, 0, 0, 477, 0, 0, 0, 478, 479, 480,
11592  481, 482, 0, 0, -321, 0, 0, 0, 483, 0,
11593  0, 485, 0, 487, 0, 137, 488, 138, 139, 140,
11594  141, 142, 0, 0, 143, 0, 0, 0, 144, 0,
11595  0, 0, 0, 146, 147, 148, 149, 150, 0, 0,
11596  -366, 0, 0, 0, 153, 0, 0, 0, 154, 0,
11597  0, 155, 156, 157, 0, 158, 0, 0, 0, 0,
11598  0, 161, 3967, 0, 162, 163, 0, 164, 0, 0,
11599  0, 0, 167, 168, 169, 3968, 171, 172, 0, 173,
11600  174, 0, 175, 176, 0, 178, 0, 180, 181, 182,
11601  183, 0, 184, 185, 0, 186, 187, 188, 0, 190,
11602  0, 0, 0, 191, 0, 0, 192, 0, 193, 0,
11603  0, 194, 0, 0, 0, 195, 196, 197, 0, 0,
11604  198, 0, 0, 0, 0, 199, 0, 0, 0, 0,
11605  0, 201, 202, 0, 203, 0, 0, 0, 204, 0,
11606  205, 206, 207, 208, 209, 0, 0, 0, 0, 0,
11607  0, 211, 212, 213, 0, 0, 0, 214, 0, 0,
11608  216, 0, 217, 218, 219, 0, 0, 220, 221, 0,
11609  222, 223, 224, 225, 226, 0, 0, 0, 228, 229,
11610  230, 231, 232, 0, 0, 233, 234, 3969, 235, 236,
11611  237, 0, 0, 0, 0, 0, 0, 0, 240, 0,
11612  241, 0, 242, 0, 243, 244, 245, 246, 0, 247,
11613  0, 248, 0, 0, 0, 0, 250, 0, 0, 0,
11614  0, 0, 253, 0, 0, 0, 254, 255, 256, 257,
11615  3970, 0, 258, 259, 260, 0, 0, 261, 0, 0,
11616  0, 0, 262, 0, 0, 0, 0, 264, 0, 0,
11617  0, 265, 266, 0, 267, 268, 3971, 0, 0, 269,
11618  0, 0, 0, 271, 0, 0, 272, 3972, 0, 273,
11619  274, 0, 0, 0, 0, 0, 275, 276, 0, 277,
11620  0, 278, 0, 279, 280, 0, 0, 0, 0, -321,
11621  0, 0, 281, 0, 282, 283, 284, 285, 286, 287,
11622  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
11623  298, 0, 299, 300, 301, 0, 302, 303, 304, 305,
11624  0, 306, 307, 0, 0, 0, 0, 308, 309, 310,
11625  311, 312, 313, 0, 0, 314, 315, 0, 316, 0,
11626  317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
11627  326, 0, 0, 327, 328, 0, 0, 329, 330, 331,
11628  332, 0, 0, 0, 0, 334, 0, 0, 0, 335,
11629  0, 336, 337, 338, 0, 339, 340, 3973, 0, 0,
11630  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11631  344, 345, 0, 0, 347, 0, 348, 349, 350, 351,
11632  352, 353, 354, 355, 356, 0, 0, 0, 0, 359,
11633  360, 0, 361, 0, 362, 363, 364, 365, 366, 0,
11634  367, 368, 369, 0, 0, 370, 0, 0, 0, 371,
11635  372, 373, 374, 375, 0, 0, 376, 377, 378, 379,
11636  380, 0, 381, 0, 0, 383, 0, 385, -321, 0,
11637  386, 0, 0, 0, 388, 0, 0, 390, 391, 392,
11638  3974, 393, 0, 0, 0, 395, 396, 397, 398, 399,
11639  400, 401, 0, 403, 404, 0, 405, 0, 0, 0,
11640  0, 407, 408, 409, 0, 0, 0, 0, 411, 0,
11641  0, 0, 412, 0, 0, 414, 0, 416, 0, 417,
11642  0, 0, 420, 421, 0, 0, 0, 0, 0, 422,
11643  423, 424, 0, 425, 426, 0, 427, 0, 0, 428,
11644  0, 0, 429, 0, 431, 432, 433, 434, 0, 0,
11645  0, 436, 0, 437, 438, 439, 440, 441, 442, 0,
11646  0, 443, 444, 445, 446, 0, 447, 448, 0, 0,
11647  449, 450, 451, 452, 0, 0, 453, 454, 0, 455,
11648  456, 457, 458, 0, 0, 0, 0, 0, 459, 460,
11649  0, 0, 0, 0, 462, 463, 464, 0, 465, 466,
11650  0, 467, 468, 0, 0, 0, 0, 0, 471, 0,
11651  0, 4309, 0, 0, 0, 474, 475, 0, 0, 0,
11652  0, 0, 0, 476, 0, 0, 477, 0, 0, 0,
11653  478, 479, 480, 481, 482, 0, 0, -321, 0, 0,
11654  0, 483, 0, 0, 485, 0, 487, 0, 137, 488,
11655  138, 139, 140, 141, 142, 0, 0, 143, 0, 0,
11656  0, 144, 0, 0, 0, 0, 146, 147, 148, 149,
11657  150, 0, 0, 0, 0, 0, 0, 153, 0, 0,
11658  0, 154, 0, 0, 155, 156, 157, 0, 158, 0,
11659  0, 0, 0, 0, 161, 0, 0, 162, 163, 0,
11660  164, 0, 0, 0, 0, 167, 168, 169, 0, 171,
11661  172, 0, 173, 174, 0, 175, 176, 0, 178, 0,
11662  180, 181, 182, 183, 0, 184, 185, 0, 186, 187,
11663  188, 0, 190, 0, 0, 0, 191, 0, 0, 192,
11664  0, 193, 0, 0, 194, 0, 0, 0, 195, 196,
11665  197, 0, 0, 198, 0, 0, 0, 0, 199, 0,
11666  0, 0, 0, 0, 201, 202, 0, 203, 0, 0,
11667  0, 204, 0, 205, 206, 207, 208, 209, 0, 0,
11668  0, 0, 0, 0, 211, 212, 213, 0, 0, 0,
11669  214, 0, 0, 216, 0, 217, 218, 219, 0, 0,
11670  220, 221, 0, 222, 223, 224, 225, 226, 0, 0,
11671  0, 228, 229, 230, 231, 232, 0, 0, 233, 234,
11672  0, 235, 236, 237, 0, 0, 0, 0, 0, 0,
11673  0, 240, 0, 241, 0, 242, 0, 243, 244, 245,
11674  246, 0, 247, 0, 248, 0, 0, 0, 0, 250,
11675  0, 0, 0, 0, 0, 253, 0, 0, 0, 254,
11676  255, 256, 257, 0, 0, 258, 259, 260, 0, 0,
11677  261, 0, 0, 0, 0, 262, 0, 0, 0, 0,
11678  264, 0, 0, 0, 265, 266, 0, 267, 268, 0,
11679  0, 0, 269, 0, 0, 0, 271, 0, 0, 272,
11680  0, 0, 273, 274, 0, 0, 0, 0, 0, 275,
11681  276, 0, 277, 0, 278, 0, 279, 280, 0, 0,
11682  0, 0, 0, 0, 0, 281, 0, 282, 283, 284,
11683  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
11684  295, 296, 297, 298, 0, 299, 300, 301, 0, 302,
11685  303, 304, 305, 0, 306, 307, 0, 0, 0, 0,
11686  308, 309, 310, 311, 312, 313, 0, 0, 314, 315,
11687  0, 316, 0, 317, 0, 318, 319, 320, 321, 322,
11688  323, 324, 325, 326, 0, 0, 327, 328, 0, 0,
11689  329, 330, 331, 332, 0, 0, 0, 0, 334, 0,
11690  0, 0, 335, 0, 336, 337, 338, 0, 339, 340,
11691  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11692  0, 0, 0, 344, 345, 0, 0, 347, 0, 348,
11693  349, 350, 351, 352, 353, 354, 355, 356, 0, 0,
11694  0, 0, 359, 360, 0, 361, 0, 362, 363, 364,
11695  365, 366, 0, 367, 368, 369, 0, 0, 370, 0,
11696  0, 0, 371, 372, 373, 374, 375, 0, 0, 376,
11697  377, 378, 379, 380, 0, 381, 0, 0, 383, 0,
11698  385, 0, 0, 386, 0, 0, 0, 388, 0, 0,
11699  390, 391, 392, 0, 393, 0, 0, 0, 395, 396,
11700  397, 398, 399, 400, 401, 0, 403, 404, 0, 405,
11701  0, 0, 0, 0, 407, 408, 409, 0, 0, 0,
11702  0, 411, 0, 0, 0, 412, 0, 0, 414, 0,
11703  416, 0, 417, 0, 0, 420, 421, 0, 0, 0,
11704  0, 0, 422, 423, 424, 0, 425, 426, 0, 427,
11705  0, 0, 428, 0, 0, 429, 0, 431, 432, 433,
11706  434, 0, 0, 0, 436, 0, 437, 438, 439, 440,
11707  441, 442, 0, 0, 443, 444, 445, 446, 0, 447,
11708  448, 0, 0, 449, 450, 451, 452, 0, 0, 453,
11709  454, 0, 455, 456, 457, 458, 0, 0, 0, 0,
11710  0, 459, 460, 0, 0, 0, 0, 462, 463, 464,
11711  0, 465, 466, 0, 467, 468, 0, 0, 0, 0,
11712  0, 471, 0, 0, 472, 0, 0, 0, 474, 475,
11713  0, 0, 0, 0, 0, 0, 476, 0, 0, 477,
11714  0, 0, 0, 478, 479, 480, 481, 482, 0, 0,
11715  0, 0, 0, 0, 483, 0, 0, 485, 0, 487,
11716  0, 0, 488
11717 };
11718 
11719 static const yytype_int16 yycheck[] =
11720 {
11721  6, 638, 647, 648, 594, 575, 574, 575, 953, 1137,
11722  853, 1837, 122, 19, 954, 873, 874, 23, 1550, 1483,
11723  519, 1233, 20, 1377, 1084, 883, 32, 6, 1043, 1137,
11724  1037, 1038, 30, 39, 1683, 610, 42, 705, 36, 1280,
11725  46, 1358, 2019, 891, 913, 1804, 2540, 53, 623, 665,
11726  23, 1472, 2090, 1481, 1472, 2479, 2155, 2468, 1107, 1160,
11727  3301, 2160, 1074, 1233, 2326, 913, 1167, 2891, 2371, 2833,
11728  2657, 1472, 958, 2497, 2498, 2428, 2429, 1286, 2456, 2251,
11729  1988, 889, 1986, 1826, 1992, 1756, 958, 2115, 94, 652,
11730  1913, 2449, 1982, 1982, 3036, 2003, 2535, 2513, 1462, 2457,
11731  2541, 2289, 1466, 2115, 1468, 4, 914, 2015, 3533, 3091,
11732  116, 2436, 118, 2691, 3306, 121, 122, 123, 2787, 1168,
11733  1169, 94, 46, 1172, 1173, 1174, 1175, 2389, 1177, 1178,
11734  1179, 1180, 1181, 1182, 1183, 1184, 773, 16, 17, 118,
11735  1937, 1938, 121, 3174, 1388, 761, 762, 763, 1965, 2045,
11736  17, 634, 635, 1452, 16, 17, 24, 1954, 774, 19,
11737  33, 2749, 1406, 70, 2685, 3324, 74, 1531, 2689, 2838,
11738  1414, 1415, 1462, 933, 1971, 1972, 10, 1462, 1835, 17,
11739  2104, 1466, 1206, 1468, 2138, 1956, 29, 2455, 2497, 2498,
11740  1987, 19, 145, 1990, 1991, 59, 1993, 2659, 915, 1996,
11741  1997, 2625, 2626, 2000, 11, 1928, 2414, 153, 2005, 31,
11742  104, 1974, 145, 2010, 2011, 2012, 2013, 2014, 67, 129,
11743  171, 2018, 3581, 2020, 50, 2115, 2115, 62, 803, 2026,
11744  2027, 2028, 2029, 19, 148, 2032, 120, 2034, 20, 3591,
11745  2245, 1531, 158, 4006, 2501, 159, 1531, 55, 280, 155,
11746  3364, 3365, 2516, 2070, 3368, 2072, 2073, 16, 17, 834,
11747  21, 2078, 2079, 386, 11, 2688, 313, 151, 82, 4099,
11748  2087, 2088, 33, 3387, 2944, 2092, 24, 80, 139, 3393,
11749  186, 16, 17, 68, 151, 106, 47, 247, 3529, 263,
11750  134, 151, 416, 221, 9, 155, 103, 58, 59, 21,
11751  3638, 363, 2099, 2100, 2101, 2102, 403, 385, 50, 8,
11752  265, 35, 640, 468, 29, 122, 2625, 2626, 421, 120,
11753  35, 145, 35, 120, 16, 17, 388, 155, 12, 16,
11754  17, 75, 19, 449, 122, 468, 58, 59, 16, 17,
11755  244, 249, 16, 17, 126, 819, 2671, 61, 2673, 186,
11756  151, 184, 16, 17, 151, 433, 269, 67, 122, 227,
11757  430, 16, 17, 16, 17, 16, 17, 354, 263, 155,
11758  1015, 1016, 1017, 4136, 2820, 160, 221, 120, 486, 125,
11759  545, 186, 352, 2633, 416, 192, 125, 4260, 221, 33,
11760  4263, 8, 784, 536, 504, 162, 539, 609, 610, 373,
11761  143, 624, 16, 17, 225, 1073, 162, 238, 631, 355,
11762  245, 508, 29, 506, 221, 59, 238, 132, 74, 1087,
11763  632, 21, 2239, 16, 17, 192, 64, 511, 259, 399,
11764  189, 2385, 542, 33, 527, 280, 192, 180, 2826, 509,
11765  262, 309, 585, 356, 431, 16, 17, 47, 3873, 237,
11766  558, 135, 280, 16, 17, 847, 20, 371, 58, 59,
11767  544, 412, 936, 560, 2910, 630, 273, 272, 571, 155,
11768  798, 185, 184, 237, 318, 630, 155, 280, 373, 227,
11769  179, 16, 17, 545, 608, 209, 1426, 447, 16, 17,
11770  16, 17, 231, 1351, 16, 17, 209, 630, 504, 3837,
11771  506, 984, 457, 600, 3696, 3619, 4379, 630, 3749, 221,
11772  372, 439, 416, 375, 3628, 189, 78, 523, 2843, 2844,
11773  2898, 527, 638, 4353, 4354, 272, 1163, 2943, 647, 648,
11774  2946, 2947, 538, 16, 17, 262, 542, 3651, 544, 2003,
11775  1857, 40, 3656, 3212, 3213, 3214, 354, 16, 17, 16,
11776  17, 557, 155, 2964, 632, 1171, 70, 1056, 1057, 16,
11777  17, 309, 126, 16, 17, 1233, 1452, 412, 574, 403,
11778  65, 477, 1188, 260, 1382, 521, 582, 1385, 1077, 2556,
11779  1452, 613, 1390, 630, 3253, 3254, 3255, 1086, 416, 374,
11780  1438, 3573, 1956, 249, 600, 3787, 403, 411, 3950, 1098,
11781  1099, 1100, 576, 425, 610, 2633, 612, 1106, 1416, 1417,
11782  1974, 2501, 2501, 372, 1826, 476, 375, 623, 624, 625,
11783  446, 2633, 3084, 2519, 630, 124, 632, 2523, 634, 635,
11784  544, 2899, 2900, 639, 640, 3059, 2037, 372, 644, 155,
11785  375, 2537, 2538, 3313, 1530, 2462, 625, 3235, 654, 655,
11786  656, 624, 605, 2549, 660, 601, 1826, 630, 1530, 2867,
11787  16, 17, 1711, 1907, 16, 17, 1956, 474, 517, 451,
11788  3494, 1956, 605, 1722, 508, 2932, 1725, 2941, 140, 4442,
11789  372, 632, 2578, 375, 608, 372, 602, 401, 375, 1974,
11790  800, 526, 1982, 1705, 372, 1412, 3888, 375, 372, 705,
11791  608, 375, 4127, 2627, 446, 2522, 600, 2524, 372, 2480,
11792  1734, 375, 3871, 556, 2531, 3303, 2670, 372, 556, 372,
11793  375, 372, 375, 630, 375, 2448, 560, 3919, 2545, 1212,
11794  537, 595, 539, 2530, 2391, 2552, 2499, 4096, 617, 649,
11795  2104, 608, 3773, 2633, 2633, 2750, 2543, 2564, 2565, 2566,
11796  3059, 2115, 636, 2570, 587, 617, 1516, 630, 372, 2655,
11797  766, 375, 768, 873, 632, 3090, 600, 877, 878, 636,
11798  556, 608, 1347, 635, 3352, 2592, 636, 3080, 585, 372,
11799  890, 605, 375, 2971, 3766, 613, 16, 17, 794, 795,
11800  796, 477, 798, 799, 800, 616, 802, 803, 477, 2098,
11801  1283, 372, 808, 1366, 375, 3383, 3384, 517, 814, 372,
11802  3060, 1386, 375, 574, 2104, 1298, 795, 532, 824, 2104,
11803  799, 545, 4247, 802, 568, 2115, 153, 3348, 834, 835,
11804  2115, 4023, 545, 839, 2631, 636, 582, 372, 553, 636,
11805  375, 623, 952, 582, 372, 560, 372, 375, 486, 375,
11806  372, 824, 574, 375, 16, 17, 3244, 61, 617, 16,
11807  17, 3382, 835, 577, 983, 2624, 839, 873, 583, 3390,
11808  3539, 877, 878, 632, 477, 587, 3397, 16, 17, 606,
11809  45, 3322, 617, 151, 890, 16, 17, 451, 1456, 372,
11810  632, 405, 375, 212, 3310, 1470, 631, 632, 42, 3338,
11811  227, 463, 125, 372, 2332, 372, 375, 3030, 375, 565,
11812  588, 16, 17, 3291, 1033, 372, 171, 3295, 375, 372,
11813  33, 416, 375, 3346, 3347, 617, 3868, 933, 2460, 828,
11814  617, 3354, 588, 3291, 3357, 3358, 174, 3295, 3241, 617,
11815  632, 16, 17, 617, 2770, 632, 952, 545, 954, 16,
11816  17, 3374, 638, 617, 632, 16, 17, 631, 4150, 638,
11817  1628, 477, 617, 117, 617, 3388, 617, 631, 632, 68,
11818  3393, 3394, 3395, 3396, 574, 3300, 1539, 632, 984, 632,
11819  631, 632, 151, 229, 2810, 1843, 4100, 4179, 4102, 192,
11820  362, 367, 238, 171, 3256, 263, 155, 468, 598, 16,
11821  17, 16, 17, 617, 680, 1863, 468, 279, 231, 117,
11822  509, 16, 17, 225, 4255, 50, 372, 631, 632, 375,
11823  372, 302, 536, 375, 617, 16, 17, 181, 355, 1035,
11824  630, 530, 3060, 1039, 1903, 638, 358, 4132, 631, 632,
11825  1150, 206, 2932, 2932, 373, 559, 617, 264, 3060, 141,
11826  267, 2515, 2516, 355, 617, 1903, 441, 2816, 576, 558,
11827  631, 632, 1035, 2886, 1933, 117, 1039, 1073, 631, 632,
11828  120, 2967, 3782, 181, 2428, 2429, 752, 1187, 366, 16,
11829  17, 1087, 617, 23, 1729, 1933, 16, 17, 1896, 617,
11830  468, 617, 807, 2836, 263, 617, 631, 632, 1906, 366,
11831  359, 1909, 1910, 631, 632, 3692, 632, 3015, 1724, 631,
11832  3014, 3165, 2783, 631, 3286, 3169, 2480, 302, 3578, 357,
11833  16, 17, 638, 277, 1234, 2140, 16, 17, 16, 17,
11834  411, 1137, 378, 192, 617, 2499, 2185, 107, 16, 17,
11835  110, 120, 372, 2352, 1150, 375, 3758, 611, 617, 632,
11836  617, 151, 74, 2574, 1799, 134, 2574, 412, 1826, 630,
11837  617, 2262, 1737, 632, 617, 632, 438, 391, 630, 277,
11838  3060, 3060, 634, 2574, 3786, 632, 199, 319, 631, 1289,
11839  510, 1187, 16, 17, 16, 17, 1192, 3565, 3566, 302,
11840  2480, 1197, 247, 2437, 521, 2480, 413, 341, 517, 1774,
11841  403, 460, 2961, 258, 358, 486, 1212, 3330, 2268, 2269,
11842  372, 2501, 2098, 375, 2499, 372, 439, 11, 375, 521,
11843  424, 221, 190, 163, 1197, 277, 2098, 1233, 1234, 16,
11844  17, 16, 17, 372, 412, 98, 375, 1812, 1813, 4003,
11845  274, 372, 2891, 2371, 375, 468, 269, 632, 462, 2261,
11846  358, 4015, 630, 1828, 16, 17, 1739, 4081, 3718, 2271,
11847  632, 617, 638, 2627, 1270, 617, 1272, 372, 1274, 2633,
11848  375, 3248, 16, 17, 601, 374, 632, 1283, 16, 17,
11849  632, 4376, 539, 1289, 960, 377, 4527, 117, 16, 17,
11850  186, 2340, 1298, 1299, 16, 17, 461, 372, 486, 601,
11851  375, 1274, 336, 632, 3764, 372, 358, 357, 375, 631,
11852  12, 372, 16, 17, 375, 3856, 16, 17, 477, 354,
11853  650, 1327, 16, 17, 562, 613, 1299, 249, 122, 1335,
11854  2458, 586, 1338, 16, 17, 607, 539, 2627, 606, 318,
11855  578, 1347, 2627, 2633, 403, 117, 613, 3700, 2633, 1459,
11856  2458, 1357, 1358, 3170, 468, 372, 3455, 372, 375, 582,
11857  375, 1367, 1368, 1369, 1370, 1371, 1372, 372, 636, 123,
11858  375, 1377, 2800, 4083, 189, 4085, 1275, 1383, 1384, 545,
11859  1386, 372, 244, 1389, 375, 631, 12, 617, 1367, 1368,
11860  1369, 3694, 1371, 16, 17, 16, 17, 1370, 453, 1372,
11861  3159, 543, 632, 1409, 263, 1384, 468, 630, 586, 181,
11862  1389, 446, 189, 567, 179, 24, 384, 16, 17, 391,
11863  62, 468, 545, 2551, 3320, 16, 17, 569, 484, 341,
11864  3971, 3972, 12, 135, 51, 372, 1409, 606, 375, 439,
11865  398, 476, 372, 2551, 61, 375, 3342, 277, 3944, 217,
11866  473, 219, 364, 1459, 632, 617, 16, 17, 235, 567,
11867  617, 0, 57, 1362, 1470, 74, 118, 636, 202, 1475,
11868  632, 637, 1478, 1479, 517, 632, 372, 2941, 617, 375,
11869  539, 468, 372, 517, 372, 375, 617, 375, 253, 136,
11870  151, 16, 17, 632, 372, 136, 155, 375, 16, 17,
11871  565, 632, 1475, 16, 17, 277, 1479, 630, 24, 135,
11872  1516, 3922, 617, 247, 373, 567, 630, 485, 153, 16,
11873  17, 229, 388, 588, 580, 12, 280, 632, 358, 1535,
11874  238, 1537, 1538, 348, 1540, 1541, 21, 468, 372, 12,
11875  372, 375, 617, 375, 153, 16, 17, 1553, 33, 1555,
11876  617, 3015, 2410, 596, 416, 135, 617, 632, 1537, 1538,
11877  16, 17, 47, 172, 620, 632, 1465, 227, 630, 16,
11878  17, 632, 3875, 58, 59, 4035, 171, 4118, 4119, 549,
11879  175, 375, 552, 630, 236, 372, 358, 372, 375, 354,
11880  375, 186, 227, 16, 17, 4091, 373, 16, 17, 3416,
11881  617, 132, 617, 245, 16, 17, 16, 17, 16, 17,
11882  372, 3710, 617, 375, 4074, 632, 147, 632, 227, 155,
11883  123, 545, 1628, 1629, 2836, 41, 617, 632, 372, 225,
11884  1740, 375, 16, 17, 372, 189, 636, 375, 20, 373,
11885  631, 202, 2932, 630, 372, 16, 17, 375, 135, 2265,
11886  372, 162, 269, 375, 250, 16, 17, 2672, 19, 3921,
11887  16, 17, 135, 2162, 468, 2766, 2836, 2908, 372, 539,
11888  378, 375, 372, 4214, 630, 375, 588, 2176, 372, 545,
11889  617, 375, 638, 1689, 331, 16, 17, 617, 4229, 372,
11890  331, 122, 375, 2821, 631, 355, 3060, 16, 17, 630,
11891  309, 631, 4243, 634, 24, 416, 630, 210, 350, 263,
11892  2209, 227, 638, 2821, 16, 17, 556, 133, 16, 17,
11893  355, 617, 317, 16, 17, 1731, 437, 617, 468, 617,
11894  1840, 1737, 17, 1739, 1740, 631, 476, 567, 206, 617,
11895  349, 631, 189, 631, 126, 1751, 355, 4171, 4172, 372,
11896  1756, 372, 375, 631, 375, 1761, 3971, 3972, 220, 4300,
11897  471, 3799, 3800, 16, 17, 189, 418, 3188, 1774, 3187,
11898  3060, 4312, 4313, 372, 202, 3060, 375, 280, 539, 2278,
11899  4274, 372, 250, 617, 375, 617, 1792, 17, 592, 593,
11900  1796, 206, 3220, 309, 77, 567, 79, 631, 225, 631,
11901  608, 12, 2418, 16, 17, 630, 1812, 1813, 1814, 1815,
11902  16, 17, 372, 638, 238, 375, 225, 412, 4359, 1792,
11903  1826, 3580, 1828, 1796, 632, 542, 630, 3804, 4369, 225,
11904  617, 4141, 617, 153, 1840, 250, 4146, 120, 4148, 355,
11905  536, 1814, 1815, 539, 631, 3494, 631, 372, 2416, 624,
11906  375, 1857, 592, 593, 372, 617, 631, 375, 220, 372,
11907  143, 521, 375, 200, 30, 4406, 1872, 4408, 510, 631,
11908  202, 523, 130, 617, 367, 372, 588, 4418, 375, 617,
11909  16, 17, 16, 17, 526, 39, 521, 631, 235, 617,
11910  630, 189, 46, 631, 4435, 617, 4437, 180, 4439, 16,
11911  17, 372, 1908, 631, 375, 4446, 136, 227, 46, 631,
11912  76, 1810, 521, 617, 1920, 4456, 372, 617, 3735, 375,
11913  632, 1927, 189, 617, 135, 372, 638, 631, 375, 4470,
11914  4471, 631, 81, 476, 617, 1908, 189, 631, 351, 352,
11915  593, 601, 287, 288, 3654, 4486, 4487, 3657, 631, 372,
11916  4491, 100, 375, 372, 1927, 280, 375, 631, 3275, 636,
11917  372, 2529, 372, 375, 372, 375, 601, 375, 1867, 306,
11918  307, 17, 614, 155, 311, 312, 623, 624, 625, 626,
11919  627, 628, 638, 149, 625, 626, 627, 628, 372, 309,
11920  2833, 375, 601, 583, 617, 103, 617, 632, 508, 210,
11921  369, 372, 3712, 2113, 375, 521, 2875, 2117, 631, 185,
11922  631, 372, 2881, 439, 375, 2424, 372, 588, 617, 375,
11923  630, 595, 588, 632, 598, 2031, 617, 2875, 58, 59,
11924  548, 6, 631, 2881, 3094, 355, 630, 632, 68, 2045,
11925  631, 372, 1941, 11, 375, 2155, 3287, 630, 2906, 630,
11926  2160, 1950, 1951, 372, 630, 6, 375, 617, 3118, 3119,
11927  631, 632, 1961, 1962, 1963, 1964, 632, 1966, 1967, 632,
11928  372, 631, 638, 375, 372, 2883, 545, 375, 630, 372,
11929  630, 3141, 375, 428, 429, 601, 631, 632, 57, 574,
11930  136, 638, 617, 2310, 166, 2312, 630, 4312, 4313, 617,
11931  630, 331, 630, 211, 617, 56, 631, 2113, 630, 594,
11932  595, 2117, 2521, 2119, 364, 718, 2122, 3245, 631, 372,
11933  617, 630, 375, 2129, 2130, 2131, 2132, 2772, 24, 2135,
11934  456, 631, 632, 588, 631, 630, 125, 740, 2547, 2548,
11935  423, 33, 12, 2122, 2254, 2571, 617, 630, 31, 2155,
11936  753, 754, 630, 24, 2160, 630, 2129, 2130, 2131, 372,
11937  631, 617, 375, 2380, 2381, 2382, 372, 59, 2836, 375,
11938  617, 3299, 2071, 630, 2284, 2074, 2075, 630, 2077, 631,
11939  632, 2080, 2081, 2082, 2083, 2084, 2085, 2086, 139, 95,
11940  2089, 3299, 2091, 630, 617, 630, 125, 630, 617, 631,
11941  632, 521, 171, 74, 3332, 617, 175, 617, 631, 617,
11942  74, 537, 631, 24, 221, 107, 542, 186, 110, 631,
11943  4017, 631, 491, 631, 3332, 630, 118, 4053, 4045, 4046,
11944  4047, 4048, 398, 617, 1775, 630, 372, 1778, 372, 375,
11945  1781, 375, 231, 2818, 970, 971, 617, 631, 2254, 479,
11946  480, 631, 632, 136, 420, 372, 617, 153, 375, 585,
11947  631, 617, 2761, 74, 4061, 135, 630, 4064, 4065, 4066,
11948  4067, 379, 630, 2279, 600, 631, 631, 632, 2284, 630,
11949  388, 601, 153, 48, 1010, 331, 617, 395, 454, 153,
11950  630, 502, 503, 274, 505, 4054, 507, 2303, 617, 48,
11951  631, 172, 231, 2309, 2310, 632, 2312, 630, 3315, 3316,
11952  3354, 522, 631, 3357, 3358, 617, 1049, 1050, 1051, 617,
11953  74, 630, 228, 4140, 617, 631, 632, 630, 1061, 631,
11954  3374, 227, 462, 2339, 630, 71, 2309, 2310, 631, 2312,
11955  210, 247, 3402, 631, 632, 576, 3700, 513, 317, 16,
11956  17, 630, 258, 631, 632, 238, 227, 2467, 2468, 1092,
11957  630, 172, 1095, 227, 617, 2371, 631, 632, 630, 2375,
11958  58, 59, 4169, 4170, 2380, 2381, 2382, 625, 3590, 262,
11959  3238, 4178, 490, 1116, 1117, 103, 2392, 1120, 2394, 631,
11960  632, 621, 622, 623, 624, 625, 626, 627, 628, 153,
11961  3528, 352, 631, 632, 617, 1138, 1139, 2380, 2381, 2382,
11962  2416, 617, 630, 309, 4173, 74, 227, 476, 631, 638,
11963  3528, 630, 2428, 2429, 638, 631, 3638, 3442, 630, 136,
11964  2540, 548, 4081, 479, 480, 341, 630, 95, 309, 631,
11965  632, 631, 632, 412, 162, 117, 631, 632, 331, 185,
11966  439, 343, 2458, 630, 117, 588, 589, 120, 591, 355,
11967  593, 2467, 2468, 630, 415, 630, 417, 630, 351, 352,
11968  630, 3935, 3936, 227, 192, 19, 161, 585, 349, 468,
11969  35, 617, 630, 617, 355, 349, 117, 631, 632, 225,
11970  630, 355, 263, 2392, 74, 631, 186, 631, 309, 630,
11971  617, 630, 2508, 631, 632, 631, 632, 2513, 88, 181,
11972  439, 2509, 2518, 2519, 250, 631, 632, 2523, 181, 2525,
11973  4052, 630, 2520, 145, 146, 2951, 3466, 12, 2526, 2535,
11974  630, 2537, 2538, 630, 2540, 2541, 630, 209, 349, 468,
11975  2546, 630, 425, 2549, 355, 2551, 209, 453, 631, 632,
11976  181, 95, 2550, 630, 2560, 110, 41, 2555, 422, 2985,
11977  631, 632, 117, 2561, 2562, 2571, 630, 2993, 227, 630,
11978  228, 2997, 2578, 2579, 630, 621, 622, 623, 624, 625,
11979  626, 627, 628, 74, 2590, 103, 217, 2560, 219, 247,
11980  631, 632, 484, 582, 630, 349, 479, 480, 631, 632,
11981  258, 355, 631, 632, 89, 277, 630, 151, 93, 492,
11982  630, 155, 631, 632, 277, 106, 522, 3043, 630, 174,
11983  631, 632, 630, 174, 331, 521, 181, 630, 2527, 2528,
11984  3129, 630, 502, 503, 504, 505, 506, 507, 631, 632,
11985  184, 630, 186, 631, 632, 630, 277, 630, 2654, 2655,
11986  521, 630, 522, 582, 209, 2554, 630, 521, 202, 630,
11987  552, 536, 153, 207, 61, 401, 25, 630, 422, 631,
11988  632, 630, 252, 191, 71, 631, 632, 221, 631, 632,
11989  630, 2654, 3181, 341, 228, 403, 358, 84, 580, 630,
11990  349, 235, 631, 632, 630, 358, 355, 631, 632, 631,
11991  632, 630, 4528, 247, 517, 601, 3274, 225, 572, 68,
11992  521, 631, 632, 72, 258, 74, 631, 632, 117, 263,
11993  161, 120, 277, 517, 2623, 3736, 3737, 358, 272, 635,
11994  601, 274, 117, 152, 225, 120, 632, 601, 621, 622,
11995  623, 624, 625, 626, 627, 628, 61, 631, 632, 329,
11996  631, 632, 631, 632, 632, 273, 71, 242, 12, 13,
11997  83, 120, 365, 422, 631, 632, 632, 521, 632, 84,
11998  631, 632, 479, 480, 354, 631, 632, 2783, 632, 3424,
11999  532, 2787, 181, 631, 3440, 3441, 151, 342, 185, 120,
12000  601, 631, 632, 2799, 191, 453, 181, 341, 353, 106,
12001  351, 352, 357, 358, 631, 632, 357, 637, 117, 6,
12002  209, 2817, 2818, 630, 4119, 2821, 105, 308, 572, 4,
12003  364, 539, 4171, 4172, 209, 497, 2799, 1560, 225, 373,
12004  2836, 632, 2838, 318, 414, 326, 388, 1124, 1125, 117,
12005  94, 117, 560, 467, 120, 600, 2852, 601, 3258, 3259,
12006  3509, 3510, 136, 250, 2964, 3746, 3747, 238, 349, 403,
12007  632, 385, 521, 3912, 522, 55, 431, 166, 106, 218,
12008  185, 125, 181, 632, 632, 638, 191, 68, 277, 115,
12009  3820, 12, 600, 605, 3452, 139, 3826, 631, 631, 135,
12010  19, 250, 277, 9, 632, 567, 381, 1630, 638, 631,
12011  209, 1634, 71, 181, 567, 181, 631, 631, 162, 453,
12012  225, 165, 638, 572, 621, 622, 623, 624, 625, 626,
12013  627, 628, 630, 4051, 178, 1658, 262, 638, 508, 632,
12014  3586, 209, 476, 209, 153, 250, 567, 2943, 632, 637,
12015  2946, 2947, 601, 4051, 274, 2951, 200, 521, 522, 274,
12016  274, 525, 526, 2852, 238, 529, 474, 531, 2964, 358,
12017  274, 2967, 48, 274, 274, 402, 95, 632, 277, 155,
12018  632, 225, 456, 358, 370, 536, 494, 231, 522, 2985,
12019  216, 3881, 3882, 632, 364, 2884, 2885, 2993, 2887, 364,
12020  545, 2997, 351, 352, 549, 4300, 269, 552, 357, 277,
12021  632, 277, 386, 632, 401, 364, 556, 562, 493, 632,
12022  556, 562, 567, 385, 12, 570, 185, 3023, 272, 537,
12023  3026, 539, 151, 632, 542, 3031, 155, 578, 155, 364,
12024  521, 3037, 576, 632, 68, 3041, 364, 3043, 632, 238,
12025  625, 241, 401, 587, 588, 534, 537, 331, 533, 358,
12026  176, 186, 3058, 3026, 632, 581, 225, 186, 3037, 577,
12027  489, 131, 606, 389, 608, 3071, 2965, 585, 623, 624,
12028  385, 136, 3078, 202, 169, 2974, 25, 26, 207, 364,
12029  358, 250, 358, 3089, 632, 321, 401, 631, 632, 325,
12030  631, 635, 636, 632, 155, 155, 332, 494, 155, 228,
12031  155, 4406, 155, 4408, 155, 3078, 235, 3752, 155, 58,
12032  59, 60, 155, 472, 155, 155, 155, 155, 247, 68,
12033  155, 632, 155, 155, 155, 74, 4254, 4027, 155, 258,
12034  4435, 4031, 155, 82, 263, 3791, 3792, 155, 3794, 3795,
12035  155, 155, 155, 272, 287, 288, 4254, 155, 155, 583,
12036  404, 3261, 612, 364, 408, 16, 17, 106, 364, 587,
12037  4003, 4101, 521, 192, 3063, 4470, 4471, 632, 567, 3175,
12038  424, 120, 4015, 238, 410, 124, 364, 3183, 432, 494,
12039  577, 631, 567, 189, 631, 136, 440, 631, 631, 631,
12040  625, 631, 631, 4093, 4094, 479, 480, 3613, 3614, 3767,
12041  631, 189, 3208, 630, 153, 3211, 3212, 3213, 3214, 136,
12042  3626, 632, 341, 624, 468, 631, 385, 3633, 577, 631,
12043  3226, 631, 25, 26, 631, 631, 631, 481, 482, 632,
12044  466, 805, 401, 576, 632, 364, 631, 631, 477, 3245,
12045  3246, 630, 3658, 3249, 373, 3661, 628, 3253, 3254, 3255,
12046  111, 112, 113, 114, 115, 3261, 630, 60, 567, 630,
12047  630, 3267, 577, 631, 545, 632, 331, 536, 3274, 3275,
12048  545, 74, 606, 545, 403, 33, 225, 531, 226, 82,
12049  4329, 528, 630, 232, 3183, 428, 429, 11, 630, 567,
12050  260, 567, 632, 3299, 638, 632, 189, 630, 630, 638,
12051  249, 411, 4160, 106, 3310, 632, 560, 186, 585, 95,
12052  631, 476, 46, 339, 3320, 632, 3322, 120, 638, 638,
12053  632, 124, 155, 156, 453, 508, 3332, 508, 582, 508,
12054  584, 508, 3338, 508, 3340, 467, 3342, 621, 622, 623,
12055  624, 625, 626, 627, 628, 3455, 3916, 476, 71, 385,
12056  153, 388, 213, 214, 215, 216, 499, 500, 501, 308,
12057  193, 385, 556, 385, 131, 248, 537, 603, 74, 385,
12058  128, 204, 4500, 4422, 248, 537, 131, 326, 46, 630,
12059  331, 385, 88, 619, 3283, 385, 4514, 630, 387, 385,
12060  385, 4519, 4500, 522, 385, 153, 4524, 273, 630, 157,
12061  4340, 4341, 631, 4343, 331, 638, 4514, 3997, 3414, 434,
12062  243, 4519, 588, 149, 479, 480, 4524, 631, 234, 234,
12063  638, 254, 225, 129, 631, 155, 631, 631, 631, 232,
12064  631, 380, 103, 3439, 3440, 3441, 194, 632, 3548, 388,
12065  632, 556, 228, 632, 631, 545, 249, 576, 281, 3455,
12066  4390, 631, 4392, 4393, 212, 613, 269, 46, 630, 588,
12067  321, 247, 323, 324, 325, 155, 630, 630, 35, 556,
12068  630, 332, 258, 155, 200, 189, 235, 606, 189, 608,
12069  95, 545, 545, 244, 416, 632, 358, 632, 155, 4134,
12070  155, 162, 155, 388, 247, 4132, 247, 322, 376, 4069,
12071  106, 106, 631, 632, 250, 308, 635, 636, 3407, 458,
12072  169, 372, 345, 250, 375, 638, 274, 3523, 630, 630,
12073  369, 192, 3528, 326, 202, 3635, 556, 4467, 479, 480,
12074  19, 3430, 449, 3539, 545, 385, 630, 4482, 630, 638,
12075  625, 630, 3548, 110, 236, 236, 252, 630, 630, 410,
12076  117, 631, 479, 480, 225, 341, 621, 622, 623, 624,
12077  625, 626, 627, 628, 54, 514, 515, 516, 364, 631,
12078  638, 638, 521, 63, 632, 631, 556, 380, 364, 631,
12079  3586, 556, 632, 73, 638, 388, 631, 631, 537, 3595,
12080  556, 540, 221, 385, 264, 85, 86, 87, 3604, 3597,
12081  3710, 370, 273, 631, 465, 466, 189, 174, 189, 189,
12082  631, 101, 631, 228, 181, 632, 238, 582, 630, 54,
12083  155, 631, 3595, 329, 121, 416, 247, 576, 63, 3635,
12084  632, 247, 247, 638, 631, 364, 250, 631, 73, 632,
12085  630, 250, 209, 258, 402, 351, 352, 632, 354, 608,
12086  85, 86, 87, 411, 632, 458, 3662, 630, 3557, 3769,
12087  631, 399, 364, 3669, 4522, 632, 101, 453, 426, 364,
12088  74, 622, 623, 624, 625, 626, 627, 628, 19, 631,
12089  364, 3687, 632, 632, 630, 364, 444, 491, 4256, 468,
12090  631, 630, 630, 630, 3700, 631, 623, 624, 625, 626,
12091  627, 628, 358, 46, 3710, 470, 631, 373, 414, 608,
12092  277, 514, 515, 516, 260, 631, 451, 272, 521, 11,
12093  416, 625, 142, 256, 631, 631, 341, 398, 189, 487,
12094  632, 202, 403, 478, 537, 390, 522, 540, 3637, 4376,
12095  155, 247, 603, 247, 632, 630, 120, 120, 630, 364,
12096  539, 397, 638, 630, 78, 486, 617, 618, 619, 517,
12097  138, 631, 463, 3769, 491, 631, 631, 4214, 632, 13,
12098  19, 631, 263, 576, 631, 342, 3782, 3676, 536, 631,
12099  631, 539, 4229, 631, 631, 3791, 3792, 33, 3794, 3795,
12100  357, 358, 33, 155, 631, 631, 4243, 631, 328, 6,
12101  252, 411, 508, 474, 11, 631, 13, 170, 15, 632,
12102  272, 200, 3922, 235, 4384, 632, 630, 179, 25, 26,
12103  631, 46, 12, 13, 207, 632, 638, 328, 155, 630,
12104  320, 193, 588, 630, 588, 630, 630, 630, 453, 4476,
12105  305, 631, 204, 630, 120, 630, 598, 337, 598, 56,
12106  94, 250, 250, 60, 61, 357, 33, 582, 358, 66,
12107  3866, 3867, 632, 631, 630, 4502, 537, 74, 328, 168,
12108  358, 542, 3878, 3772, 631, 82, 370, 539, 250, 592,
12109  4525, 125, 630, 588, 91, 320, 608, 235, 33, 560,
12110  588, 253, 254, 593, 3867, 139, 364, 353, 608, 106,
12111  632, 512, 337, 358, 94, 3911, 449, 522, 3914, 545,
12112  631, 631, 4359, 120, 585, 632, 3922, 124, 162, 281,
12113  545, 165, 4369, 527, 582, 132, 133, 545, 150, 600,
12114  605, 630, 139, 630, 178, 125, 630, 30, 3911, 186,
12115  147, 383, 370, 631, 151, 631, 153, 3953, 519, 139,
12116  639, 631, 547, 131, 630, 131, 200, 164, 448, 153,
12117  403, 70, 3968, 186, 605, 424, 30, 3973, 189, 61,
12118  631, 4418, 162, 370, 464, 165, 547, 184, 545, 61,
12119  632, 225, 549, 128, 631, 552, 348, 231, 178, 528,
12120  4437, 630, 4439, 14, 265, 562, 5, 364, 364, 4446,
12121  567, 235, 149, 570, 636, 370, 370, 129, 153, 4456,
12122  200, 138, 157, 630, 46, 46, 223, 148, 225, 46,
12123  46, 46, 630, 630, 582, 232, 125, 605, 272, 464,
12124  149, 220, 119, 636, 524, 225, 279, 639, 400, 4486,
12125  4487, 231, 249, 144, 4491, 4051, 630, 46, 46, 194,
12126  46, 541, 52, 548, 138, 457, 623, 624, 459, 636,
12127  632, 358, 631, 149, 4174, 272, 548, 212, 632, 205,
12128  632, 636, 111, 112, 113, 114, 115, 4083, 218, 4085,
12129  631, 631, 272, 632, 52, 46, 149, 438, 186, 524,
12130  186, 186, 607, 221, 665, 548, 120, 358, 630, 670,
12131  188, 308, 3978, 632, 2291, 4111, 541, 476, 3416, 2093,
12132  3417, 2496, 648, 3685, 4135, 4008, 4319, 4016, 4320, 326,
12133  3687, 967, 3683, 330, 3865, 4502, 4464, 46, 576, 274,
12134  701, 1761, 1825, 2783, 4356, 3856, 3856, 3856, 3856, 3856,
12135  547, 2074, 2075, 4472, 2077, 3856, 717, 2080, 2081, 2082,
12136  2083, 2084, 2085, 2086, 3856, 3856, 2089, 4207, 2091, 4165,
12137  404, 368, 3856, 3856, 4274, 4356, 373, 3856, 4174, 4313,
12138  4233, 3856, 4232, 380, 213, 214, 215, 216, 385, 3856,
12139  424, 388, 1468, 3874, 1008, 2044, 2991, 2812, 432, 1472,
12140  761, 762, 763, 764, 3522, 2817, 440, 3226, 1286, 4165,
12141  4258, 3525, 4422, 774, 3912, 4337, 4384, 514, 1530, 2037,
12142  4069, 3433, 419, 3064, 404, 2655, 3342, 3320, 408, 2045,
12143  3365, 2581, 3365, 3398, 468, 4335, 433, 434, 435, 436,
12144  3818, 3596, 3646, 4256, 424, 3635, 3169, 481, 482, 2467,
12145  2739, 3166, 432, 3161, 4090, 11, 11, 4094, 4254, 1544,
12146  440, 458, 4093, 4019, 4031, 4027, 3878, 402, 2127, 2044,
12147  3826, 2574, 1423, 670, 579, 1419, 411, 3601, 4274, 4168,
12148  2366, 1526, 3321, 2799, 1814, 2332, 3221, 1479, 468, 2383,
12149  2247, 426, 321, 595, 323, 324, 325, 531, 3183, 865,
12150  2772, 481, 482, 332, 701, 2459, 1834, 3289, 2161, 444,
12151  2246, 4088, 3938, 1087, 3414, 4351, 2272, 514, 515, 516,
12152  717, 4352, 1061, 3332, 521, 3783, 560, 1438, 4453, 3769,
12153  2388, 1274, 2132, 1198, 3240, 953, 953, 1299, 2370, 4335,
12154  537, 2327, 3528, 540, 3239, 3299, 4254, 1553, 582, 584,
12155  584, 531, 487, 661, 1904, 4351, 4352, 575, 1905, 1750,
12156  3340, 1306, 953, 953, 1403, 4361, 563, 764, 4281, 3224,
12157  4449, 4420, 4368, 4347, 4524, 4519, 4265, 4266, 3638, 576,
12158  560, 410, 517, 3245, 1375, 1335, 2413, 3274, 574, 574,
12159  1686, 3275, 1860, 2406, 222, 2399, 850, 2405, 1796, 1322,
12160  1783, 1829, 582, 4043, 584, 1535, 3208, 4049, 569, 510,
12161  4510, 852, 510, 3998, -1, 3671, 648, -1, 648, 648,
12162  -1, -1, -1, -1, -1, -1, -1, -1, -1, 990,
12163  -1, -1, -1, -1, -1, -1, 465, 466, -1, 636,
12164  4436, -1, -1, -1, -1, 4441, -1, -1, -1, -1,
12165  -1, -1, -1, -1, 282, 283, 284, 285, 286, 287,
12166  288, 289, 290, 291, -1, 293, 294, 295, 296, 297,
12167  298, 299, 300, 301, -1, 303, 304, -1, -1, -1,
12168  4476, -1, -1, -1, 1045, 1046, -1, -1, -1, -1,
12169  -1, -1, -1, 1054, 1055, 1056, 1057, 1058, 1059, 1060,
12170  -1, -1, -1, -1, 4500, -1, 4502, 1068, 1069, -1,
12171  1071, 1072, -1, -1, 4510, 1076, 1077, -1, 4514, 1080,
12172  1081, 1082, 1083, 4519, 1085, 1086, -1, -1, 4524, -1,
12173  -1, -1, 1093, 1094, -1, 1096, 1097, 1098, 1099, 1100,
12174  -1, -1, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
12175  1111, 1112, 1113, -1, 1115, -1, -1, 1118, 1119, -1,
12176  -1, -1, 1123, -1, -1, -1, 1127, 1128, 1129, -1,
12177  -1, -1, -1, -1, 603, -1, -1, -1, -1, 1140,
12178  1141, 1142, -1, -1, -1, -1, -1, -1, 1149, 618,
12179  619, -1, -1, 990, -1, 1156, 1157, 1158, -1, 1160,
12180  428, 429, -1, -1, -1, -1, 1167, 1168, 1169, -1,
12181  1171, 1172, 1173, 1174, 1175, -1, 1177, 1178, 1179, 1180,
12182  1181, 1182, 1183, 1184, -1, -1, -1, 1188, 1189, -1,
12183  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12184  -1, -1, -1, -1, -1, -1, -1, -1, 1045, 1046,
12185  -1, -1, -1, -1, -1, -1, -1, 1054, 1055, -1,
12186  -1, 1058, 1059, 1060, -1, -1, -1, -1, -1, -1,
12187  -1, 1068, 1069, -1, 1071, 1072, -1, -1, -1, 1076,
12188  -1, -1, -1, 1080, 1081, 1082, 1083, -1, 1085, -1,
12189  -1, -1, -1, -1, -1, -1, 1093, 1094, -1, 1096,
12190  1097, -1, -1, -1, -1, -1, 1103, 1104, 1105, -1,
12191  -1, 1108, 1109, 1110, 1111, 1112, 1113, -1, 1115, -1,
12192  -1, 1118, 1119, -1, -1, -1, 1123, -1, -1, -1,
12193  1127, 1128, 1129, -1, -1, -1, -1, -1, -1, -1,
12194  -1, -1, -1, 1140, 1141, 1142, -1, -1, -1, -1,
12195  -1, -1, 1149, -1, -1, -1, -1, -1, -1, 1156,
12196  1157, 1158, -1, -1, 13, -1, 15, -1, -1, -1,
12197  -1, -1, -1, -1, 1335, -1, -1, -1, -1, -1,
12198  -1, 30, -1, -1, 1345, 34, -1, -1, -1, -1,
12199  -1, -1, 1189, -1, -1, -1, -1, -1, -1, 48,
12200  49, -1, 1363, -1, -1, -1, -1, 56, -1, -1,
12201  -1, 60, 61, -1, -1, -1, -1, -1, -1, -1,
12202  -1, -1, -1, -1, -1, -1, -1, 76, -1, -1,
12203  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12204  -1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
12205  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12206  -1, 13, -1, 15, -1, -1, -1, 116, -1, -1,
12207  -1, -1, -1, -1, -1, -1, 125, 126, 127, -1,
12208  -1, -1, 34, -1, -1, -1, -1, -1, -1, 138,
12209  139, -1, -1, -1, -1, -1, 48, 49, -1, -1,
12210  -1, -1, 151, -1, 56, -1, -1, -1, 60, 61,
12211  -1, -1, -1, -1, -1, -1, 165, -1, -1, -1,
12212  -1, -1, -1, -1, 76, -1, -1, -1, -1, -1,
12213  -1, -1, -1, -1, 183, -1, -1, -1, 1335, -1,
12214  -1, -1, 94, -1, -1, -1, -1, -1, 1345, 198,
12215  -1, 200, -1, -1, -1, -1, 205, -1, -1, 208,
12216  -1, -1, -1, -1, 116, -1, 1363, -1, -1, -1,
12217  -1, -1, -1, 125, 126, 127, -1, -1, -1, -1,
12218  -1, -1, 231, -1, 233, -1, 138, 139, -1, -1,
12219  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12220  -1, -1, 251, -1, -1, 1566, -1, -1, -1, -1,
12221  -1, -1, -1, 165, -1, -1, -1, -1, -1, 268,
12222  -1, -1, -1, 272, -1, -1, -1, -1, -1, -1,
12223  -1, 183, -1, -1, -1, -1, -1, -1, -1, -1,
12224  -1, -1, -1, -1, -1, -1, 198, -1, 200, -1,
12225  -1, -1, -1, 205, -1, -1, 208, -1, -1, -1,
12226  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12227  -1, -1, -1, -1, -1, -1, -1, -1, -1, 231,
12228  -1, 233, -1, -1, -1, -1, -1, -1, -1, -1,
12229  -1, -1, -1, -1, -1, -1, -1, -1, -1, 251,
12230  -1, -1, -1, 1664, 1665, 1666, -1, -1, -1, -1,
12231  -1, -1, -1, -1, -1, -1, 268, -1, 1679, 368,
12232  272, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12233  -1, -1, -1, -1, -1, -1, 385, -1, -1, -1,
12234  -1, -1, -1, -1, 1705, -1, -1, -1, -1, 398,
12235  1711, -1, -1, 1714, -1, 1716, -1, -1, -1, -1,
12236  409, 1722, -1, 1724, 1725, -1, -1, -1, -1, 1566,
12237  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12238  -1, -1, 431, -1, -1, 434, -1, 436, -1, -1,
12239  439, -1, -1, 442, 443, -1, -1, -1, -1, -1,
12240  -1, -1, -1, 452, -1, 454, -1, -1, -1, -1,
12241  -1, -1, -1, 462, -1, -1, 368, -1, -1, 468,
12242  -1, -1, -1, -1, -1, -1, -1, 476, -1, -1,
12243  -1, -1, 481, 385, 483, -1, -1, -1, -1, -1,
12244  -1, -1, -1, -1, -1, -1, 398, -1, 1809, -1,
12245  -1, -1, -1, -1, -1, -1, -1, 409, -1, -1,
12246  -1, -1, -1, -1, 513, -1, -1, 1664, 1665, 1666,
12247  -1, 520, -1, -1, -1, -1, -1, -1, -1, 431,
12248  -1, -1, 434, -1, 436, -1, -1, 439, -1, -1,
12249  442, 443, -1, -1, -1, -1, -1, 1858, -1, -1,
12250  452, -1, 454, -1, -1, 1866, -1, -1, 1705, -1,
12251  462, -1, -1, -1, 563, -1, 468, 1714, -1, 1716,
12252  -1, -1, -1, -1, 476, -1, 575, -1, -1, 481,
12253  579, 483, -1, 582, -1, -1, -1, -1, 587, -1,
12254  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12255  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12256  -1, 513, -1, -1, -1, -1, 615, -1, 520, -1,
12257  -1, -1, 25, 26, -1, -1, -1, -1, -1, -1,
12258  -1, 630, -1, -1, -1, -1, -1, -1, -1, -1,
12259  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12260  -1, -1, -1, -1, -1, 58, 59, 60, -1, -1,
12261  -1, 563, 1809, -1, -1, 68, -1, -1, -1, -1,
12262  -1, 74, -1, 575, -1, -1, -1, 579, -1, 82,
12263  582, -1, -1, -1, -1, 587, -1, -1, -1, -1,
12264  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12265  -1, -1, -1, 106, -1, -1, -1, -1, -1, -1,
12266  -1, 1858, -1, 615, -1, -1, -1, 120, -1, 1866,
12267  -1, 124, -1, -1, -1, -1, -1, -1, 630, -1,
12268  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12269  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12270  153, -1, -1, -1, -1, -1, -1, 2068, -1, -1,
12271  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12272  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12273  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12274  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12275  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12276  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12277  -1, -1, 225, -1, -1, -1, -1, -1, -1, 232,
12278  2141, -1, -1, -1, 2145, -1, -1, -1, -1, 2150,
12279  2151, -1, -1, -1, -1, -1, 249, -1, 2159, -1,
12280  -1, 2162, -1, -1, -1, -1, -1, -1, -1, 262,
12281  -1, 2172, 2173, -1, 2175, 2176, -1, 2178, 2179, 2180,
12282  2181, 2182, -1, -1, 2185, -1, -1, -1, -1, -1,
12283  -1, -1, -1, 2194, -1, -1, -1, -1, -1, -1,
12284  2201, -1, 2203, -1, 2205, 2206, -1, 2208, 2209, -1,
12285  -1, -1, 2213, 2214, 2215, 308, -1, -1, 2219, 2220,
12286  2221, -1, 2223, -1, 2225, -1, 2227, -1, 2229, -1,
12287  2231, 2068, -1, 326, -1, 2236, -1, -1, -1, -1,
12288  -1, 32, 33, -1, -1, -1, -1, 38, -1, 40,
12289  -1, 42, 43, -1, 2255, -1, -1, -1, -1, -1,
12290  -1, 2262, -1, -1, 2265, -1, -1, -1, 59, -1,
12291  2271, -1, -1, 2274, -1, -1, -1, 2278, -1, -1,
12292  -1, -1, -1, -1, -1, -1, -1, 380, -1, -1,
12293  -1, -1, -1, -1, -1, 388, -1, -1, -1, -1,
12294  -1, -1, -1, -1, 2141, -1, -1, -1, 2145, -1,
12295  -1, -1, -1, 2150, 2151, -1, 107, -1, -1, 110,
12296  -1, -1, 2159, -1, -1, -1, -1, 118, -1, -1,
12297  -1, -1, -1, -1, -1, 2172, 2173, -1, 2175, 2340,
12298  -1, 2178, 2179, 2180, 2181, 2182, 137, -1, -1, -1,
12299  -1, -1, -1, -1, -1, -1, -1, 2194, -1, -1,
12300  -1, -1, -1, 154, 2201, 458, 2203, -1, 2205, 2206,
12301  -1, 2208, -1, -1, -1, -1, 2213, 2214, 2215, -1,
12302  -1, -1, 2219, 2220, 2221, -1, 2223, -1, 2225, 180,
12303  2227, 182, 2229, -1, 2231, -1, -1, -1, -1, 2236,
12304  -1, -1, -1, -1, 195, 196, -1, -1, -1, -1,
12305  -1, -1, -1, 2414, -1, -1, -1, 2418, 2255, -1,
12306  -1, 514, 515, 516, -1, -1, -1, -1, 521, -1,
12307  -1, -1, -1, -1, 2271, -1, -1, 2274, -1, -1,
12308  -1, -1, -1, -1, 537, 236, -1, 540, -1, -1,
12309  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12310  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12311  -1, -1, -1, -1, -1, 266, -1, -1, 2479, -1,
12312  -1, -1, -1, 576, 275, 276, -1, 278, -1, -1,
12313  -1, -1, -1, -1, -1, -1, 2497, 2498, -1, -1,
12314  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12315  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12316  -1, -1, -1, 314, 315, 316, -1, -1, -1, -1,
12317  -1, 6, -1, -1, -1, -1, 11, 630, 13, -1,
12318  -1, -1, 333, 334, 335, -1, -1, -1, -1, 340,
12319  25, 26, 343, -1, -1, -1, -1, -1, -1, -1,
12320  -1, -1, -1, -1, -1, -1, -1, -1, -1, 360,
12321  361, -1, -1, -1, -1, -1, -1, 2414, -1, -1,
12322  -1, 56, -1, -1, -1, 60, -1, -1, -1, -1,
12323  -1, -1, -1, -1, -1, -1, -1, -1, -1, 74,
12324  -1, -1, 393, 394, -1, -1, -1, 82, -1, -1,
12325  -1, -1, -1, -1, -1, -1, 91, -1, -1, -1,
12326  -1, -1, -1, -1, 2625, 2626, -1, 418, -1, -1,
12327  -1, 106, -1, -1, -1, -1, -1, -1, -1, -1,
12328  -1, -1, -1, -1, -1, 120, -1, -1, -1, 124,
12329  -1, -1, -1, -1, -1, -1, -1, 132, -1, -1,
12330  -1, -1, -1, -1, 139, -1, -1, -1, -1, -1,
12331  -1, -1, 147, -1, -1, 2676, -1, -1, 153, 2680,
12332  -1, 472, -1, -1, -1, 476, -1, -1, -1, -1,
12333  -1, -1, -1, -1, -1, -1, -1, 488, -1, 2700,
12334  2701, -1, -1, -1, -1, -1, -1, -1, -1, 184,
12335  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12336  2721, -1, -1, -1, -1, -1, -1, -1, -1, 2730,
12337  -1, 2732, -1, 2734, -1, -1, -1, -1, -1, -1,
12338  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12339  225, -1, -1, -1, -1, 546, -1, 232, 549, -1,
12340  2761, 552, 553, 554, 555, 2766, -1, -1, -1, -1,
12341  -1, -1, -1, -1, 249, -1, -1, -1, -1, -1,
12342  -1, 33, 34, -1, -1, -1, -1, -1, -1, -1,
12343  -1, -1, -1, -1, 2795, -1, -1, 272, -1, -1,
12344  -1, -1, -1, 594, 595, -1, 58, 59, -1, -1,
12345  -1, -1, -1, -1, -1, -1, -1, 69, -1, -1,
12346  -1, -1, -1, -1, -1, -1, -1, -1, 619, -1,
12347  -1, -1, -1, 308, -1, -1, -1, 25, 26, 2676,
12348  92, -1, 94, 2680, -1, -1, -1, -1, -1, -1,
12349  -1, 326, 104, -1, -1, 330, -1, -1, -1, -1,
12350  -1, -1, -1, 2700, 2701, -1, 2867, -1, -1, -1,
12351  58, 59, 60, -1, -1, -1, -1, -1, -1, -1,
12352  68, -1, -1, -1, 2721, -1, 74, -1, -1, -1,
12353  -1, -1, -1, 2730, 82, 2732, -1, 2734, 373, -1,
12354  152, 153, -1, -1, -1, 380, 158, -1, -1, 161,
12355  -1, -1, 2913, 388, -1, -1, -1, -1, 106, -1,
12356  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12357  -1, -1, 120, -1, -1, -1, 124, -1, 190, -1,
12358  192, -1, -1, -1, -1, -1, -1, 199, -1, 201,
12359  -1, -1, -1, -1, -1, -1, -1, -1, 2795, 434,
12360  -1, -1, -1, -1, -1, 153, -1, -1, -1, -1,
12361  -1, -1, 224, 225, -1, -1, -1, -1, -1, -1,
12362  -1, -1, -1, 458, -1, -1, -1, -1, -1, -1,
12363  -1, -1, -1, -1, -1, -1, 248, -1, -1, -1,
12364  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12365  -1, -1, -1, -1, -1, -1, -1, 269, -1, -1,
12366  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12367  2867, -1, -1, 3034, 3035, -1, -1, 225, -1, 514,
12368  515, 516, -1, -1, 232, -1, 521, -1, -1, -1,
12369  302, -1, -1, -1, -1, -1, -1, -1, 3059, -1,
12370  -1, 249, 537, -1, -1, 540, -1, -1, -1, -1,
12371  -1, -1, -1, -1, -1, -1, 2913, -1, -1, -1,
12372  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12373  -1, -1, -1, -1, -1, -1, 3097, -1, -1, -1,
12374  -1, 576, -1, -1, -1, -1, -1, -1, -1, -1,
12375  -1, -1, -1, -1, -1, 367, -1, -1, -1, -1,
12376  308, 3122, -1, -1, -1, 3126, 3127, -1, 3129, -1,
12377  -1, -1, -1, -1, -1, -1, -1, 3138, 326, -1,
12378  392, -1, 3143, -1, -1, 3146, -1, 3148, 3149, -1,
12379  402, 403, -1, -1, 406, 407, -1, -1, -1, -1,
12380  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12381  -1, -1, -1, -1, -1, 427, -1, -1, -1, -1,
12382  3181, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12383  -1, -1, 380, -1, -1, -1, -1, 3034, 3035, -1,
12384  388, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12385  -1, -1, -1, -1, 3215, -1, -1, -1, -1, -1,
12386  -1, 473, -1, -1, -1, -1, -1, -1, -1, -1,
12387  -1, -1, -1, -1, 486, -1, -1, -1, 3239, -1,
12388  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12389  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12390  3097, -1, -1, -1, -1, 517, -1, -1, -1, 521,
12391  458, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12392  -1, -1, -1, -1, -1, 3122, -1, 539, -1, 3126,
12393  3127, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12394  3301, 3138, -1, -1, -1, -1, 3143, -1, 3309, 3146,
12395  -1, 3148, 3149, -1, -1, -1, -1, -1, -1, -1,
12396  -1, -1, -1, -1, -1, -1, 514, 515, 516, -1,
12397  -1, -1, -1, 521, -1, -1, -1, -1, -1, -1,
12398  -1, -1, -1, -1, 596, -1, -1, -1, -1, 537,
12399  602, -1, 540, -1, -1, -1, -1, -1, -1, -1,
12400  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12401  -1, -1, -1, -1, -1, -1, -1, -1, 3215, -1,
12402  -1, -1, -1, -1, -1, -1, -1, -1, 576, -1,
12403  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12404  -1, -1, 3239, -1, -1, -1, -1, -1, -1, -1,
12405  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12406  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12407  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12408  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12409  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12410  -1, -1, -1, -1, 3301, -1, -1, -1, -1, -1,
12411  -1, -1, 3309, -1, -1, -1, -1, -1, -1, -1,
12412  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12413  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12414  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12415  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12416  -1, -1, -1, -1, -1, -1, -1, -1, 3529, -1,
12417  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12418  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12419  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12420  -1, -1, -1, -1, -1, -1, -1, -1, 3569, 3570,
12421  -1, -1, -1, -1, -1, -1, -1, 3578, -1, -1,
12422  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12423  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12424  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12425  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12426  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12427  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12428  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12429  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12430  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12431  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12432  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12433  -1, -1, 3529, -1, -1, -1, -1, -1, -1, -1,
12434  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12435  -1, -1, -1, -1, -1, -1, -1, 3718, -1, -1,
12436  -1, 3722, -1, -1, -1, -1, -1, -1, -1, -1,
12437  -1, -1, 3569, 3570, -1, -1, -1, -1, -1, -1,
12438  -1, 3578, -1, -1, -1, -1, -1, -1, 3749, -1,
12439  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12440  -1, -1, -1, 3764, -1, -1, -1, -1, -1, -1,
12441  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12442  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12443  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12444  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12445  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12446  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12447  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12448  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12449  -1, -1, -1, -1, -1, 3856, -1, -1, -1, -1,
12450  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12451  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12452  -1, 3718, -1, -1, -1, 3722, -1, -1, -1, -1,
12453  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12454  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12455  -1, 3912, 3749, -1, -1, -1, -1, -1, -1, 3920,
12456  -1, -1, -1, -1, -1, -1, 3927, 3764, 3929, -1,
12457  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12458  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12459  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12460  -1, -1, -1, -1, 3965, -1, -1, -1, -1, -1,
12461  3971, 3972, -1, -1, -1, -1, -1, -1, -1, -1,
12462  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12463  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12464  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12465  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12466  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12467  -1, -1, -1, -1, 4035, -1, -1, -1, -1, -1,
12468  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12469  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12470  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12471  -1, -1, -1, 4074, -1, -1, -1, -1, -1, -1,
12472  -1, -1, -1, 3920, -1, -1, -1, -1, -1, -1,
12473  3927, -1, 3929, -1, -1, -1, -1, -1, -1, -1,
12474  -1, -1, -1, 4104, -1, 4106, -1, -1, -1, -1,
12475  -1, -1, -1, -1, -1, 4116, -1, 4118, 4119, -1,
12476  -1, -1, -1, -1, -1, -1, -1, -1, 3965, -1,
12477  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12478  -1, -1, -1, -1, 4145, -1, -1, -1, -1, -1,
12479  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12480  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12481  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12482  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12483  -1, -1, -1, -1, -1, -1, -1, -1, 4035, -1,
12484  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12485  -1, 4212, -1, 4214, -1, -1, -1, -1, -1, -1,
12486  -1, -1, -1, -1, -1, -1, -1, -1, 4229, 4230,
12487  -1, -1, -1, -1, -1, -1, -1, 4074, -1, -1,
12488  -1, -1, 4243, -1, -1, -1, -1, -1, -1, -1,
12489  -1, -1, -1, -1, 4255, -1, -1, -1, -1, -1,
12490  -1, -1, -1, -1, -1, -1, -1, 4104, -1, 4106,
12491  -1, -1, -1, -1, -1, -1, -1, -1, -1, 4116,
12492  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12493  -1, -1, -1, -1, -1, -1, -1, -1, 4299, 4300,
12494  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12495  -1, 4312, 4313, -1, -1, -1, -1, -1, -1, -1,
12496  -1, -1, -1, -1, -1, -1, -1, -1, 4329, -1,
12497  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12498  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12499  -1, -1, -1, -1, -1, -1, -1, -1, 4359, -1,
12500  -1, -1, -1, -1, -1, 4366, -1, -1, 4369, -1,
12501  -1, -1, -1, -1, -1, 4212, -1, -1, -1, -1,
12502  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12503  -1, -1, -1, 4230, -1, -1, -1, -1, 4399, -1,
12504  -1, -1, -1, -1, -1, 4406, -1, 4408, -1, -1,
12505  -1, -1, -1, -1, -1, -1, -1, 4418, 4255, -1,
12506  -1, 4422, -1, -1, -1, -1, -1, -1, -1, -1,
12507  -1, -1, -1, -1, 4435, -1, 4437, -1, 4439, -1,
12508  -1, -1, -1, -1, -1, 4446, -1, -1, -1, -1,
12509  -1, -1, -1, -1, -1, 4456, -1, -1, -1, -1,
12510  -1, -1, 4299, -1, -1, -1, -1, -1, -1, 4470,
12511  4471, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12512  -1, -1, -1, -1, -1, 4486, 4487, -1, -1, -1,
12513  4491, -1, -1, -1, -1, -1, 4497, -1, -1, -1,
12514  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12515  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12516  -1, -1, -1, -1, -1, -1, 4527, -1, -1, 4366,
12517  -1, -1, -1, -1, -1, -1, 5, -1, 7, 8,
12518  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
12519  -1, -1, 21, -1, 23, 24, 25, 26, 27, 28,
12520  -1, 30, 4399, -1, 33, 34, 35, 36, 37, 38,
12521  39, -1, 41, 42, 43, 44, 45, -1, 47, 48,
12522  -1, -1, 51, 52, 53, 54, 55, -1, 57, 58,
12523  59, 60, -1, 62, 63, 64, 65, 66, 67, -1,
12524  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
12525  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
12526  89, -1, 91, 92, 93, -1, -1, 96, 97, 98,
12527  99, -1, 101, 102, 103, -1, 105, 106, 107, 108,
12528  109, 110, -1, -1, -1, -1, 115, 116, 117, -1,
12529  -1, 120, 121, 122, -1, 124, -1, -1, -1, 128,
12530  4497, 130, 131, 132, 133, 134, -1, -1, -1, 138,
12531  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
12532  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
12533  4527, 160, 161, 162, 163, 164, 165, 166, -1, 168,
12534  169, 170, 171, 172, 173, 174, 175, 176, -1, 178,
12535  179, 180, 181, -1, 183, -1, -1, -1, 187, 188,
12536  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
12537  199, -1, 201, -1, 203, -1, 205, 206, -1, 208,
12538  209, -1, 211, 212, -1, -1, -1, 216, 217, 218,
12539  219, 220, -1, 222, 223, 224, -1, -1, 227, -1,
12540  -1, -1, 231, 232, 233, 234, -1, -1, 237, -1,
12541  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
12542  249, -1, -1, 252, 253, -1, 255, 256, -1, 258,
12543  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
12544  269, -1, 271, -1, 273, 274, -1, -1, 277, -1,
12545  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
12546  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
12547  299, 300, -1, 302, 303, 304, 305, 306, 307, 308,
12548  309, 310, 311, 312, -1, -1, -1, -1, 317, 318,
12549  319, 320, 321, 322, -1, -1, 325, 326, 327, 328,
12550  -1, 330, 331, 332, 333, 334, 335, 336, 337, 338,
12551  339, 340, -1, 342, 343, 344, -1, -1, 347, 348,
12552  349, 350, 351, 352, 353, 354, 355, -1, 357, 358,
12553  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
12554  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12555  379, 380, 381, 382, 383, 384, -1, 386, 387, 388,
12556  389, 390, 391, 392, 393, 394, 395, 396, -1, 398,
12557  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
12558  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
12559  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
12560  429, 430, -1, 432, 433, -1, 435, 436, 437, 438,
12561  439, 440, -1, 442, -1, 444, 445, -1, 447, 448,
12562  449, -1, 451, -1, 453, 454, 455, 456, 457, 458,
12563  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
12564  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
12565  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
12566  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
12567  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
12568  509, -1, -1, 512, 513, 514, 515, 516, 517, 518,
12569  519, 520, 521, -1, 523, 524, 525, 526, 527, 528,
12570  529, 530, 531, 532, 533, 534, 535, 536, 537, -1,
12571  -1, 540, 541, 542, 543, -1, 545, 546, 547, -1,
12572  549, 550, 551, 552, -1, -1, -1, -1, 557, 558,
12573  559, -1, 561, 562, 563, 564, 565, 566, 567, 568,
12574  569, 570, 571, 572, -1, 574, 575, -1, -1, 578,
12575  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
12576  589, 590, 591, 592, 593, -1, -1, 596, 597, -1,
12577  599, 600, 601, 602, 603, 604, -1, -1, -1, -1,
12578  -1, -1, 611, 612, -1, 614, 615, 616, -1, -1,
12579  619, -1, -1, -1, 623, 624, -1, -1, -1, -1,
12580  629, 630, -1, -1, 633, 634, -1, -1, 637, 638,
12581  5, -1, 7, 8, 9, 10, 11, 12, -1, 14,
12582  -1, -1, -1, 18, -1, -1, 21, -1, 23, 24,
12583  25, 26, 27, 28, -1, 30, -1, -1, 33, 34,
12584  35, 36, 37, 38, 39, -1, 41, 42, 43, -1,
12585  45, -1, 47, 48, -1, -1, 51, 52, 53, 54,
12586  55, -1, 57, 58, 59, 60, -1, 62, 63, 64,
12587  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
12588  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
12589  85, 86, 87, 88, 89, -1, 91, 92, 93, -1,
12590  -1, 96, 97, 98, 99, -1, 101, 102, 103, -1,
12591  105, 106, 107, 108, 109, 110, -1, -1, -1, -1,
12592  115, 116, 117, -1, -1, 120, 121, 122, -1, 124,
12593  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
12594  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
12595  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
12596  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
12597  165, 166, -1, 168, 169, 170, 171, 172, 173, 174,
12598  175, 176, -1, 178, 179, 180, 181, -1, 183, -1,
12599  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
12600  195, 196, 197, -1, 199, -1, 201, -1, 203, -1,
12601  205, 206, -1, 208, 209, -1, 211, 212, -1, -1,
12602  -1, 216, 217, 218, 219, 220, -1, 222, 223, 224,
12603  -1, -1, 227, -1, -1, -1, 231, 232, 233, 234,
12604  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
12605  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
12606  -1, 256, -1, 258, 259, 260, -1, -1, -1, -1,
12607  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
12608  -1, -1, 277, -1, -1, -1, -1, 282, -1, 284,
12609  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
12610  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
12611  305, 306, 307, 308, 309, 310, 311, 312, -1, -1,
12612  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
12613  325, 326, 327, 328, -1, 330, 331, 332, 333, 334,
12614  335, 336, 337, 338, 339, 340, -1, 342, 343, 344,
12615  -1, -1, 347, 348, 349, 350, 351, 352, 353, 354,
12616  355, -1, 357, 358, 359, -1, 361, 362, 363, 364,
12617  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
12618  -1, -1, -1, -1, 379, 380, 381, 382, 383, 384,
12619  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
12620  395, 396, -1, 398, 399, 400, -1, 402, -1, 404,
12621  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
12622  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
12623  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
12624  435, 436, 437, 438, 439, 440, -1, 442, -1, 444,
12625  445, -1, 447, 448, 449, -1, 451, -1, 453, 454,
12626  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
12627  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
12628  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
12629  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
12630  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
12631  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
12632  515, 516, 517, 518, 519, 520, 521, -1, 523, 524,
12633  525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
12634  535, 536, 537, -1, -1, 540, 541, 542, 543, -1,
12635  545, 546, 547, -1, 549, 550, 551, 552, -1, -1,
12636  -1, -1, -1, 558, 559, -1, 561, 562, 563, 564,
12637  565, 566, 567, 568, 569, 570, 571, 572, -1, 574,
12638  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
12639  585, 586, -1, -1, 589, 590, 591, 592, 593, -1,
12640  -1, 596, 597, -1, 599, 600, 601, 602, 603, 604,
12641  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
12642  615, 616, -1, -1, 619, -1, -1, -1, 623, 624,
12643  -1, -1, -1, -1, 629, 630, -1, -1, 633, 634,
12644  -1, -1, 637, 638, 5, -1, 7, 8, 9, 10,
12645  11, -1, -1, 14, -1, -1, -1, 18, -1, -1,
12646  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
12647  -1, -1, 33, 34, 35, 36, 37, 38, 39, -1,
12648  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
12649  51, 52, 53, 54, 55, -1, 57, 58, 59, 60,
12650  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
12651  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
12652  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
12653  91, 92, 93, -1, -1, 96, 97, 98, 99, -1,
12654  101, 102, 103, -1, 105, 106, 107, 108, 109, 110,
12655  -1, -1, -1, -1, 115, 116, 117, -1, -1, 120,
12656  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
12657  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
12658  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
12659  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
12660  161, 162, 163, 164, 165, 166, -1, 168, 169, 170,
12661  171, 172, 173, 174, 175, 176, -1, 178, 179, 180,
12662  181, -1, 183, -1, -1, -1, 187, 188, 189, 190,
12663  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
12664  201, -1, 203, -1, 205, 206, -1, 208, 209, -1,
12665  211, 212, -1, -1, -1, 216, 217, 218, 219, 220,
12666  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
12667  231, 232, 233, 234, -1, -1, 237, -1, -1, -1,
12668  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
12669  -1, 252, 253, -1, -1, 256, -1, 258, 259, 260,
12670  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
12671  271, -1, 273, 274, -1, -1, 277, -1, -1, -1,
12672  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
12673  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
12674  -1, 302, 303, 304, 305, 306, 307, 308, 309, 310,
12675  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
12676  321, 322, -1, -1, 325, 326, 327, 328, -1, 330,
12677  331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
12678  -1, 342, 343, 344, -1, -1, 347, 348, 349, 350,
12679  351, 352, 353, 354, 355, -1, 357, 358, 359, -1,
12680  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
12681  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
12682  381, 382, 383, 384, -1, 386, 387, 388, 389, 390,
12683  391, 392, 393, 394, 395, 396, -1, 398, 399, 400,
12684  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
12685  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
12686  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
12687  -1, 432, 433, -1, 435, 436, 437, 438, 439, 440,
12688  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
12689  451, -1, 453, 454, 455, 456, 457, 458, 459, 460,
12690  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
12691  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
12692  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
12693  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
12694  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
12695  -1, 512, 513, 514, 515, 516, 517, 518, 519, 520,
12696  521, -1, 523, 524, 525, 526, 527, 528, 529, 530,
12697  531, 532, 533, 534, 535, 536, 537, -1, -1, 540,
12698  541, 542, 543, -1, 545, 546, 547, -1, 549, 550,
12699  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
12700  561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
12701  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
12702  581, -1, 583, -1, 585, 586, -1, -1, 589, 590,
12703  591, 592, 593, -1, -1, 596, 597, -1, 599, 600,
12704  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
12705  611, 612, -1, 614, 615, 616, -1, -1, 619, -1,
12706  -1, -1, 623, 624, -1, -1, -1, -1, 629, 630,
12707  -1, -1, 633, 634, -1, -1, 637, 638, 5, -1,
12708  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
12709  -1, 18, -1, -1, 21, -1, 23, 24, 25, 26,
12710  27, 28, -1, 30, -1, -1, 33, 34, 35, 36,
12711  37, 38, 39, -1, 41, 42, 43, -1, 45, -1,
12712  47, 48, -1, -1, 51, 52, 53, 54, 55, -1,
12713  57, 58, 59, 60, -1, 62, 63, 64, 65, 66,
12714  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
12715  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
12716  87, 88, 89, -1, 91, 92, 93, -1, -1, 96,
12717  97, 98, 99, -1, 101, 102, 103, -1, 105, 106,
12718  107, 108, 109, 110, -1, -1, -1, -1, 115, 116,
12719  117, -1, -1, 120, 121, 122, -1, 124, -1, -1,
12720  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
12721  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
12722  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
12723  157, 158, -1, 160, 161, 162, 163, 164, 165, 166,
12724  -1, 168, 169, 170, 171, 172, 173, 174, 175, 176,
12725  -1, 178, 179, 180, 181, -1, 183, -1, -1, -1,
12726  187, 188, 189, 190, -1, 192, -1, 194, 195, 196,
12727  197, -1, 199, -1, 201, -1, 203, -1, 205, 206,
12728  -1, 208, 209, -1, 211, 212, -1, -1, -1, 216,
12729  217, 218, 219, 220, -1, 222, 223, 224, -1, -1,
12730  227, -1, -1, -1, 231, 232, 233, 234, -1, -1,
12731  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
12732  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
12733  -1, 258, 259, 260, -1, -1, -1, -1, -1, 266,
12734  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
12735  277, -1, -1, -1, -1, 282, -1, 284, 285, 286,
12736  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
12737  297, 298, 299, 300, -1, 302, 303, 304, 305, 306,
12738  307, 308, 309, 310, 311, 312, -1, -1, -1, -1,
12739  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
12740  327, 328, -1, 330, 331, 332, 333, 334, 335, 336,
12741  337, 338, 339, 340, -1, 342, 343, 344, -1, -1,
12742  347, 348, 349, 350, 351, 352, 353, 354, 355, -1,
12743  357, 358, 359, -1, 361, 362, 363, -1, 365, 366,
12744  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
12745  -1, -1, 379, 380, 381, 382, 383, 384, -1, 386,
12746  387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
12747  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
12748  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
12749  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
12750  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
12751  437, 438, 439, 440, -1, 442, -1, 444, 445, -1,
12752  447, 448, 449, -1, 451, -1, 453, 454, 455, 456,
12753  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
12754  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
12755  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
12756  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
12757  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
12758  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
12759  517, 518, 519, 520, 521, -1, 523, 524, 525, 526,
12760  527, 528, 529, 530, 531, 532, 533, 534, 535, 536,
12761  537, -1, -1, 540, 541, 542, 543, -1, 545, 546,
12762  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
12763  -1, 558, 559, -1, 561, 562, 563, 564, 565, 566,
12764  567, 568, 569, 570, 571, 572, -1, 574, 575, -1,
12765  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
12766  -1, -1, 589, 590, 591, 592, 593, -1, -1, 596,
12767  597, -1, 599, 600, 601, 602, 603, 604, -1, -1,
12768  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
12769  -1, -1, 619, -1, -1, -1, 623, 624, -1, -1,
12770  -1, -1, 629, 630, -1, -1, 633, 634, -1, -1,
12771  637, 638, 5, -1, 7, 8, 9, 10, 11, -1,
12772  -1, 14, -1, -1, -1, 18, -1, -1, 21, -1,
12773  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
12774  33, 34, 35, 36, 37, 38, 39, -1, 41, 42,
12775  43, -1, 45, -1, 47, 48, -1, -1, 51, 52,
12776  53, 54, 55, -1, 57, 58, 59, 60, -1, 62,
12777  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
12778  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
12779  83, -1, 85, 86, 87, 88, 89, -1, 91, 92,
12780  93, -1, -1, 96, 97, 98, 99, -1, 101, 102,
12781  103, -1, 105, 106, 107, 108, 109, 110, -1, -1,
12782  -1, -1, 115, 116, 117, -1, -1, 120, 121, 122,
12783  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
12784  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
12785  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
12786  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
12787  163, 164, 165, 166, -1, 168, 169, 170, 171, 172,
12788  173, 174, 175, 176, -1, 178, 179, 180, 181, -1,
12789  183, -1, -1, -1, 187, 188, 189, 190, -1, 192,
12790  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
12791  203, -1, 205, 206, -1, 208, 209, -1, 211, 212,
12792  -1, -1, -1, 216, 217, 218, 219, 220, -1, 222,
12793  223, 224, -1, -1, 227, -1, -1, -1, 231, 232,
12794  233, 234, -1, -1, 237, -1, -1, -1, 241, 242,
12795  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
12796  253, -1, -1, 256, -1, 258, 259, 260, -1, -1,
12797  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
12798  273, 274, -1, -1, 277, -1, -1, -1, -1, 282,
12799  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
12800  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
12801  303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
12802  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
12803  -1, -1, 325, 326, 327, 328, -1, 330, 331, 332,
12804  333, 334, 335, 336, 337, 338, 339, 340, -1, 342,
12805  343, 344, -1, -1, 347, 348, 349, 350, 351, 352,
12806  353, 354, 355, -1, 357, 358, 359, -1, 361, 362,
12807  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
12808  -1, -1, -1, -1, -1, -1, 379, 380, 381, 382,
12809  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
12810  393, 394, 395, 396, -1, 398, 399, 400, -1, 402,
12811  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
12812  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
12813  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
12814  433, -1, 435, 436, 437, 438, 439, 440, -1, 442,
12815  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
12816  453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
12817  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
12818  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
12819  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
12820  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
12821  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
12822  513, 514, 515, 516, 517, 518, 519, 520, 521, -1,
12823  523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
12824  533, 534, 535, 536, 537, -1, -1, 540, 541, 542,
12825  543, -1, 545, 546, 547, -1, 549, 550, 551, 552,
12826  -1, -1, -1, -1, -1, 558, 559, -1, 561, 562,
12827  563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
12828  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
12829  583, -1, 585, 586, -1, -1, 589, 590, 591, 592,
12830  593, -1, -1, 596, 597, -1, 599, 600, 601, 602,
12831  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
12832  -1, 614, 615, 616, -1, -1, 619, -1, -1, -1,
12833  623, 624, -1, -1, -1, -1, 629, 630, -1, -1,
12834  633, 634, -1, -1, 637, 638, 5, -1, 7, 8,
12835  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
12836  -1, -1, 21, -1, 23, 24, 25, 26, 27, 28,
12837  -1, 30, -1, -1, 33, 34, 35, 36, 37, 38,
12838  39, -1, 41, 42, 43, -1, 45, -1, 47, 48,
12839  -1, -1, 51, 52, 53, 54, 55, -1, 57, 58,
12840  59, 60, -1, 62, 63, 64, 65, 66, 67, -1,
12841  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
12842  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
12843  89, -1, 91, 92, 93, -1, -1, 96, 97, 98,
12844  99, -1, 101, 102, 103, -1, 105, 106, 107, 108,
12845  109, 110, -1, -1, -1, -1, 115, 116, 117, -1,
12846  -1, 120, 121, 122, -1, 124, -1, -1, -1, 128,
12847  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
12848  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
12849  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
12850  -1, 160, 161, 162, 163, 164, 165, 166, -1, 168,
12851  169, 170, 171, 172, 173, 174, 175, 176, -1, 178,
12852  179, 180, 181, -1, 183, -1, -1, -1, 187, 188,
12853  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
12854  199, -1, 201, -1, 203, -1, 205, 206, -1, 208,
12855  209, -1, 211, 212, -1, -1, -1, 216, 217, 218,
12856  219, 220, -1, 222, 223, 224, -1, -1, 227, -1,
12857  -1, -1, 231, 232, 233, 234, -1, -1, 237, -1,
12858  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
12859  249, -1, -1, 252, 253, -1, -1, 256, -1, 258,
12860  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
12861  269, -1, 271, -1, 273, 274, -1, -1, 277, -1,
12862  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
12863  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
12864  299, 300, -1, 302, 303, 304, 305, 306, 307, 308,
12865  309, 310, 311, 312, -1, -1, -1, -1, 317, 318,
12866  319, 320, 321, 322, -1, -1, 325, 326, 327, 328,
12867  -1, 330, 331, 332, 333, 334, 335, 336, 337, 338,
12868  339, 340, -1, 342, 343, 344, -1, -1, 347, 348,
12869  349, 350, 351, 352, 353, 354, 355, -1, 357, 358,
12870  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
12871  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
12872  379, 380, 381, 382, 383, 384, -1, 386, 387, 388,
12873  389, 390, 391, 392, 393, 394, 395, 396, -1, 398,
12874  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
12875  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
12876  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
12877  429, 430, -1, 432, 433, -1, 435, 436, 437, 438,
12878  439, 440, -1, 442, -1, 444, 445, -1, 447, 448,
12879  449, -1, 451, -1, 453, 454, 455, 456, 457, 458,
12880  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
12881  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
12882  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
12883  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
12884  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
12885  509, -1, -1, 512, 513, 514, 515, 516, 517, 518,
12886  519, 520, 521, -1, 523, 524, 525, 526, 527, 528,
12887  529, 530, 531, 532, 533, 534, 535, 536, 537, -1,
12888  -1, 540, 541, 542, 543, -1, 545, 546, 547, -1,
12889  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
12890  559, -1, 561, 562, 563, 564, 565, 566, 567, 568,
12891  569, 570, 571, 572, -1, 574, 575, -1, -1, 578,
12892  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
12893  589, 590, 591, 592, 593, -1, -1, 596, 597, -1,
12894  599, 600, 601, 602, 603, 604, -1, -1, -1, -1,
12895  -1, -1, 611, 612, -1, 614, 615, 616, -1, -1,
12896  619, -1, -1, -1, 623, 624, -1, -1, -1, -1,
12897  629, 630, -1, -1, 633, 634, -1, -1, 637, 638,
12898  5, -1, 7, 8, 9, 10, 11, -1, -1, 14,
12899  -1, -1, -1, 18, -1, -1, 21, -1, 23, 24,
12900  25, 26, 27, 28, -1, 30, -1, -1, 33, 34,
12901  35, 36, 37, 38, 39, -1, 41, 42, 43, -1,
12902  45, -1, 47, 48, -1, -1, 51, 52, 53, 54,
12903  55, -1, 57, 58, 59, 60, -1, 62, 63, 64,
12904  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
12905  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
12906  85, 86, 87, 88, 89, -1, 91, 92, 93, -1,
12907  -1, 96, 97, 98, 99, -1, 101, 102, 103, -1,
12908  105, 106, 107, 108, 109, 110, -1, -1, -1, -1,
12909  115, 116, 117, -1, -1, 120, 121, 122, -1, 124,
12910  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
12911  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
12912  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
12913  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
12914  165, 166, -1, 168, 169, 170, 171, 172, 173, 174,
12915  175, 176, -1, 178, 179, 180, 181, -1, 183, -1,
12916  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
12917  195, 196, 197, -1, 199, -1, 201, -1, 203, -1,
12918  205, 206, -1, 208, 209, -1, 211, 212, -1, -1,
12919  -1, 216, 217, 218, 219, 220, -1, 222, 223, 224,
12920  -1, -1, 227, -1, -1, -1, 231, 232, 233, 234,
12921  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
12922  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
12923  -1, 256, -1, 258, 259, 260, -1, -1, -1, -1,
12924  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
12925  -1, -1, 277, -1, -1, -1, -1, 282, -1, 284,
12926  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
12927  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
12928  305, 306, 307, 308, 309, 310, 311, 312, -1, -1,
12929  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
12930  325, 326, 327, 328, -1, 330, 331, 332, 333, 334,
12931  335, 336, 337, 338, 339, 340, -1, 342, 343, 344,
12932  -1, -1, 347, 348, 349, 350, 351, 352, 353, 354,
12933  355, -1, 357, 358, 359, -1, 361, 362, 363, -1,
12934  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
12935  -1, -1, -1, -1, 379, 380, 381, 382, 383, 384,
12936  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
12937  395, 396, -1, 398, 399, 400, -1, 402, -1, 404,
12938  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
12939  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
12940  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
12941  435, 436, 437, 438, 439, 440, -1, 442, -1, 444,
12942  445, -1, 447, 448, 449, -1, 451, -1, 453, 454,
12943  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
12944  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
12945  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
12946  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
12947  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
12948  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
12949  515, 516, 517, 518, 519, 520, 521, -1, 523, 524,
12950  525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
12951  535, 536, 537, -1, -1, 540, 541, 542, 543, -1,
12952  545, 546, 547, -1, 549, 550, 551, 552, -1, -1,
12953  -1, -1, -1, 558, 559, -1, 561, 562, 563, 564,
12954  565, 566, 567, 568, 569, 570, 571, 572, -1, 574,
12955  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
12956  585, 586, -1, -1, 589, 590, 591, 592, 593, -1,
12957  -1, 596, 597, -1, 599, 600, 601, 602, 603, 604,
12958  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
12959  615, 616, -1, -1, 619, -1, -1, -1, 623, 624,
12960  -1, -1, -1, -1, 629, 630, -1, -1, 633, 634,
12961  -1, -1, 637, 638, 5, -1, 7, 8, 9, 10,
12962  11, 12, -1, 14, -1, -1, -1, 18, -1, -1,
12963  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
12964  -1, -1, 33, 34, 35, 36, 37, 38, 39, -1,
12965  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
12966  51, 52, 53, 54, 55, -1, 57, 58, 59, 60,
12967  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
12968  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
12969  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
12970  91, 92, 93, -1, -1, 96, 97, 98, 99, -1,
12971  101, 102, 103, -1, 105, 106, 107, 108, 109, 110,
12972  -1, -1, -1, -1, 115, 116, 117, -1, -1, 120,
12973  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
12974  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
12975  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
12976  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
12977  161, 162, 163, 164, 165, 166, -1, 168, 169, 170,
12978  171, 172, 173, 174, 175, 176, -1, 178, 179, 180,
12979  181, -1, 183, -1, -1, -1, 187, 188, -1, 190,
12980  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
12981  201, -1, 203, -1, 205, 206, -1, 208, 209, -1,
12982  211, 212, -1, -1, -1, 216, 217, 218, 219, 220,
12983  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
12984  231, 232, 233, 234, -1, -1, 237, -1, -1, -1,
12985  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
12986  -1, 252, 253, -1, -1, 256, -1, 258, 259, 260,
12987  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
12988  271, -1, 273, 274, -1, -1, 277, -1, -1, -1,
12989  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
12990  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
12991  -1, 302, 303, 304, 305, 306, 307, 308, 309, 310,
12992  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
12993  321, 322, -1, -1, 325, 326, 327, 328, -1, 330,
12994  331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
12995  -1, 342, 343, 344, -1, -1, 347, 348, 349, 350,
12996  351, -1, 353, 354, 355, -1, 357, 358, 359, -1,
12997  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
12998  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
12999  381, 382, 383, 384, -1, 386, 387, 388, 389, 390,
13000  391, 392, 393, 394, 395, 396, -1, 398, 399, 400,
13001  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
13002  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
13003  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
13004  -1, 432, 433, -1, 435, 436, 437, 438, 439, 440,
13005  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
13006  451, -1, 453, 454, 455, 456, 457, 458, 459, 460,
13007  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
13008  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
13009  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
13010  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
13011  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
13012  -1, 512, 513, 514, 515, 516, 517, 518, 519, 520,
13013  521, -1, 523, 524, 525, 526, 527, 528, 529, 530,
13014  531, 532, 533, 534, 535, 536, 537, -1, -1, 540,
13015  541, 542, 543, -1, 545, 546, 547, -1, 549, 550,
13016  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
13017  561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
13018  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
13019  581, -1, 583, -1, 585, 586, -1, -1, 589, 590,
13020  591, 592, 593, -1, -1, 596, 597, -1, 599, 600,
13021  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
13022  611, 612, -1, 614, 615, 616, -1, -1, 619, -1,
13023  -1, -1, 623, 624, -1, -1, -1, -1, 629, 630,
13024  -1, -1, 633, 634, -1, -1, 637, 638, 5, -1,
13025  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
13026  -1, 18, -1, -1, 21, -1, 23, 24, 25, 26,
13027  27, 28, -1, 30, -1, -1, 33, 34, 35, 36,
13028  37, 38, 39, -1, 41, 42, 43, -1, 45, -1,
13029  47, 48, -1, -1, 51, 52, 53, 54, 55, -1,
13030  57, 58, 59, 60, -1, 62, 63, 64, 65, 66,
13031  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
13032  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
13033  87, 88, 89, -1, 91, 92, 93, -1, -1, 96,
13034  97, 98, 99, -1, 101, 102, 103, -1, 105, 106,
13035  107, 108, 109, 110, -1, -1, -1, -1, 115, 116,
13036  117, -1, -1, 120, 121, 122, -1, 124, -1, -1,
13037  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
13038  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
13039  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
13040  157, 158, -1, 160, 161, 162, 163, 164, 165, 166,
13041  -1, 168, 169, 170, 171, 172, 173, 174, 175, 176,
13042  -1, 178, 179, 180, 181, -1, 183, -1, -1, -1,
13043  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
13044  197, -1, 199, -1, 201, -1, 203, -1, 205, 206,
13045  -1, 208, 209, -1, 211, 212, -1, -1, -1, 216,
13046  217, 218, 219, 220, -1, 222, 223, 224, -1, -1,
13047  227, -1, -1, -1, 231, 232, 233, 234, -1, -1,
13048  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
13049  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
13050  -1, 258, 259, 260, -1, -1, -1, -1, -1, 266,
13051  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
13052  277, -1, -1, -1, -1, 282, -1, 284, 285, 286,
13053  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
13054  297, 298, 299, 300, -1, 302, 303, 304, 305, 306,
13055  307, 308, 309, 310, 311, 312, -1, -1, -1, -1,
13056  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
13057  327, 328, -1, 330, 331, 332, 333, 334, 335, 336,
13058  337, 338, 339, 340, -1, 342, 343, 344, -1, -1,
13059  347, 348, 349, 350, 351, 352, 353, 354, 355, -1,
13060  357, 358, 359, -1, 361, 362, 363, -1, 365, 366,
13061  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
13062  -1, -1, 379, 380, 381, 382, 383, 384, -1, 386,
13063  387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
13064  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
13065  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
13066  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
13067  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
13068  437, 438, 439, 440, -1, 442, -1, 444, 445, -1,
13069  447, 448, 449, -1, 451, -1, 453, 454, 455, 456,
13070  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
13071  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
13072  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
13073  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
13074  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
13075  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
13076  517, 518, 519, 520, 521, -1, 523, 524, 525, 526,
13077  527, 528, 529, 530, 531, 532, 533, 534, 535, 536,
13078  537, -1, -1, 540, 541, 542, 543, -1, 545, 546,
13079  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
13080  -1, 558, 559, -1, 561, 562, 563, 564, 565, 566,
13081  567, 568, 569, 570, 571, 572, -1, 574, 575, -1,
13082  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
13083  -1, -1, 589, 590, 591, 592, 593, -1, -1, 596,
13084  597, -1, 599, 600, 601, 602, 603, 604, -1, -1,
13085  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
13086  -1, -1, 619, -1, -1, -1, 623, 624, -1, -1,
13087  -1, -1, 629, 630, -1, -1, 633, 634, -1, -1,
13088  637, 638, 5, -1, 7, 8, 9, 10, 11, -1,
13089  -1, 14, -1, -1, -1, 18, -1, -1, 21, -1,
13090  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
13091  33, 34, 35, 36, 37, 38, 39, -1, 41, 42,
13092  43, -1, 45, -1, 47, 48, -1, -1, 51, 52,
13093  53, 54, 55, -1, 57, 58, 59, 60, -1, 62,
13094  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
13095  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
13096  83, -1, 85, 86, 87, 88, 89, -1, 91, 92,
13097  93, -1, -1, 96, 97, 98, 99, -1, 101, 102,
13098  103, -1, 105, 106, 107, 108, 109, 110, -1, -1,
13099  -1, -1, 115, 116, 117, -1, -1, 120, 121, 122,
13100  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
13101  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
13102  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
13103  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
13104  163, 164, 165, 166, -1, 168, 169, 170, 171, 172,
13105  173, 174, 175, 176, -1, 178, 179, 180, 181, -1,
13106  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
13107  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
13108  203, -1, 205, 206, -1, 208, 209, -1, 211, 212,
13109  -1, -1, -1, 216, 217, 218, 219, 220, -1, 222,
13110  223, 224, -1, -1, 227, -1, -1, -1, 231, 232,
13111  233, 234, -1, -1, 237, -1, -1, -1, 241, 242,
13112  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
13113  253, -1, -1, 256, -1, 258, 259, 260, -1, -1,
13114  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
13115  273, 274, -1, -1, 277, -1, -1, -1, -1, 282,
13116  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
13117  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
13118  303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
13119  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
13120  -1, -1, 325, 326, 327, 328, -1, 330, 331, 332,
13121  333, 334, 335, 336, 337, 338, 339, 340, -1, 342,
13122  343, 344, -1, -1, 347, 348, 349, 350, 351, 352,
13123  353, 354, 355, -1, 357, 358, 359, -1, 361, 362,
13124  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
13125  -1, -1, -1, -1, -1, -1, 379, 380, 381, 382,
13126  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
13127  393, 394, 395, 396, -1, 398, 399, 400, -1, 402,
13128  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
13129  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
13130  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
13131  433, -1, 435, 436, 437, 438, 439, 440, -1, 442,
13132  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
13133  453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
13134  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
13135  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
13136  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
13137  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
13138  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
13139  513, 514, 515, 516, 517, 518, 519, 520, 521, -1,
13140  523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
13141  533, 534, 535, 536, 537, -1, -1, 540, 541, 542,
13142  543, -1, 545, 546, 547, -1, 549, 550, 551, 552,
13143  -1, -1, -1, -1, -1, 558, 559, -1, 561, 562,
13144  563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
13145  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
13146  583, -1, 585, 586, -1, -1, 589, 590, 591, 592,
13147  593, -1, -1, 596, 597, -1, 599, 600, 601, 602,
13148  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
13149  -1, 614, 615, 616, -1, -1, 619, -1, -1, -1,
13150  623, 624, -1, -1, -1, -1, 629, 630, -1, -1,
13151  633, 634, -1, -1, 637, 638, 5, -1, 7, 8,
13152  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
13153  -1, -1, 21, -1, 23, 24, 25, 26, 27, 28,
13154  -1, 30, -1, -1, 33, 34, 35, 36, 37, 38,
13155  39, -1, 41, 42, 43, -1, 45, -1, 47, 48,
13156  -1, -1, 51, 52, 53, 54, 55, -1, 57, 58,
13157  59, 60, -1, 62, 63, 64, 65, 66, 67, -1,
13158  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
13159  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
13160  89, -1, 91, 92, 93, -1, -1, 96, 97, 98,
13161  99, -1, 101, 102, 103, -1, 105, 106, 107, 108,
13162  109, 110, -1, -1, -1, -1, 115, 116, 117, -1,
13163  -1, 120, 121, 122, -1, 124, -1, -1, -1, 128,
13164  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
13165  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
13166  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
13167  -1, 160, 161, 162, 163, 164, 165, 166, -1, 168,
13168  169, 170, 171, 172, 173, 174, 175, 176, -1, 178,
13169  179, 180, 181, -1, 183, -1, -1, -1, 187, 188,
13170  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
13171  199, -1, 201, -1, 203, -1, 205, 206, -1, 208,
13172  209, -1, 211, 212, -1, -1, -1, 216, 217, 218,
13173  219, 220, -1, 222, 223, 224, -1, -1, 227, -1,
13174  -1, -1, 231, 232, 233, 234, -1, -1, 237, -1,
13175  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
13176  249, -1, -1, 252, 253, -1, -1, 256, -1, 258,
13177  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
13178  269, -1, 271, -1, 273, 274, -1, -1, 277, -1,
13179  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
13180  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
13181  299, 300, -1, 302, 303, 304, 305, 306, 307, 308,
13182  309, 310, 311, 312, -1, -1, -1, -1, 317, 318,
13183  319, 320, 321, 322, -1, -1, 325, 326, 327, 328,
13184  -1, 330, 331, 332, 333, 334, 335, 336, 337, 338,
13185  339, 340, -1, 342, 343, 344, -1, -1, 347, 348,
13186  349, 350, 351, 352, 353, 354, 355, -1, 357, 358,
13187  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
13188  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
13189  379, 380, 381, 382, 383, 384, -1, 386, 387, 388,
13190  389, 390, 391, 392, 393, 394, 395, 396, -1, 398,
13191  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
13192  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
13193  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
13194  429, 430, -1, 432, 433, -1, 435, 436, 437, 438,
13195  439, 440, -1, 442, -1, 444, 445, -1, 447, 448,
13196  449, -1, 451, -1, 453, 454, 455, 456, 457, 458,
13197  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
13198  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
13199  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
13200  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
13201  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
13202  509, -1, -1, 512, 513, 514, 515, 516, 517, 518,
13203  519, 520, 521, -1, 523, 524, 525, 526, 527, 528,
13204  529, 530, 531, 532, 533, 534, 535, 536, 537, -1,
13205  -1, 540, 541, 542, 543, -1, 545, 546, 547, -1,
13206  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
13207  559, -1, 561, 562, 563, 564, 565, 566, 567, 568,
13208  569, 570, 571, 572, -1, 574, 575, -1, -1, 578,
13209  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
13210  589, 590, 591, 592, 593, -1, -1, 596, 597, -1,
13211  599, 600, 601, 602, 603, 604, -1, -1, -1, -1,
13212  -1, -1, 611, 612, -1, 614, 615, 616, -1, -1,
13213  619, -1, -1, -1, 623, 624, -1, -1, -1, -1,
13214  629, 630, -1, -1, 633, 634, -1, -1, 637, 638,
13215  5, -1, 7, 8, 9, 10, 11, -1, -1, 14,
13216  -1, -1, -1, 18, -1, -1, 21, -1, 23, 24,
13217  25, 26, 27, 28, -1, 30, -1, -1, 33, 34,
13218  35, 36, 37, 38, 39, -1, 41, 42, 43, -1,
13219  45, -1, 47, 48, -1, -1, 51, 52, 53, 54,
13220  55, -1, 57, 58, 59, 60, -1, 62, 63, 64,
13221  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
13222  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
13223  85, 86, 87, 88, 89, -1, 91, 92, 93, -1,
13224  -1, 96, 97, 98, 99, -1, 101, 102, 103, -1,
13225  105, 106, 107, 108, 109, 110, -1, -1, -1, -1,
13226  115, 116, 117, -1, -1, 120, 121, 122, -1, 124,
13227  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
13228  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
13229  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
13230  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
13231  165, 166, -1, 168, 169, 170, 171, 172, 173, 174,
13232  175, 176, -1, 178, 179, 180, 181, -1, 183, -1,
13233  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
13234  195, 196, 197, -1, 199, -1, 201, -1, 203, -1,
13235  205, 206, -1, 208, 209, -1, 211, 212, -1, -1,
13236  -1, 216, 217, 218, 219, 220, -1, 222, 223, 224,
13237  -1, -1, 227, -1, -1, -1, 231, 232, 233, 234,
13238  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
13239  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
13240  -1, 256, -1, 258, 259, 260, -1, -1, -1, -1,
13241  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
13242  -1, -1, 277, -1, -1, -1, -1, 282, -1, 284,
13243  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
13244  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
13245  305, 306, 307, 308, 309, 310, 311, 312, 313, -1,
13246  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
13247  325, 326, 327, 328, -1, 330, 331, 332, 333, 334,
13248  335, 336, 337, 338, 339, 340, -1, 342, 343, 344,
13249  -1, -1, 347, 348, 349, 350, 351, -1, 353, 354,
13250  355, -1, 357, 358, 359, -1, 361, 362, 363, -1,
13251  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
13252  -1, -1, -1, -1, 379, 380, 381, 382, 383, 384,
13253  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
13254  395, 396, -1, 398, 399, 400, -1, 402, -1, 404,
13255  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
13256  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
13257  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
13258  435, 436, 437, 438, 439, 440, -1, 442, -1, 444,
13259  445, -1, 447, 448, 449, -1, 451, -1, 453, 454,
13260  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
13261  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
13262  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
13263  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
13264  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
13265  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
13266  515, 516, 517, 518, 519, 520, 521, -1, 523, 524,
13267  525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
13268  535, 536, 537, -1, -1, 540, 541, 542, 543, -1,
13269  545, 546, 547, -1, 549, 550, 551, 552, -1, -1,
13270  -1, -1, -1, 558, 559, -1, 561, 562, 563, 564,
13271  565, 566, 567, 568, 569, 570, 571, 572, -1, 574,
13272  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
13273  585, 586, -1, -1, 589, 590, 591, 592, 593, -1,
13274  -1, 596, 597, -1, 599, 600, 601, 602, 603, 604,
13275  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
13276  615, 616, -1, -1, 619, -1, -1, -1, 623, 624,
13277  -1, -1, -1, -1, 629, 630, -1, -1, 633, 634,
13278  -1, -1, 637, 638, 5, -1, 7, 8, 9, 10,
13279  11, -1, -1, 14, -1, -1, -1, 18, -1, -1,
13280  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
13281  -1, -1, 33, 34, 35, 36, 37, 38, 39, -1,
13282  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
13283  51, 52, 53, 54, 55, -1, 57, 58, 59, 60,
13284  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
13285  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
13286  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
13287  91, 92, 93, -1, -1, 96, 97, 98, 99, -1,
13288  101, 102, 103, -1, 105, 106, 107, 108, 109, 110,
13289  -1, -1, -1, -1, 115, 116, 117, -1, -1, 120,
13290  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
13291  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
13292  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
13293  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
13294  161, 162, 163, 164, 165, 166, -1, 168, 169, 170,
13295  171, 172, 173, 174, 175, 176, -1, 178, 179, 180,
13296  181, -1, 183, -1, -1, -1, 187, 188, -1, 190,
13297  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
13298  201, -1, 203, -1, 205, 206, -1, 208, 209, -1,
13299  211, 212, -1, -1, -1, 216, 217, 218, 219, 220,
13300  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
13301  231, 232, 233, 234, -1, -1, 237, -1, -1, -1,
13302  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
13303  -1, 252, 253, -1, -1, 256, -1, 258, 259, 260,
13304  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
13305  271, -1, 273, 274, -1, -1, 277, -1, -1, -1,
13306  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
13307  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
13308  -1, 302, 303, 304, 305, 306, 307, 308, 309, 310,
13309  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
13310  321, 322, -1, -1, 325, 326, 327, 328, -1, 330,
13311  331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
13312  -1, 342, 343, 344, -1, -1, 347, 348, 349, 350,
13313  351, -1, 353, 354, 355, -1, 357, 358, 359, -1,
13314  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
13315  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
13316  381, 382, 383, 384, -1, 386, 387, 388, 389, 390,
13317  391, 392, 393, 394, 395, 396, -1, 398, 399, 400,
13318  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
13319  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
13320  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
13321  -1, 432, 433, -1, 435, 436, 437, 438, 439, 440,
13322  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
13323  451, -1, 453, 454, 455, 456, 457, 458, 459, 460,
13324  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
13325  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
13326  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
13327  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
13328  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
13329  -1, 512, 513, 514, 515, 516, 517, 518, 519, 520,
13330  521, -1, 523, 524, 525, 526, 527, 528, 529, 530,
13331  531, 532, 533, 534, 535, 536, 537, -1, -1, 540,
13332  541, 542, 543, -1, 545, 546, 547, -1, 549, 550,
13333  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
13334  561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
13335  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
13336  581, -1, 583, -1, 585, 586, -1, -1, 589, 590,
13337  591, 592, 593, -1, -1, 596, 597, -1, 599, 600,
13338  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
13339  611, 612, -1, 614, 615, 616, -1, -1, 619, -1,
13340  -1, -1, 623, 624, -1, -1, -1, -1, 629, 630,
13341  -1, -1, 633, 634, -1, -1, 637, 638, 5, -1,
13342  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
13343  -1, 18, -1, -1, 21, -1, 23, 24, 25, 26,
13344  27, 28, -1, 30, -1, -1, 33, 34, 35, 36,
13345  37, 38, 39, -1, 41, 42, 43, -1, 45, -1,
13346  47, 48, -1, -1, 51, 52, 53, 54, 55, -1,
13347  57, 58, 59, 60, -1, 62, 63, 64, 65, 66,
13348  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
13349  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
13350  87, 88, 89, -1, 91, 92, 93, -1, -1, 96,
13351  97, 98, 99, -1, 101, 102, 103, -1, 105, 106,
13352  107, 108, 109, 110, -1, -1, -1, -1, 115, 116,
13353  117, -1, -1, 120, 121, 122, -1, 124, -1, -1,
13354  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
13355  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
13356  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
13357  157, 158, -1, 160, 161, 162, 163, 164, 165, 166,
13358  -1, 168, 169, 170, 171, 172, 173, 174, 175, 176,
13359  -1, 178, 179, 180, 181, -1, 183, -1, -1, -1,
13360  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
13361  197, -1, 199, -1, 201, -1, 203, -1, 205, 206,
13362  -1, 208, 209, -1, 211, 212, -1, -1, -1, 216,
13363  217, 218, 219, 220, -1, 222, 223, 224, -1, -1,
13364  227, -1, -1, -1, 231, 232, 233, 234, -1, -1,
13365  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
13366  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
13367  -1, 258, 259, 260, -1, -1, -1, -1, -1, 266,
13368  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
13369  277, -1, -1, -1, -1, 282, -1, 284, 285, 286,
13370  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
13371  297, 298, 299, 300, -1, 302, 303, 304, 305, 306,
13372  307, 308, 309, 310, 311, 312, -1, -1, -1, -1,
13373  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
13374  327, 328, -1, 330, 331, 332, 333, 334, 335, 336,
13375  337, 338, 339, 340, -1, 342, 343, 344, -1, -1,
13376  347, 348, 349, 350, 351, -1, 353, 354, 355, -1,
13377  357, 358, 359, -1, 361, 362, 363, -1, 365, 366,
13378  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
13379  -1, -1, 379, 380, 381, 382, 383, 384, -1, 386,
13380  387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
13381  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
13382  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
13383  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
13384  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
13385  437, 438, 439, 440, -1, 442, -1, 444, 445, -1,
13386  447, 448, 449, -1, 451, -1, 453, 454, 455, 456,
13387  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
13388  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
13389  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
13390  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
13391  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
13392  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
13393  517, 518, 519, 520, 521, -1, 523, 524, 525, 526,
13394  527, 528, 529, 530, 531, 532, 533, 534, 535, 536,
13395  537, -1, -1, 540, 541, 542, 543, -1, 545, 546,
13396  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
13397  -1, 558, 559, -1, 561, 562, 563, 564, 565, 566,
13398  567, 568, 569, 570, 571, 572, -1, 574, 575, -1,
13399  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
13400  -1, -1, 589, 590, 591, 592, 593, -1, -1, 596,
13401  597, -1, 599, 600, 601, 602, 603, 604, -1, -1,
13402  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
13403  -1, -1, 619, -1, -1, -1, 623, 624, -1, -1,
13404  -1, -1, 629, 630, -1, -1, 633, 634, -1, -1,
13405  637, 638, 5, -1, 7, 8, 9, 10, 11, -1,
13406  -1, 14, -1, -1, -1, 18, -1, -1, 21, -1,
13407  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
13408  33, 34, 35, 36, 37, 38, 39, -1, 41, 42,
13409  43, -1, 45, -1, 47, 48, -1, -1, 51, 52,
13410  53, 54, 55, -1, 57, 58, 59, 60, -1, 62,
13411  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
13412  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
13413  83, -1, 85, 86, 87, 88, 89, -1, 91, 92,
13414  93, -1, -1, 96, 97, 98, 99, -1, 101, 102,
13415  103, -1, 105, 106, 107, 108, 109, 110, -1, -1,
13416  -1, -1, 115, 116, 117, -1, -1, 120, 121, 122,
13417  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
13418  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
13419  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
13420  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
13421  163, 164, 165, 166, -1, 168, 169, 170, 171, 172,
13422  173, 174, 175, 176, -1, 178, 179, 180, 181, -1,
13423  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
13424  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
13425  203, -1, 205, 206, -1, 208, 209, -1, 211, 212,
13426  -1, -1, -1, 216, 217, 218, 219, 220, -1, 222,
13427  223, 224, -1, -1, 227, -1, -1, -1, 231, 232,
13428  233, 234, -1, -1, 237, -1, -1, -1, 241, 242,
13429  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
13430  253, -1, -1, 256, -1, 258, 259, 260, -1, -1,
13431  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
13432  273, 274, -1, -1, 277, -1, -1, -1, -1, 282,
13433  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
13434  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
13435  303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
13436  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
13437  -1, -1, 325, 326, 327, 328, -1, 330, 331, 332,
13438  333, 334, 335, 336, 337, 338, 339, 340, -1, 342,
13439  343, 344, -1, -1, 347, 348, 349, 350, 351, -1,
13440  353, 354, 355, -1, 357, 358, 359, -1, 361, 362,
13441  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
13442  -1, -1, -1, -1, -1, -1, 379, 380, 381, 382,
13443  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
13444  393, 394, 395, 396, -1, 398, 399, 400, -1, 402,
13445  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
13446  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
13447  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
13448  433, -1, 435, 436, 437, 438, 439, 440, -1, 442,
13449  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
13450  453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
13451  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
13452  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
13453  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
13454  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
13455  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
13456  513, 514, 515, 516, 517, 518, 519, 520, 521, -1,
13457  523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
13458  533, 534, 535, 536, 537, -1, -1, 540, 541, 542,
13459  543, -1, 545, 546, 547, -1, 549, 550, 551, 552,
13460  -1, -1, -1, -1, -1, 558, 559, -1, 561, 562,
13461  563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
13462  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
13463  583, -1, 585, 586, -1, -1, 589, 590, 591, 592,
13464  593, -1, -1, 596, 597, -1, 599, 600, 601, 602,
13465  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
13466  -1, 614, 615, 616, -1, -1, 619, -1, -1, -1,
13467  623, 624, -1, -1, -1, -1, 629, 630, -1, -1,
13468  633, 634, -1, -1, 637, 638, 5, -1, 7, 8,
13469  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
13470  -1, -1, 21, -1, 23, 24, 25, 26, 27, 28,
13471  -1, 30, -1, -1, -1, 34, 35, -1, -1, 38,
13472  -1, -1, 41, 42, 43, -1, 45, -1, 47, 48,
13473  -1, -1, 51, -1, -1, 54, 55, -1, 57, 58,
13474  -1, 60, -1, 62, 63, 64, 65, 66, 67, -1,
13475  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
13476  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
13477  89, -1, -1, -1, 93, -1, -1, 96, -1, 98,
13478  -1, -1, 101, -1, -1, -1, 105, 106, 107, -1,
13479  -1, 110, -1, -1, -1, -1, 115, 116, 117, -1,
13480  -1, -1, 121, 122, -1, 124, -1, -1, -1, 128,
13481  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
13482  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
13483  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
13484  -1, 160, 161, 162, 163, 164, 165, -1, -1, 168,
13485  169, 170, 171, 172, -1, 174, 175, 176, -1, 178,
13486  179, 180, 181, -1, 183, -1, -1, -1, 187, 188,
13487  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
13488  199, -1, 201, -1, -1, -1, 205, 206, -1, 208,
13489  209, -1, 211, 212, -1, -1, -1, 216, 217, 218,
13490  219, -1, -1, 222, 223, 224, -1, -1, 227, -1,
13491  -1, -1, -1, 232, 233, -1, -1, -1, 237, -1,
13492  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
13493  249, -1, -1, 252, 253, -1, -1, 256, -1, -1,
13494  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
13495  269, -1, 271, -1, 273, 274, -1, -1, 277, -1,
13496  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
13497  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
13498  299, 300, -1, 302, 303, 304, -1, 306, 307, 308,
13499  309, -1, 311, 312, -1, -1, -1, -1, 317, 318,
13500  319, 320, 321, 322, -1, -1, 325, 326, -1, 328,
13501  -1, 330, -1, 332, 333, 334, 335, 336, 337, 338,
13502  339, 340, -1, 342, 343, 344, -1, -1, 347, 348,
13503  349, 350, -1, -1, -1, 354, 355, -1, 357, 358,
13504  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
13505  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
13506  379, 380, 381, -1, 383, 384, -1, 386, 387, 388,
13507  389, 390, 391, 392, 393, 394, 395, -1, -1, 398,
13508  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
13509  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
13510  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
13511  429, 430, -1, 432, 433, -1, 435, 436, 437, -1,
13512  -1, 440, -1, 442, -1, 444, 445, -1, 447, 448,
13513  449, -1, 451, -1, -1, 454, 455, 456, 457, 458,
13514  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
13515  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
13516  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
13517  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
13518  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
13519  509, -1, -1, 512, 513, 514, 515, 516, 517, -1,
13520  -1, 520, 521, -1, 523, 524, 525, 526, 527, 528,
13521  -1, -1, 531, 532, 533, 534, -1, 536, 537, -1,
13522  -1, 540, 541, 542, 543, -1, 545, 546, 547, -1,
13523  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
13524  559, -1, -1, 562, 563, 564, 565, 566, 567, 568,
13525  569, 570, 571, 572, -1, 574, 575, -1, -1, 578,
13526  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
13527  -1, -1, -1, -1, 593, -1, -1, 596, -1, -1,
13528  -1, 600, 601, 602, 603, 604, -1, -1, -1, -1,
13529  -1, -1, 611, 612, -1, 614, 615, 616, -1, -1,
13530  619, -1, -1, -1, 5, -1, 7, 8, 9, 10,
13531  11, -1, -1, 14, -1, -1, -1, 18, 637, 638,
13532  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
13533  -1, -1, -1, 34, -1, -1, -1, 38, -1, -1,
13534  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
13535  51, -1, -1, 54, 55, -1, 57, 58, -1, 60,
13536  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
13537  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
13538  -1, 82, 83, 84, 85, 86, 87, 88, 89, -1,
13539  -1, -1, 93, -1, -1, 96, -1, 98, -1, -1,
13540  101, -1, -1, -1, 105, 106, 107, -1, -1, 110,
13541  -1, -1, -1, -1, 115, 116, -1, -1, -1, -1,
13542  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
13543  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
13544  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
13545  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
13546  161, 162, 163, 164, 165, -1, -1, 168, 169, 170,
13547  171, 172, -1, -1, 175, 176, -1, 178, 179, 180,
13548  -1, -1, 183, -1, -1, -1, 187, 188, -1, 190,
13549  191, 192, -1, 194, 195, 196, 197, -1, 199, -1,
13550  201, -1, -1, -1, 205, 206, -1, 208, -1, -1,
13551  211, 212, -1, -1, -1, 216, 217, 218, 219, -1,
13552  -1, 222, 223, 224, 225, -1, 227, -1, -1, -1,
13553  -1, 232, 233, -1, -1, -1, 237, -1, -1, -1,
13554  241, 242, -1, 244, 245, -1, -1, -1, 249, 250,
13555  -1, 252, 253, -1, -1, 256, -1, -1, 259, 260,
13556  -1, 262, -1, -1, -1, 266, 267, -1, 269, -1,
13557  271, -1, 273, 274, -1, -1, -1, -1, -1, -1,
13558  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
13559  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
13560  -1, 302, 303, 304, -1, 306, 307, 308, 309, -1,
13561  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
13562  321, 322, -1, -1, 325, 326, -1, 328, -1, 330,
13563  -1, 332, 333, 334, 335, 336, 337, 338, 339, 340,
13564  -1, -1, 343, 344, -1, -1, 347, 348, 349, 350,
13565  -1, -1, -1, 354, 355, -1, -1, -1, 359, -1,
13566  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
13567  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
13568  381, -1, 383, 384, 385, 386, 387, 388, 389, 390,
13569  391, 392, 393, 394, 395, -1, -1, 398, 399, 400,
13570  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
13571  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
13572  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
13573  -1, 432, 433, -1, 435, 436, 437, -1, -1, 440,
13574  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
13575  451, -1, -1, 454, 455, 456, 457, 458, 459, 460,
13576  461, 462, 463, 464, -1, 466, 467, 468, -1, -1,
13577  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
13578  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
13579  491, 492, 493, 494, -1, -1, -1, -1, 499, 500,
13580  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
13581  -1, 512, 513, 514, 515, 516, 517, -1, -1, 520,
13582  521, -1, 523, 524, 525, 526, 527, 528, -1, -1,
13583  531, 532, 533, 534, -1, 536, 537, -1, -1, 540,
13584  541, 542, 543, -1, -1, 546, 547, -1, 549, 550,
13585  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
13586  -1, -1, 563, 564, 565, 566, -1, 568, 569, -1,
13587  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
13588  581, -1, 583, -1, 585, 586, -1, -1, -1, -1,
13589  -1, -1, 593, -1, -1, 596, -1, -1, -1, 600,
13590  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
13591  611, 612, -1, 614, 615, 616, -1, -1, 619, -1,
13592  5, -1, 7, 8, 9, 10, 11, -1, -1, 14,
13593  -1, -1, -1, 18, -1, -1, 21, 638, 23, 24,
13594  25, 26, 27, 28, -1, 30, -1, -1, -1, 34,
13595  -1, -1, -1, 38, -1, -1, 41, 42, 43, -1,
13596  45, -1, 47, 48, -1, -1, 51, -1, -1, 54,
13597  55, -1, 57, 58, -1, 60, -1, 62, 63, 64,
13598  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
13599  75, 76, 77, 78, 79, 80, -1, 82, 83, 84,
13600  85, 86, 87, 88, 89, -1, -1, -1, 93, -1,
13601  -1, 96, -1, 98, -1, -1, 101, -1, -1, -1,
13602  105, 106, 107, -1, -1, 110, -1, -1, -1, -1,
13603  115, 116, -1, -1, -1, -1, 121, 122, -1, 124,
13604  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
13605  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
13606  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
13607  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
13608  165, -1, -1, 168, 169, 170, 171, 172, -1, -1,
13609  175, 176, -1, 178, 179, 180, -1, -1, 183, -1,
13610  -1, -1, 187, 188, -1, 190, 191, 192, -1, 194,
13611  195, 196, 197, -1, 199, -1, 201, -1, -1, -1,
13612  205, 206, -1, 208, -1, -1, 211, 212, -1, -1,
13613  -1, 216, 217, 218, 219, -1, -1, 222, 223, 224,
13614  225, -1, 227, -1, -1, -1, -1, 232, 233, -1,
13615  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
13616  245, -1, -1, -1, 249, 250, -1, 252, 253, -1,
13617  -1, 256, -1, -1, 259, 260, -1, -1, -1, -1,
13618  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
13619  -1, -1, -1, -1, -1, -1, -1, 282, -1, 284,
13620  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
13621  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
13622  -1, 306, 307, 308, 309, -1, 311, 312, -1, -1,
13623  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
13624  325, 326, -1, 328, -1, 330, -1, 332, 333, 334,
13625  335, 336, 337, 338, 339, 340, -1, -1, 343, 344,
13626  -1, -1, 347, 348, 349, 350, -1, -1, -1, 354,
13627  355, -1, -1, -1, 359, -1, 361, 362, 363, -1,
13628  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
13629  -1, -1, -1, -1, 379, 380, 381, -1, 383, 384,
13630  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
13631  395, -1, -1, 398, 399, 400, -1, 402, -1, 404,
13632  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
13633  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
13634  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
13635  435, 436, 437, -1, -1, 440, -1, 442, -1, 444,
13636  445, -1, 447, 448, 449, -1, 451, -1, -1, 454,
13637  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
13638  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
13639  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
13640  485, 486, 487, -1, 489, 490, 491, 492, 493, 494,
13641  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
13642  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
13643  515, 516, 517, -1, -1, 520, 521, -1, 523, 524,
13644  525, 526, 527, 528, -1, -1, 531, 532, 533, 534,
13645  -1, 536, 537, -1, -1, 540, 541, 542, 543, -1,
13646  -1, 546, 547, -1, 549, 550, 551, 552, -1, -1,
13647  -1, -1, -1, 558, 559, -1, -1, -1, 563, 564,
13648  565, 566, -1, 568, 569, -1, 571, 572, -1, 574,
13649  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
13650  585, 586, -1, -1, -1, -1, -1, -1, 593, -1,
13651  -1, 596, -1, -1, -1, 600, 601, 602, 603, 604,
13652  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
13653  615, 616, -1, -1, 619, -1, 5, -1, 7, 8,
13654  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
13655  -1, -1, 21, 638, 23, 24, 25, 26, 27, 28,
13656  -1, 30, -1, -1, -1, 34, -1, -1, -1, 38,
13657  -1, -1, 41, 42, 43, -1, 45, -1, 47, 48,
13658  -1, -1, 51, -1, -1, 54, 55, -1, 57, 58,
13659  -1, 60, -1, 62, 63, 64, 65, 66, 67, -1,
13660  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
13661  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
13662  89, -1, -1, -1, 93, -1, -1, 96, -1, 98,
13663  -1, -1, 101, -1, -1, -1, 105, 106, 107, -1,
13664  -1, 110, -1, -1, -1, -1, 115, 116, -1, -1,
13665  -1, -1, 121, 122, -1, 124, -1, -1, -1, 128,
13666  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
13667  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
13668  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
13669  -1, 160, 161, 162, 163, 164, 165, -1, -1, 168,
13670  169, 170, 171, 172, -1, -1, 175, 176, -1, 178,
13671  179, 180, -1, -1, 183, -1, -1, -1, 187, 188,
13672  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
13673  199, -1, 201, -1, -1, -1, 205, 206, -1, 208,
13674  -1, -1, 211, 212, -1, -1, -1, 216, 217, 218,
13675  219, -1, -1, 222, 223, 224, -1, -1, 227, -1,
13676  -1, -1, -1, 232, 233, -1, -1, -1, 237, -1,
13677  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
13678  249, -1, -1, 252, 253, -1, -1, 256, -1, -1,
13679  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
13680  269, -1, 271, -1, 273, 274, -1, -1, -1, -1,
13681  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
13682  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
13683  299, 300, -1, 302, 303, 304, -1, 306, 307, 308,
13684  309, -1, 311, 312, -1, -1, -1, -1, 317, 318,
13685  319, 320, 321, 322, -1, -1, 325, 326, -1, 328,
13686  -1, 330, -1, 332, 333, 334, 335, 336, 337, 338,
13687  339, 340, -1, -1, 343, 344, -1, -1, 347, 348,
13688  349, 350, -1, -1, -1, 354, 355, -1, -1, -1,
13689  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
13690  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
13691  379, 380, 381, -1, 383, 384, -1, 386, 387, 388,
13692  389, 390, 391, 392, 393, 394, 395, -1, -1, 398,
13693  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
13694  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
13695  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
13696  429, 430, -1, 432, 433, -1, 435, 436, 437, -1,
13697  -1, 440, -1, 442, -1, 444, 445, -1, 447, 448,
13698  449, -1, 451, -1, -1, 454, 455, 456, 457, 458,
13699  459, 460, 461, 462, 463, 464, -1, 466, 467, 468,
13700  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
13701  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
13702  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
13703  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
13704  509, -1, -1, 512, 513, 514, 515, 516, 517, -1,
13705  -1, 520, 521, -1, 523, 524, 525, 526, 527, 528,
13706  -1, -1, 531, 532, 533, 534, -1, 536, 537, -1,
13707  -1, 540, 541, 542, 543, -1, -1, 546, 547, -1,
13708  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
13709  559, -1, -1, -1, 563, 564, 565, 566, -1, 568,
13710  569, -1, 571, 572, -1, 574, 575, -1, -1, 578,
13711  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
13712  -1, -1, -1, -1, 593, -1, -1, 596, -1, -1,
13713  -1, 600, 601, 602, 603, 604, -1, -1, -1, -1,
13714  -1, -1, 611, 612, -1, 614, 615, 616, -1, -1,
13715  619, -1, 5, -1, 7, 8, 9, 10, 11, -1,
13716  -1, 14, 631, -1, -1, 18, -1, -1, 21, 638,
13717  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
13718  -1, 34, -1, -1, -1, 38, -1, -1, 41, 42,
13719  43, -1, 45, -1, 47, 48, -1, -1, 51, -1,
13720  -1, 54, 55, -1, 57, 58, -1, 60, -1, 62,
13721  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
13722  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
13723  83, -1, 85, 86, 87, 88, 89, -1, -1, -1,
13724  93, -1, -1, 96, -1, 98, -1, -1, 101, -1,
13725  -1, -1, 105, 106, 107, -1, -1, 110, -1, -1,
13726  -1, -1, 115, 116, -1, -1, -1, -1, 121, 122,
13727  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
13728  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
13729  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
13730  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
13731  163, 164, 165, -1, -1, 168, 169, 170, 171, 172,
13732  -1, -1, 175, 176, -1, 178, 179, 180, -1, -1,
13733  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
13734  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
13735  -1, -1, 205, 206, -1, 208, -1, -1, 211, 212,
13736  -1, -1, -1, 216, 217, 218, 219, -1, -1, 222,
13737  223, 224, -1, -1, 227, -1, -1, -1, -1, 232,
13738  233, -1, -1, -1, 237, -1, -1, -1, 241, 242,
13739  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
13740  253, -1, -1, 256, -1, -1, 259, 260, -1, -1,
13741  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
13742  273, 274, -1, -1, -1, -1, -1, -1, -1, 282,
13743  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
13744  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
13745  303, 304, -1, 306, 307, 308, 309, -1, 311, 312,
13746  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
13747  -1, -1, 325, 326, -1, 328, -1, 330, -1, 332,
13748  333, 334, 335, 336, 337, 338, 339, 340, -1, -1,
13749  343, 344, -1, -1, 347, 348, 349, 350, -1, -1,
13750  -1, 354, 355, -1, -1, -1, 359, -1, 361, 362,
13751  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
13752  -1, -1, -1, -1, -1, -1, 379, 380, 381, -1,
13753  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
13754  393, 394, 395, -1, -1, 398, 399, 400, -1, 402,
13755  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
13756  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
13757  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
13758  433, -1, 435, 436, 437, -1, -1, 440, -1, 442,
13759  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
13760  -1, 454, 455, 456, 457, 458, 459, 460, 461, 462,
13761  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
13762  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
13763  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
13764  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
13765  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
13766  513, 514, 515, 516, 517, -1, -1, 520, 521, -1,
13767  523, 524, 525, 526, 527, 528, -1, -1, 531, 532,
13768  533, 534, -1, 536, 537, -1, -1, 540, 541, 542,
13769  543, -1, -1, 546, 547, -1, 549, 550, 551, 552,
13770  -1, -1, -1, -1, -1, 558, 559, -1, -1, -1,
13771  563, 564, 565, 566, -1, 568, 569, -1, 571, 572,
13772  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
13773  583, -1, 585, 586, -1, -1, -1, -1, -1, -1,
13774  593, -1, -1, 596, -1, -1, -1, 600, 601, 602,
13775  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
13776  -1, 614, 615, 616, -1, -1, 619, -1, -1, -1,
13777  5, -1, 7, 8, 9, 10, 11, -1, 631, 14,
13778  -1, -1, -1, 18, 637, 638, 21, -1, 23, 24,
13779  25, 26, 27, 28, -1, 30, -1, -1, -1, 34,
13780  -1, -1, -1, 38, -1, -1, 41, 42, 43, -1,
13781  45, -1, 47, 48, -1, -1, 51, -1, -1, 54,
13782  55, -1, 57, 58, -1, 60, -1, 62, 63, 64,
13783  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
13784  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
13785  85, 86, 87, 88, 89, -1, -1, -1, 93, -1,
13786  -1, 96, -1, 98, -1, -1, 101, -1, -1, -1,
13787  105, 106, 107, -1, -1, 110, -1, -1, -1, -1,
13788  115, 116, -1, -1, -1, -1, 121, 122, -1, 124,
13789  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
13790  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
13791  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
13792  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
13793  165, -1, -1, 168, 169, 170, 171, 172, -1, -1,
13794  175, 176, -1, 178, 179, 180, -1, -1, 183, -1,
13795  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
13796  195, 196, 197, -1, 199, -1, 201, -1, -1, -1,
13797  205, 206, -1, 208, -1, -1, 211, 212, -1, -1,
13798  -1, 216, 217, 218, 219, -1, -1, 222, 223, 224,
13799  -1, -1, 227, -1, -1, -1, -1, 232, 233, -1,
13800  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
13801  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
13802  -1, 256, -1, -1, 259, 260, -1, -1, -1, -1,
13803  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
13804  -1, -1, -1, -1, -1, -1, -1, 282, -1, 284,
13805  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
13806  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
13807  -1, 306, 307, 308, 309, -1, 311, 312, -1, -1,
13808  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
13809  325, 326, -1, 328, -1, 330, -1, 332, 333, 334,
13810  335, 336, 337, 338, 339, 340, -1, -1, 343, 344,
13811  -1, -1, 347, 348, 349, 350, -1, -1, -1, 354,
13812  355, -1, -1, -1, 359, -1, 361, 362, 363, -1,
13813  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
13814  -1, -1, -1, -1, 379, 380, 381, -1, 383, 384,
13815  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
13816  395, -1, -1, 398, 399, 400, -1, 402, -1, 404,
13817  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
13818  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
13819  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
13820  435, 436, 437, -1, -1, 440, -1, 442, -1, 444,
13821  445, -1, 447, 448, 449, -1, 451, -1, -1, 454,
13822  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
13823  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
13824  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
13825  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
13826  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
13827  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
13828  515, 516, 517, -1, -1, 520, 521, -1, 523, 524,
13829  525, 526, 527, 528, -1, -1, 531, 532, 533, 534,
13830  -1, 536, 537, -1, -1, 540, 541, 542, 543, -1,
13831  -1, 546, 547, -1, 549, 550, 551, 552, -1, -1,
13832  -1, -1, -1, 558, 559, -1, -1, -1, 563, 564,
13833  565, 566, -1, 568, 569, -1, 571, 572, -1, 574,
13834  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
13835  585, 586, -1, -1, -1, -1, -1, -1, 593, -1,
13836  -1, 596, -1, -1, -1, 600, 601, 602, 603, 604,
13837  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
13838  615, 616, -1, -1, 619, -1, -1, -1, 5, -1,
13839  7, 8, 9, 10, 11, 630, -1, 14, -1, -1,
13840  -1, 18, -1, 638, 21, -1, 23, 24, 25, 26,
13841  27, 28, -1, 30, -1, -1, -1, 34, -1, -1,
13842  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
13843  47, 48, -1, -1, 51, -1, -1, 54, 55, -1,
13844  57, 58, -1, 60, -1, 62, 63, 64, 65, 66,
13845  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
13846  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
13847  87, 88, 89, -1, -1, -1, 93, -1, -1, 96,
13848  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
13849  107, -1, -1, 110, -1, -1, -1, -1, 115, 116,
13850  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
13851  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
13852  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
13853  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
13854  157, 158, -1, 160, 161, 162, 163, 164, 165, -1,
13855  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
13856  -1, 178, 179, 180, -1, -1, 183, -1, -1, -1,
13857  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
13858  197, -1, 199, -1, 201, -1, -1, -1, 205, 206,
13859  -1, 208, -1, -1, 211, 212, -1, -1, -1, 216,
13860  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
13861  227, -1, -1, -1, -1, 232, 233, -1, 235, -1,
13862  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
13863  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
13864  -1, -1, 259, 260, -1, -1, -1, -1, -1, 266,
13865  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
13866  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
13867  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
13868  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
13869  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
13870  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
13871  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
13872  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
13873  347, 348, 349, 350, -1, -1, -1, 354, 355, -1,
13874  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
13875  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
13876  -1, -1, 379, 380, 381, -1, 383, 384, -1, 386,
13877  387, 388, 389, 390, 391, 392, 393, 394, 395, -1,
13878  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
13879  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
13880  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
13881  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
13882  437, -1, -1, 440, -1, 442, -1, 444, 445, -1,
13883  447, 448, 449, -1, 451, -1, -1, 454, 455, 456,
13884  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
13885  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
13886  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
13887  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
13888  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
13889  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
13890  517, -1, -1, 520, 521, -1, 523, 524, 525, 526,
13891  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
13892  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
13893  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
13894  -1, 558, 559, -1, -1, -1, 563, 564, 565, 566,
13895  -1, 568, 569, -1, 571, 572, -1, 574, 575, -1,
13896  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
13897  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
13898  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
13899  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
13900  -1, -1, 619, -1, 5, -1, 7, 8, 9, 10,
13901  11, -1, -1, 14, -1, -1, -1, 18, -1, -1,
13902  21, 638, 23, 24, 25, 26, 27, 28, -1, 30,
13903  -1, -1, -1, 34, -1, -1, -1, 38, -1, -1,
13904  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
13905  51, -1, -1, 54, 55, -1, 57, 58, -1, 60,
13906  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
13907  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
13908  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
13909  -1, -1, 93, -1, -1, 96, -1, 98, -1, -1,
13910  101, -1, -1, -1, 105, 106, 107, -1, -1, 110,
13911  -1, -1, -1, -1, 115, 116, -1, -1, -1, -1,
13912  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
13913  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
13914  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
13915  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
13916  161, 162, 163, 164, 165, -1, -1, 168, 169, 170,
13917  171, 172, -1, -1, 175, 176, -1, 178, 179, 180,
13918  -1, -1, 183, -1, -1, -1, 187, 188, -1, 190,
13919  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
13920  201, -1, -1, -1, 205, 206, -1, 208, -1, -1,
13921  211, 212, -1, -1, -1, 216, 217, 218, 219, -1,
13922  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
13923  -1, 232, 233, -1, -1, -1, 237, -1, -1, -1,
13924  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
13925  -1, 252, 253, -1, -1, 256, -1, -1, 259, 260,
13926  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
13927  271, -1, 273, 274, -1, -1, -1, -1, -1, -1,
13928  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
13929  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
13930  -1, 302, 303, 304, -1, 306, 307, 308, 309, -1,
13931  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
13932  321, 322, -1, -1, 325, 326, -1, 328, -1, 330,
13933  -1, 332, 333, 334, 335, 336, 337, 338, 339, 340,
13934  -1, -1, 343, 344, -1, -1, 347, 348, 349, 350,
13935  -1, -1, -1, 354, 355, -1, -1, -1, 359, -1,
13936  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
13937  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
13938  381, -1, 383, 384, -1, 386, 387, 388, 389, 390,
13939  391, 392, 393, 394, 395, -1, -1, 398, 399, 400,
13940  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
13941  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
13942  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
13943  -1, 432, 433, -1, 435, 436, 437, -1, -1, 440,
13944  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
13945  451, -1, -1, 454, 455, 456, 457, 458, 459, 460,
13946  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
13947  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
13948  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
13949  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
13950  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
13951  -1, 512, 513, 514, 515, 516, 517, -1, -1, 520,
13952  521, -1, 523, 524, 525, 526, 527, 528, -1, -1,
13953  531, 532, 533, 534, -1, 536, 537, -1, -1, 540,
13954  541, 542, 543, -1, -1, 546, 547, -1, 549, 550,
13955  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
13956  -1, -1, 563, 564, 565, 566, -1, 568, 569, -1,
13957  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
13958  581, -1, 583, -1, 585, 586, -1, -1, -1, -1,
13959  -1, -1, 593, -1, -1, 596, -1, -1, -1, 600,
13960  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
13961  611, 612, -1, 614, 615, 616, -1, -1, 619, -1,
13962  -1, -1, 5, -1, 7, 8, 9, 10, 11, 630,
13963  -1, 14, -1, -1, -1, 18, -1, 638, 21, -1,
13964  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
13965  -1, 34, -1, -1, -1, 38, -1, -1, 41, 42,
13966  43, -1, 45, -1, 47, 48, -1, -1, 51, -1,
13967  -1, 54, 55, -1, 57, 58, -1, 60, -1, 62,
13968  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
13969  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
13970  83, -1, 85, 86, 87, 88, 89, -1, -1, -1,
13971  93, -1, -1, 96, -1, 98, -1, -1, 101, -1,
13972  -1, -1, 105, 106, 107, -1, -1, 110, -1, -1,
13973  -1, -1, 115, 116, -1, -1, -1, -1, 121, 122,
13974  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
13975  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
13976  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
13977  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
13978  163, 164, 165, -1, -1, 168, 169, 170, 171, 172,
13979  -1, -1, 175, 176, -1, 178, 179, 180, -1, -1,
13980  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
13981  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
13982  -1, -1, 205, 206, -1, 208, -1, -1, 211, 212,
13983  -1, -1, -1, 216, 217, 218, 219, -1, -1, 222,
13984  223, 224, -1, -1, 227, -1, -1, -1, -1, 232,
13985  233, -1, -1, -1, 237, -1, -1, -1, 241, 242,
13986  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
13987  253, -1, -1, 256, -1, -1, 259, 260, -1, -1,
13988  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
13989  273, 274, -1, -1, -1, -1, -1, -1, -1, 282,
13990  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
13991  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
13992  303, 304, -1, 306, 307, 308, 309, -1, 311, 312,
13993  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
13994  -1, -1, 325, 326, -1, 328, -1, 330, -1, 332,
13995  333, 334, 335, 336, 337, 338, 339, 340, -1, -1,
13996  343, 344, -1, -1, 347, 348, 349, 350, -1, -1,
13997  -1, 354, 355, -1, -1, -1, 359, -1, 361, 362,
13998  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
13999  -1, -1, -1, -1, -1, -1, 379, 380, 381, -1,
14000  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
14001  393, 394, 395, -1, -1, 398, 399, 400, -1, 402,
14002  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
14003  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
14004  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
14005  433, -1, 435, 436, 437, -1, -1, 440, -1, 442,
14006  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
14007  -1, 454, 455, 456, 457, 458, 459, 460, 461, 462,
14008  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
14009  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
14010  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
14011  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
14012  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
14013  513, 514, 515, 516, 517, -1, -1, 520, 521, -1,
14014  523, 524, 525, 526, 527, 528, -1, -1, 531, 532,
14015  533, 534, -1, 536, 537, -1, -1, 540, 541, 542,
14016  543, -1, -1, 546, 547, -1, 549, 550, 551, 552,
14017  -1, -1, -1, -1, -1, 558, 559, -1, -1, -1,
14018  563, 564, 565, 566, -1, 568, 569, -1, 571, 572,
14019  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
14020  583, -1, 585, 586, -1, -1, -1, -1, -1, -1,
14021  593, -1, -1, 596, -1, -1, -1, 600, 601, 602,
14022  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
14023  -1, 614, 615, 616, -1, -1, 619, -1, -1, -1,
14024  -1, 5, 625, 7, 8, 9, 10, 11, -1, -1,
14025  14, -1, -1, -1, 18, 638, -1, 21, -1, 23,
14026  24, 25, 26, 27, 28, -1, 30, -1, -1, -1,
14027  34, -1, -1, -1, 38, -1, -1, 41, 42, 43,
14028  -1, 45, -1, 47, 48, -1, -1, 51, -1, -1,
14029  54, 55, -1, 57, 58, -1, 60, -1, 62, 63,
14030  64, 65, 66, 67, -1, 69, 70, -1, 72, 73,
14031  74, 75, 76, 77, 78, 79, 80, -1, 82, 83,
14032  -1, 85, 86, 87, 88, 89, -1, -1, -1, 93,
14033  -1, -1, 96, -1, 98, -1, -1, 101, -1, -1,
14034  -1, 105, 106, 107, -1, -1, 110, -1, -1, -1,
14035  -1, 115, 116, -1, -1, -1, -1, 121, 122, -1,
14036  124, -1, -1, -1, 128, -1, 130, 131, 132, 133,
14037  134, -1, -1, -1, 138, -1, -1, 141, 142, 143,
14038  -1, -1, -1, 147, -1, 149, 150, -1, 152, 153,
14039  154, -1, -1, 157, 158, -1, 160, 161, 162, 163,
14040  164, 165, -1, -1, 168, 169, 170, 171, 172, -1,
14041  -1, 175, 176, -1, 178, 179, 180, -1, -1, 183,
14042  -1, -1, -1, 187, 188, -1, 190, -1, 192, -1,
14043  194, 195, 196, 197, -1, 199, -1, 201, -1, -1,
14044  -1, 205, 206, -1, 208, -1, -1, 211, 212, -1,
14045  -1, -1, 216, 217, 218, 219, -1, -1, 222, 223,
14046  224, -1, -1, 227, -1, -1, -1, -1, 232, 233,
14047  -1, -1, -1, 237, -1, -1, -1, 241, 242, -1,
14048  244, 245, -1, -1, -1, 249, -1, -1, 252, 253,
14049  -1, -1, 256, -1, -1, 259, 260, -1, -1, -1,
14050  -1, -1, 266, 267, -1, 269, -1, 271, -1, 273,
14051  274, -1, -1, -1, -1, -1, -1, -1, 282, -1,
14052  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
14053  294, 295, 296, 297, 298, 299, 300, -1, 302, 303,
14054  304, -1, 306, 307, 308, 309, -1, 311, 312, -1,
14055  -1, -1, -1, 317, 318, 319, 320, 321, 322, -1,
14056  -1, 325, 326, -1, 328, -1, 330, -1, 332, 333,
14057  334, 335, 336, 337, 338, 339, 340, -1, -1, 343,
14058  344, -1, -1, 347, 348, 349, 350, -1, -1, -1,
14059  354, 355, -1, -1, -1, 359, -1, 361, 362, 363,
14060  -1, 365, 366, 367, -1, 369, -1, -1, -1, -1,
14061  -1, -1, -1, -1, -1, 379, 380, 381, -1, 383,
14062  384, -1, 386, 387, 388, 389, 390, 391, 392, 393,
14063  394, 395, -1, -1, 398, 399, 400, -1, 402, -1,
14064  404, 405, 406, 407, 408, -1, 410, 411, 412, -1,
14065  -1, 415, -1, -1, -1, 419, 420, 421, 422, 423,
14066  -1, -1, 426, 427, 428, 429, 430, -1, 432, 433,
14067  -1, 435, 436, 437, -1, -1, 440, -1, 442, -1,
14068  444, 445, -1, 447, 448, 449, -1, 451, -1, -1,
14069  454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
14070  464, -1, 466, 467, -1, -1, -1, 471, 472, 473,
14071  474, -1, -1, -1, 478, -1, -1, -1, 482, -1,
14072  484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
14073  -1, -1, -1, -1, -1, 499, 500, 501, -1, 503,
14074  504, -1, 506, -1, -1, 509, -1, -1, 512, 513,
14075  514, 515, 516, 517, -1, -1, 520, 521, -1, 523,
14076  524, 525, 526, 527, 528, -1, -1, 531, 532, 533,
14077  534, -1, 536, 537, -1, -1, 540, 541, 542, 543,
14078  -1, -1, 546, 547, -1, 549, 550, 551, 552, -1,
14079  -1, -1, -1, -1, 558, 559, -1, -1, -1, 563,
14080  564, 565, 566, -1, 568, 569, -1, 571, 572, -1,
14081  574, 575, -1, -1, 578, -1, -1, 581, -1, 583,
14082  -1, 585, 586, -1, -1, -1, -1, -1, -1, 593,
14083  -1, -1, 596, -1, -1, -1, 600, 601, 602, 603,
14084  604, -1, -1, -1, -1, -1, -1, 611, 612, -1,
14085  614, 615, 616, -1, -1, 619, -1, -1, -1, 5,
14086  -1, 7, 8, 9, 10, 11, -1, -1, 14, -1,
14087  -1, -1, 18, 637, 638, 21, -1, 23, 24, 25,
14088  26, 27, 28, -1, 30, -1, -1, -1, 34, -1,
14089  -1, -1, 38, -1, -1, 41, 42, 43, -1, 45,
14090  -1, 47, 48, -1, -1, 51, -1, -1, 54, 55,
14091  -1, 57, 58, -1, 60, -1, 62, 63, 64, 65,
14092  66, 67, -1, 69, 70, -1, 72, 73, 74, 75,
14093  76, 77, 78, 79, 80, -1, 82, 83, -1, 85,
14094  86, 87, 88, 89, -1, -1, -1, 93, -1, -1,
14095  96, -1, 98, -1, -1, 101, -1, -1, -1, 105,
14096  106, 107, -1, -1, 110, -1, -1, -1, -1, 115,
14097  116, -1, -1, -1, -1, 121, 122, -1, 124, -1,
14098  -1, -1, 128, -1, 130, 131, 132, 133, 134, -1,
14099  -1, -1, 138, -1, -1, 141, 142, 143, -1, -1,
14100  -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
14101  -1, 157, 158, -1, 160, 161, 162, 163, 164, 165,
14102  -1, -1, 168, 169, 170, 171, 172, -1, -1, 175,
14103  176, -1, 178, 179, 180, -1, -1, 183, -1, -1,
14104  -1, 187, 188, -1, 190, -1, 192, -1, 194, 195,
14105  196, 197, -1, 199, -1, 201, -1, -1, -1, 205,
14106  206, -1, 208, -1, -1, 211, 212, -1, -1, -1,
14107  216, 217, 218, 219, -1, -1, 222, 223, 224, -1,
14108  -1, 227, -1, -1, -1, -1, 232, 233, -1, -1,
14109  -1, 237, -1, -1, -1, 241, 242, -1, 244, 245,
14110  -1, -1, -1, 249, -1, -1, 252, 253, -1, -1,
14111  256, -1, -1, 259, 260, -1, -1, -1, -1, -1,
14112  266, 267, -1, 269, -1, 271, -1, 273, 274, -1,
14113  -1, -1, -1, -1, -1, -1, 282, -1, 284, 285,
14114  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
14115  296, 297, 298, 299, 300, -1, 302, 303, 304, -1,
14116  306, 307, 308, 309, -1, 311, 312, -1, -1, -1,
14117  -1, 317, 318, 319, 320, 321, 322, -1, -1, 325,
14118  326, -1, 328, -1, 330, -1, 332, 333, 334, 335,
14119  336, 337, 338, 339, 340, -1, -1, 343, 344, -1,
14120  -1, 347, 348, 349, 350, -1, -1, -1, 354, 355,
14121  -1, -1, -1, 359, -1, 361, 362, 363, -1, 365,
14122  366, 367, -1, 369, -1, -1, -1, -1, -1, -1,
14123  -1, -1, -1, 379, 380, 381, -1, 383, 384, -1,
14124  386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
14125  -1, -1, 398, 399, 400, -1, 402, -1, 404, 405,
14126  406, 407, 408, -1, 410, 411, 412, -1, -1, 415,
14127  -1, -1, -1, 419, 420, 421, 422, 423, -1, -1,
14128  426, 427, 428, 429, 430, -1, 432, 433, -1, 435,
14129  436, 437, -1, -1, 440, -1, 442, -1, 444, 445,
14130  -1, 447, 448, 449, -1, 451, -1, -1, 454, 455,
14131  456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
14132  466, 467, -1, -1, -1, 471, 472, 473, 474, -1,
14133  -1, -1, 478, -1, -1, -1, 482, -1, 484, 485,
14134  486, 487, -1, 489, 490, 491, 492, 493, -1, -1,
14135  -1, -1, -1, 499, 500, 501, -1, 503, 504, -1,
14136  506, -1, -1, 509, -1, -1, 512, 513, 514, 515,
14137  516, 517, -1, -1, 520, 521, -1, 523, 524, 525,
14138  526, 527, 528, -1, -1, 531, 532, 533, 534, -1,
14139  536, 537, -1, -1, 540, 541, 542, 543, -1, -1,
14140  546, 547, -1, 549, 550, 551, 552, -1, -1, -1,
14141  -1, -1, 558, 559, -1, -1, -1, 563, 564, 565,
14142  566, -1, 568, 569, -1, 571, 572, -1, 574, 575,
14143  -1, -1, 578, -1, -1, 581, -1, 583, -1, 585,
14144  586, -1, -1, -1, -1, -1, -1, 593, -1, -1,
14145  596, -1, -1, -1, 600, 601, 602, 603, 604, -1,
14146  -1, -1, -1, -1, -1, 611, 612, -1, 614, 615,
14147  616, -1, -1, 619, -1, 5, -1, 7, 8, 9,
14148  10, 11, -1, -1, 14, -1, -1, -1, 18, -1,
14149  -1, 21, 638, 23, 24, 25, 26, 27, 28, -1,
14150  30, -1, -1, -1, 34, -1, -1, -1, 38, -1,
14151  -1, 41, 42, 43, -1, 45, -1, 47, 48, -1,
14152  -1, 51, -1, -1, 54, 55, -1, 57, 58, -1,
14153  60, -1, 62, 63, 64, 65, 66, 67, -1, 69,
14154  70, -1, 72, 73, 74, 75, 76, 77, 78, 79,
14155  80, -1, 82, 83, -1, 85, 86, 87, 88, 89,
14156  -1, -1, -1, 93, -1, -1, 96, -1, 98, -1,
14157  -1, 101, -1, -1, -1, 105, 106, 107, -1, -1,
14158  110, -1, -1, -1, -1, 115, 116, -1, -1, -1,
14159  -1, 121, 122, -1, 124, -1, -1, -1, 128, -1,
14160  130, 131, 132, 133, 134, -1, -1, -1, 138, -1,
14161  -1, 141, 142, 143, -1, -1, -1, 147, -1, 149,
14162  150, -1, 152, 153, 154, -1, -1, 157, 158, -1,
14163  160, 161, 162, 163, 164, 165, -1, -1, 168, 169,
14164  170, 171, 172, -1, -1, 175, 176, -1, 178, 179,
14165  180, -1, -1, 183, -1, -1, -1, 187, 188, -1,
14166  190, -1, 192, -1, 194, 195, 196, 197, -1, 199,
14167  -1, 201, -1, -1, -1, 205, 206, -1, 208, -1,
14168  -1, 211, 212, -1, -1, -1, 216, 217, 218, 219,
14169  -1, -1, 222, 223, 224, -1, -1, 227, -1, -1,
14170  -1, -1, 232, 233, -1, -1, -1, 237, -1, -1,
14171  -1, 241, 242, -1, 244, 245, -1, -1, -1, 249,
14172  -1, -1, 252, 253, -1, -1, 256, -1, -1, 259,
14173  260, -1, -1, -1, -1, -1, 266, 267, -1, 269,
14174  -1, 271, -1, 273, 274, -1, -1, -1, -1, -1,
14175  -1, -1, 282, -1, 284, 285, 286, 287, 288, 289,
14176  290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
14177  300, -1, 302, 303, 304, -1, 306, 307, 308, 309,
14178  -1, 311, 312, -1, -1, -1, -1, 317, 318, 319,
14179  320, 321, 322, -1, -1, 325, 326, -1, 328, -1,
14180  330, -1, 332, 333, 334, 335, 336, 337, 338, 339,
14181  340, -1, -1, 343, 344, -1, -1, 347, 348, 349,
14182  350, -1, -1, -1, 354, 355, -1, -1, -1, 359,
14183  -1, 361, 362, 363, -1, 365, 366, 367, -1, 369,
14184  -1, -1, -1, -1, -1, -1, -1, -1, -1, 379,
14185  380, 381, -1, 383, 384, -1, 386, 387, 388, 389,
14186  390, 391, 392, 393, 394, 395, -1, -1, 398, 399,
14187  400, -1, 402, -1, 404, 405, 406, 407, 408, -1,
14188  410, 411, 412, -1, -1, 415, -1, -1, -1, 419,
14189  420, 421, 422, 423, -1, -1, 426, 427, 428, 429,
14190  430, -1, 432, 433, -1, 435, 436, 437, -1, -1,
14191  440, -1, 442, -1, 444, 445, -1, 447, 448, 449,
14192  -1, 451, -1, -1, 454, 455, 456, 457, 458, 459,
14193  460, 461, 462, 463, 464, -1, 466, 467, -1, -1,
14194  -1, 471, 472, 473, 474, -1, -1, -1, 478, -1,
14195  -1, -1, 482, -1, 484, 485, 486, 487, -1, 489,
14196  490, 491, 492, 493, -1, -1, -1, -1, -1, 499,
14197  500, 501, -1, 503, 504, -1, 506, -1, -1, 509,
14198  -1, -1, 512, 513, 514, 515, 516, 517, -1, -1,
14199  520, 521, -1, 523, 524, 525, 526, 527, 528, -1,
14200  -1, 531, 532, 533, 534, -1, 536, 537, -1, -1,
14201  540, 541, 542, 543, -1, -1, 546, 547, -1, 549,
14202  550, 551, 552, -1, -1, -1, -1, -1, 558, 559,
14203  -1, -1, -1, 563, 564, 565, 566, -1, 568, 569,
14204  -1, 571, 572, -1, 574, 575, -1, -1, 578, -1,
14205  -1, 581, -1, 583, -1, 585, 586, -1, -1, -1,
14206  -1, -1, -1, 593, -1, -1, 596, -1, -1, -1,
14207  600, 601, 602, 603, 604, -1, -1, -1, -1, -1,
14208  -1, 611, 612, -1, 614, 615, 616, -1, -1, 619,
14209  -1, 5, -1, 7, 8, 9, 10, 11, -1, -1,
14210  14, -1, -1, -1, 18, -1, -1, 21, 638, 23,
14211  24, 25, 26, 27, 28, -1, 30, -1, -1, -1,
14212  34, -1, -1, -1, 38, -1, -1, 41, 42, 43,
14213  -1, 45, -1, 47, 48, -1, -1, 51, -1, -1,
14214  54, 55, -1, 57, 58, -1, 60, -1, 62, 63,
14215  64, 65, 66, 67, -1, 69, 70, -1, 72, 73,
14216  74, 75, 76, 77, 78, 79, 80, -1, 82, 83,
14217  -1, 85, 86, 87, 88, 89, -1, -1, -1, 93,
14218  -1, -1, 96, -1, 98, -1, -1, 101, -1, -1,
14219  -1, 105, 106, 107, -1, -1, 110, -1, -1, -1,
14220  -1, 115, 116, -1, -1, -1, -1, 121, 122, -1,
14221  124, -1, -1, -1, 128, -1, 130, 131, 132, 133,
14222  134, -1, -1, -1, 138, -1, -1, 141, 142, 143,
14223  -1, -1, -1, 147, -1, 149, 150, -1, 152, 153,
14224  154, -1, -1, 157, 158, -1, 160, 161, 162, 163,
14225  164, 165, -1, -1, 168, 169, 170, 171, 172, -1,
14226  -1, 175, 176, -1, 178, 179, 180, -1, -1, 183,
14227  -1, -1, -1, 187, 188, -1, 190, -1, 192, -1,
14228  194, 195, 196, 197, -1, 199, -1, 201, -1, -1,
14229  -1, 205, 206, -1, 208, -1, -1, 211, 212, -1,
14230  -1, -1, 216, 217, 218, 219, -1, -1, 222, 223,
14231  224, -1, -1, 227, -1, -1, -1, -1, 232, 233,
14232  -1, -1, -1, 237, -1, -1, -1, 241, 242, -1,
14233  244, 245, -1, -1, -1, 249, -1, -1, 252, 253,
14234  -1, -1, 256, -1, -1, 259, 260, -1, -1, -1,
14235  -1, -1, 266, 267, -1, 269, -1, 271, -1, 273,
14236  274, -1, -1, -1, -1, -1, -1, -1, 282, -1,
14237  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
14238  294, 295, 296, 297, 298, 299, 300, -1, 302, 303,
14239  304, -1, 306, 307, 308, 309, -1, 311, 312, -1,
14240  -1, -1, -1, 317, 318, 319, 320, 321, 322, -1,
14241  -1, 325, 326, -1, 328, -1, 330, -1, 332, 333,
14242  334, 335, 336, 337, 338, 339, 340, -1, -1, 343,
14243  344, -1, -1, 347, 348, 349, 350, -1, -1, -1,
14244  354, 355, -1, -1, -1, 359, -1, 361, 362, 363,
14245  -1, 365, 366, 367, -1, 369, -1, -1, -1, -1,
14246  -1, -1, -1, -1, -1, 379, 380, 381, -1, 383,
14247  384, -1, 386, 387, 388, 389, 390, 391, 392, 393,
14248  394, 395, -1, -1, 398, 399, 400, -1, 402, -1,
14249  404, 405, 406, 407, 408, -1, 410, 411, 412, -1,
14250  -1, 415, -1, -1, -1, 419, 420, 421, 422, 423,
14251  -1, -1, 426, 427, 428, 429, 430, -1, 432, 433,
14252  -1, 435, 436, 437, -1, -1, 440, -1, 442, -1,
14253  444, 445, -1, 447, 448, 449, -1, 451, -1, -1,
14254  454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
14255  464, -1, 466, 467, -1, -1, -1, 471, 472, 473,
14256  474, -1, -1, -1, 478, -1, -1, -1, 482, -1,
14257  484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
14258  -1, -1, -1, -1, -1, 499, 500, 501, -1, 503,
14259  504, -1, 506, -1, -1, 509, -1, -1, 512, 513,
14260  514, 515, 516, 517, -1, -1, 520, 521, -1, 523,
14261  524, 525, 526, 527, 528, -1, -1, 531, 532, 533,
14262  534, -1, 536, 537, -1, -1, 540, 541, 542, 543,
14263  -1, -1, 546, 547, -1, 549, 550, 551, 552, -1,
14264  -1, -1, -1, -1, 558, 559, -1, -1, -1, 563,
14265  564, 565, 566, -1, 568, 569, -1, 571, 572, -1,
14266  574, 575, -1, -1, 578, -1, -1, 581, -1, 583,
14267  -1, 585, 586, -1, -1, -1, -1, -1, -1, 593,
14268  -1, -1, 596, -1, -1, -1, 600, 601, 602, 603,
14269  604, -1, -1, -1, -1, -1, -1, 611, 612, -1,
14270  614, 615, 616, -1, -1, 619, -1, 5, -1, 7,
14271  8, 9, 10, 11, -1, -1, 14, -1, -1, -1,
14272  18, -1, -1, 21, 638, 23, 24, 25, 26, 27,
14273  28, -1, 30, -1, -1, -1, 34, -1, -1, -1,
14274  38, -1, -1, 41, 42, 43, -1, 45, -1, 47,
14275  48, -1, -1, 51, -1, -1, 54, 55, -1, 57,
14276  58, -1, 60, -1, 62, 63, 64, 65, 66, 67,
14277  -1, 69, 70, -1, 72, 73, 74, 75, 76, 77,
14278  78, 79, 80, -1, 82, 83, -1, 85, 86, 87,
14279  88, 89, -1, -1, -1, 93, -1, -1, 96, -1,
14280  98, -1, -1, 101, -1, -1, -1, 105, 106, 107,
14281  -1, -1, 110, -1, -1, -1, -1, 115, 116, -1,
14282  -1, -1, -1, 121, 122, -1, 124, -1, -1, -1,
14283  128, -1, 130, 131, 132, 133, 134, -1, -1, -1,
14284  138, -1, -1, 141, 142, 143, -1, -1, -1, 147,
14285  -1, 149, 150, -1, 152, 153, 154, -1, -1, 157,
14286  158, -1, 160, 161, 162, 163, 164, 165, -1, -1,
14287  168, 169, 170, 171, 172, -1, -1, 175, 176, -1,
14288  178, 179, 180, -1, -1, 183, -1, -1, -1, 187,
14289  188, -1, 190, -1, 192, -1, 194, 195, 196, 197,
14290  -1, 199, -1, 201, -1, -1, -1, 205, 206, -1,
14291  208, -1, -1, 211, 212, -1, -1, -1, 216, 217,
14292  218, 219, -1, -1, 222, 223, 224, -1, -1, 227,
14293  -1, -1, -1, -1, 232, 233, -1, -1, -1, 237,
14294  -1, -1, -1, 241, 242, -1, 244, 245, -1, -1,
14295  -1, 249, -1, -1, 252, 253, -1, -1, 256, -1,
14296  -1, 259, 260, -1, -1, -1, -1, -1, 266, 267,
14297  -1, 269, -1, 271, -1, 273, 274, -1, -1, -1,
14298  -1, -1, -1, -1, 282, -1, 284, 285, 286, 287,
14299  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
14300  298, 299, 300, -1, 302, 303, 304, -1, 306, 307,
14301  308, 309, -1, 311, 312, -1, -1, -1, -1, 317,
14302  318, 319, 320, 321, 322, -1, -1, 325, 326, -1,
14303  328, -1, 330, -1, 332, 333, 334, 335, 336, 337,
14304  338, 339, 340, -1, -1, 343, 344, -1, -1, 347,
14305  348, 349, 350, -1, -1, -1, 354, 355, -1, -1,
14306  -1, 359, -1, 361, 362, 363, -1, 365, 366, 367,
14307  -1, 369, -1, -1, -1, -1, -1, -1, -1, -1,
14308  -1, 379, 380, 381, -1, 383, 384, -1, 386, 387,
14309  388, 389, 390, 391, 392, 393, 394, 395, -1, -1,
14310  398, 399, 400, -1, 402, -1, 404, 405, 406, 407,
14311  408, -1, 410, 411, 412, -1, -1, 415, -1, -1,
14312  -1, 419, 420, 421, 422, 423, -1, -1, 426, 427,
14313  428, 429, 430, -1, 432, 433, -1, 435, 436, 437,
14314  -1, -1, 440, -1, 442, -1, 444, 445, -1, 447,
14315  448, 449, -1, 451, -1, -1, 454, 455, 456, 457,
14316  458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
14317  -1, -1, -1, 471, 472, 473, 474, -1, -1, -1,
14318  478, -1, -1, -1, 482, -1, 484, 485, 486, 487,
14319  -1, 489, 490, 491, 492, 493, -1, -1, -1, -1,
14320  -1, 499, 500, 501, -1, 503, 504, -1, 506, -1,
14321  -1, 509, -1, -1, 512, 513, 514, 515, 516, 517,
14322  -1, -1, 520, 521, -1, 523, 524, 525, 526, 527,
14323  528, -1, -1, 531, 532, 533, 534, -1, 536, 537,
14324  -1, -1, 540, 541, 542, 543, -1, -1, 546, 547,
14325  -1, 549, 550, 551, 552, -1, -1, -1, -1, -1,
14326  558, 559, -1, -1, -1, 563, 564, 565, 566, -1,
14327  568, 569, -1, 571, 572, -1, 574, 575, -1, -1,
14328  578, -1, -1, 581, -1, 583, -1, 585, 586, -1,
14329  -1, -1, -1, -1, -1, 593, -1, -1, 596, -1,
14330  -1, -1, 600, 601, 602, 603, 604, -1, -1, -1,
14331  -1, -1, -1, 611, 612, -1, 614, 615, 616, -1,
14332  -1, 619, -1, 5, -1, 7, 8, 9, 10, 11,
14333  -1, -1, 14, -1, -1, -1, 18, -1, -1, 21,
14334  638, 23, 24, 25, 26, 27, 28, -1, 30, -1,
14335  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
14336  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
14337  -1, -1, 54, 55, -1, 57, 58, 59, 60, -1,
14338  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
14339  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
14340  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
14341  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
14342  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
14343  -1, -1, -1, 115, 116, -1, -1, -1, 120, 121,
14344  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
14345  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
14346  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
14347  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
14348  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
14349  172, -1, -1, 175, 176, -1, 178, 179, 180, -1,
14350  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
14351  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
14352  -1, -1, -1, 205, 206, -1, 208, -1, -1, 211,
14353  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
14354  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
14355  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
14356  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
14357  252, 253, -1, -1, 256, -1, -1, 259, 260, -1,
14358  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
14359  -1, 273, 274, -1, -1, -1, -1, -1, -1, -1,
14360  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
14361  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
14362  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
14363  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
14364  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
14365  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
14366  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
14367  -1, -1, 354, 355, -1, -1, -1, 359, -1, 361,
14368  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
14369  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
14370  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
14371  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
14372  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
14373  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
14374  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
14375  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
14376  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
14377  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
14378  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
14379  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
14380  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
14381  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
14382  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
14383  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
14384  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
14385  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
14386  542, 543, -1, -1, 546, 547, -1, 549, 550, 551,
14387  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
14388  -1, 563, 564, 565, 566, -1, 568, 569, -1, 571,
14389  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
14390  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
14391  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
14392  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
14393  612, -1, 614, 615, 616, -1, -1, 619, 5, -1,
14394  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
14395  -1, 18, -1, -1, 21, 637, 23, 24, 25, 26,
14396  27, 28, -1, 30, -1, -1, -1, 34, -1, -1,
14397  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
14398  47, 48, -1, -1, 51, -1, -1, 54, 55, -1,
14399  57, 58, -1, 60, -1, 62, 63, 64, 65, 66,
14400  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
14401  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
14402  87, 88, 89, -1, -1, -1, 93, -1, -1, 96,
14403  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
14404  107, -1, -1, 110, -1, -1, -1, -1, 115, 116,
14405  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
14406  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
14407  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
14408  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
14409  157, 158, -1, 160, 161, 162, 163, 164, 165, -1,
14410  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
14411  -1, 178, 179, 180, -1, -1, 183, -1, -1, -1,
14412  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
14413  197, -1, 199, -1, 201, -1, -1, -1, 205, 206,
14414  -1, 208, -1, -1, 211, 212, -1, -1, -1, 216,
14415  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
14416  227, -1, -1, -1, -1, 232, 233, -1, -1, -1,
14417  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
14418  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
14419  -1, -1, 259, 260, 261, -1, -1, -1, -1, 266,
14420  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
14421  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
14422  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
14423  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
14424  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
14425  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
14426  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
14427  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
14428  347, 348, 349, 350, -1, -1, -1, 354, 355, -1,
14429  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
14430  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
14431  -1, -1, 379, 380, 381, -1, 383, 384, -1, 386,
14432  387, 388, 389, 390, 391, 392, 393, 394, 395, -1,
14433  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
14434  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
14435  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
14436  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
14437  437, -1, -1, 440, -1, 442, -1, 444, 445, -1,
14438  447, 448, 449, -1, 451, -1, -1, 454, 455, 456,
14439  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
14440  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
14441  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
14442  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
14443  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
14444  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
14445  517, -1, -1, 520, 521, -1, 523, 524, 525, 526,
14446  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
14447  537, -1, -1, 540, 541, 542, 543, -1, 545, 546,
14448  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
14449  -1, 558, 559, -1, -1, -1, 563, 564, 565, 566,
14450  -1, 568, 569, -1, 571, 572, -1, 574, 575, -1,
14451  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
14452  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
14453  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
14454  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
14455  -1, -1, 619, 5, -1, 7, 8, 9, 10, 11,
14456  -1, -1, 14, -1, -1, -1, 18, -1, -1, 21,
14457  637, 23, 24, 25, 26, 27, 28, -1, 30, -1,
14458  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
14459  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
14460  -1, -1, 54, 55, -1, 57, 58, -1, 60, -1,
14461  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
14462  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
14463  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
14464  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
14465  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
14466  -1, -1, -1, 115, 116, -1, -1, -1, -1, 121,
14467  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
14468  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
14469  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
14470  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
14471  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
14472  172, -1, -1, 175, 176, -1, 178, 179, 180, -1,
14473  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
14474  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
14475  -1, -1, -1, 205, 206, -1, 208, -1, -1, 211,
14476  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
14477  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
14478  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
14479  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
14480  252, 253, -1, -1, 256, -1, -1, 259, 260, 261,
14481  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
14482  -1, 273, 274, -1, -1, -1, -1, -1, -1, -1,
14483  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
14484  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
14485  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
14486  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
14487  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
14488  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
14489  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
14490  -1, -1, 354, 355, -1, -1, -1, 359, -1, 361,
14491  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
14492  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
14493  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
14494  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
14495  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
14496  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
14497  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
14498  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
14499  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
14500  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
14501  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
14502  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
14503  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
14504  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
14505  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
14506  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
14507  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
14508  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
14509  542, 543, -1, 545, 546, 547, -1, 549, 550, 551,
14510  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
14511  -1, 563, 564, 565, 566, -1, 568, 569, -1, 571,
14512  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
14513  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
14514  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
14515  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
14516  612, -1, 614, 615, 616, -1, -1, 619, 5, -1,
14517  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
14518  -1, 18, -1, -1, 21, 637, 23, 24, 25, 26,
14519  27, 28, -1, 30, -1, -1, -1, 34, -1, -1,
14520  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
14521  47, 48, -1, -1, 51, -1, -1, 54, 55, -1,
14522  57, 58, 59, 60, -1, 62, 63, 64, 65, 66,
14523  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
14524  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
14525  87, 88, 89, -1, -1, -1, 93, -1, -1, 96,
14526  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
14527  107, -1, -1, 110, -1, -1, -1, -1, 115, 116,
14528  -1, -1, -1, 120, 121, 122, -1, 124, -1, -1,
14529  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
14530  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
14531  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
14532  157, 158, -1, 160, 161, 162, 163, 164, 165, -1,
14533  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
14534  -1, 178, 179, 180, -1, -1, 183, -1, -1, -1,
14535  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
14536  197, -1, 199, -1, 201, -1, -1, -1, 205, 206,
14537  -1, 208, -1, -1, 211, 212, -1, -1, -1, 216,
14538  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
14539  227, -1, -1, -1, -1, 232, 233, -1, -1, -1,
14540  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
14541  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
14542  -1, -1, 259, 260, -1, -1, -1, -1, -1, 266,
14543  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
14544  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
14545  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
14546  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
14547  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
14548  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
14549  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
14550  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
14551  347, 348, 349, 350, -1, -1, -1, 354, 355, -1,
14552  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
14553  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
14554  -1, -1, 379, 380, 381, -1, 383, 384, -1, 386,
14555  387, 388, 389, 390, 391, 392, 393, 394, 395, -1,
14556  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
14557  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
14558  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
14559  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
14560  437, -1, -1, 440, -1, 442, -1, 444, 445, -1,
14561  447, 448, 449, -1, 451, -1, -1, 454, 455, 456,
14562  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
14563  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
14564  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
14565  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
14566  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
14567  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
14568  517, -1, -1, 520, 521, -1, 523, 524, 525, 526,
14569  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
14570  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
14571  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
14572  -1, 558, 559, -1, -1, -1, 563, 564, 565, 566,
14573  -1, 568, 569, -1, 571, 572, -1, 574, 575, -1,
14574  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
14575  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
14576  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
14577  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
14578  -1, -1, 619, 5, -1, 7, 8, 9, 10, 11,
14579  -1, -1, 14, -1, -1, -1, 18, -1, -1, 21,
14580  637, 23, 24, 25, 26, 27, 28, -1, 30, -1,
14581  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
14582  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
14583  -1, -1, 54, 55, -1, 57, 58, -1, 60, -1,
14584  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
14585  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
14586  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
14587  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
14588  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
14589  -1, -1, -1, 115, 116, -1, -1, -1, -1, 121,
14590  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
14591  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
14592  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
14593  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
14594  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
14595  172, -1, -1, 175, 176, -1, 178, 179, 180, -1,
14596  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
14597  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
14598  -1, -1, -1, 205, 206, -1, 208, -1, -1, 211,
14599  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
14600  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
14601  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
14602  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
14603  252, 253, -1, -1, 256, -1, -1, 259, 260, 261,
14604  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
14605  -1, 273, 274, -1, -1, -1, -1, -1, -1, -1,
14606  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
14607  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
14608  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
14609  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
14610  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
14611  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
14612  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
14613  -1, -1, 354, 355, -1, -1, -1, 359, -1, 361,
14614  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
14615  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
14616  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
14617  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
14618  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
14619  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
14620  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
14621  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
14622  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
14623  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
14624  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
14625  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
14626  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
14627  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
14628  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
14629  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
14630  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
14631  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
14632  542, 543, -1, 545, 546, 547, -1, 549, 550, 551,
14633  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
14634  -1, 563, 564, 565, 566, -1, 568, 569, -1, 571,
14635  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
14636  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
14637  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
14638  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
14639  612, -1, 614, 615, 616, -1, -1, 619, 5, -1,
14640  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
14641  -1, 18, -1, -1, 21, 637, 23, 24, 25, 26,
14642  27, 28, -1, 30, -1, -1, -1, 34, -1, -1,
14643  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
14644  47, 48, -1, -1, 51, -1, -1, 54, 55, -1,
14645  57, 58, -1, 60, -1, 62, 63, 64, 65, 66,
14646  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
14647  77, 78, 79, 80, 81, 82, 83, -1, 85, 86,
14648  87, 88, 89, -1, -1, -1, 93, -1, -1, 96,
14649  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
14650  107, -1, -1, 110, -1, -1, -1, -1, 115, 116,
14651  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
14652  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
14653  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
14654  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
14655  157, 158, -1, 160, 161, 162, 163, 164, 165, -1,
14656  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
14657  -1, 178, 179, 180, -1, -1, 183, -1, -1, -1,
14658  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
14659  197, -1, 199, -1, 201, -1, -1, -1, 205, 206,
14660  -1, 208, -1, -1, 211, 212, -1, -1, -1, 216,
14661  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
14662  227, -1, -1, -1, -1, 232, 233, -1, -1, -1,
14663  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
14664  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
14665  -1, -1, 259, 260, -1, -1, -1, -1, -1, 266,
14666  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
14667  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
14668  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
14669  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
14670  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
14671  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
14672  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
14673  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
14674  347, 348, 349, 350, -1, -1, -1, 354, 355, -1,
14675  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
14676  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
14677  -1, -1, 379, 380, 381, -1, 383, 384, -1, 386,
14678  387, 388, 389, 390, 391, 392, 393, 394, 395, -1,
14679  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
14680  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
14681  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
14682  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
14683  437, -1, -1, 440, -1, 442, -1, 444, 445, -1,
14684  447, 448, 449, -1, 451, -1, -1, 454, 455, 456,
14685  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
14686  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
14687  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
14688  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
14689  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
14690  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
14691  517, -1, -1, 520, 521, -1, 523, 524, 525, 526,
14692  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
14693  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
14694  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
14695  -1, 558, 559, -1, -1, -1, 563, 564, 565, 566,
14696  -1, 568, 569, -1, 571, 572, -1, 574, 575, -1,
14697  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
14698  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
14699  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
14700  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
14701  -1, -1, 619, 5, -1, 7, 8, 9, 10, 11,
14702  -1, -1, 14, -1, -1, -1, 18, -1, -1, 21,
14703  637, 23, 24, 25, 26, 27, 28, -1, 30, -1,
14704  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
14705  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
14706  -1, -1, 54, 55, -1, 57, 58, -1, 60, -1,
14707  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
14708  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
14709  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
14710  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
14711  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
14712  -1, -1, -1, 115, 116, -1, -1, -1, -1, 121,
14713  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
14714  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
14715  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
14716  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
14717  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
14718  172, -1, -1, 175, 176, -1, 178, 179, 180, -1,
14719  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
14720  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
14721  -1, -1, -1, 205, 206, -1, 208, -1, -1, 211,
14722  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
14723  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
14724  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
14725  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
14726  252, 253, -1, -1, 256, -1, -1, 259, 260, -1,
14727  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
14728  -1, 273, 274, -1, -1, -1, -1, -1, -1, -1,
14729  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
14730  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
14731  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
14732  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
14733  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
14734  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
14735  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
14736  -1, -1, 354, 355, -1, -1, -1, 359, -1, 361,
14737  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
14738  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
14739  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
14740  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
14741  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
14742  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
14743  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
14744  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
14745  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
14746  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
14747  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
14748  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
14749  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
14750  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
14751  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
14752  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
14753  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
14754  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
14755  542, 543, -1, -1, 546, 547, -1, 549, 550, 551,
14756  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
14757  -1, 563, 564, 565, 566, -1, 568, 569, -1, 571,
14758  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
14759  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
14760  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
14761  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
14762  612, -1, 614, 615, 616, -1, -1, 619, 5, -1,
14763  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
14764  -1, 18, -1, -1, -1, 637, 23, 24, 25, 26,
14765  27, -1, -1, 30, -1, -1, -1, 34, -1, -1,
14766  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
14767  -1, -1, -1, -1, 51, 52, -1, 54, 55, -1,
14768  57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
14769  67, -1, 69, 70, -1, 72, 73, -1, 75, -1,
14770  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
14771  87, -1, 89, -1, -1, -1, 93, -1, -1, 96,
14772  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
14773  107, -1, -1, 110, -1, -1, -1, -1, 115, -1,
14774  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
14775  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
14776  -1, -1, -1, -1, 141, 142, 143, -1, -1, -1,
14777  147, -1, -1, 150, -1, 152, 153, 154, -1, -1,
14778  157, 158, -1, 160, 161, 162, 163, 164, -1, -1,
14779  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
14780  177, 178, 179, 180, -1, -1, -1, -1, -1, -1,
14781  -1, 188, -1, 190, -1, 192, -1, 194, 195, 196,
14782  197, -1, 199, -1, 201, -1, -1, -1, -1, 206,
14783  -1, -1, -1, -1, -1, 212, -1, -1, -1, 216,
14784  217, 218, 219, 220, -1, 222, 223, 224, -1, -1,
14785  227, -1, -1, -1, -1, 232, -1, -1, -1, -1,
14786  237, -1, -1, -1, 241, 242, -1, 244, 245, 246,
14787  -1, -1, 249, -1, -1, -1, 253, -1, -1, 256,
14788  257, -1, 259, 260, -1, -1, -1, -1, -1, 266,
14789  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
14790  -1, -1, 279, -1, -1, 282, -1, 284, 285, 286,
14791  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
14792  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
14793  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
14794  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
14795  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
14796  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
14797  347, 348, 349, 350, -1, -1, -1, -1, 355, -1,
14798  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
14799  367, -1, -1, -1, -1, -1, -1, -1, -1, -1,
14800  -1, -1, -1, 380, 381, -1, -1, 384, -1, 386,
14801  387, 388, 389, 390, 391, 392, 393, 394, -1, -1,
14802  -1, -1, 399, 400, -1, 402, -1, 404, 405, 406,
14803  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
14804  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
14805  427, 428, 429, 430, -1, 432, -1, -1, 435, -1,
14806  437, 438, -1, 440, -1, -1, -1, 444, -1, -1,
14807  447, 448, 449, 450, 451, -1, -1, -1, 455, 456,
14808  457, 458, 459, 460, 461, -1, 463, 464, -1, 466,
14809  -1, -1, -1, -1, 471, 472, 473, -1, -1, -1,
14810  -1, 478, -1, -1, -1, 482, -1, -1, 485, -1,
14811  487, -1, 489, -1, -1, 492, 493, -1, -1, -1,
14812  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
14813  -1, -1, 509, -1, -1, 512, -1, 514, 515, 516,
14814  517, -1, -1, -1, 521, -1, 523, 524, 525, 526,
14815  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
14816  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
14817  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
14818  -1, 558, 559, -1, -1, -1, -1, 564, 565, 566,
14819  -1, 568, 569, -1, 571, 572, -1, -1, -1, -1,
14820  -1, 578, -1, -1, 581, -1, -1, -1, 585, 586,
14821  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
14822  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
14823  607, -1, -1, -1, 611, -1, -1, 614, -1, 616,
14824  -1, 5, 619, 7, 8, 9, 10, 11, -1, -1,
14825  14, -1, -1, -1, 18, 632, -1, 21, -1, 23,
14826  24, 25, 26, 27, 28, -1, 30, -1, -1, -1,
14827  34, -1, -1, -1, 38, -1, -1, 41, 42, 43,
14828  -1, 45, -1, 47, 48, -1, -1, 51, -1, -1,
14829  54, 55, -1, 57, 58, -1, 60, -1, 62, 63,
14830  64, 65, 66, 67, -1, 69, 70, -1, 72, 73,
14831  74, 75, 76, 77, 78, 79, 80, -1, 82, 83,
14832  -1, 85, 86, 87, 88, 89, -1, -1, -1, 93,
14833  -1, -1, 96, -1, 98, -1, -1, 101, -1, -1,
14834  -1, 105, 106, 107, -1, -1, 110, -1, -1, -1,
14835  -1, 115, 116, -1, -1, -1, -1, 121, 122, -1,
14836  124, -1, -1, -1, 128, -1, 130, 131, 132, 133,
14837  134, -1, -1, -1, 138, -1, -1, 141, 142, 143,
14838  -1, -1, -1, 147, -1, 149, 150, -1, 152, 153,
14839  154, -1, -1, 157, 158, -1, 160, 161, 162, 163,
14840  164, 165, -1, -1, 168, 169, 170, 171, 172, -1,
14841  -1, 175, 176, -1, 178, 179, 180, -1, -1, 183,
14842  -1, -1, -1, 187, 188, -1, 190, -1, 192, -1,
14843  194, 195, 196, 197, -1, 199, -1, 201, -1, -1,
14844  -1, 205, 206, -1, 208, -1, -1, 211, 212, -1,
14845  -1, -1, 216, 217, 218, 219, -1, -1, 222, 223,
14846  224, -1, -1, 227, -1, -1, -1, -1, 232, 233,
14847  -1, -1, -1, 237, -1, -1, -1, 241, 242, -1,
14848  244, 245, -1, -1, -1, 249, -1, -1, 252, 253,
14849  -1, -1, 256, -1, -1, 259, 260, -1, -1, -1,
14850  -1, -1, 266, 267, -1, 269, -1, 271, -1, 273,
14851  274, -1, -1, -1, -1, -1, -1, -1, 282, -1,
14852  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
14853  294, 295, 296, 297, 298, 299, 300, -1, 302, 303,
14854  304, -1, 306, 307, 308, 309, -1, 311, 312, -1,
14855  -1, -1, -1, 317, 318, 319, 320, 321, 322, -1,
14856  -1, 325, 326, -1, 328, -1, 330, -1, 332, 333,
14857  334, 335, 336, 337, 338, 339, 340, -1, -1, 343,
14858  344, -1, -1, 347, 348, 349, 350, -1, -1, -1,
14859  354, 355, -1, -1, -1, 359, -1, 361, 362, 363,
14860  -1, 365, 366, 367, -1, 369, -1, -1, -1, -1,
14861  -1, -1, -1, -1, -1, 379, 380, 381, -1, 383,
14862  384, -1, 386, 387, 388, 389, 390, 391, 392, 393,
14863  394, 395, -1, -1, 398, 399, 400, -1, 402, -1,
14864  404, 405, 406, 407, 408, -1, 410, 411, 412, -1,
14865  -1, 415, -1, -1, -1, 419, 420, 421, 422, 423,
14866  -1, -1, 426, 427, 428, 429, 430, -1, 432, 433,
14867  -1, 435, 436, 437, -1, -1, 440, -1, 442, -1,
14868  444, 445, -1, 447, 448, 449, -1, 451, -1, -1,
14869  454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
14870  464, -1, 466, 467, -1, -1, -1, 471, 472, 473,
14871  474, -1, -1, -1, 478, -1, -1, -1, 482, -1,
14872  484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
14873  -1, -1, -1, -1, -1, 499, 500, 501, -1, 503,
14874  504, -1, 506, -1, -1, 509, -1, -1, 512, 513,
14875  514, 515, 516, 517, -1, -1, 520, 521, -1, 523,
14876  524, 525, 526, 527, 528, -1, -1, 531, 532, 533,
14877  534, -1, 536, 537, -1, -1, 540, 541, 542, 543,
14878  -1, -1, 546, 547, -1, 549, 550, 551, 552, -1,
14879  -1, -1, -1, -1, 558, 559, -1, -1, -1, 563,
14880  564, 565, 566, -1, 568, 569, -1, 571, 572, -1,
14881  574, 575, -1, -1, 578, -1, -1, 581, -1, 583,
14882  -1, 585, 586, -1, -1, -1, -1, -1, -1, 593,
14883  -1, -1, 596, -1, -1, -1, 600, 601, 602, 603,
14884  604, -1, -1, -1, -1, -1, -1, 611, 612, -1,
14885  614, 615, 616, -1, 5, 619, 7, 8, 9, 10,
14886  11, 625, -1, 14, -1, -1, -1, 18, -1, -1,
14887  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
14888  -1, -1, -1, 34, -1, -1, -1, 38, -1, -1,
14889  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
14890  51, -1, -1, 54, 55, -1, 57, 58, -1, 60,
14891  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
14892  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
14893  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
14894  -1, -1, 93, -1, -1, 96, -1, 98, -1, -1,
14895  101, -1, -1, -1, 105, 106, 107, -1, -1, 110,
14896  -1, -1, -1, -1, 115, 116, -1, -1, -1, -1,
14897  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
14898  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
14899  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
14900  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
14901  161, 162, 163, 164, 165, -1, -1, 168, 169, 170,
14902  171, 172, -1, -1, 175, 176, -1, 178, 179, 180,
14903  -1, -1, 183, -1, -1, -1, 187, 188, -1, 190,
14904  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
14905  201, -1, -1, -1, 205, 206, -1, 208, -1, -1,
14906  211, 212, -1, -1, -1, 216, 217, 218, 219, -1,
14907  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
14908  -1, 232, 233, -1, -1, -1, 237, -1, -1, -1,
14909  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
14910  -1, 252, 253, -1, -1, 256, -1, -1, 259, 260,
14911  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
14912  271, -1, 273, 274, -1, -1, -1, -1, -1, -1,
14913  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
14914  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
14915  -1, 302, 303, 304, -1, 306, 307, 308, 309, -1,
14916  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
14917  321, 322, -1, -1, 325, 326, -1, 328, -1, 330,
14918  -1, 332, 333, 334, 335, 336, 337, 338, 339, 340,
14919  -1, -1, 343, 344, -1, -1, 347, 348, 349, 350,
14920  -1, -1, -1, 354, 355, -1, -1, -1, 359, -1,
14921  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
14922  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
14923  381, -1, 383, 384, -1, 386, 387, 388, 389, 390,
14924  391, 392, 393, 394, 395, -1, -1, 398, 399, 400,
14925  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
14926  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
14927  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
14928  -1, 432, 433, -1, 435, 436, 437, -1, -1, 440,
14929  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
14930  451, -1, -1, 454, 455, 456, 457, 458, 459, 460,
14931  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
14932  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
14933  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
14934  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
14935  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
14936  -1, 512, 513, 514, 515, 516, 517, -1, -1, 520,
14937  521, -1, 523, 524, 525, 526, 527, 528, -1, -1,
14938  531, 532, 533, 534, -1, 536, 537, -1, -1, 540,
14939  541, 542, 543, -1, -1, 546, 547, -1, 549, 550,
14940  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
14941  -1, -1, 563, 564, 565, 566, -1, 568, 569, -1,
14942  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
14943  581, -1, 583, -1, 585, 586, -1, -1, -1, -1,
14944  -1, -1, 593, -1, -1, 596, -1, -1, -1, 600,
14945  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
14946  611, 612, -1, 614, 615, 616, -1, 5, 619, 7,
14947  8, 9, 10, 11, 625, -1, 14, -1, -1, -1,
14948  18, -1, -1, 21, -1, 23, 24, 25, 26, 27,
14949  28, -1, 30, -1, -1, -1, 34, -1, -1, -1,
14950  38, -1, -1, 41, 42, 43, -1, 45, -1, 47,
14951  48, -1, -1, 51, -1, -1, 54, 55, -1, 57,
14952  58, -1, 60, -1, 62, 63, 64, 65, 66, 67,
14953  -1, 69, 70, -1, 72, 73, 74, 75, 76, 77,
14954  78, 79, 80, -1, 82, 83, -1, 85, 86, 87,
14955  88, 89, -1, -1, -1, 93, -1, -1, 96, -1,
14956  98, -1, -1, 101, -1, -1, -1, 105, 106, 107,
14957  -1, -1, 110, -1, -1, -1, -1, 115, 116, -1,
14958  -1, -1, -1, 121, 122, -1, 124, -1, -1, -1,
14959  128, -1, 130, 131, 132, 133, 134, -1, -1, -1,
14960  138, -1, -1, 141, 142, 143, -1, -1, -1, 147,
14961  -1, 149, 150, -1, 152, 153, 154, -1, -1, 157,
14962  158, -1, 160, 161, 162, 163, 164, 165, -1, -1,
14963  168, 169, 170, 171, 172, -1, -1, 175, 176, -1,
14964  178, 179, 180, -1, -1, 183, -1, -1, -1, 187,
14965  188, -1, 190, -1, 192, -1, 194, 195, 196, 197,
14966  -1, 199, -1, 201, -1, -1, -1, 205, 206, -1,
14967  208, -1, -1, 211, 212, -1, -1, -1, 216, 217,
14968  218, 219, -1, -1, 222, 223, 224, -1, -1, 227,
14969  -1, -1, -1, -1, 232, 233, -1, -1, -1, 237,
14970  -1, -1, -1, 241, 242, -1, 244, 245, -1, -1,
14971  -1, 249, -1, -1, 252, 253, -1, -1, 256, -1,
14972  -1, 259, 260, -1, -1, -1, -1, -1, 266, 267,
14973  -1, 269, -1, 271, -1, 273, 274, -1, -1, -1,
14974  -1, -1, -1, -1, 282, -1, 284, 285, 286, 287,
14975  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
14976  298, 299, 300, -1, 302, 303, 304, -1, 306, 307,
14977  308, 309, -1, 311, 312, -1, -1, -1, -1, 317,
14978  318, 319, 320, 321, 322, -1, -1, 325, 326, -1,
14979  328, -1, 330, -1, 332, 333, 334, 335, 336, 337,
14980  338, 339, 340, -1, -1, 343, 344, -1, -1, 347,
14981  348, 349, 350, -1, -1, -1, 354, 355, -1, -1,
14982  -1, 359, -1, 361, 362, 363, -1, 365, 366, 367,
14983  -1, 369, -1, -1, -1, -1, -1, -1, -1, -1,
14984  -1, 379, 380, 381, -1, 383, 384, -1, 386, 387,
14985  388, 389, 390, 391, 392, 393, 394, 395, -1, -1,
14986  398, 399, 400, -1, 402, -1, 404, 405, 406, 407,
14987  408, -1, 410, 411, 412, -1, -1, 415, -1, -1,
14988  -1, 419, 420, 421, 422, 423, -1, -1, 426, 427,
14989  428, 429, 430, -1, 432, 433, -1, 435, 436, 437,
14990  -1, -1, 440, -1, 442, -1, 444, 445, -1, 447,
14991  448, 449, -1, 451, -1, -1, 454, 455, 456, 457,
14992  458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
14993  -1, -1, -1, 471, 472, 473, 474, -1, -1, -1,
14994  478, -1, -1, -1, 482, -1, 484, 485, 486, 487,
14995  -1, 489, 490, 491, 492, 493, -1, -1, -1, -1,
14996  -1, 499, 500, 501, -1, 503, 504, -1, 506, -1,
14997  -1, 509, -1, -1, 512, 513, 514, 515, 516, 517,
14998  -1, -1, 520, 521, -1, 523, 524, 525, 526, 527,
14999  528, -1, -1, 531, 532, 533, 534, -1, 536, 537,
15000  -1, -1, 540, 541, 542, 543, -1, -1, 546, 547,
15001  -1, 549, 550, 551, 552, -1, -1, -1, -1, -1,
15002  558, 559, -1, -1, -1, 563, 564, 565, 566, -1,
15003  568, 569, -1, 571, 572, -1, 574, 575, -1, -1,
15004  578, -1, -1, 581, -1, 583, -1, 585, 586, -1,
15005  -1, -1, -1, -1, -1, 593, -1, -1, 596, -1,
15006  -1, -1, 600, 601, 602, 603, 604, -1, -1, -1,
15007  -1, -1, -1, 611, 612, -1, 614, 615, 616, -1,
15008  5, 619, 7, 8, 9, 10, 11, 625, -1, 14,
15009  -1, -1, -1, 18, -1, -1, 21, -1, 23, 24,
15010  25, 26, 27, 28, -1, 30, -1, -1, -1, 34,
15011  -1, -1, -1, 38, -1, -1, 41, 42, 43, -1,
15012  45, -1, 47, 48, -1, -1, 51, -1, -1, 54,
15013  55, -1, 57, 58, -1, 60, -1, 62, 63, 64,
15014  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
15015  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
15016  85, 86, 87, 88, 89, -1, -1, -1, 93, -1,
15017  -1, 96, -1, 98, -1, -1, 101, -1, -1, -1,
15018  105, 106, 107, -1, -1, 110, -1, -1, -1, -1,
15019  115, 116, -1, -1, -1, -1, 121, 122, -1, 124,
15020  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
15021  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
15022  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
15023  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
15024  165, -1, -1, 168, 169, 170, 171, 172, -1, -1,
15025  175, 176, -1, 178, 179, 180, -1, -1, 183, -1,
15026  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
15027  195, 196, 197, -1, 199, -1, 201, -1, -1, -1,
15028  205, 206, -1, 208, -1, -1, 211, 212, -1, -1,
15029  -1, 216, 217, 218, 219, -1, -1, 222, 223, 224,
15030  -1, -1, 227, -1, -1, -1, -1, 232, 233, -1,
15031  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
15032  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
15033  -1, 256, -1, -1, 259, 260, -1, -1, -1, -1,
15034  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
15035  -1, -1, -1, -1, -1, -1, -1, 282, -1, 284,
15036  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
15037  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
15038  -1, 306, 307, 308, 309, -1, 311, 312, -1, -1,
15039  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
15040  325, 326, -1, 328, -1, 330, -1, 332, 333, 334,
15041  335, 336, 337, 338, 339, 340, -1, -1, 343, 344,
15042  -1, -1, 347, 348, 349, 350, -1, -1, -1, 354,
15043  355, -1, -1, -1, 359, -1, 361, 362, 363, -1,
15044  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
15045  -1, -1, -1, -1, 379, 380, 381, -1, 383, 384,
15046  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
15047  395, -1, -1, 398, 399, 400, -1, 402, -1, 404,
15048  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
15049  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
15050  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
15051  435, 436, 437, -1, -1, 440, -1, 442, -1, 444,
15052  445, -1, 447, 448, 449, -1, 451, -1, -1, 454,
15053  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
15054  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
15055  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
15056  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
15057  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
15058  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
15059  515, 516, 517, -1, -1, 520, 521, -1, 523, 524,
15060  525, 526, 527, 528, -1, -1, 531, 532, 533, 534,
15061  -1, 536, 537, -1, -1, 540, 541, 542, 543, -1,
15062  -1, 546, 547, -1, 549, 550, 551, 552, -1, -1,
15063  -1, -1, -1, 558, 559, -1, -1, -1, 563, 564,
15064  565, 566, -1, 568, 569, -1, 571, 572, -1, 574,
15065  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
15066  585, 586, -1, -1, -1, -1, -1, -1, 593, -1,
15067  -1, 596, -1, -1, -1, 600, 601, 602, 603, 604,
15068  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
15069  615, 616, -1, 5, 619, 7, 8, 9, 10, 11,
15070  625, -1, 14, -1, -1, -1, 18, -1, -1, 21,
15071  -1, 23, 24, 25, 26, 27, 28, -1, 30, -1,
15072  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
15073  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
15074  -1, -1, 54, 55, -1, 57, 58, -1, 60, -1,
15075  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
15076  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
15077  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
15078  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
15079  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
15080  -1, -1, -1, 115, 116, 117, -1, -1, -1, 121,
15081  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
15082  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
15083  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
15084  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
15085  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
15086  172, -1, -1, 175, 176, -1, 178, 179, 180, 181,
15087  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
15088  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
15089  -1, -1, -1, 205, 206, -1, 208, 209, -1, 211,
15090  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
15091  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
15092  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
15093  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
15094  252, 253, -1, -1, 256, -1, -1, 259, 260, -1,
15095  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
15096  -1, 273, 274, -1, -1, 277, -1, -1, -1, -1,
15097  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
15098  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
15099  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
15100  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
15101  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
15102  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
15103  -1, 343, 344, -1, -1, 347, 348, 349, 350, 351,
15104  352, -1, 354, 355, -1, -1, 358, 359, -1, 361,
15105  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
15106  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
15107  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
15108  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
15109  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
15110  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
15111  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
15112  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
15113  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
15114  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
15115  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
15116  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
15117  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
15118  492, 493, -1, -1, 496, 497, 498, 499, 500, 501,
15119  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
15120  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
15121  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
15122  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
15123  542, 543, -1, -1, 546, 547, -1, 549, 550, 551,
15124  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
15125  -1, 563, 564, 565, 566, 567, 568, 569, -1, 571,
15126  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
15127  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
15128  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
15129  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
15130  612, -1, 614, 615, 616, -1, 5, 619, 7, 8,
15131  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
15132  -1, -1, 21, -1, 23, 24, 25, 26, 27, 28,
15133  -1, 30, -1, -1, 33, 34, -1, -1, -1, 38,
15134  -1, -1, 41, 42, 43, -1, 45, -1, 47, 48,
15135  -1, -1, 51, -1, -1, 54, 55, -1, 57, 58,
15136  -1, 60, -1, 62, 63, 64, 65, 66, 67, -1,
15137  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
15138  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
15139  89, -1, -1, -1, 93, -1, -1, 96, -1, 98,
15140  -1, -1, 101, -1, -1, -1, 105, 106, 107, -1,
15141  -1, 110, -1, -1, -1, -1, 115, 116, -1, -1,
15142  -1, 120, 121, 122, -1, 124, -1, -1, -1, 128,
15143  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
15144  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
15145  149, 150, -1, 152, 153, 154, 155, -1, 157, 158,
15146  -1, 160, 161, 162, 163, 164, 165, -1, -1, 168,
15147  169, 170, 171, 172, -1, -1, 175, 176, -1, 178,
15148  179, 180, -1, -1, 183, -1, -1, -1, 187, 188,
15149  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
15150  199, -1, 201, -1, -1, -1, 205, 206, -1, 208,
15151  -1, -1, 211, 212, -1, -1, -1, 216, 217, 218,
15152  219, -1, -1, 222, 223, 224, -1, -1, 227, -1,
15153  -1, -1, -1, 232, 233, -1, -1, -1, 237, -1,
15154  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
15155  249, -1, -1, 252, 253, -1, -1, 256, -1, -1,
15156  259, 260, 261, -1, -1, -1, -1, 266, 267, -1,
15157  269, -1, 271, -1, 273, 274, -1, -1, -1, -1,
15158  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
15159  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
15160  299, 300, -1, 302, 303, 304, -1, 306, 307, 308,
15161  309, -1, 311, 312, -1, -1, -1, -1, 317, 318,
15162  319, 320, 321, 322, -1, -1, 325, 326, -1, 328,
15163  -1, 330, -1, 332, 333, 334, 335, 336, 337, 338,
15164  339, 340, -1, -1, 343, 344, -1, -1, 347, 348,
15165  349, 350, -1, -1, -1, 354, 355, -1, -1, -1,
15166  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
15167  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
15168  379, 380, 381, -1, 383, 384, -1, 386, 387, 388,
15169  389, 390, 391, 392, 393, 394, 395, -1, -1, 398,
15170  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
15171  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
15172  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
15173  429, 430, -1, 432, 433, -1, 435, 436, 437, -1,
15174  -1, 440, -1, 442, -1, 444, 445, -1, 447, 448,
15175  449, -1, 451, -1, -1, 454, 455, 456, 457, 458,
15176  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
15177  -1, -1, 471, 472, 473, 474, -1, -1, 477, 478,
15178  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
15179  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
15180  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
15181  509, -1, -1, 512, 513, 514, 515, 516, 517, -1,
15182  -1, 520, 521, -1, 523, 524, 525, 526, 527, 528,
15183  -1, -1, 531, 532, 533, 534, -1, 536, 537, -1,
15184  -1, 540, 541, 542, 543, -1, 545, 546, 547, -1,
15185  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
15186  559, -1, -1, -1, 563, 564, 565, 566, -1, 568,
15187  569, -1, 571, 572, -1, 574, 575, -1, -1, 578,
15188  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
15189  -1, -1, -1, -1, 593, -1, -1, 596, -1, -1,
15190  -1, 600, 601, 602, 603, 604, -1, -1, -1, -1,
15191  -1, -1, 611, 612, -1, 614, 615, 616, -1, 5,
15192  619, 7, 8, 9, 10, 11, -1, -1, 14, -1,
15193  -1, -1, 18, -1, -1, 21, -1, 23, 24, 25,
15194  26, 27, 28, -1, 30, -1, -1, 33, 34, -1,
15195  -1, -1, 38, -1, -1, 41, 42, 43, -1, 45,
15196  -1, 47, 48, -1, -1, 51, -1, -1, 54, 55,
15197  -1, 57, 58, -1, 60, -1, 62, 63, 64, 65,
15198  66, 67, -1, 69, 70, -1, 72, 73, 74, 75,
15199  76, 77, 78, 79, 80, -1, 82, 83, -1, 85,
15200  86, 87, 88, 89, -1, -1, -1, 93, -1, -1,
15201  96, -1, 98, -1, -1, 101, -1, -1, -1, 105,
15202  106, 107, -1, -1, 110, -1, -1, -1, -1, 115,
15203  116, -1, -1, -1, 120, 121, 122, -1, 124, -1,
15204  -1, -1, 128, -1, 130, 131, 132, 133, 134, -1,
15205  -1, -1, 138, -1, -1, 141, 142, 143, -1, -1,
15206  -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
15207  -1, 157, 158, -1, 160, 161, 162, 163, 164, 165,
15208  -1, -1, 168, 169, 170, 171, 172, -1, -1, 175,
15209  176, -1, 178, 179, 180, -1, -1, 183, -1, -1,
15210  -1, 187, 188, -1, 190, -1, 192, -1, 194, 195,
15211  196, 197, -1, 199, -1, 201, -1, -1, -1, 205,
15212  206, -1, 208, -1, -1, 211, 212, -1, -1, -1,
15213  216, 217, 218, 219, -1, -1, 222, 223, 224, -1,
15214  -1, 227, -1, -1, -1, -1, 232, 233, -1, -1,
15215  -1, 237, -1, -1, -1, 241, 242, -1, 244, 245,
15216  -1, -1, -1, 249, -1, -1, 252, 253, -1, -1,
15217  256, -1, -1, 259, 260, 261, -1, -1, -1, -1,
15218  266, 267, -1, 269, -1, 271, -1, 273, 274, -1,
15219  -1, -1, -1, -1, -1, -1, 282, -1, 284, 285,
15220  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
15221  296, 297, 298, 299, 300, -1, 302, 303, 304, -1,
15222  306, 307, 308, 309, -1, 311, 312, -1, -1, -1,
15223  -1, 317, 318, 319, 320, 321, 322, -1, -1, 325,
15224  326, -1, 328, -1, 330, -1, 332, 333, 334, 335,
15225  336, 337, 338, 339, 340, -1, -1, 343, 344, -1,
15226  -1, 347, 348, 349, 350, -1, -1, -1, 354, 355,
15227  -1, -1, -1, 359, -1, 361, 362, 363, -1, 365,
15228  366, 367, -1, 369, -1, -1, -1, -1, -1, -1,
15229  -1, -1, -1, 379, 380, 381, -1, 383, 384, -1,
15230  386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
15231  -1, -1, 398, 399, 400, -1, 402, -1, 404, 405,
15232  406, 407, 408, -1, 410, 411, 412, -1, -1, 415,
15233  -1, -1, -1, 419, 420, 421, 422, 423, -1, -1,
15234  426, 427, 428, 429, 430, -1, 432, 433, -1, 435,
15235  436, 437, -1, -1, 440, -1, 442, -1, 444, 445,
15236  -1, 447, 448, 449, -1, 451, -1, -1, 454, 455,
15237  456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
15238  466, 467, -1, -1, -1, 471, 472, 473, 474, -1,
15239  -1, -1, 478, -1, -1, -1, 482, -1, 484, 485,
15240  486, 487, -1, 489, 490, 491, 492, 493, -1, -1,
15241  -1, -1, -1, 499, 500, 501, -1, 503, 504, -1,
15242  506, -1, -1, 509, -1, -1, 512, 513, 514, 515,
15243  516, 517, -1, -1, 520, 521, -1, 523, 524, 525,
15244  526, 527, 528, -1, -1, 531, 532, 533, 534, -1,
15245  536, 537, -1, -1, 540, 541, 542, 543, -1, 545,
15246  546, 547, -1, 549, 550, 551, 552, -1, -1, -1,
15247  -1, -1, 558, 559, -1, -1, -1, 563, 564, 565,
15248  566, -1, 568, 569, -1, 571, 572, -1, 574, 575,
15249  -1, -1, 578, -1, -1, 581, -1, 583, -1, 585,
15250  586, -1, -1, -1, -1, -1, -1, 593, -1, -1,
15251  596, -1, -1, -1, 600, 601, 602, 603, 604, -1,
15252  -1, -1, -1, -1, -1, 611, 612, -1, 614, 615,
15253  616, -1, 5, 619, 7, 8, 9, 10, 11, -1,
15254  -1, 14, -1, -1, -1, 18, -1, -1, 21, -1,
15255  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
15256  -1, 34, -1, -1, -1, 38, -1, -1, 41, 42,
15257  43, -1, 45, -1, 47, 48, -1, -1, 51, -1,
15258  -1, 54, 55, -1, 57, 58, -1, 60, -1, 62,
15259  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
15260  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
15261  83, -1, 85, 86, 87, 88, 89, -1, -1, -1,
15262  93, -1, -1, 96, -1, 98, -1, -1, 101, -1,
15263  -1, -1, 105, 106, 107, -1, -1, 110, -1, -1,
15264  -1, -1, 115, 116, -1, -1, -1, -1, 121, 122,
15265  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
15266  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
15267  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
15268  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
15269  163, 164, 165, -1, -1, 168, 169, 170, 171, 172,
15270  -1, -1, 175, 176, -1, 178, 179, 180, -1, -1,
15271  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
15272  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
15273  -1, -1, 205, 206, -1, 208, -1, -1, 211, 212,
15274  -1, -1, -1, 216, 217, 218, 219, -1, -1, 222,
15275  223, 224, -1, -1, 227, -1, -1, -1, -1, 232,
15276  233, -1, -1, -1, 237, -1, -1, -1, 241, 242,
15277  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
15278  253, -1, -1, 256, -1, -1, 259, 260, -1, -1,
15279  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
15280  273, 274, -1, -1, 277, -1, -1, -1, -1, 282,
15281  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
15282  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
15283  303, 304, -1, 306, 307, 308, 309, -1, 311, 312,
15284  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
15285  -1, -1, 325, 326, -1, 328, -1, 330, -1, 332,
15286  333, 334, 335, 336, 337, 338, 339, 340, -1, -1,
15287  343, 344, -1, -1, 347, 348, 349, 350, -1, -1,
15288  -1, 354, 355, -1, -1, 358, 359, -1, 361, 362,
15289  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
15290  -1, -1, -1, -1, -1, -1, 379, 380, 381, 382,
15291  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
15292  393, 394, 395, -1, -1, 398, 399, 400, -1, 402,
15293  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
15294  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
15295  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
15296  433, -1, 435, 436, 437, -1, -1, 440, -1, 442,
15297  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
15298  -1, 454, 455, 456, 457, 458, 459, 460, 461, 462,
15299  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
15300  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
15301  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
15302  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
15303  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
15304  513, 514, 515, 516, 517, -1, -1, 520, 521, -1,
15305  523, 524, 525, 526, 527, 528, -1, -1, 531, 532,
15306  533, 534, -1, 536, 537, -1, -1, 540, 541, 542,
15307  543, -1, -1, 546, 547, -1, 549, 550, 551, 552,
15308  -1, -1, -1, -1, -1, 558, 559, -1, -1, -1,
15309  563, 564, 565, 566, 567, 568, 569, -1, 571, 572,
15310  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
15311  583, -1, 585, 586, -1, -1, -1, -1, -1, -1,
15312  593, -1, -1, 596, -1, -1, -1, 600, 601, 602,
15313  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
15314  -1, 614, 615, 616, -1, 5, 619, 7, 8, 9,
15315  10, 11, -1, -1, 14, -1, -1, -1, 18, -1,
15316  -1, 21, -1, 23, 24, 25, 26, 27, 28, -1,
15317  30, -1, -1, 33, 34, -1, -1, -1, 38, -1,
15318  -1, 41, 42, 43, -1, 45, -1, 47, 48, -1,
15319  -1, 51, -1, -1, 54, 55, -1, 57, 58, -1,
15320  60, -1, 62, 63, 64, 65, 66, 67, -1, 69,
15321  70, -1, 72, 73, 74, 75, 76, 77, 78, 79,
15322  80, -1, 82, 83, -1, 85, 86, 87, 88, 89,
15323  -1, -1, -1, 93, -1, -1, 96, -1, 98, -1,
15324  -1, 101, -1, -1, -1, 105, 106, 107, -1, -1,
15325  110, -1, -1, -1, -1, 115, 116, -1, -1, -1,
15326  120, 121, 122, -1, 124, -1, -1, -1, 128, -1,
15327  130, 131, 132, 133, 134, -1, -1, -1, 138, -1,
15328  -1, 141, 142, 143, -1, -1, -1, 147, -1, 149,
15329  150, -1, 152, 153, 154, -1, -1, 157, 158, -1,
15330  160, 161, 162, 163, 164, 165, -1, -1, 168, 169,
15331  170, 171, 172, -1, -1, 175, 176, -1, 178, 179,
15332  180, -1, -1, 183, -1, -1, -1, 187, 188, -1,
15333  190, -1, 192, -1, 194, 195, 196, 197, -1, 199,
15334  -1, 201, -1, -1, -1, 205, 206, -1, 208, -1,
15335  -1, 211, 212, -1, -1, -1, 216, 217, 218, 219,
15336  -1, -1, 222, 223, 224, -1, -1, 227, -1, -1,
15337  -1, -1, 232, 233, -1, -1, -1, 237, -1, -1,
15338  -1, 241, 242, -1, 244, 245, -1, -1, -1, 249,
15339  -1, -1, 252, 253, -1, -1, 256, -1, -1, 259,
15340  260, 261, -1, -1, -1, -1, 266, 267, -1, 269,
15341  -1, 271, -1, 273, 274, -1, -1, -1, -1, -1,
15342  -1, -1, 282, -1, 284, 285, 286, 287, 288, 289,
15343  290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
15344  300, -1, 302, 303, 304, -1, 306, 307, 308, 309,
15345  -1, 311, 312, -1, -1, -1, -1, 317, 318, 319,
15346  320, 321, 322, -1, -1, 325, 326, -1, 328, -1,
15347  330, -1, 332, 333, 334, 335, 336, 337, 338, 339,
15348  340, -1, -1, 343, 344, -1, -1, 347, 348, 349,
15349  350, -1, -1, -1, 354, 355, -1, -1, -1, 359,
15350  -1, 361, 362, 363, -1, 365, 366, 367, -1, 369,
15351  -1, -1, -1, -1, -1, -1, -1, -1, -1, 379,
15352  380, 381, -1, 383, 384, -1, 386, 387, 388, 389,
15353  390, 391, 392, 393, 394, 395, -1, -1, 398, 399,
15354  400, -1, 402, -1, 404, 405, 406, 407, 408, -1,
15355  410, 411, 412, -1, -1, 415, -1, -1, -1, 419,
15356  420, 421, 422, 423, -1, -1, 426, 427, 428, 429,
15357  430, -1, 432, 433, -1, 435, 436, 437, -1, -1,
15358  440, -1, 442, -1, 444, 445, -1, 447, 448, 449,
15359  -1, 451, -1, -1, 454, 455, 456, 457, 458, 459,
15360  460, 461, 462, 463, 464, -1, 466, 467, -1, -1,
15361  -1, 471, 472, 473, 474, -1, -1, -1, 478, -1,
15362  -1, -1, 482, -1, 484, 485, 486, 487, -1, 489,
15363  490, 491, 492, 493, -1, -1, -1, -1, -1, 499,
15364  500, 501, -1, 503, 504, -1, 506, -1, -1, 509,
15365  -1, -1, 512, 513, 514, 515, 516, 517, -1, -1,
15366  520, 521, -1, 523, 524, 525, 526, 527, 528, -1,
15367  -1, 531, 532, 533, 534, -1, 536, 537, -1, -1,
15368  540, 541, 542, 543, -1, 545, 546, 547, -1, 549,
15369  550, 551, 552, -1, -1, -1, -1, -1, 558, 559,
15370  -1, -1, -1, 563, 564, 565, 566, -1, 568, 569,
15371  -1, 571, 572, -1, 574, 575, -1, -1, 578, -1,
15372  -1, 581, -1, 583, -1, 585, 586, -1, -1, -1,
15373  -1, -1, -1, 593, -1, -1, 596, -1, -1, -1,
15374  600, 601, 602, 603, 604, -1, -1, -1, -1, -1,
15375  -1, 611, 612, -1, 614, 615, 616, -1, 5, 619,
15376  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
15377  -1, 18, -1, -1, 21, -1, 23, 24, 25, 26,
15378  27, 28, -1, 30, -1, -1, -1, 34, -1, -1,
15379  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
15380  47, 48, -1, -1, 51, -1, -1, 54, 55, -1,
15381  57, 58, -1, 60, -1, 62, 63, 64, 65, 66,
15382  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
15383  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
15384  87, 88, 89, -1, -1, -1, 93, -1, -1, 96,
15385  -1, 98, 99, -1, 101, -1, -1, -1, 105, 106,
15386  107, -1, -1, 110, -1, -1, -1, -1, 115, 116,
15387  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
15388  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
15389  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
15390  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
15391  157, 158, -1, 160, 161, 162, 163, 164, 165, -1,
15392  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
15393  -1, 178, 179, 180, -1, -1, 183, -1, -1, -1,
15394  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
15395  197, -1, 199, -1, 201, -1, -1, -1, 205, 206,
15396  -1, 208, -1, -1, 211, 212, -1, -1, -1, 216,
15397  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
15398  227, -1, -1, -1, -1, 232, 233, -1, -1, -1,
15399  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
15400  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
15401  -1, -1, 259, 260, 261, -1, -1, -1, -1, 266,
15402  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
15403  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
15404  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
15405  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
15406  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
15407  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
15408  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
15409  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
15410  347, 348, 349, 350, -1, -1, -1, 354, 355, -1,
15411  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
15412  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
15413  -1, -1, 379, 380, 381, -1, 383, 384, -1, 386,
15414  387, 388, 389, 390, 391, 392, 393, 394, 395, -1,
15415  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
15416  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
15417  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
15418  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
15419  437, -1, -1, 440, -1, 442, -1, 444, 445, -1,
15420  447, 448, 449, -1, 451, -1, -1, 454, 455, 456,
15421  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
15422  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
15423  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
15424  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
15425  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
15426  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
15427  517, -1, -1, 520, 521, -1, 523, 524, 525, 526,
15428  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
15429  537, -1, -1, 540, 541, 542, 543, -1, 545, 546,
15430  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
15431  -1, 558, 559, -1, -1, -1, 563, 564, 565, 566,
15432  -1, 568, 569, -1, 571, 572, -1, 574, 575, -1,
15433  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
15434  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
15435  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
15436  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
15437  -1, 5, 619, 7, 8, 9, 10, 11, 12, -1,
15438  14, -1, -1, -1, 18, -1, -1, 21, -1, 23,
15439  24, 25, 26, 27, 28, -1, 30, -1, -1, -1,
15440  34, -1, -1, -1, 38, -1, -1, 41, 42, 43,
15441  -1, 45, -1, 47, 48, -1, -1, 51, -1, -1,
15442  54, 55, -1, 57, 58, -1, 60, -1, 62, 63,
15443  64, 65, 66, 67, -1, 69, 70, -1, 72, 73,
15444  74, 75, 76, 77, 78, 79, 80, -1, 82, 83,
15445  -1, 85, 86, 87, 88, 89, -1, -1, -1, 93,
15446  -1, -1, 96, -1, 98, -1, -1, 101, -1, -1,
15447  -1, 105, 106, 107, -1, -1, 110, -1, -1, -1,
15448  -1, 115, 116, -1, -1, -1, -1, 121, 122, -1,
15449  124, -1, -1, -1, 128, -1, 130, 131, 132, 133,
15450  134, -1, -1, -1, 138, -1, -1, 141, 142, 143,
15451  -1, -1, -1, 147, -1, 149, 150, -1, 152, 153,
15452  154, -1, -1, 157, 158, -1, 160, 161, 162, 163,
15453  164, 165, -1, -1, 168, 169, 170, 171, 172, -1,
15454  -1, 175, 176, -1, 178, 179, 180, -1, -1, 183,
15455  -1, -1, -1, 187, 188, -1, 190, -1, 192, -1,
15456  194, 195, 196, 197, -1, 199, -1, 201, -1, -1,
15457  -1, 205, 206, -1, 208, -1, -1, 211, 212, -1,
15458  -1, -1, 216, 217, 218, 219, -1, -1, 222, 223,
15459  224, -1, -1, 227, -1, -1, -1, -1, 232, 233,
15460  -1, -1, -1, 237, -1, -1, -1, 241, 242, -1,
15461  244, 245, -1, -1, -1, 249, -1, -1, 252, 253,
15462  -1, -1, 256, -1, -1, 259, 260, 261, -1, -1,
15463  -1, -1, 266, 267, -1, 269, -1, 271, -1, 273,
15464  274, -1, -1, -1, -1, -1, -1, -1, 282, -1,
15465  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
15466  294, 295, 296, 297, 298, 299, 300, -1, 302, 303,
15467  304, -1, 306, 307, 308, 309, -1, 311, 312, -1,
15468  -1, -1, -1, 317, 318, 319, 320, 321, 322, -1,
15469  -1, 325, 326, -1, 328, -1, 330, -1, 332, 333,
15470  334, 335, 336, 337, 338, 339, 340, -1, -1, 343,
15471  344, -1, -1, 347, 348, 349, 350, -1, -1, -1,
15472  354, 355, -1, -1, -1, 359, -1, 361, 362, 363,
15473  -1, 365, 366, 367, -1, 369, -1, -1, -1, -1,
15474  -1, -1, -1, -1, -1, 379, 380, 381, -1, 383,
15475  384, -1, 386, 387, 388, 389, 390, 391, 392, 393,
15476  394, 395, -1, -1, 398, 399, 400, -1, 402, -1,
15477  404, 405, 406, 407, 408, -1, 410, 411, 412, -1,
15478  -1, 415, -1, -1, -1, 419, 420, 421, 422, 423,
15479  -1, -1, 426, 427, 428, 429, 430, -1, 432, 433,
15480  -1, 435, 436, 437, -1, -1, 440, -1, 442, -1,
15481  444, 445, -1, 447, 448, 449, -1, 451, -1, -1,
15482  454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
15483  464, -1, 466, 467, -1, -1, -1, 471, 472, 473,
15484  474, -1, -1, -1, 478, -1, -1, -1, 482, -1,
15485  484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
15486  -1, -1, -1, -1, -1, 499, 500, 501, -1, 503,
15487  504, -1, 506, -1, -1, 509, -1, -1, 512, 513,
15488  514, 515, 516, 517, -1, -1, 520, 521, -1, 523,
15489  524, 525, 526, 527, 528, -1, -1, 531, 532, 533,
15490  534, -1, 536, 537, -1, -1, 540, 541, 542, 543,
15491  -1, 545, 546, 547, -1, 549, 550, 551, 552, -1,
15492  -1, -1, -1, -1, 558, 559, -1, -1, -1, 563,
15493  564, 565, 566, -1, 568, 569, -1, 571, 572, -1,
15494  574, 575, -1, -1, 578, -1, -1, 581, -1, 583,
15495  -1, 585, 586, -1, -1, -1, -1, -1, -1, 593,
15496  -1, -1, 596, -1, -1, -1, 600, 601, 602, 603,
15497  604, -1, -1, -1, -1, -1, -1, 611, 612, -1,
15498  614, 615, 616, -1, 5, 619, 7, 8, 9, 10,
15499  11, -1, -1, 14, -1, -1, -1, 18, -1, -1,
15500  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
15501  -1, -1, -1, 34, 35, -1, -1, 38, -1, -1,
15502  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
15503  51, -1, -1, 54, 55, -1, 57, 58, -1, 60,
15504  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
15505  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
15506  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
15507  -1, -1, 93, -1, -1, 96, -1, 98, -1, -1,
15508  101, -1, -1, -1, 105, 106, 107, -1, -1, 110,
15509  -1, -1, -1, -1, 115, 116, -1, -1, -1, -1,
15510  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
15511  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
15512  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
15513  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
15514  161, 162, 163, 164, 165, -1, -1, 168, 169, 170,
15515  171, 172, -1, -1, 175, 176, -1, 178, 179, 180,
15516  -1, -1, 183, -1, -1, -1, 187, 188, -1, 190,
15517  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
15518  201, -1, -1, -1, 205, 206, -1, 208, 209, -1,
15519  211, 212, -1, -1, -1, 216, 217, 218, 219, -1,
15520  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
15521  -1, 232, 233, -1, -1, -1, 237, -1, -1, -1,
15522  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
15523  -1, 252, 253, -1, -1, 256, -1, -1, 259, 260,
15524  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
15525  271, -1, 273, 274, -1, -1, -1, -1, -1, -1,
15526  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
15527  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
15528  -1, 302, 303, 304, -1, 306, 307, 308, 309, -1,
15529  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
15530  321, 322, -1, -1, 325, 326, -1, 328, -1, 330,
15531  -1, 332, 333, 334, 335, 336, 337, 338, 339, 340,
15532  -1, -1, 343, 344, -1, -1, 347, 348, 349, 350,
15533  -1, -1, -1, 354, 355, -1, -1, -1, 359, -1,
15534  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
15535  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
15536  381, -1, 383, 384, -1, 386, 387, 388, 389, 390,
15537  391, 392, 393, 394, 395, -1, -1, 398, 399, 400,
15538  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
15539  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
15540  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
15541  -1, 432, 433, -1, 435, 436, 437, -1, -1, 440,
15542  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
15543  451, -1, -1, 454, 455, 456, 457, 458, 459, 460,
15544  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
15545  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
15546  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
15547  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
15548  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
15549  -1, 512, 513, 514, 515, 516, 517, -1, -1, 520,
15550  521, -1, 523, 524, 525, 526, 527, 528, -1, -1,
15551  531, 532, 533, 534, -1, 536, 537, -1, -1, 540,
15552  541, 542, 543, -1, 545, 546, 547, -1, 549, 550,
15553  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
15554  -1, -1, 563, 564, 565, 566, -1, 568, 569, -1,
15555  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
15556  581, -1, 583, -1, 585, 586, -1, -1, -1, -1,
15557  -1, -1, 593, -1, -1, 596, -1, -1, -1, 600,
15558  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
15559  611, 612, -1, 614, 615, 616, -1, 5, 619, 7,
15560  8, 9, 10, 11, -1, -1, 14, -1, -1, -1,
15561  18, -1, -1, 21, -1, 23, 24, 25, 26, 27,
15562  28, -1, 30, -1, -1, -1, 34, -1, -1, -1,
15563  38, -1, -1, 41, 42, 43, -1, 45, -1, 47,
15564  48, -1, -1, 51, -1, -1, 54, 55, -1, 57,
15565  58, -1, 60, -1, 62, 63, 64, 65, 66, 67,
15566  -1, 69, 70, -1, 72, 73, 74, 75, 76, 77,
15567  78, 79, 80, -1, 82, 83, -1, 85, 86, 87,
15568  88, 89, -1, -1, -1, 93, -1, -1, 96, -1,
15569  98, -1, -1, 101, -1, -1, -1, 105, 106, 107,
15570  -1, -1, 110, -1, -1, -1, -1, 115, 116, -1,
15571  -1, -1, 120, 121, 122, -1, 124, -1, -1, -1,
15572  128, -1, 130, 131, 132, 133, 134, -1, -1, -1,
15573  138, -1, -1, 141, 142, 143, -1, -1, -1, 147,
15574  -1, 149, 150, -1, 152, 153, 154, -1, -1, 157,
15575  158, -1, 160, 161, 162, 163, 164, 165, -1, -1,
15576  168, 169, 170, 171, 172, -1, -1, 175, 176, -1,
15577  178, 179, 180, -1, -1, 183, -1, -1, -1, 187,
15578  188, -1, 190, -1, 192, -1, 194, 195, 196, 197,
15579  -1, 199, -1, 201, -1, -1, -1, 205, 206, -1,
15580  208, -1, -1, 211, 212, -1, -1, -1, 216, 217,
15581  218, 219, -1, -1, 222, 223, 224, -1, -1, 227,
15582  -1, -1, -1, -1, 232, 233, -1, -1, -1, 237,
15583  -1, -1, -1, 241, 242, -1, 244, 245, -1, -1,
15584  -1, 249, -1, -1, 252, 253, -1, -1, 256, -1,
15585  -1, 259, 260, 261, -1, -1, -1, -1, 266, 267,
15586  -1, 269, -1, 271, -1, 273, 274, -1, -1, -1,
15587  -1, -1, -1, -1, 282, -1, 284, 285, 286, 287,
15588  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
15589  298, 299, 300, -1, 302, 303, 304, -1, 306, 307,
15590  308, 309, -1, 311, 312, -1, -1, -1, -1, 317,
15591  318, 319, 320, 321, 322, -1, -1, 325, 326, -1,
15592  328, -1, 330, -1, 332, 333, 334, 335, 336, 337,
15593  338, 339, 340, -1, -1, 343, 344, -1, -1, 347,
15594  348, 349, 350, -1, -1, -1, 354, 355, -1, -1,
15595  -1, 359, -1, 361, 362, 363, -1, 365, 366, 367,
15596  -1, 369, -1, -1, -1, -1, -1, -1, -1, -1,
15597  -1, 379, 380, 381, -1, 383, 384, -1, 386, 387,
15598  388, 389, 390, 391, 392, 393, 394, 395, -1, -1,
15599  398, 399, 400, -1, 402, -1, 404, 405, 406, 407,
15600  408, -1, 410, 411, 412, -1, -1, 415, -1, -1,
15601  -1, 419, 420, 421, 422, 423, -1, -1, 426, 427,
15602  428, 429, 430, -1, 432, 433, -1, 435, 436, 437,
15603  -1, -1, 440, -1, 442, -1, 444, 445, -1, 447,
15604  448, 449, -1, 451, -1, -1, 454, 455, 456, 457,
15605  458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
15606  -1, -1, -1, 471, 472, 473, 474, -1, -1, -1,
15607  478, -1, -1, -1, 482, -1, 484, 485, 486, 487,
15608  -1, 489, 490, 491, 492, 493, -1, -1, -1, -1,
15609  -1, 499, 500, 501, -1, 503, 504, -1, 506, -1,
15610  -1, 509, -1, -1, 512, 513, 514, 515, 516, 517,
15611  -1, -1, 520, 521, -1, 523, 524, 525, 526, 527,
15612  528, -1, -1, 531, 532, 533, 534, -1, 536, 537,
15613  -1, -1, 540, 541, 542, 543, -1, 545, 546, 547,
15614  -1, 549, 550, 551, 552, -1, -1, -1, -1, -1,
15615  558, 559, -1, -1, -1, 563, 564, 565, 566, -1,
15616  568, 569, -1, 571, 572, -1, 574, 575, -1, -1,
15617  578, -1, -1, 581, -1, 583, -1, 585, 586, -1,
15618  -1, -1, -1, -1, -1, 593, -1, -1, 596, -1,
15619  -1, -1, 600, 601, 602, 603, 604, -1, -1, -1,
15620  -1, -1, -1, 611, 612, -1, 614, 615, 616, -1,
15621  5, 619, 7, 8, 9, 10, 11, -1, -1, 14,
15622  -1, -1, -1, 18, -1, -1, 21, -1, 23, 24,
15623  25, 26, 27, 28, -1, 30, -1, -1, 33, 34,
15624  -1, -1, -1, 38, -1, -1, 41, 42, 43, -1,
15625  45, -1, 47, 48, -1, -1, 51, -1, -1, 54,
15626  55, -1, 57, 58, -1, 60, -1, 62, 63, 64,
15627  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
15628  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
15629  85, 86, 87, 88, 89, -1, -1, -1, 93, -1,
15630  -1, 96, -1, 98, -1, -1, 101, -1, -1, -1,
15631  105, 106, 107, -1, -1, 110, -1, -1, -1, -1,
15632  115, 116, -1, -1, -1, -1, 121, 122, -1, 124,
15633  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
15634  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
15635  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
15636  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
15637  165, -1, -1, 168, 169, 170, 171, 172, -1, -1,
15638  175, 176, -1, 178, 179, 180, -1, -1, 183, -1,
15639  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
15640  195, 196, 197, -1, 199, -1, 201, -1, -1, -1,
15641  205, 206, -1, 208, -1, -1, 211, 212, -1, -1,
15642  -1, 216, 217, 218, 219, -1, -1, 222, 223, 224,
15643  -1, -1, 227, -1, -1, -1, -1, 232, 233, -1,
15644  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
15645  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
15646  -1, 256, -1, -1, 259, 260, 261, -1, -1, -1,
15647  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
15648  -1, -1, -1, -1, -1, -1, -1, 282, -1, 284,
15649  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
15650  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
15651  -1, 306, 307, 308, 309, -1, 311, 312, -1, -1,
15652  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
15653  325, 326, -1, 328, -1, 330, -1, 332, 333, 334,
15654  335, 336, 337, 338, 339, 340, -1, -1, 343, 344,
15655  -1, -1, 347, 348, 349, 350, -1, -1, -1, 354,
15656  355, -1, -1, -1, 359, -1, 361, 362, 363, -1,
15657  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
15658  -1, -1, -1, -1, 379, 380, 381, -1, 383, 384,
15659  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
15660  395, -1, -1, 398, 399, 400, -1, 402, -1, 404,
15661  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
15662  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
15663  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
15664  435, 436, 437, -1, -1, 440, -1, 442, -1, 444,
15665  445, -1, 447, 448, 449, -1, 451, -1, -1, 454,
15666  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
15667  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
15668  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
15669  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
15670  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
15671  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
15672  515, 516, 517, -1, -1, 520, 521, -1, 523, 524,
15673  525, 526, 527, 528, -1, -1, 531, 532, 533, 534,
15674  -1, 536, 537, -1, -1, 540, 541, 542, 543, -1,
15675  545, 546, 547, -1, 549, 550, 551, 552, -1, -1,
15676  -1, -1, -1, 558, 559, -1, -1, -1, 563, 564,
15677  565, 566, -1, 568, 569, -1, 571, 572, -1, 574,
15678  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
15679  585, 586, -1, -1, -1, -1, -1, -1, 593, -1,
15680  -1, 596, -1, -1, -1, 600, 601, 602, 603, 604,
15681  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
15682  615, 616, -1, 5, 619, 7, 8, 9, 10, 11,
15683  -1, -1, 14, -1, -1, -1, 18, -1, -1, 21,
15684  -1, 23, 24, 25, 26, 27, 28, -1, 30, -1,
15685  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
15686  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
15687  -1, -1, 54, 55, -1, 57, 58, -1, 60, -1,
15688  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
15689  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
15690  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
15691  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
15692  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
15693  -1, -1, -1, 115, 116, -1, -1, -1, -1, 121,
15694  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
15695  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
15696  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
15697  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
15698  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
15699  172, -1, -1, 175, 176, -1, 178, 179, 180, -1,
15700  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
15701  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
15702  -1, -1, -1, 205, 206, -1, 208, -1, -1, 211,
15703  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
15704  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
15705  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
15706  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
15707  252, 253, -1, -1, 256, -1, -1, 259, 260, 261,
15708  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
15709  -1, 273, 274, -1, -1, -1, -1, -1, -1, -1,
15710  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
15711  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
15712  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
15713  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
15714  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
15715  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
15716  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
15717  -1, -1, 354, 355, -1, -1, -1, 359, -1, 361,
15718  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
15719  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
15720  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
15721  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
15722  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
15723  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
15724  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
15725  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
15726  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
15727  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
15728  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
15729  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
15730  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
15731  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
15732  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
15733  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
15734  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
15735  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
15736  542, 543, -1, 545, 546, 547, -1, 549, 550, 551,
15737  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
15738  -1, 563, 564, 565, 566, -1, 568, 569, -1, 571,
15739  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
15740  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
15741  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
15742  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
15743  612, -1, 614, 615, 616, -1, 5, 619, 7, 8,
15744  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
15745  19, -1, 21, -1, 23, 24, 25, 26, 27, 28,
15746  -1, 30, -1, -1, -1, 34, -1, -1, -1, 38,
15747  -1, -1, 41, 42, 43, -1, 45, -1, 47, 48,
15748  -1, -1, 51, -1, -1, 54, 55, -1, 57, 58,
15749  -1, 60, -1, 62, 63, 64, 65, 66, 67, -1,
15750  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
15751  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
15752  89, -1, -1, -1, 93, -1, -1, 96, -1, 98,
15753  -1, -1, 101, -1, -1, -1, 105, 106, 107, -1,
15754  -1, 110, -1, -1, -1, -1, 115, 116, -1, -1,
15755  -1, -1, 121, 122, -1, 124, -1, -1, -1, 128,
15756  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
15757  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
15758  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
15759  -1, 160, 161, 162, 163, 164, 165, -1, -1, 168,
15760  169, 170, 171, 172, -1, -1, 175, 176, -1, 178,
15761  179, 180, -1, -1, 183, -1, -1, -1, 187, 188,
15762  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
15763  199, -1, 201, -1, -1, -1, 205, 206, -1, 208,
15764  -1, -1, 211, 212, -1, -1, -1, 216, 217, 218,
15765  219, -1, -1, 222, 223, 224, -1, -1, 227, -1,
15766  -1, -1, -1, 232, 233, -1, -1, -1, 237, -1,
15767  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
15768  249, -1, -1, 252, 253, -1, -1, 256, -1, -1,
15769  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
15770  269, -1, 271, -1, 273, 274, -1, -1, -1, -1,
15771  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
15772  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
15773  299, 300, -1, 302, 303, 304, -1, 306, 307, 308,
15774  309, -1, 311, 312, -1, -1, -1, -1, 317, 318,
15775  319, 320, 321, 322, -1, -1, 325, 326, -1, 328,
15776  -1, 330, -1, 332, 333, 334, 335, 336, 337, 338,
15777  339, 340, -1, -1, 343, 344, -1, -1, 347, 348,
15778  349, 350, -1, -1, -1, 354, 355, -1, -1, -1,
15779  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
15780  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
15781  379, 380, 381, -1, 383, 384, -1, 386, 387, 388,
15782  389, 390, 391, 392, 393, 394, 395, -1, -1, 398,
15783  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
15784  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
15785  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
15786  429, 430, -1, 432, 433, -1, 435, 436, 437, -1,
15787  -1, 440, -1, 442, -1, 444, 445, -1, 447, 448,
15788  449, -1, 451, -1, -1, 454, 455, 456, 457, 458,
15789  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
15790  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
15791  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
15792  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
15793  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
15794  509, -1, -1, 512, 513, 514, 515, 516, 517, -1,
15795  -1, 520, 521, -1, 523, 524, 525, 526, 527, 528,
15796  -1, -1, 531, 532, 533, 534, -1, 536, 537, -1,
15797  -1, 540, 541, 542, 543, -1, 545, 546, 547, -1,
15798  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
15799  559, -1, -1, -1, 563, 564, 565, 566, -1, 568,
15800  569, -1, 571, 572, -1, 574, 575, -1, -1, 578,
15801  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
15802  -1, -1, -1, -1, 593, -1, -1, 596, -1, -1,
15803  -1, 600, 601, 602, 603, 604, -1, -1, -1, -1,
15804  -1, -1, 611, 612, -1, 614, 615, 616, -1, 5,
15805  619, 7, 8, 9, 10, 11, -1, -1, 14, -1,
15806  -1, -1, 18, -1, -1, 21, -1, 23, 24, 25,
15807  26, 27, 28, -1, 30, -1, -1, -1, 34, -1,
15808  -1, -1, 38, -1, -1, 41, 42, 43, -1, 45,
15809  -1, 47, 48, -1, -1, 51, -1, -1, 54, 55,
15810  -1, 57, 58, -1, 60, -1, 62, 63, 64, 65,
15811  66, 67, -1, 69, 70, -1, 72, 73, 74, 75,
15812  76, 77, 78, 79, 80, -1, 82, 83, -1, 85,
15813  86, 87, 88, 89, 90, -1, -1, 93, -1, -1,
15814  96, -1, 98, -1, -1, 101, -1, -1, -1, 105,
15815  106, 107, -1, -1, 110, -1, -1, -1, -1, 115,
15816  116, -1, -1, -1, -1, 121, 122, -1, 124, -1,
15817  -1, -1, 128, -1, 130, 131, 132, 133, 134, -1,
15818  -1, -1, 138, -1, -1, 141, 142, 143, -1, -1,
15819  -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
15820  -1, 157, 158, -1, 160, 161, 162, 163, 164, 165,
15821  -1, 167, 168, 169, 170, 171, 172, -1, -1, 175,
15822  176, -1, 178, 179, 180, -1, -1, 183, -1, -1,
15823  -1, 187, 188, -1, 190, -1, 192, -1, 194, 195,
15824  196, 197, -1, 199, -1, 201, -1, -1, -1, 205,
15825  206, -1, 208, -1, -1, 211, 212, -1, -1, -1,
15826  216, 217, 218, 219, -1, -1, 222, 223, 224, -1,
15827  -1, 227, -1, -1, -1, -1, 232, 233, -1, -1,
15828  -1, 237, -1, -1, -1, 241, 242, -1, 244, 245,
15829  -1, -1, -1, 249, -1, -1, 252, 253, -1, -1,
15830  256, -1, -1, 259, 260, -1, -1, -1, -1, -1,
15831  266, 267, -1, 269, -1, 271, -1, 273, 274, -1,
15832  -1, -1, -1, -1, -1, -1, 282, -1, 284, 285,
15833  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
15834  296, 297, 298, 299, 300, -1, 302, 303, 304, -1,
15835  306, 307, 308, 309, -1, 311, 312, -1, -1, -1,
15836  -1, 317, 318, 319, 320, 321, 322, -1, -1, 325,
15837  326, -1, 328, -1, 330, -1, 332, 333, 334, 335,
15838  336, 337, 338, 339, 340, -1, -1, 343, 344, -1,
15839  -1, 347, 348, 349, 350, -1, -1, -1, 354, 355,
15840  -1, -1, -1, 359, -1, 361, 362, 363, -1, 365,
15841  366, 367, -1, 369, -1, -1, -1, -1, -1, -1,
15842  -1, -1, -1, 379, 380, 381, -1, 383, 384, -1,
15843  386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
15844  -1, -1, 398, 399, 400, -1, 402, -1, 404, 405,
15845  406, 407, 408, -1, 410, 411, 412, -1, -1, 415,
15846  -1, -1, -1, 419, 420, 421, 422, 423, -1, -1,
15847  426, 427, 428, 429, 430, -1, 432, 433, -1, 435,
15848  436, 437, -1, -1, 440, -1, 442, -1, 444, 445,
15849  -1, 447, 448, 449, -1, 451, -1, -1, 454, 455,
15850  456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
15851  466, 467, -1, -1, -1, 471, 472, 473, 474, -1,
15852  -1, -1, 478, -1, -1, -1, 482, -1, 484, 485,
15853  486, 487, -1, 489, 490, 491, 492, 493, -1, -1,
15854  -1, -1, -1, 499, 500, 501, -1, 503, 504, -1,
15855  506, -1, -1, 509, -1, -1, 512, 513, 514, 515,
15856  516, 517, -1, -1, 520, 521, -1, 523, 524, 525,
15857  526, 527, 528, -1, -1, 531, 532, 533, 534, -1,
15858  536, 537, -1, -1, 540, 541, 542, 543, -1, -1,
15859  546, 547, -1, 549, 550, 551, 552, -1, -1, -1,
15860  -1, -1, 558, 559, -1, -1, -1, 563, 564, 565,
15861  566, -1, 568, 569, -1, 571, 572, -1, 574, 575,
15862  -1, -1, 578, -1, -1, 581, -1, 583, -1, 585,
15863  586, -1, -1, -1, -1, -1, -1, 593, -1, -1,
15864  596, -1, -1, -1, 600, 601, 602, 603, 604, -1,
15865  -1, -1, -1, -1, -1, 611, 612, -1, 614, 615,
15866  616, -1, 5, 619, 7, 8, 9, 10, 11, -1,
15867  -1, 14, -1, -1, -1, 18, -1, -1, 21, -1,
15868  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
15869  -1, 34, -1, -1, -1, 38, -1, -1, 41, 42,
15870  43, -1, 45, -1, 47, 48, -1, -1, 51, -1,
15871  -1, 54, 55, -1, 57, 58, -1, 60, -1, 62,
15872  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
15873  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
15874  83, -1, 85, 86, 87, 88, 89, -1, -1, -1,
15875  93, -1, -1, 96, -1, 98, -1, -1, 101, -1,
15876  -1, -1, 105, 106, 107, -1, -1, 110, -1, -1,
15877  -1, -1, 115, 116, -1, -1, -1, -1, 121, 122,
15878  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
15879  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
15880  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
15881  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
15882  163, 164, 165, -1, -1, 168, 169, 170, 171, 172,
15883  -1, -1, 175, 176, -1, 178, 179, 180, -1, -1,
15884  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
15885  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
15886  -1, -1, 205, 206, -1, 208, -1, -1, 211, 212,
15887  -1, -1, -1, 216, 217, 218, 219, -1, -1, 222,
15888  223, 224, -1, -1, 227, -1, -1, -1, -1, 232,
15889  233, -1, -1, -1, 237, -1, -1, -1, 241, 242,
15890  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
15891  253, -1, -1, 256, -1, -1, 259, 260, -1, -1,
15892  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
15893  273, 274, -1, -1, -1, -1, -1, -1, -1, 282,
15894  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
15895  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
15896  303, 304, -1, 306, 307, 308, 309, -1, 311, 312,
15897  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
15898  -1, -1, 325, 326, -1, 328, -1, 330, -1, 332,
15899  333, 334, 335, 336, 337, 338, 339, 340, -1, -1,
15900  343, 344, -1, -1, 347, 348, 349, 350, -1, -1,
15901  -1, 354, 355, -1, -1, -1, 359, -1, 361, 362,
15902  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
15903  -1, -1, -1, -1, -1, -1, 379, 380, 381, -1,
15904  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
15905  393, 394, 395, -1, -1, 398, 399, 400, -1, 402,
15906  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
15907  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
15908  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
15909  433, -1, 435, 436, 437, -1, -1, 440, -1, 442,
15910  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
15911  -1, 454, 455, 456, 457, 458, 459, 460, 461, 462,
15912  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
15913  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
15914  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
15915  493, -1, -1, -1, 497, -1, 499, 500, 501, -1,
15916  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
15917  513, 514, 515, 516, 517, -1, -1, 520, 521, -1,
15918  523, 524, 525, 526, 527, 528, -1, -1, 531, 532,
15919  533, 534, -1, 536, 537, -1, -1, 540, 541, 542,
15920  543, -1, -1, 546, 547, -1, 549, 550, 551, 552,
15921  -1, -1, -1, -1, -1, 558, 559, -1, -1, -1,
15922  563, 564, 565, 566, -1, 568, 569, -1, 571, 572,
15923  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
15924  583, -1, 585, 586, -1, -1, -1, -1, -1, -1,
15925  593, -1, -1, 596, -1, -1, -1, 600, 601, 602,
15926  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
15927  -1, 614, 615, 616, -1, 5, 619, 7, 8, 9,
15928  10, 11, -1, -1, 14, -1, -1, -1, 18, -1,
15929  -1, 21, -1, 23, 24, 25, 26, 27, 28, -1,
15930  30, -1, -1, -1, 34, -1, -1, -1, 38, -1,
15931  -1, 41, 42, 43, -1, 45, -1, 47, 48, -1,
15932  -1, 51, -1, -1, 54, 55, -1, 57, 58, -1,
15933  60, -1, 62, 63, 64, 65, 66, 67, -1, 69,
15934  70, -1, 72, 73, 74, 75, 76, 77, 78, 79,
15935  80, -1, 82, 83, -1, 85, 86, 87, 88, 89,
15936  -1, -1, -1, 93, -1, -1, 96, -1, 98, -1,
15937  -1, 101, -1, -1, -1, 105, 106, 107, -1, -1,
15938  110, -1, -1, -1, -1, 115, 116, -1, -1, -1,
15939  -1, 121, 122, -1, 124, -1, -1, -1, 128, -1,
15940  130, 131, 132, 133, 134, -1, -1, -1, 138, -1,
15941  -1, 141, 142, 143, -1, -1, -1, 147, -1, 149,
15942  150, -1, 152, 153, 154, -1, -1, 157, 158, -1,
15943  160, 161, 162, 163, 164, 165, -1, -1, 168, 169,
15944  170, 171, 172, -1, -1, 175, 176, -1, 178, 179,
15945  180, -1, -1, 183, -1, -1, -1, 187, 188, 189,
15946  190, -1, 192, -1, 194, 195, 196, 197, -1, 199,
15947  -1, 201, -1, -1, -1, 205, 206, -1, 208, -1,
15948  -1, 211, 212, -1, -1, -1, 216, 217, 218, 219,
15949  -1, -1, 222, 223, 224, -1, -1, 227, -1, -1,
15950  -1, -1, 232, 233, -1, -1, -1, 237, -1, -1,
15951  -1, 241, 242, -1, 244, 245, -1, -1, -1, 249,
15952  -1, -1, 252, 253, -1, -1, 256, -1, -1, 259,
15953  260, -1, -1, -1, -1, -1, 266, 267, -1, 269,
15954  -1, 271, -1, 273, 274, -1, -1, -1, -1, -1,
15955  -1, -1, 282, -1, 284, 285, 286, 287, 288, 289,
15956  290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
15957  300, -1, 302, 303, 304, -1, 306, 307, 308, 309,
15958  -1, 311, 312, -1, -1, -1, -1, 317, 318, 319,
15959  320, 321, 322, -1, -1, 325, 326, -1, 328, -1,
15960  330, -1, 332, 333, 334, 335, 336, 337, 338, 339,
15961  340, -1, -1, 343, 344, -1, -1, 347, 348, 349,
15962  350, -1, -1, -1, 354, 355, -1, -1, -1, 359,
15963  -1, 361, 362, 363, -1, 365, 366, 367, -1, 369,
15964  -1, -1, -1, -1, -1, -1, -1, -1, -1, 379,
15965  380, 381, -1, 383, 384, -1, 386, 387, 388, 389,
15966  390, 391, 392, 393, 394, 395, -1, -1, 398, 399,
15967  400, -1, 402, -1, 404, 405, 406, 407, 408, -1,
15968  410, 411, 412, -1, -1, 415, -1, -1, -1, 419,
15969  420, 421, 422, 423, -1, -1, 426, 427, 428, 429,
15970  430, -1, 432, 433, -1, 435, 436, 437, -1, -1,
15971  440, -1, 442, -1, 444, 445, -1, 447, 448, 449,
15972  -1, 451, -1, -1, 454, 455, 456, 457, 458, 459,
15973  460, 461, 462, 463, 464, -1, 466, 467, -1, -1,
15974  -1, 471, 472, 473, 474, -1, -1, -1, 478, -1,
15975  -1, -1, 482, -1, 484, 485, 486, 487, -1, 489,
15976  490, 491, 492, 493, -1, -1, -1, -1, -1, 499,
15977  500, 501, -1, 503, 504, -1, 506, -1, -1, 509,
15978  -1, -1, 512, 513, 514, 515, 516, 517, -1, -1,
15979  520, 521, -1, 523, 524, 525, 526, 527, 528, -1,
15980  -1, 531, 532, 533, 534, -1, 536, 537, -1, -1,
15981  540, 541, 542, 543, -1, -1, 546, 547, -1, 549,
15982  550, 551, 552, -1, -1, -1, -1, -1, 558, 559,
15983  -1, -1, -1, 563, 564, 565, 566, -1, 568, 569,
15984  -1, 571, 572, -1, 574, 575, -1, -1, 578, -1,
15985  -1, 581, -1, 583, -1, 585, 586, -1, -1, -1,
15986  -1, -1, -1, 593, -1, -1, 596, -1, -1, -1,
15987  600, 601, 602, 603, 604, -1, -1, -1, -1, -1,
15988  -1, 611, 612, -1, 614, 615, 616, -1, 5, 619,
15989  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
15990  -1, 18, -1, -1, 21, -1, 23, 24, 25, 26,
15991  27, 28, -1, 30, -1, -1, -1, 34, -1, -1,
15992  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
15993  47, 48, -1, -1, 51, -1, -1, 54, 55, -1,
15994  57, 58, -1, 60, -1, 62, 63, 64, 65, 66,
15995  67, -1, 69, 70, -1, 72, 73, 74, 75, 76,
15996  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
15997  87, 88, 89, -1, -1, -1, 93, -1, -1, 96,
15998  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
15999  107, -1, -1, 110, -1, -1, -1, -1, 115, 116,
16000  -1, -1, -1, 120, 121, 122, -1, 124, -1, -1,
16001  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
16002  -1, 138, -1, -1, 141, 142, 143, -1, -1, -1,
16003  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
16004  157, 158, -1, 160, 161, 162, 163, 164, 165, -1,
16005  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
16006  -1, 178, 179, 180, -1, -1, 183, -1, -1, -1,
16007  187, 188, -1, 190, -1, 192, -1, 194, 195, 196,
16008  197, -1, 199, -1, 201, -1, -1, -1, 205, 206,
16009  -1, 208, -1, -1, 211, 212, -1, -1, -1, 216,
16010  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
16011  227, -1, -1, -1, -1, 232, 233, -1, -1, -1,
16012  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
16013  -1, -1, 249, -1, -1, 252, 253, -1, -1, 256,
16014  -1, -1, 259, 260, -1, -1, -1, -1, -1, 266,
16015  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
16016  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
16017  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
16018  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
16019  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
16020  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
16021  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
16022  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
16023  347, 348, 349, 350, -1, -1, -1, 354, 355, -1,
16024  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
16025  367, -1, 369, -1, -1, -1, -1, -1, -1, -1,
16026  -1, -1, 379, 380, 381, -1, 383, 384, -1, 386,
16027  387, 388, 389, 390, 391, 392, 393, 394, 395, -1,
16028  -1, 398, 399, 400, -1, 402, -1, 404, 405, 406,
16029  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
16030  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
16031  427, 428, 429, 430, -1, 432, 433, -1, 435, 436,
16032  437, -1, -1, 440, -1, 442, -1, 444, 445, -1,
16033  447, 448, 449, -1, 451, -1, -1, 454, 455, 456,
16034  457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
16035  467, -1, -1, -1, 471, 472, 473, 474, -1, -1,
16036  -1, 478, -1, -1, -1, 482, -1, 484, 485, 486,
16037  487, -1, 489, 490, 491, 492, 493, -1, -1, -1,
16038  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
16039  -1, -1, 509, -1, -1, 512, 513, 514, 515, 516,
16040  517, -1, -1, 520, 521, -1, 523, 524, 525, 526,
16041  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
16042  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
16043  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
16044  -1, 558, 559, -1, -1, -1, 563, 564, 565, 566,
16045  -1, 568, 569, -1, 571, 572, -1, 574, 575, -1,
16046  -1, 578, -1, -1, 581, -1, 583, -1, 585, 586,
16047  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
16048  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
16049  -1, -1, -1, -1, 611, 612, -1, 614, 615, 616,
16050  -1, 5, 619, 7, 8, 9, 10, 11, -1, -1,
16051  14, -1, -1, -1, 18, -1, -1, 21, -1, 23,
16052  24, 25, 26, 27, 28, -1, 30, -1, -1, -1,
16053  34, -1, -1, -1, 38, -1, -1, 41, 42, 43,
16054  -1, 45, -1, 47, 48, -1, -1, 51, -1, -1,
16055  54, 55, -1, 57, 58, -1, 60, -1, 62, 63,
16056  64, 65, 66, 67, -1, 69, 70, -1, 72, 73,
16057  74, 75, 76, 77, 78, 79, 80, -1, 82, 83,
16058  -1, 85, 86, 87, 88, 89, -1, -1, -1, 93,
16059  -1, -1, 96, -1, 98, -1, -1, 101, -1, -1,
16060  -1, 105, 106, 107, -1, -1, 110, -1, -1, -1,
16061  -1, 115, 116, -1, -1, -1, 120, 121, 122, -1,
16062  124, -1, -1, -1, 128, -1, 130, 131, 132, 133,
16063  134, -1, -1, -1, 138, -1, -1, 141, 142, 143,
16064  -1, -1, -1, 147, -1, 149, 150, -1, 152, 153,
16065  154, -1, -1, 157, 158, -1, 160, 161, 162, 163,
16066  164, 165, -1, -1, 168, 169, 170, 171, 172, -1,
16067  -1, 175, 176, -1, 178, 179, 180, -1, -1, 183,
16068  -1, -1, -1, 187, 188, -1, 190, -1, 192, -1,
16069  194, 195, 196, 197, -1, 199, -1, 201, -1, -1,
16070  -1, 205, 206, -1, 208, -1, -1, 211, 212, -1,
16071  -1, -1, 216, 217, 218, 219, -1, -1, 222, 223,
16072  224, -1, -1, 227, -1, -1, -1, -1, 232, 233,
16073  -1, -1, -1, 237, -1, -1, -1, 241, 242, -1,
16074  244, 245, -1, -1, -1, 249, -1, -1, 252, 253,
16075  -1, -1, 256, -1, -1, 259, 260, -1, -1, -1,
16076  -1, -1, 266, 267, -1, 269, -1, 271, -1, 273,
16077  274, -1, -1, -1, -1, -1, -1, -1, 282, -1,
16078  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
16079  294, 295, 296, 297, 298, 299, 300, -1, 302, 303,
16080  304, -1, 306, 307, 308, 309, -1, 311, 312, -1,
16081  -1, -1, -1, 317, 318, 319, 320, 321, 322, -1,
16082  -1, 325, 326, -1, 328, -1, 330, -1, 332, 333,
16083  334, 335, 336, 337, 338, 339, 340, -1, -1, 343,
16084  344, -1, -1, 347, 348, 349, 350, -1, -1, -1,
16085  354, 355, -1, -1, -1, 359, -1, 361, 362, 363,
16086  -1, 365, 366, 367, -1, 369, -1, -1, -1, -1,
16087  -1, -1, -1, -1, -1, 379, 380, 381, -1, 383,
16088  384, -1, 386, 387, 388, 389, 390, 391, 392, 393,
16089  394, 395, -1, -1, 398, 399, 400, -1, 402, -1,
16090  404, 405, 406, 407, 408, -1, 410, 411, 412, -1,
16091  -1, 415, -1, -1, -1, 419, 420, 421, 422, 423,
16092  -1, -1, 426, 427, 428, 429, 430, -1, 432, 433,
16093  -1, 435, 436, 437, -1, -1, 440, -1, 442, -1,
16094  444, 445, -1, 447, 448, 449, -1, 451, -1, -1,
16095  454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
16096  464, -1, 466, 467, -1, -1, -1, 471, 472, 473,
16097  474, -1, -1, -1, 478, -1, -1, -1, 482, -1,
16098  484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
16099  -1, -1, -1, -1, -1, 499, 500, 501, -1, 503,
16100  504, -1, 506, -1, -1, 509, -1, -1, 512, 513,
16101  514, 515, 516, 517, -1, -1, 520, 521, -1, 523,
16102  524, 525, 526, 527, 528, -1, -1, 531, 532, 533,
16103  534, -1, 536, 537, -1, -1, 540, 541, 542, 543,
16104  -1, -1, 546, 547, -1, 549, 550, 551, 552, -1,
16105  -1, -1, -1, -1, 558, 559, -1, -1, -1, 563,
16106  564, 565, 566, -1, 568, 569, -1, 571, 572, -1,
16107  574, 575, -1, -1, 578, -1, -1, 581, -1, 583,
16108  -1, 585, 586, -1, -1, -1, -1, -1, -1, 593,
16109  -1, -1, 596, -1, -1, -1, 600, 601, 602, 603,
16110  604, -1, -1, -1, -1, -1, -1, 611, 612, -1,
16111  614, 615, 616, -1, 5, 619, 7, 8, 9, 10,
16112  11, -1, -1, 14, -1, -1, -1, 18, -1, -1,
16113  21, -1, 23, 24, 25, 26, 27, 28, -1, 30,
16114  -1, -1, -1, 34, -1, -1, -1, 38, -1, -1,
16115  41, 42, 43, -1, 45, -1, 47, 48, -1, -1,
16116  51, -1, -1, 54, 55, -1, 57, 58, -1, 60,
16117  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
16118  -1, 72, 73, 74, 75, 76, 77, 78, 79, 80,
16119  -1, 82, 83, -1, 85, 86, 87, 88, 89, -1,
16120  -1, -1, 93, -1, -1, 96, -1, 98, -1, -1,
16121  101, -1, -1, -1, 105, 106, 107, -1, -1, 110,
16122  -1, -1, -1, -1, 115, 116, -1, -1, -1, 120,
16123  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
16124  131, 132, 133, 134, -1, -1, -1, 138, -1, -1,
16125  141, 142, 143, -1, -1, -1, 147, -1, 149, 150,
16126  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
16127  161, 162, 163, 164, 165, -1, -1, 168, 169, 170,
16128  171, 172, -1, -1, 175, 176, -1, 178, 179, 180,
16129  -1, -1, 183, -1, -1, -1, 187, 188, -1, 190,
16130  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
16131  201, -1, -1, -1, 205, 206, -1, 208, -1, -1,
16132  211, 212, -1, -1, -1, 216, 217, 218, 219, -1,
16133  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
16134  -1, 232, 233, -1, -1, -1, 237, -1, -1, -1,
16135  241, 242, -1, 244, 245, -1, -1, -1, 249, -1,
16136  -1, 252, 253, -1, -1, 256, -1, -1, 259, 260,
16137  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
16138  271, -1, 273, 274, -1, -1, -1, -1, -1, -1,
16139  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
16140  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
16141  -1, 302, 303, 304, -1, 306, 307, 308, 309, -1,
16142  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
16143  321, 322, -1, -1, 325, 326, -1, 328, -1, 330,
16144  -1, 332, 333, 334, 335, 336, 337, 338, 339, 340,
16145  -1, -1, 343, 344, -1, -1, 347, 348, 349, 350,
16146  -1, -1, -1, 354, 355, -1, -1, -1, 359, -1,
16147  361, 362, 363, -1, 365, 366, 367, -1, 369, -1,
16148  -1, -1, -1, -1, -1, -1, -1, -1, 379, 380,
16149  381, -1, 383, 384, -1, 386, 387, 388, 389, 390,
16150  391, 392, 393, 394, 395, -1, -1, 398, 399, 400,
16151  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
16152  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
16153  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
16154  -1, 432, 433, -1, 435, 436, 437, -1, -1, 440,
16155  -1, 442, -1, 444, 445, -1, 447, 448, 449, -1,
16156  451, -1, -1, 454, 455, 456, 457, 458, 459, 460,
16157  461, 462, 463, 464, -1, 466, 467, -1, -1, -1,
16158  471, 472, 473, 474, -1, -1, -1, 478, -1, -1,
16159  -1, 482, -1, 484, 485, 486, 487, -1, 489, 490,
16160  491, 492, 493, -1, -1, -1, -1, -1, 499, 500,
16161  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
16162  -1, 512, 513, 514, 515, 516, 517, -1, -1, 520,
16163  521, -1, 523, 524, 525, 526, 527, 528, -1, -1,
16164  531, 532, 533, 534, -1, 536, 537, -1, -1, 540,
16165  541, 542, 543, -1, -1, 546, 547, -1, 549, 550,
16166  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
16167  -1, -1, 563, 564, 565, 566, -1, 568, 569, -1,
16168  571, 572, -1, 574, 575, -1, -1, 578, -1, -1,
16169  581, -1, 583, -1, 585, 586, -1, -1, -1, -1,
16170  -1, -1, 593, -1, -1, 596, -1, -1, -1, 600,
16171  601, 602, 603, 604, -1, -1, -1, -1, -1, -1,
16172  611, 612, -1, 614, 615, 616, -1, 5, 619, 7,
16173  8, 9, 10, 11, -1, -1, 14, -1, -1, -1,
16174  18, -1, -1, 21, -1, 23, 24, 25, 26, 27,
16175  28, -1, 30, -1, -1, -1, 34, -1, -1, -1,
16176  38, -1, -1, 41, 42, 43, -1, 45, -1, 47,
16177  48, -1, -1, 51, -1, -1, 54, 55, -1, 57,
16178  58, -1, 60, -1, 62, 63, 64, 65, 66, 67,
16179  -1, 69, 70, -1, 72, 73, 74, 75, 76, 77,
16180  78, 79, 80, -1, 82, 83, -1, 85, 86, 87,
16181  88, 89, -1, -1, -1, 93, -1, -1, 96, -1,
16182  98, -1, -1, 101, -1, -1, -1, 105, 106, 107,
16183  -1, -1, 110, -1, -1, -1, -1, 115, 116, -1,
16184  -1, -1, 120, 121, 122, -1, 124, -1, -1, -1,
16185  128, -1, 130, 131, 132, 133, 134, -1, -1, -1,
16186  138, -1, -1, 141, 142, 143, -1, -1, -1, 147,
16187  -1, 149, 150, -1, 152, 153, 154, -1, -1, 157,
16188  158, -1, 160, 161, 162, 163, 164, 165, -1, -1,
16189  168, 169, 170, 171, 172, -1, -1, 175, 176, -1,
16190  178, 179, 180, -1, -1, 183, -1, -1, -1, 187,
16191  188, -1, 190, -1, 192, -1, 194, 195, 196, 197,
16192  -1, 199, -1, 201, -1, -1, -1, 205, 206, -1,
16193  208, -1, -1, 211, 212, -1, -1, -1, 216, 217,
16194  218, 219, -1, -1, 222, 223, 224, -1, -1, 227,
16195  -1, -1, -1, -1, 232, 233, -1, -1, -1, 237,
16196  -1, -1, -1, 241, 242, -1, 244, 245, -1, -1,
16197  -1, 249, -1, -1, 252, 253, -1, -1, 256, -1,
16198  -1, 259, 260, -1, -1, -1, -1, -1, 266, 267,
16199  -1, 269, -1, 271, -1, 273, 274, -1, -1, -1,
16200  -1, -1, -1, -1, 282, -1, 284, 285, 286, 287,
16201  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
16202  298, 299, 300, -1, 302, 303, 304, -1, 306, 307,
16203  308, 309, -1, 311, 312, -1, -1, -1, -1, 317,
16204  318, 319, 320, 321, 322, -1, -1, 325, 326, -1,
16205  328, -1, 330, -1, 332, 333, 334, 335, 336, 337,
16206  338, 339, 340, -1, -1, 343, 344, -1, -1, 347,
16207  348, 349, 350, -1, -1, -1, 354, 355, -1, -1,
16208  -1, 359, -1, 361, 362, 363, -1, 365, 366, 367,
16209  -1, 369, -1, -1, -1, -1, -1, -1, -1, -1,
16210  -1, 379, 380, 381, -1, 383, 384, -1, 386, 387,
16211  388, 389, 390, 391, 392, 393, 394, 395, -1, -1,
16212  398, 399, 400, -1, 402, -1, 404, 405, 406, 407,
16213  408, -1, 410, 411, 412, -1, -1, 415, -1, -1,
16214  -1, 419, 420, 421, 422, 423, -1, -1, 426, 427,
16215  428, 429, 430, -1, 432, 433, -1, 435, 436, 437,
16216  -1, -1, 440, -1, 442, -1, 444, 445, -1, 447,
16217  448, 449, -1, 451, -1, -1, 454, 455, 456, 457,
16218  458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
16219  -1, -1, -1, 471, 472, 473, 474, -1, -1, -1,
16220  478, -1, -1, -1, 482, -1, 484, 485, 486, 487,
16221  -1, 489, 490, 491, 492, 493, -1, -1, -1, -1,
16222  -1, 499, 500, 501, -1, 503, 504, -1, 506, -1,
16223  -1, 509, -1, -1, 512, 513, 514, 515, 516, 517,
16224  -1, -1, 520, 521, -1, 523, 524, 525, 526, 527,
16225  528, -1, -1, 531, 532, 533, 534, -1, 536, 537,
16226  -1, -1, 540, 541, 542, 543, -1, -1, 546, 547,
16227  -1, 549, 550, 551, 552, -1, -1, -1, -1, -1,
16228  558, 559, -1, -1, -1, 563, 564, 565, 566, -1,
16229  568, 569, -1, 571, 572, -1, 574, 575, -1, -1,
16230  578, -1, -1, 581, -1, 583, -1, 585, 586, -1,
16231  -1, -1, -1, -1, -1, 593, -1, -1, 596, -1,
16232  -1, -1, 600, 601, 602, 603, 604, -1, -1, -1,
16233  -1, -1, -1, 611, 612, -1, 614, 615, 616, -1,
16234  5, 619, 7, 8, 9, 10, 11, 12, -1, 14,
16235  -1, -1, -1, 18, -1, -1, 21, -1, 23, 24,
16236  25, 26, 27, 28, -1, 30, -1, -1, -1, 34,
16237  -1, -1, -1, 38, -1, -1, 41, 42, 43, -1,
16238  45, -1, 47, 48, -1, -1, 51, -1, -1, 54,
16239  55, -1, 57, 58, -1, 60, -1, 62, 63, 64,
16240  65, 66, 67, -1, 69, 70, -1, 72, 73, 74,
16241  75, 76, 77, 78, 79, 80, -1, 82, 83, -1,
16242  85, 86, 87, 88, 89, -1, -1, -1, 93, -1,
16243  -1, 96, -1, 98, -1, -1, 101, -1, -1, -1,
16244  105, 106, 107, -1, -1, 110, -1, -1, -1, -1,
16245  115, 116, -1, -1, -1, -1, 121, 122, -1, 124,
16246  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
16247  -1, -1, -1, 138, -1, -1, 141, 142, 143, -1,
16248  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
16249  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
16250  165, -1, -1, 168, 169, 170, 171, 172, -1, -1,
16251  175, 176, -1, 178, 179, 180, -1, -1, 183, -1,
16252  -1, -1, 187, 188, -1, 190, -1, 192, -1, 194,
16253  195, 196, 197, -1, 199, -1, 201, -1, -1, -1,
16254  205, 206, -1, 208, -1, -1, 211, 212, -1, -1,
16255  -1, 216, 217, 218, 219, -1, -1, 222, 223, 224,
16256  -1, -1, 227, -1, -1, -1, -1, 232, 233, -1,
16257  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
16258  245, -1, -1, -1, 249, -1, -1, 252, 253, -1,
16259  -1, 256, -1, -1, 259, 260, -1, -1, -1, -1,
16260  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
16261  -1, -1, -1, -1, -1, -1, -1, 282, -1, 284,
16262  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
16263  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
16264  -1, 306, 307, 308, 309, -1, 311, 312, -1, -1,
16265  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
16266  325, 326, -1, 328, -1, 330, -1, 332, 333, 334,
16267  335, 336, 337, 338, 339, 340, -1, -1, 343, 344,
16268  -1, -1, 347, 348, 349, 350, -1, -1, -1, 354,
16269  355, -1, -1, -1, 359, -1, 361, 362, 363, -1,
16270  365, 366, 367, -1, 369, -1, -1, -1, -1, -1,
16271  -1, -1, -1, -1, 379, 380, 381, -1, 383, 384,
16272  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
16273  395, -1, -1, 398, 399, 400, -1, 402, -1, 404,
16274  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
16275  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
16276  -1, 426, 427, 428, 429, 430, -1, 432, 433, -1,
16277  435, 436, 437, -1, -1, 440, -1, 442, -1, 444,
16278  445, -1, 447, 448, 449, -1, 451, -1, -1, 454,
16279  455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
16280  -1, 466, 467, -1, -1, -1, 471, 472, 473, 474,
16281  -1, -1, -1, 478, -1, -1, -1, 482, -1, 484,
16282  485, 486, 487, -1, 489, 490, 491, 492, 493, -1,
16283  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
16284  -1, 506, -1, -1, 509, -1, -1, 512, 513, 514,
16285  515, 516, 517, -1, -1, 520, 521, -1, 523, 524,
16286  525, 526, 527, 528, -1, -1, 531, 532, 533, 534,
16287  -1, 536, 537, -1, -1, 540, 541, 542, 543, -1,
16288  -1, 546, 547, -1, 549, 550, 551, 552, -1, -1,
16289  -1, -1, -1, 558, 559, -1, -1, -1, 563, 564,
16290  565, 566, -1, 568, 569, -1, 571, 572, -1, 574,
16291  575, -1, -1, 578, -1, -1, 581, -1, 583, -1,
16292  585, 586, -1, -1, -1, -1, -1, -1, 593, -1,
16293  -1, 596, -1, -1, -1, 600, 601, 602, 603, 604,
16294  -1, -1, -1, -1, -1, -1, 611, 612, -1, 614,
16295  615, 616, -1, 5, 619, 7, 8, 9, 10, 11,
16296  -1, -1, 14, -1, -1, -1, 18, -1, -1, 21,
16297  -1, 23, 24, 25, 26, 27, 28, -1, 30, -1,
16298  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
16299  42, 43, -1, 45, -1, 47, 48, -1, -1, 51,
16300  -1, -1, 54, 55, -1, 57, 58, -1, 60, -1,
16301  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
16302  72, 73, 74, 75, 76, 77, 78, 79, 80, -1,
16303  82, 83, -1, 85, 86, 87, 88, 89, -1, -1,
16304  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
16305  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
16306  -1, -1, -1, 115, 116, -1, -1, -1, 120, 121,
16307  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
16308  132, 133, 134, -1, -1, -1, 138, -1, -1, 141,
16309  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
16310  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
16311  162, 163, 164, 165, -1, -1, 168, 169, 170, 171,
16312  172, -1, -1, 175, 176, -1, 178, 179, 180, -1,
16313  -1, 183, -1, -1, -1, 187, 188, -1, 190, -1,
16314  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
16315  -1, -1, -1, 205, 206, -1, 208, -1, -1, 211,
16316  212, -1, -1, -1, 216, 217, 218, 219, -1, -1,
16317  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
16318  232, 233, -1, -1, -1, 237, -1, -1, -1, 241,
16319  242, -1, 244, 245, -1, -1, -1, 249, -1, -1,
16320  252, 253, -1, -1, 256, -1, -1, 259, 260, -1,
16321  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
16322  -1, 273, 274, -1, -1, -1, -1, -1, -1, -1,
16323  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
16324  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
16325  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
16326  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
16327  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
16328  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
16329  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
16330  -1, -1, 354, 355, -1, -1, -1, 359, -1, 361,
16331  362, 363, -1, 365, 366, 367, -1, 369, -1, -1,
16332  -1, -1, -1, -1, -1, -1, -1, 379, 380, 381,
16333  -1, 383, 384, -1, 386, 387, 388, 389, 390, 391,
16334  392, 393, 394, 395, -1, -1, 398, 399, 400, -1,
16335  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
16336  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
16337  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
16338  432, 433, -1, 435, 436, 437, -1, -1, 440, -1,
16339  442, -1, 444, 445, -1, 447, 448, 449, -1, 451,
16340  -1, -1, 454, 455, 456, 457, 458, 459, 460, 461,
16341  462, 463, 464, -1, 466, 467, -1, -1, -1, 471,
16342  472, 473, 474, -1, -1, -1, 478, -1, -1, -1,
16343  482, -1, 484, 485, 486, 487, -1, 489, 490, 491,
16344  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
16345  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
16346  512, 513, 514, 515, 516, 517, -1, -1, 520, 521,
16347  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
16348  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
16349  542, 543, -1, -1, 546, 547, -1, 549, 550, 551,
16350  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
16351  -1, 563, 564, 565, 566, -1, 568, 569, -1, 571,
16352  572, -1, 574, 575, -1, -1, 578, -1, -1, 581,
16353  -1, 583, -1, 585, 586, -1, -1, -1, -1, -1,
16354  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
16355  602, 603, 604, -1, -1, -1, -1, -1, -1, 611,
16356  612, -1, 614, 615, 616, -1, 5, 619, 7, 8,
16357  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
16358  -1, -1, 21, -1, 23, 24, 25, 26, 27, 28,
16359  -1, 30, -1, -1, -1, 34, -1, -1, -1, 38,
16360  -1, -1, 41, 42, 43, -1, 45, -1, 47, 48,
16361  -1, -1, 51, -1, -1, 54, 55, -1, 57, 58,
16362  -1, 60, -1, 62, 63, 64, 65, 66, 67, -1,
16363  69, 70, -1, 72, 73, 74, 75, 76, 77, 78,
16364  79, 80, -1, 82, 83, -1, 85, 86, 87, 88,
16365  89, -1, -1, -1, 93, -1, -1, 96, -1, 98,
16366  -1, -1, 101, -1, -1, -1, 105, 106, 107, -1,
16367  -1, 110, -1, -1, -1, -1, 115, 116, -1, -1,
16368  -1, -1, 121, 122, -1, 124, -1, -1, -1, 128,
16369  -1, 130, 131, 132, 133, 134, -1, -1, -1, 138,
16370  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
16371  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
16372  -1, 160, 161, 162, 163, 164, 165, -1, -1, 168,
16373  169, 170, 171, 172, -1, -1, 175, 176, -1, 178,
16374  179, 180, -1, -1, 183, -1, -1, -1, 187, 188,
16375  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
16376  199, -1, 201, -1, -1, -1, 205, 206, -1, 208,
16377  -1, -1, 211, 212, -1, -1, -1, 216, 217, 218,
16378  219, -1, -1, 222, 223, 224, -1, -1, 227, -1,
16379  -1, -1, -1, 232, 233, -1, -1, -1, 237, -1,
16380  -1, -1, 241, 242, -1, 244, 245, -1, -1, -1,
16381  249, -1, -1, 252, 253, -1, -1, 256, -1, -1,
16382  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
16383  269, -1, 271, -1, 273, 274, -1, -1, -1, -1,
16384  -1, -1, -1, 282, -1, 284, 285, 286, 287, 288,
16385  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
16386  299, 300, -1, 302, 303, 304, -1, 306, 307, 308,
16387  309, -1, 311, 312, -1, -1, -1, -1, 317, 318,
16388  319, 320, 321, 322, -1, -1, 325, 326, -1, 328,
16389  -1, 330, -1, 332, 333, 334, 335, 336, 337, 338,
16390  339, 340, -1, -1, 343, 344, -1, -1, 347, 348,
16391  349, 350, -1, -1, -1, 354, 355, -1, -1, -1,
16392  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
16393  369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
16394  379, 380, 381, -1, 383, 384, -1, 386, 387, 388,
16395  389, 390, 391, 392, 393, 394, 395, -1, -1, 398,
16396  399, 400, 401, 402, -1, 404, 405, 406, 407, 408,
16397  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
16398  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
16399  429, 430, -1, 432, 433, -1, 435, 436, 437, -1,
16400  -1, 440, -1, 442, -1, 444, 445, -1, 447, 448,
16401  449, -1, 451, -1, -1, 454, 455, 456, 457, 458,
16402  459, 460, 461, 462, 463, 464, -1, 466, 467, -1,
16403  -1, -1, 471, 472, 473, 474, -1, -1, -1, 478,
16404  -1, -1, -1, 482, -1, 484, 485, 486, 487, -1,
16405  489, 490, 491, 492, 493, -1, -1, -1, -1, -1,
16406  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
16407  509, -1, -1, 512, 513, 514, 515, 516, 517, -1,
16408  -1, 520, 521, -1, 523, 524, 525, 526, 527, 528,
16409  -1, -1, 531, 532, 533, 534, -1, 536, 537, -1,
16410  -1, 540, 541, 542, 543, -1, -1, 546, 547, -1,
16411  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
16412  559, -1, -1, -1, 563, 564, 565, 566, -1, 568,
16413  569, -1, 571, 572, -1, 574, 575, -1, -1, 578,
16414  -1, -1, 581, -1, 583, -1, 585, 586, -1, -1,
16415  -1, -1, -1, -1, 593, -1, -1, 596, -1, -1,
16416  -1, 600, 601, 602, 603, 604, -1, -1, -1, -1,
16417  -1, -1, 611, 612, -1, 614, 615, 616, -1, 5,
16418  619, 7, 8, 9, 10, 11, -1, -1, 14, -1,
16419  -1, -1, 18, -1, -1, 21, -1, 23, 24, 25,
16420  26, 27, 28, -1, 30, -1, -1, -1, 34, -1,
16421  -1, -1, 38, -1, -1, 41, 42, 43, -1, 45,
16422  -1, 47, 48, -1, -1, 51, -1, -1, 54, 55,
16423  -1, 57, 58, -1, 60, -1, 62, 63, 64, 65,
16424  66, 67, -1, 69, 70, -1, 72, 73, 74, 75,
16425  76, 77, 78, 79, 80, -1, 82, 83, -1, 85,
16426  86, 87, 88, 89, -1, -1, -1, 93, -1, -1,
16427  96, -1, 98, -1, -1, 101, -1, -1, -1, 105,
16428  106, 107, -1, -1, 110, -1, -1, -1, -1, 115,
16429  116, -1, -1, -1, -1, 121, 122, -1, 124, -1,
16430  -1, -1, 128, -1, 130, 131, 132, 133, 134, -1,
16431  -1, -1, 138, -1, -1, 141, 142, 143, -1, -1,
16432  -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
16433  -1, 157, 158, -1, 160, 161, 162, 163, 164, 165,
16434  -1, -1, 168, 169, 170, 171, 172, -1, -1, 175,
16435  176, -1, 178, 179, 180, -1, -1, 183, -1, -1,
16436  -1, 187, 188, -1, 190, -1, 192, -1, 194, 195,
16437  196, 197, -1, 199, -1, 201, -1, -1, -1, 205,
16438  206, -1, 208, -1, -1, 211, 212, -1, -1, -1,
16439  216, 217, 218, 219, -1, -1, 222, 223, 224, -1,
16440  -1, 227, -1, -1, -1, -1, 232, 233, -1, -1,
16441  -1, 237, -1, -1, -1, 241, 242, -1, 244, 245,
16442  -1, -1, -1, 249, -1, -1, 252, 253, -1, -1,
16443  256, -1, -1, 259, 260, -1, -1, -1, -1, -1,
16444  266, 267, -1, 269, -1, 271, -1, 273, 274, -1,
16445  -1, -1, -1, -1, -1, -1, 282, -1, 284, 285,
16446  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
16447  296, 297, 298, 299, 300, -1, 302, 303, 304, -1,
16448  306, 307, 308, 309, -1, 311, 312, -1, -1, -1,
16449  -1, 317, 318, 319, 320, 321, 322, -1, -1, 325,
16450  326, -1, 328, -1, 330, -1, 332, 333, 334, 335,
16451  336, 337, 338, 339, 340, -1, -1, 343, 344, -1,
16452  -1, 347, 348, 349, 350, -1, -1, -1, 354, 355,
16453  -1, -1, -1, 359, -1, 361, 362, 363, -1, 365,
16454  366, 367, -1, 369, -1, -1, -1, -1, -1, -1,
16455  -1, -1, -1, 379, 380, 381, -1, 383, 384, -1,
16456  386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
16457  -1, -1, 398, 399, 400, -1, 402, -1, 404, 405,
16458  406, 407, 408, -1, 410, 411, 412, -1, -1, 415,
16459  -1, -1, -1, 419, 420, 421, 422, 423, -1, -1,
16460  426, 427, 428, 429, 430, -1, 432, 433, -1, 435,
16461  436, 437, -1, -1, 440, -1, 442, -1, 444, 445,
16462  -1, 447, 448, 449, -1, 451, -1, -1, 454, 455,
16463  456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
16464  466, 467, -1, -1, -1, 471, 472, 473, 474, -1,
16465  -1, -1, 478, -1, -1, -1, 482, -1, 484, 485,
16466  486, 487, -1, 489, 490, 491, 492, 493, -1, -1,
16467  -1, -1, -1, 499, 500, 501, -1, 503, 504, -1,
16468  506, -1, -1, 509, -1, -1, 512, 513, 514, 515,
16469  516, 517, -1, -1, 520, 521, -1, 523, 524, 525,
16470  526, 527, 528, -1, -1, 531, 532, 533, 534, -1,
16471  536, 537, -1, -1, 540, 541, 542, 543, -1, 545,
16472  546, 547, -1, 549, 550, 551, 552, -1, -1, -1,
16473  -1, -1, 558, 559, -1, -1, -1, 563, 564, 565,
16474  566, -1, 568, 569, -1, 571, 572, -1, 574, 575,
16475  -1, -1, 578, -1, -1, 581, -1, 583, -1, 585,
16476  586, -1, -1, -1, -1, -1, -1, 593, -1, -1,
16477  596, -1, -1, -1, 600, 601, 602, 603, 604, -1,
16478  -1, -1, -1, -1, -1, 611, 612, -1, 614, 615,
16479  616, -1, 5, 619, 7, 8, 9, 10, 11, -1,
16480  -1, 14, -1, -1, -1, 18, -1, -1, 21, -1,
16481  23, 24, 25, 26, 27, 28, -1, 30, -1, -1,
16482  -1, 34, -1, -1, -1, 38, -1, -1, 41, 42,
16483  43, -1, 45, -1, 47, 48, -1, -1, 51, -1,
16484  -1, 54, 55, -1, 57, 58, -1, 60, -1, 62,
16485  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
16486  73, 74, 75, 76, 77, 78, 79, 80, -1, 82,
16487  83, -1, 85, 86, 87, 88, 89, -1, -1, -1,
16488  93, -1, -1, 96, -1, 98, -1, -1, 101, -1,
16489  -1, -1, 105, 106, 107, -1, -1, 110, -1, -1,
16490  -1, -1, 115, 116, -1, -1, -1, -1, 121, 122,
16491  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
16492  133, 134, -1, -1, -1, 138, -1, -1, 141, 142,
16493  143, -1, -1, -1, 147, -1, 149, 150, -1, 152,
16494  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
16495  163, 164, 165, -1, -1, 168, 169, 170, 171, 172,
16496  -1, -1, 175, 176, -1, 178, 179, 180, -1, -1,
16497  183, -1, -1, -1, 187, 188, -1, 190, -1, 192,
16498  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
16499  -1, -1, 205, 206, -1, 208, -1, -1, 211, 212,
16500  -1, -1, -1, 216, 217, 218, 219, -1, -1, 222,
16501  223, 224, -1, -1, 227, -1, -1, -1, -1, 232,
16502  233, -1, -1, -1, 237, -1, -1, -1, 241, 242,
16503  -1, 244, 245, -1, -1, -1, 249, -1, -1, 252,
16504  253, -1, -1, 256, -1, -1, 259, 260, -1, -1,
16505  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
16506  273, 274, -1, -1, -1, -1, -1, -1, -1, 282,
16507  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
16508  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
16509  303, 304, -1, 306, 307, 308, 309, -1, 311, 312,
16510  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
16511  -1, -1, 325, 326, -1, 328, -1, 330, -1, 332,
16512  333, 334, 335, 336, 337, 338, 339, 340, -1, -1,
16513  343, 344, -1, -1, 347, 348, 349, 350, -1, -1,
16514  -1, 354, 355, -1, -1, -1, 359, -1, 361, 362,
16515  363, -1, 365, 366, 367, -1, 369, -1, -1, -1,
16516  -1, -1, -1, -1, -1, -1, 379, 380, 381, -1,
16517  383, 384, -1, 386, 387, 388, 389, 390, 391, 392,
16518  393, 394, 395, -1, -1, 398, 399, 400, -1, 402,
16519  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
16520  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
16521  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
16522  433, -1, 435, 436, 437, -1, -1, 440, -1, 442,
16523  -1, 444, 445, -1, 447, 448, 449, -1, 451, -1,
16524  -1, 454, 455, 456, 457, 458, 459, 460, 461, 462,
16525  463, 464, -1, 466, 467, -1, -1, -1, 471, 472,
16526  473, 474, -1, -1, -1, 478, -1, -1, -1, 482,
16527  -1, 484, 485, 486, 487, -1, 489, 490, 491, 492,
16528  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
16529  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
16530  513, 514, 515, 516, 517, -1, -1, 520, 521, -1,
16531  523, 524, 525, 526, 527, 528, -1, -1, 531, 532,
16532  533, 534, -1, 536, 537, -1, -1, 540, 541, 542,
16533  543, -1, -1, 546, 547, -1, 549, 550, 551, 552,
16534  -1, -1, -1, -1, -1, 558, 559, -1, -1, -1,
16535  563, 564, 565, 566, -1, 568, 569, -1, 571, 572,
16536  -1, 574, 575, -1, -1, 578, -1, -1, 581, -1,
16537  583, -1, 585, 586, -1, -1, -1, -1, -1, -1,
16538  593, -1, -1, 596, -1, -1, -1, 600, 601, 602,
16539  603, 604, -1, -1, -1, -1, -1, -1, 611, 612,
16540  -1, 614, 615, 616, -1, 5, 619, 7, 8, 9,
16541  10, 11, -1, -1, 14, -1, -1, -1, 18, -1,
16542  -1, 21, -1, 23, 24, 25, 26, 27, 28, -1,
16543  30, -1, -1, -1, 34, -1, -1, -1, 38, -1,
16544  -1, 41, 42, 43, -1, 45, -1, 47, 48, -1,
16545  -1, 51, -1, -1, 54, 55, -1, 57, 58, -1,
16546  60, -1, 62, 63, 64, 65, 66, 67, -1, 69,
16547  70, -1, 72, 73, 74, 75, 76, 77, 78, 79,
16548  80, -1, 82, 83, -1, 85, 86, 87, 88, 89,
16549  -1, -1, -1, 93, -1, -1, 96, -1, 98, -1,
16550  -1, 101, -1, -1, -1, 105, 106, 107, -1, -1,
16551  110, -1, -1, -1, -1, 115, 116, -1, -1, -1,
16552  -1, 121, 122, -1, 124, -1, -1, -1, 128, -1,
16553  130, 131, 132, 133, 134, -1, -1, -1, 138, -1,
16554  -1, 141, 142, 143, -1, -1, -1, 147, -1, 149,
16555  150, -1, 152, 153, 154, -1, -1, 157, 158, -1,
16556  160, 161, 162, 163, 164, 165, -1, -1, 168, 169,
16557  170, 171, 172, -1, -1, 175, 176, -1, 178, 179,
16558  180, -1, -1, 183, -1, -1, -1, 187, 188, -1,
16559  190, -1, 192, -1, 194, 195, 196, 197, -1, 199,
16560  -1, 201, -1, -1, -1, 205, 206, -1, 208, -1,
16561  -1, 211, 212, -1, -1, -1, 216, 217, 218, 219,
16562  -1, -1, 222, 223, 224, -1, -1, 227, -1, -1,
16563  -1, -1, 232, 233, -1, -1, -1, 237, -1, -1,
16564  -1, 241, 242, -1, 244, 245, -1, -1, -1, 249,
16565  -1, -1, 252, 253, -1, -1, 256, -1, -1, 259,
16566  260, -1, -1, -1, -1, -1, 266, 267, -1, 269,
16567  -1, 271, -1, 273, 274, -1, -1, -1, -1, -1,
16568  -1, -1, 282, -1, 284, 285, 286, 287, 288, 289,
16569  290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
16570  300, -1, 302, 303, 304, -1, 306, 307, 308, 309,
16571  -1, 311, 312, -1, -1, -1, -1, 317, 318, 319,
16572  320, 321, 322, -1, -1, 325, 326, -1, 328, -1,
16573  330, -1, 332, 333, 334, 335, 336, 337, 338, 339,
16574  340, -1, -1, 343, 344, -1, -1, 347, 348, 349,
16575  350, -1, -1, -1, 354, 355, -1, -1, -1, 359,
16576  -1, 361, 362, 363, -1, 365, 366, 367, -1, 369,
16577  -1, -1, -1, -1, -1, -1, -1, -1, -1, 379,
16578  380, 381, -1, 383, 384, -1, 386, 387, 388, 389,
16579  390, 391, 392, 393, 394, 395, -1, -1, 398, 399,
16580  400, -1, 402, -1, 404, 405, 406, 407, 408, -1,
16581  410, 411, 412, -1, -1, 415, -1, -1, -1, 419,
16582  420, 421, 422, 423, -1, -1, 426, 427, 428, 429,
16583  430, -1, 432, 433, -1, 435, 436, 437, -1, -1,
16584  440, -1, 442, -1, 444, 445, -1, 447, 448, 449,
16585  -1, 451, -1, -1, 454, 455, 456, 457, 458, 459,
16586  460, 461, 462, 463, 464, -1, 466, 467, -1, -1,
16587  -1, 471, 472, 473, 474, -1, -1, -1, 478, -1,
16588  -1, -1, 482, -1, 484, 485, 486, 487, -1, 489,
16589  490, 491, 492, 493, -1, -1, -1, -1, -1, 499,
16590  500, 501, -1, 503, 504, -1, 506, -1, -1, 509,
16591  -1, -1, 512, 513, 514, 515, 516, 517, -1, -1,
16592  520, 521, -1, 523, 524, 525, 526, 527, 528, -1,
16593  -1, 531, 532, 533, 534, -1, 536, 537, -1, -1,
16594  540, 541, 542, 543, -1, -1, 546, 547, -1, 549,
16595  550, 551, 552, -1, -1, -1, -1, -1, 558, 559,
16596  -1, -1, -1, 563, 564, 565, 566, -1, 568, 569,
16597  -1, 571, 572, -1, 574, 575, -1, -1, 578, -1,
16598  -1, 581, -1, 583, -1, 585, 586, -1, -1, -1,
16599  -1, -1, -1, 593, -1, -1, 596, -1, -1, -1,
16600  600, 601, 602, 603, 604, -1, -1, -1, -1, -1,
16601  -1, 611, 612, -1, 614, 615, 616, -1, 5, 619,
16602  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
16603  -1, 18, -1, -1, -1, -1, 23, 24, 25, 26,
16604  27, -1, -1, 30, -1, -1, -1, 34, -1, -1,
16605  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
16606  -1, -1, -1, -1, 51, 52, -1, 54, 55, -1,
16607  57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
16608  67, -1, 69, 70, -1, 72, 73, -1, 75, -1,
16609  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
16610  87, -1, 89, -1, -1, -1, 93, -1, -1, 96,
16611  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
16612  107, -1, -1, 110, -1, -1, -1, -1, 115, -1,
16613  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
16614  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
16615  -1, -1, -1, -1, 141, 142, 143, -1, 145, 146,
16616  147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
16617  157, 158, -1, 160, 161, 162, 163, 164, -1, -1,
16618  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
16619  177, 178, 179, 180, -1, -1, -1, -1, -1, -1,
16620  -1, 188, -1, 190, -1, 192, -1, 194, 195, 196,
16621  197, -1, 199, -1, 201, -1, -1, -1, -1, 206,
16622  -1, -1, -1, -1, -1, 212, -1, -1, -1, 216,
16623  217, 218, 219, 220, -1, 222, 223, 224, -1, -1,
16624  227, -1, -1, -1, -1, 232, -1, -1, -1, -1,
16625  237, -1, -1, -1, 241, 242, -1, 244, 245, 246,
16626  -1, -1, 249, -1, -1, -1, 253, -1, -1, 256,
16627  257, -1, 259, 260, -1, -1, -1, -1, -1, 266,
16628  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
16629  -1, -1, 279, -1, -1, 282, -1, 284, 285, 286,
16630  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
16631  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
16632  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
16633  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
16634  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
16635  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
16636  347, 348, 349, 350, -1, -1, -1, -1, 355, -1,
16637  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
16638  367, -1, -1, -1, -1, -1, -1, -1, -1, -1,
16639  -1, -1, -1, 380, 381, -1, -1, 384, -1, 386,
16640  387, 388, 389, 390, 391, 392, 393, 394, -1, -1,
16641  -1, -1, 399, 400, -1, 402, -1, 404, 405, 406,
16642  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
16643  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
16644  427, 428, 429, 430, -1, 432, -1, -1, 435, -1,
16645  437, 438, -1, 440, -1, -1, -1, 444, -1, -1,
16646  447, 448, 449, 450, 451, -1, -1, -1, 455, 456,
16647  457, 458, 459, 460, 461, -1, 463, 464, -1, 466,
16648  -1, -1, -1, -1, 471, 472, 473, -1, -1, -1,
16649  -1, 478, -1, -1, -1, 482, -1, -1, 485, -1,
16650  487, -1, 489, -1, -1, 492, 493, -1, -1, -1,
16651  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
16652  -1, -1, 509, -1, -1, 512, -1, 514, 515, 516,
16653  517, -1, -1, -1, 521, -1, 523, 524, 525, 526,
16654  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
16655  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
16656  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
16657  -1, 558, 559, -1, -1, -1, -1, 564, 565, 566,
16658  -1, 568, 569, -1, 571, 572, -1, -1, -1, -1,
16659  -1, 578, -1, -1, 581, -1, -1, -1, 585, 586,
16660  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
16661  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
16662  607, -1, -1, -1, 611, -1, -1, 614, -1, 616,
16663  -1, 5, 619, 7, 8, 9, 10, 11, -1, -1,
16664  14, -1, -1, -1, 18, -1, -1, -1, -1, 23,
16665  24, 25, 26, 27, -1, -1, 30, -1, -1, -1,
16666  34, -1, -1, -1, 38, -1, -1, 41, 42, 43,
16667  -1, 45, -1, -1, -1, -1, -1, 51, 52, -1,
16668  54, 55, -1, 57, -1, -1, -1, -1, 62, 63,
16669  64, 65, 66, 67, -1, 69, 70, -1, 72, 73,
16670  -1, 75, -1, 77, 78, 79, 80, -1, 82, 83,
16671  -1, 85, 86, 87, -1, 89, -1, -1, -1, 93,
16672  -1, -1, 96, -1, 98, -1, -1, 101, -1, -1,
16673  -1, 105, 106, 107, -1, -1, 110, -1, -1, -1,
16674  -1, 115, -1, -1, -1, -1, -1, 121, 122, -1,
16675  124, -1, -1, -1, 128, -1, 130, 131, 132, 133,
16676  134, -1, -1, -1, -1, -1, -1, 141, 142, 143,
16677  -1, 145, -1, 147, -1, 149, 150, -1, 152, 153,
16678  154, -1, -1, 157, 158, -1, 160, 161, 162, 163,
16679  164, -1, -1, -1, 168, 169, 170, 171, 172, -1,
16680  -1, 175, 176, 177, 178, 179, 180, -1, -1, -1,
16681  -1, -1, -1, -1, 188, -1, 190, -1, 192, -1,
16682  194, 195, 196, 197, -1, 199, -1, 201, -1, -1,
16683  -1, -1, 206, -1, -1, -1, -1, -1, 212, -1,
16684  -1, -1, 216, 217, 218, 219, 220, -1, 222, 223,
16685  224, -1, -1, 227, -1, -1, -1, -1, 232, -1,
16686  -1, -1, -1, 237, -1, -1, -1, 241, 242, -1,
16687  244, 245, 246, -1, -1, 249, -1, -1, -1, 253,
16688  -1, -1, 256, 257, -1, 259, 260, -1, -1, -1,
16689  -1, -1, 266, 267, -1, 269, -1, 271, -1, 273,
16690  274, -1, -1, -1, -1, 279, -1, -1, 282, -1,
16691  284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
16692  294, 295, 296, 297, 298, 299, 300, -1, 302, 303,
16693  304, -1, 306, 307, 308, 309, -1, 311, 312, -1,
16694  -1, -1, -1, 317, 318, 319, 320, 321, 322, -1,
16695  -1, 325, 326, -1, 328, -1, 330, -1, 332, 333,
16696  334, 335, 336, 337, 338, 339, 340, -1, -1, 343,
16697  344, -1, -1, 347, 348, 349, 350, -1, -1, -1,
16698  -1, 355, -1, -1, -1, 359, -1, 361, 362, 363,
16699  -1, 365, 366, 367, -1, -1, -1, -1, -1, -1,
16700  -1, -1, -1, -1, -1, -1, 380, 381, -1, -1,
16701  384, -1, 386, 387, 388, 389, 390, 391, 392, 393,
16702  394, -1, -1, -1, -1, 399, 400, -1, 402, -1,
16703  404, 405, 406, 407, 408, -1, 410, 411, 412, -1,
16704  -1, 415, -1, -1, -1, 419, 420, 421, 422, 423,
16705  -1, -1, 426, 427, 428, 429, 430, -1, 432, -1,
16706  -1, 435, -1, 437, 438, -1, 440, -1, -1, -1,
16707  444, -1, -1, 447, 448, 449, 450, 451, -1, -1,
16708  -1, 455, 456, 457, 458, 459, 460, 461, -1, 463,
16709  464, -1, 466, -1, -1, -1, -1, 471, 472, 473,
16710  -1, -1, -1, -1, 478, -1, -1, -1, 482, -1,
16711  -1, 485, -1, 487, -1, 489, -1, -1, 492, 493,
16712  -1, -1, -1, -1, -1, 499, 500, 501, -1, 503,
16713  504, -1, 506, -1, -1, 509, -1, -1, 512, -1,
16714  514, 515, 516, 517, -1, -1, -1, 521, -1, 523,
16715  524, 525, 526, 527, 528, -1, -1, 531, 532, 533,
16716  534, -1, 536, 537, -1, -1, 540, 541, 542, 543,
16717  -1, -1, 546, 547, -1, 549, 550, 551, 552, -1,
16718  -1, -1, -1, -1, 558, 559, -1, -1, -1, -1,
16719  564, 565, 566, -1, 568, 569, -1, 571, 572, -1,
16720  -1, -1, -1, -1, 578, -1, -1, 581, -1, -1,
16721  -1, 585, 586, -1, -1, -1, -1, -1, -1, 593,
16722  -1, -1, 596, -1, -1, -1, 600, 601, 602, 603,
16723  604, 605, -1, 607, -1, -1, -1, 611, -1, -1,
16724  614, -1, 616, -1, 5, 619, 7, 8, 9, 10,
16725  11, -1, -1, 14, -1, -1, -1, 18, -1, -1,
16726  -1, -1, 23, 24, 25, 26, 27, -1, -1, 30,
16727  -1, -1, -1, 34, -1, -1, -1, 38, -1, -1,
16728  41, 42, 43, -1, 45, -1, -1, -1, -1, -1,
16729  51, 52, -1, 54, 55, -1, 57, -1, -1, -1,
16730  -1, 62, 63, 64, 65, 66, 67, -1, 69, 70,
16731  -1, 72, 73, -1, 75, -1, 77, 78, 79, 80,
16732  -1, 82, 83, -1, 85, 86, 87, -1, 89, -1,
16733  -1, -1, 93, -1, -1, 96, -1, 98, -1, -1,
16734  101, -1, -1, -1, 105, 106, 107, -1, -1, 110,
16735  -1, -1, -1, -1, 115, -1, -1, -1, -1, -1,
16736  121, 122, -1, 124, -1, -1, -1, 128, -1, 130,
16737  131, 132, 133, 134, -1, -1, -1, -1, -1, -1,
16738  141, 142, 143, -1, 145, -1, 147, -1, 149, 150,
16739  -1, 152, 153, 154, -1, -1, 157, 158, -1, 160,
16740  161, 162, 163, 164, -1, -1, -1, 168, 169, 170,
16741  171, 172, -1, -1, 175, 176, 177, 178, 179, 180,
16742  -1, -1, -1, -1, -1, -1, -1, 188, -1, 190,
16743  -1, 192, -1, 194, 195, 196, 197, -1, 199, -1,
16744  201, -1, -1, -1, -1, 206, -1, -1, -1, -1,
16745  -1, 212, -1, -1, -1, 216, 217, 218, 219, 220,
16746  -1, 222, 223, 224, -1, -1, 227, -1, -1, -1,
16747  -1, 232, -1, -1, -1, -1, 237, -1, -1, -1,
16748  241, 242, -1, 244, 245, 246, -1, -1, 249, -1,
16749  -1, -1, 253, -1, -1, 256, 257, -1, 259, 260,
16750  -1, -1, -1, -1, -1, 266, 267, -1, 269, -1,
16751  271, -1, 273, 274, -1, -1, -1, -1, 279, -1,
16752  -1, 282, -1, 284, 285, 286, 287, 288, 289, 290,
16753  291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
16754  -1, 302, 303, 304, -1, 306, 307, 308, 309, -1,
16755  311, 312, -1, -1, -1, -1, 317, 318, 319, 320,
16756  321, 322, -1, -1, 325, 326, -1, 328, -1, 330,
16757  -1, 332, 333, 334, 335, 336, 337, 338, 339, 340,
16758  -1, -1, 343, 344, -1, -1, 347, 348, 349, 350,
16759  -1, -1, -1, -1, 355, -1, -1, -1, 359, -1,
16760  361, 362, 363, -1, 365, 366, 367, -1, -1, -1,
16761  -1, -1, -1, -1, -1, -1, -1, -1, -1, 380,
16762  381, -1, -1, 384, -1, 386, 387, 388, 389, 390,
16763  391, 392, 393, 394, -1, -1, -1, -1, 399, 400,
16764  -1, 402, -1, 404, 405, 406, 407, 408, -1, 410,
16765  411, 412, -1, -1, 415, -1, -1, -1, 419, 420,
16766  421, 422, 423, -1, -1, 426, 427, 428, 429, 430,
16767  -1, 432, -1, -1, 435, -1, 437, 438, -1, 440,
16768  -1, -1, -1, 444, -1, -1, 447, 448, 449, 450,
16769  451, -1, -1, -1, 455, 456, 457, 458, 459, 460,
16770  461, -1, 463, 464, -1, 466, -1, -1, -1, -1,
16771  471, 472, 473, -1, -1, -1, -1, 478, -1, -1,
16772  -1, 482, -1, -1, 485, -1, 487, -1, 489, -1,
16773  -1, 492, 493, -1, -1, -1, -1, -1, 499, 500,
16774  501, -1, 503, 504, -1, 506, -1, -1, 509, -1,
16775  -1, 512, -1, 514, 515, 516, 517, -1, -1, -1,
16776  521, -1, 523, 524, 525, 526, 527, 528, -1, -1,
16777  531, 532, 533, 534, -1, 536, 537, -1, -1, 540,
16778  541, 542, 543, -1, -1, 546, 547, -1, 549, 550,
16779  551, 552, -1, -1, -1, -1, -1, 558, 559, -1,
16780  -1, -1, -1, 564, 565, 566, -1, 568, 569, -1,
16781  571, 572, -1, -1, -1, -1, -1, 578, -1, -1,
16782  581, -1, -1, -1, 585, 586, -1, -1, -1, -1,
16783  -1, -1, 593, -1, -1, 596, -1, -1, -1, 600,
16784  601, 602, 603, 604, 605, -1, 607, -1, -1, -1,
16785  611, -1, -1, 614, -1, 616, -1, 5, 619, 7,
16786  8, 9, 10, 11, -1, -1, 14, -1, -1, -1,
16787  18, -1, -1, -1, -1, 23, 24, 25, 26, 27,
16788  -1, -1, 30, -1, -1, -1, 34, -1, -1, -1,
16789  38, -1, -1, 41, 42, 43, -1, 45, -1, -1,
16790  -1, -1, -1, 51, 52, -1, 54, 55, -1, 57,
16791  -1, -1, -1, -1, 62, 63, 64, 65, 66, 67,
16792  -1, 69, 70, -1, 72, 73, -1, 75, -1, 77,
16793  78, 79, 80, -1, 82, 83, -1, 85, 86, 87,
16794  -1, 89, -1, -1, -1, 93, -1, -1, 96, -1,
16795  98, -1, -1, 101, -1, -1, -1, 105, 106, 107,
16796  -1, -1, 110, -1, -1, -1, -1, 115, -1, -1,
16797  -1, -1, -1, 121, 122, -1, 124, -1, -1, -1,
16798  128, -1, 130, 131, 132, 133, 134, -1, -1, -1,
16799  -1, -1, -1, 141, 142, 143, -1, -1, -1, 147,
16800  -1, 149, 150, -1, 152, 153, 154, -1, -1, 157,
16801  158, -1, 160, 161, 162, 163, 164, -1, -1, -1,
16802  168, 169, 170, 171, 172, -1, -1, 175, 176, 177,
16803  178, 179, 180, -1, -1, -1, -1, -1, -1, -1,
16804  188, -1, 190, -1, 192, -1, 194, 195, 196, 197,
16805  -1, 199, -1, 201, -1, -1, -1, -1, 206, -1,
16806  -1, -1, -1, -1, 212, -1, -1, -1, 216, 217,
16807  218, 219, 220, -1, 222, 223, 224, -1, -1, 227,
16808  -1, -1, -1, -1, 232, -1, -1, -1, -1, 237,
16809  -1, -1, -1, 241, 242, -1, 244, 245, 246, -1,
16810  -1, 249, -1, -1, -1, 253, -1, -1, 256, 257,
16811  -1, 259, 260, -1, -1, -1, -1, -1, 266, 267,
16812  -1, 269, -1, 271, -1, 273, 274, -1, -1, -1,
16813  -1, 279, -1, -1, 282, -1, 284, 285, 286, 287,
16814  288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
16815  298, 299, 300, -1, 302, 303, 304, -1, 306, 307,
16816  308, 309, -1, 311, 312, -1, -1, -1, -1, 317,
16817  318, 319, 320, 321, 322, -1, -1, 325, 326, -1,
16818  328, -1, 330, -1, 332, 333, 334, 335, 336, 337,
16819  338, 339, 340, -1, -1, 343, 344, -1, -1, 347,
16820  348, 349, 350, -1, -1, -1, -1, 355, -1, -1,
16821  -1, 359, -1, 361, 362, 363, -1, 365, 366, 367,
16822  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
16823  -1, -1, 380, 381, -1, -1, 384, -1, 386, 387,
16824  388, 389, 390, 391, 392, 393, 394, -1, -1, -1,
16825  -1, 399, 400, -1, 402, -1, 404, 405, 406, 407,
16826  408, -1, 410, 411, 412, -1, -1, 415, -1, -1,
16827  -1, 419, 420, 421, 422, 423, -1, -1, 426, 427,
16828  428, 429, 430, -1, 432, -1, -1, 435, -1, 437,
16829  438, -1, 440, -1, -1, -1, 444, -1, -1, 447,
16830  448, 449, 450, 451, -1, -1, -1, 455, 456, 457,
16831  458, 459, 460, 461, -1, 463, 464, -1, 466, -1,
16832  -1, -1, -1, 471, 472, 473, -1, -1, -1, -1,
16833  478, -1, -1, -1, 482, -1, -1, 485, -1, 487,
16834  -1, 489, -1, -1, 492, 493, -1, -1, -1, -1,
16835  -1, 499, 500, 501, -1, 503, 504, -1, 506, -1,
16836  -1, 509, -1, -1, 512, -1, 514, 515, 516, 517,
16837  -1, -1, -1, 521, -1, 523, 524, 525, 526, 527,
16838  528, -1, -1, 531, 532, 533, 534, -1, 536, 537,
16839  -1, -1, 540, 541, 542, 543, -1, -1, 546, 547,
16840  -1, 549, 550, 551, 552, -1, -1, -1, -1, -1,
16841  558, 559, -1, -1, -1, -1, 564, 565, 566, -1,
16842  568, 569, -1, 571, 572, -1, -1, -1, -1, -1,
16843  578, -1, -1, 581, -1, -1, -1, 585, 586, -1,
16844  -1, -1, -1, -1, -1, 593, -1, -1, 596, -1,
16845  -1, -1, 600, 601, 602, 603, 604, -1, -1, 607,
16846  -1, -1, -1, 611, -1, -1, 614, -1, 616, -1,
16847  5, 619, 7, 8, 9, 10, 11, -1, -1, 14,
16848  -1, -1, -1, 18, -1, -1, -1, -1, 23, 24,
16849  25, 26, 27, -1, -1, 30, -1, -1, -1, 34,
16850  -1, -1, -1, 38, -1, -1, 41, 42, 43, -1,
16851  45, -1, -1, -1, -1, -1, 51, 52, -1, 54,
16852  55, -1, 57, -1, -1, -1, -1, 62, 63, 64,
16853  65, 66, 67, -1, 69, 70, -1, 72, 73, -1,
16854  75, -1, 77, 78, 79, 80, -1, 82, 83, -1,
16855  85, 86, 87, -1, 89, -1, -1, -1, 93, -1,
16856  -1, 96, -1, 98, -1, -1, 101, -1, -1, -1,
16857  105, 106, 107, -1, -1, 110, -1, -1, -1, -1,
16858  115, -1, -1, -1, -1, -1, 121, 122, -1, 124,
16859  -1, -1, -1, 128, -1, 130, 131, 132, 133, 134,
16860  -1, -1, -1, -1, -1, -1, 141, 142, 143, -1,
16861  -1, -1, 147, -1, 149, 150, -1, 152, 153, 154,
16862  -1, -1, 157, 158, -1, 160, 161, 162, 163, 164,
16863  -1, -1, -1, 168, 169, 170, 171, 172, -1, -1,
16864  175, 176, 177, 178, 179, 180, -1, -1, -1, -1,
16865  -1, -1, -1, 188, -1, 190, -1, 192, -1, 194,
16866  195, 196, 197, -1, 199, -1, 201, -1, -1, -1,
16867  -1, 206, -1, -1, -1, -1, -1, 212, -1, -1,
16868  -1, 216, 217, 218, 219, 220, -1, 222, 223, 224,
16869  -1, -1, 227, -1, -1, -1, -1, 232, -1, -1,
16870  -1, -1, 237, -1, -1, -1, 241, 242, -1, 244,
16871  245, 246, -1, -1, 249, -1, -1, -1, 253, -1,
16872  -1, 256, 257, -1, 259, 260, -1, -1, -1, -1,
16873  -1, 266, 267, -1, 269, -1, 271, -1, 273, 274,
16874  -1, -1, -1, -1, 279, -1, -1, 282, -1, 284,
16875  285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
16876  295, 296, 297, 298, 299, 300, -1, 302, 303, 304,
16877  -1, 306, 307, 308, 309, -1, 311, 312, -1, -1,
16878  -1, -1, 317, 318, 319, 320, 321, 322, -1, -1,
16879  325, 326, -1, 328, -1, 330, -1, 332, 333, 334,
16880  335, 336, 337, 338, 339, 340, -1, -1, 343, 344,
16881  -1, -1, 347, 348, 349, 350, -1, -1, -1, -1,
16882  355, -1, -1, -1, 359, -1, 361, 362, 363, -1,
16883  365, 366, 367, -1, -1, -1, -1, -1, -1, -1,
16884  -1, -1, -1, -1, -1, 380, 381, -1, -1, 384,
16885  -1, 386, 387, 388, 389, 390, 391, 392, 393, 394,
16886  -1, -1, -1, -1, 399, 400, -1, 402, -1, 404,
16887  405, 406, 407, 408, -1, 410, 411, 412, -1, -1,
16888  415, -1, -1, -1, 419, 420, 421, 422, 423, -1,
16889  -1, 426, 427, 428, 429, 430, -1, 432, -1, -1,
16890  435, -1, 437, 438, -1, 440, -1, -1, -1, 444,
16891  -1, -1, 447, 448, 449, 450, 451, -1, -1, -1,
16892  455, 456, 457, 458, 459, 460, 461, -1, 463, 464,
16893  -1, 466, -1, -1, -1, -1, 471, 472, 473, -1,
16894  -1, -1, -1, 478, -1, -1, -1, 482, -1, -1,
16895  485, -1, 487, -1, 489, -1, -1, 492, 493, -1,
16896  -1, -1, -1, -1, 499, 500, 501, -1, 503, 504,
16897  -1, 506, -1, -1, 509, -1, -1, 512, -1, 514,
16898  515, 516, 517, -1, -1, -1, 521, -1, 523, 524,
16899  525, 526, 527, 528, -1, -1, 531, 532, 533, 534,
16900  -1, 536, 537, -1, -1, 540, 541, 542, 543, -1,
16901  -1, 546, 547, -1, 549, 550, 551, 552, -1, -1,
16902  -1, -1, -1, 558, 559, -1, -1, -1, -1, 564,
16903  565, 566, -1, 568, 569, -1, 571, 572, -1, -1,
16904  -1, -1, -1, 578, -1, -1, 581, -1, -1, -1,
16905  585, 586, -1, -1, -1, -1, -1, -1, 593, -1,
16906  -1, 596, -1, -1, -1, 600, 601, 602, 603, 604,
16907  -1, -1, 607, -1, -1, -1, 611, -1, -1, 614,
16908  -1, 616, -1, 5, 619, 7, 8, 9, 10, 11,
16909  -1, -1, 14, -1, -1, -1, 18, -1, -1, -1,
16910  -1, 23, 24, 25, 26, 27, -1, -1, 30, -1,
16911  -1, -1, 34, -1, -1, -1, 38, -1, -1, 41,
16912  42, 43, -1, 45, -1, -1, -1, -1, -1, 51,
16913  52, -1, 54, 55, -1, 57, -1, -1, -1, -1,
16914  62, 63, 64, 65, 66, 67, -1, 69, 70, -1,
16915  72, 73, -1, 75, -1, 77, 78, 79, 80, -1,
16916  82, 83, -1, 85, 86, 87, -1, 89, -1, -1,
16917  -1, 93, -1, -1, 96, -1, 98, -1, -1, 101,
16918  -1, -1, -1, 105, 106, 107, -1, -1, 110, -1,
16919  -1, -1, -1, 115, -1, -1, -1, -1, -1, 121,
16920  122, -1, 124, -1, -1, -1, 128, -1, 130, 131,
16921  132, 133, 134, -1, -1, -1, -1, -1, -1, 141,
16922  142, 143, -1, -1, -1, 147, -1, 149, 150, -1,
16923  152, 153, 154, -1, -1, 157, 158, -1, 160, 161,
16924  162, 163, 164, -1, -1, -1, 168, 169, 170, 171,
16925  172, -1, -1, 175, 176, 177, 178, 179, 180, -1,
16926  -1, -1, -1, -1, -1, -1, 188, -1, 190, -1,
16927  192, -1, 194, 195, 196, 197, -1, 199, -1, 201,
16928  -1, -1, -1, -1, 206, -1, -1, -1, -1, -1,
16929  212, -1, -1, -1, 216, 217, 218, 219, 220, -1,
16930  222, 223, 224, -1, -1, 227, -1, -1, -1, -1,
16931  232, -1, -1, -1, -1, 237, -1, -1, -1, 241,
16932  242, -1, 244, 245, 246, -1, -1, 249, -1, -1,
16933  -1, 253, -1, -1, 256, 257, -1, 259, 260, -1,
16934  -1, -1, -1, -1, 266, 267, -1, 269, -1, 271,
16935  -1, 273, 274, -1, -1, -1, -1, 279, -1, -1,
16936  282, -1, 284, 285, 286, 287, 288, 289, 290, 291,
16937  292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
16938  302, 303, 304, -1, 306, 307, 308, 309, -1, 311,
16939  312, -1, -1, -1, -1, 317, 318, 319, 320, 321,
16940  322, -1, -1, 325, 326, -1, 328, -1, 330, -1,
16941  332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
16942  -1, 343, 344, -1, -1, 347, 348, 349, 350, -1,
16943  -1, -1, -1, 355, -1, -1, -1, 359, -1, 361,
16944  362, 363, -1, 365, 366, 367, -1, -1, -1, -1,
16945  -1, -1, -1, -1, -1, -1, -1, -1, 380, 381,
16946  -1, -1, 384, -1, 386, 387, 388, 389, 390, 391,
16947  392, 393, 394, -1, -1, -1, -1, 399, 400, -1,
16948  402, -1, 404, 405, 406, 407, 408, -1, 410, 411,
16949  412, -1, -1, 415, -1, -1, -1, 419, 420, 421,
16950  422, 423, -1, -1, 426, 427, 428, 429, 430, -1,
16951  432, -1, -1, 435, -1, 437, 438, -1, 440, -1,
16952  -1, -1, 444, -1, -1, 447, 448, 449, 450, 451,
16953  -1, -1, -1, 455, 456, 457, 458, 459, 460, 461,
16954  -1, 463, 464, -1, 466, -1, -1, -1, -1, 471,
16955  472, 473, -1, -1, -1, -1, 478, -1, -1, -1,
16956  482, -1, -1, 485, -1, 487, -1, 489, -1, -1,
16957  492, 493, -1, -1, -1, -1, -1, 499, 500, 501,
16958  -1, 503, 504, -1, 506, -1, -1, 509, -1, -1,
16959  512, -1, 514, 515, 516, 517, -1, -1, -1, 521,
16960  -1, 523, 524, 525, 526, 527, 528, -1, -1, 531,
16961  532, 533, 534, -1, 536, 537, -1, -1, 540, 541,
16962  542, 543, -1, -1, 546, 547, -1, 549, 550, 551,
16963  552, -1, -1, -1, -1, -1, 558, 559, -1, -1,
16964  -1, -1, 564, 565, 566, -1, 568, 569, -1, 571,
16965  572, -1, -1, -1, -1, -1, 578, -1, -1, 581,
16966  -1, -1, -1, 585, 586, -1, -1, -1, -1, -1,
16967  -1, 593, -1, -1, 596, -1, -1, -1, 600, 601,
16968  602, 603, 604, -1, -1, 607, -1, -1, -1, 611,
16969  -1, -1, 614, -1, 616, -1, 5, 619, 7, 8,
16970  9, 10, 11, -1, -1, 14, -1, -1, -1, 18,
16971  -1, -1, -1, -1, 23, 24, 25, 26, 27, -1,
16972  -1, 30, -1, -1, -1, 34, -1, -1, -1, 38,
16973  -1, -1, 41, 42, 43, -1, 45, -1, -1, -1,
16974  -1, -1, 51, 52, -1, 54, 55, -1, 57, -1,
16975  -1, -1, -1, 62, 63, 64, 65, 66, 67, -1,
16976  69, 70, -1, 72, 73, -1, 75, -1, 77, 78,
16977  79, 80, -1, 82, 83, -1, 85, 86, 87, -1,
16978  89, -1, -1, -1, 93, -1, -1, 96, -1, 98,
16979  -1, -1, 101, -1, -1, -1, 105, 106, 107, -1,
16980  -1, 110, -1, -1, -1, -1, 115, -1, -1, -1,
16981  -1, -1, 121, 122, -1, 124, -1, -1, -1, 128,
16982  -1, 130, 131, 132, 133, 134, -1, -1, -1, -1,
16983  -1, -1, 141, 142, 143, -1, -1, -1, 147, -1,
16984  149, 150, -1, 152, 153, 154, -1, -1, 157, 158,
16985  -1, 160, 161, 162, 163, 164, -1, -1, -1, 168,
16986  169, 170, 171, 172, -1, -1, 175, 176, 177, 178,
16987  179, 180, -1, -1, -1, -1, -1, -1, -1, 188,
16988  -1, 190, -1, 192, -1, 194, 195, 196, 197, -1,
16989  199, -1, 201, -1, -1, -1, -1, 206, -1, -1,
16990  -1, -1, -1, 212, -1, -1, -1, 216, 217, 218,
16991  219, 220, -1, 222, 223, 224, -1, -1, 227, -1,
16992  -1, -1, -1, 232, -1, -1, -1, -1, 237, -1,
16993  -1, -1, 241, 242, -1, 244, 245, 246, -1, -1,
16994  249, -1, -1, -1, 253, -1, -1, 256, 257, -1,
16995  259, 260, -1, -1, -1, -1, -1, 266, 267, -1,
16996  269, -1, 271, -1, 273, 274, -1, -1, -1, -1,
16997  279, -1, -1, 282, -1, 284, 285, 286, 287, 288,
16998  289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
16999  299, 300, -1, 302, 303, 304, -1, 306, 307, 308,
17000  309, -1, 311, 312, -1, -1, -1, -1, 317, 318,
17001  319, 320, 321, 322, -1, -1, 325, 326, -1, 328,
17002  -1, 330, -1, 332, 333, 334, 335, 336, 337, 338,
17003  339, 340, -1, -1, 343, 344, -1, -1, 347, 348,
17004  349, 350, -1, -1, -1, -1, 355, -1, -1, -1,
17005  359, -1, 361, 362, 363, -1, 365, 366, 367, -1,
17006  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
17007  -1, 380, 381, -1, -1, 384, -1, 386, 387, 388,
17008  389, 390, 391, 392, 393, 394, -1, -1, -1, -1,
17009  399, 400, -1, 402, -1, 404, 405, 406, 407, 408,
17010  -1, 410, 411, 412, -1, -1, 415, -1, -1, -1,
17011  419, 420, 421, 422, 423, -1, -1, 426, 427, 428,
17012  429, 430, -1, 432, -1, -1, 435, -1, 437, 438,
17013  -1, 440, -1, -1, -1, 444, -1, -1, 447, 448,
17014  449, 450, 451, -1, -1, -1, 455, 456, 457, 458,
17015  459, 460, 461, -1, 463, 464, -1, 466, -1, -1,
17016  -1, -1, 471, 472, 473, -1, -1, -1, -1, 478,
17017  -1, -1, -1, 482, -1, -1, 485, -1, 487, -1,
17018  489, -1, -1, 492, 493, -1, -1, -1, -1, -1,
17019  499, 500, 501, -1, 503, 504, -1, 506, -1, -1,
17020  509, -1, -1, 512, -1, 514, 515, 516, 517, -1,
17021  -1, -1, 521, -1, 523, 524, 525, 526, 527, 528,
17022  -1, -1, 531, 532, 533, 534, -1, 536, 537, -1,
17023  -1, 540, 541, 542, 543, -1, -1, 546, 547, -1,
17024  549, 550, 551, 552, -1, -1, -1, -1, -1, 558,
17025  559, -1, -1, -1, -1, 564, 565, 566, -1, 568,
17026  569, -1, 571, 572, -1, -1, -1, -1, -1, 578,
17027  -1, -1, 581, -1, -1, -1, 585, 586, -1, -1,
17028  -1, -1, -1, -1, 593, -1, -1, 596, -1, -1,
17029  -1, 600, 601, 602, 603, 604, -1, -1, 607, -1,
17030  -1, -1, 611, -1, -1, 614, -1, 616, -1, 5,
17031  619, 7, 8, 9, 10, 11, -1, -1, 14, -1,
17032  -1, -1, 18, -1, -1, -1, -1, 23, 24, 25,
17033  26, 27, -1, -1, 30, -1, -1, -1, 34, -1,
17034  -1, -1, 38, -1, -1, 41, 42, 43, -1, 45,
17035  -1, -1, -1, -1, -1, 51, 52, -1, 54, 55,
17036  -1, 57, -1, -1, -1, -1, 62, 63, 64, 65,
17037  66, 67, -1, 69, 70, -1, 72, 73, -1, 75,
17038  -1, 77, 78, 79, 80, -1, 82, 83, -1, 85,
17039  86, 87, -1, 89, -1, -1, -1, 93, -1, -1,
17040  96, -1, 98, -1, -1, 101, -1, -1, -1, 105,
17041  106, 107, -1, -1, 110, -1, -1, -1, -1, 115,
17042  -1, -1, -1, -1, -1, 121, 122, -1, 124, -1,
17043  -1, -1, 128, -1, 130, 131, 132, 133, 134, -1,
17044  -1, -1, -1, -1, -1, 141, 142, 143, -1, -1,
17045  -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
17046  -1, 157, 158, -1, 160, 161, 162, 163, 164, -1,
17047  -1, -1, 168, 169, 170, 171, 172, -1, -1, 175,
17048  176, 177, 178, 179, 180, -1, -1, -1, -1, -1,
17049  -1, -1, 188, -1, 190, -1, 192, -1, 194, 195,
17050  196, 197, -1, 199, -1, 201, -1, -1, -1, -1,
17051  206, -1, -1, -1, -1, -1, 212, -1, -1, -1,
17052  216, 217, 218, 219, 220, -1, 222, 223, 224, -1,
17053  -1, 227, -1, -1, -1, -1, 232, -1, -1, -1,
17054  -1, 237, -1, -1, -1, 241, 242, -1, 244, 245,
17055  246, -1, -1, 249, -1, -1, -1, 253, -1, -1,
17056  256, 257, -1, 259, 260, -1, -1, -1, -1, -1,
17057  266, 267, -1, 269, -1, 271, -1, 273, 274, -1,
17058  -1, -1, -1, 279, -1, -1, 282, -1, 284, 285,
17059  286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
17060  296, 297, 298, 299, 300, -1, 302, 303, 304, -1,
17061  306, 307, 308, 309, -1, 311, 312, -1, -1, -1,
17062  -1, 317, 318, 319, 320, 321, 322, -1, -1, 325,
17063  326, -1, 328, -1, 330, -1, 332, 333, 334, 335,
17064  336, 337, 338, 339, 340, -1, -1, 343, 344, -1,
17065  -1, 347, 348, 349, 350, -1, -1, -1, -1, 355,
17066  -1, -1, -1, 359, -1, 361, 362, 363, -1, 365,
17067  366, 367, -1, -1, -1, -1, -1, -1, -1, -1,
17068  -1, -1, -1, -1, 380, 381, -1, -1, 384, -1,
17069  386, 387, 388, 389, 390, 391, 392, 393, 394, -1,
17070  -1, -1, -1, 399, 400, -1, 402, -1, 404, 405,
17071  406, 407, 408, -1, 410, 411, 412, -1, -1, 415,
17072  -1, -1, -1, 419, 420, 421, 422, 423, -1, -1,
17073  426, 427, 428, 429, 430, -1, 432, -1, -1, 435,
17074  -1, 437, 438, -1, 440, -1, -1, -1, 444, -1,
17075  -1, 447, 448, 449, 450, 451, -1, -1, -1, 455,
17076  456, 457, 458, 459, 460, 461, -1, 463, 464, -1,
17077  466, -1, -1, -1, -1, 471, 472, 473, -1, -1,
17078  -1, -1, 478, -1, -1, -1, 482, -1, -1, 485,
17079  -1, 487, -1, 489, -1, -1, 492, 493, -1, -1,
17080  -1, -1, -1, 499, 500, 501, -1, 503, 504, -1,
17081  506, -1, -1, 509, -1, -1, 512, -1, 514, 515,
17082  516, 517, -1, -1, -1, 521, -1, 523, 524, 525,
17083  526, 527, 528, -1, -1, 531, 532, 533, 534, -1,
17084  536, 537, -1, -1, 540, 541, 542, 543, -1, -1,
17085  546, 547, -1, 549, 550, 551, 552, -1, -1, -1,
17086  -1, -1, 558, 559, -1, -1, -1, -1, 564, 565,
17087  566, -1, 568, 569, -1, 571, 572, -1, -1, -1,
17088  -1, -1, 578, -1, -1, 581, -1, -1, -1, 585,
17089  586, -1, -1, -1, -1, -1, -1, 593, -1, -1,
17090  596, -1, -1, -1, 600, 601, 602, 603, 604, -1,
17091  -1, 607, -1, -1, -1, 611, -1, -1, 614, -1,
17092  616, -1, 5, 619, 7, 8, 9, 10, 11, -1,
17093  -1, 14, -1, -1, -1, 18, -1, -1, -1, -1,
17094  23, 24, 25, 26, 27, -1, -1, 30, -1, -1,
17095  -1, 34, -1, -1, -1, 38, -1, -1, 41, 42,
17096  43, -1, 45, -1, -1, -1, -1, -1, 51, 52,
17097  -1, 54, 55, -1, 57, -1, -1, -1, -1, 62,
17098  63, 64, 65, 66, 67, -1, 69, 70, -1, 72,
17099  73, -1, 75, -1, 77, 78, 79, 80, -1, 82,
17100  83, -1, 85, 86, 87, -1, 89, -1, -1, -1,
17101  93, -1, -1, 96, -1, 98, -1, -1, 101, -1,
17102  -1, -1, 105, 106, 107, -1, -1, 110, -1, -1,
17103  -1, -1, 115, -1, -1, -1, -1, -1, 121, 122,
17104  -1, 124, -1, -1, -1, 128, -1, 130, 131, 132,
17105  133, 134, -1, -1, -1, -1, -1, -1, 141, 142,
17106  143, -1, -1, -1, 147, -1, -1, 150, -1, 152,
17107  153, 154, -1, -1, 157, 158, -1, 160, 161, 162,
17108  163, 164, -1, -1, -1, 168, 169, 170, 171, 172,
17109  -1, -1, 175, 176, 177, 178, 179, 180, -1, -1,
17110  -1, -1, -1, -1, -1, 188, -1, 190, -1, 192,
17111  -1, 194, 195, 196, 197, -1, 199, -1, 201, -1,
17112  -1, -1, -1, 206, -1, -1, -1, -1, -1, 212,
17113  -1, -1, -1, 216, 217, 218, 219, 220, -1, 222,
17114  223, 224, -1, -1, 227, -1, -1, -1, -1, 232,
17115  -1, -1, -1, -1, 237, -1, -1, -1, 241, 242,
17116  -1, 244, 245, 246, -1, -1, 249, -1, -1, -1,
17117  253, -1, -1, 256, 257, -1, 259, 260, -1, -1,
17118  -1, -1, -1, 266, 267, -1, 269, -1, 271, -1,
17119  273, 274, -1, -1, -1, -1, 279, -1, -1, 282,
17120  -1, 284, 285, 286, 287, 288, 289, 290, 291, 292,
17121  293, 294, 295, 296, 297, 298, 299, 300, -1, 302,
17122  303, 304, -1, 306, 307, 308, 309, -1, 311, 312,
17123  -1, -1, -1, -1, 317, 318, 319, 320, 321, 322,
17124  -1, -1, 325, 326, -1, 328, -1, 330, -1, 332,
17125  333, 334, 335, 336, 337, 338, 339, 340, -1, -1,
17126  343, 344, -1, -1, 347, 348, 349, 350, -1, -1,
17127  -1, -1, 355, -1, -1, -1, 359, -1, 361, 362,
17128  363, -1, 365, 366, 367, -1, -1, -1, -1, -1,
17129  -1, -1, -1, -1, -1, -1, -1, 380, 381, -1,
17130  -1, 384, -1, 386, 387, 388, 389, 390, 391, 392,
17131  393, 394, -1, -1, -1, -1, 399, 400, -1, 402,
17132  -1, 404, 405, 406, 407, 408, -1, 410, 411, 412,
17133  -1, -1, 415, -1, -1, -1, 419, 420, 421, 422,
17134  423, -1, -1, 426, 427, 428, 429, 430, -1, 432,
17135  -1, -1, 435, -1, 437, 438, -1, 440, -1, -1,
17136  -1, 444, -1, -1, 447, 448, 449, 450, 451, -1,
17137  -1, -1, 455, 456, 457, 458, 459, 460, 461, -1,
17138  463, 464, -1, 466, -1, -1, -1, -1, 471, 472,
17139  473, -1, -1, -1, -1, 478, -1, -1, -1, 482,
17140  -1, -1, 485, -1, 487, -1, 489, -1, -1, 492,
17141  493, -1, -1, -1, -1, -1, 499, 500, 501, -1,
17142  503, 504, -1, 506, -1, -1, 509, -1, -1, 512,
17143  -1, 514, 515, 516, 517, -1, -1, -1, 521, -1,
17144  523, 524, 525, 526, 527, 528, -1, -1, 531, 532,
17145  533, 534, -1, 536, 537, -1, -1, 540, 541, 542,
17146  543, -1, -1, 546, 547, -1, 549, 550, 551, 552,
17147  -1, -1, -1, -1, -1, 558, 559, -1, -1, -1,
17148  -1, 564, 565, 566, -1, 568, 569, -1, 571, 572,
17149  -1, -1, -1, -1, -1, 578, -1, -1, 581, -1,
17150  -1, -1, 585, 586, -1, -1, -1, -1, -1, -1,
17151  593, -1, -1, 596, -1, -1, -1, 600, 601, 602,
17152  603, 604, -1, -1, 607, -1, -1, -1, 611, -1,
17153  -1, 614, -1, 616, -1, 5, 619, 7, 8, 9,
17154  10, 11, -1, -1, 14, -1, -1, -1, 18, -1,
17155  -1, -1, -1, 23, 24, 25, 26, 27, -1, -1,
17156  30, -1, -1, -1, 34, -1, -1, -1, 38, -1,
17157  -1, 41, 42, 43, -1, 45, -1, -1, -1, -1,
17158  -1, 51, 52, -1, 54, 55, -1, 57, -1, -1,
17159  -1, -1, 62, 63, 64, 65, 66, 67, -1, 69,
17160  70, -1, 72, 73, -1, 75, -1, 77, 78, 79,
17161  80, -1, 82, 83, -1, 85, 86, 87, -1, 89,
17162  -1, -1, -1, 93, -1, -1, 96, -1, 98, -1,
17163  -1, 101, -1, -1, -1, 105, 106, 107, -1, -1,
17164  110, -1, -1, -1, -1, 115, -1, -1, -1, -1,
17165  -1, 121, 122, -1, 124, -1, -1, -1, 128, -1,
17166  130, 131, 132, 133, 134, -1, -1, -1, -1, -1,
17167  -1, 141, 142, 143, -1, -1, -1, 147, -1, -1,
17168  150, -1, 152, 153, 154, -1, -1, 157, 158, -1,
17169  160, 161, 162, 163, 164, -1, -1, -1, 168, 169,
17170  170, 171, 172, -1, -1, 175, 176, 177, 178, 179,
17171  180, -1, -1, -1, -1, -1, -1, -1, 188, -1,
17172  190, -1, 192, -1, 194, 195, 196, 197, -1, 199,
17173  -1, 201, -1, -1, -1, -1, 206, -1, -1, -1,
17174  -1, -1, 212, -1, -1, -1, 216, 217, 218, 219,
17175  220, -1, 222, 223, 224, -1, -1, 227, -1, -1,
17176  -1, -1, 232, -1, -1, -1, -1, 237, -1, -1,
17177  -1, 241, 242, -1, 244, 245, 246, -1, -1, 249,
17178  -1, -1, -1, 253, -1, -1, 256, 257, -1, 259,
17179  260, -1, -1, -1, -1, -1, 266, 267, -1, 269,
17180  -1, 271, -1, 273, 274, -1, -1, -1, -1, 279,
17181  -1, -1, 282, -1, 284, 285, 286, 287, 288, 289,
17182  290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
17183  300, -1, 302, 303, 304, -1, 306, 307, 308, 309,
17184  -1, 311, 312, -1, -1, -1, -1, 317, 318, 319,
17185  320, 321, 322, -1, -1, 325, 326, -1, 328, -1,
17186  330, -1, 332, 333, 334, 335, 336, 337, 338, 339,
17187  340, -1, -1, 343, 344, -1, -1, 347, 348, 349,
17188  350, -1, -1, -1, -1, 355, -1, -1, -1, 359,
17189  -1, 361, 362, 363, -1, 365, 366, 367, -1, -1,
17190  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
17191  380, 381, -1, -1, 384, -1, 386, 387, 388, 389,
17192  390, 391, 392, 393, 394, -1, -1, -1, -1, 399,
17193  400, -1, 402, -1, 404, 405, 406, 407, 408, -1,
17194  410, 411, 412, -1, -1, 415, -1, -1, -1, 419,
17195  420, 421, 422, 423, -1, -1, 426, 427, 428, 429,
17196  430, -1, 432, -1, -1, 435, -1, 437, 438, -1,
17197  440, -1, -1, -1, 444, -1, -1, 447, 448, 449,
17198  450, 451, -1, -1, -1, 455, 456, 457, 458, 459,
17199  460, 461, -1, 463, 464, -1, 466, -1, -1, -1,
17200  -1, 471, 472, 473, -1, -1, -1, -1, 478, -1,
17201  -1, -1, 482, -1, -1, 485, -1, 487, -1, 489,
17202  -1, -1, 492, 493, -1, -1, -1, -1, -1, 499,
17203  500, 501, -1, 503, 504, -1, 506, -1, -1, 509,
17204  -1, -1, 512, -1, 514, 515, 516, 517, -1, -1,
17205  -1, 521, -1, 523, 524, 525, 526, 527, 528, -1,
17206  -1, 531, 532, 533, 534, -1, 536, 537, -1, -1,
17207  540, 541, 542, 543, -1, -1, 546, 547, -1, 549,
17208  550, 551, 552, -1, -1, -1, -1, -1, 558, 559,
17209  -1, -1, -1, -1, 564, 565, 566, -1, 568, 569,
17210  -1, 571, 572, -1, -1, -1, -1, -1, 578, -1,
17211  -1, 581, -1, -1, -1, 585, 586, -1, -1, -1,
17212  -1, -1, -1, 593, -1, -1, 596, -1, -1, -1,
17213  600, 601, 602, 603, 604, -1, -1, 607, -1, -1,
17214  -1, 611, -1, -1, 614, -1, 616, -1, 5, 619,
17215  7, 8, 9, 10, 11, -1, -1, 14, -1, -1,
17216  -1, 18, -1, -1, -1, -1, 23, 24, 25, 26,
17217  27, -1, -1, -1, -1, -1, -1, 34, -1, -1,
17218  -1, 38, -1, -1, 41, 42, 43, -1, 45, -1,
17219  -1, -1, -1, -1, 51, -1, -1, 54, 55, -1,
17220  57, -1, -1, -1, -1, 62, 63, 64, -1, 66,
17221  67, -1, 69, 70, -1, 72, 73, -1, 75, -1,
17222  77, 78, 79, 80, -1, 82, 83, -1, 85, 86,
17223  87, -1, 89, -1, -1, -1, 93, -1, -1, 96,
17224  -1, 98, -1, -1, 101, -1, -1, -1, 105, 106,
17225  107, -1, -1, 110, -1, -1, -1, -1, 115, -1,
17226  -1, -1, -1, -1, 121, 122, -1, 124, -1, -1,
17227  -1, 128, -1, 130, 131, 132, 133, 134, -1, -1,
17228  -1, -1, -1, -1, 141, 142, 143, -1, -1, -1,
17229  147, -1, -1, 150, -1, 152, 153, 154, -1, -1,
17230  157, 158, -1, 160, 161, 162, 163, 164, -1, -1,
17231  -1, 168, 169, 170, 171, 172, -1, -1, 175, 176,
17232  -1, 178, 179, 180, -1, -1, -1, -1, -1, -1,
17233  -1, 188, -1, 190, -1, 192, -1, 194, 195, 196,
17234  197, -1, 199, -1, 201, -1, -1, -1, -1, 206,
17235  -1, -1, -1, -1, -1, 212, -1, -1, -1, 216,
17236  217, 218, 219, -1, -1, 222, 223, 224, -1, -1,
17237  227, -1, -1, -1, -1, 232, -1, -1, -1, -1,
17238  237, -1, -1, -1, 241, 242, -1, 244, 245, -1,
17239  -1, -1, 249, -1, -1, -1, 253, -1, -1, 256,
17240  -1, -1, 259, 260, -1, -1, -1, -1, -1, 266,
17241  267, -1, 269, -1, 271, -1, 273, 274, -1, -1,
17242  -1, -1, -1, -1, -1, 282, -1, 284, 285, 286,
17243  287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
17244  297, 298, 299, 300, -1, 302, 303, 304, -1, 306,
17245  307, 308, 309, -1, 311, 312, -1, -1, -1, -1,
17246  317, 318, 319, 320, 321, 322, -1, -1, 325, 326,
17247  -1, 328, -1, 330, -1, 332, 333, 334, 335, 336,
17248  337, 338, 339, 340, -1, -1, 343, 344, -1, -1,
17249  347, 348, 349, 350, -1, -1, -1, -1, 355, -1,
17250  -1, -1, 359, -1, 361, 362, 363, -1, 365, 366,
17251  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
17252  -1, -1, -1, 380, 381, -1, -1, 384, -1, 386,
17253  387, 388, 389, 390, 391, 392, 393, 394, -1, -1,
17254  -1, -1, 399, 400, -1, 402, -1, 404, 405, 406,
17255  407, 408, -1, 410, 411, 412, -1, -1, 415, -1,
17256  -1, -1, 419, 420, 421, 422, 423, -1, -1, 426,
17257  427, 428, 429, 430, -1, 432, -1, -1, 435, -1,
17258  437, -1, -1, 440, -1, -1, -1, 444, -1, -1,
17259  447, 448, 449, -1, 451, -1, -1, -1, 455, 456,
17260  457, 458, 459, 460, 461, -1, 463, 464, -1, 466,
17261  -1, -1, -1, -1, 471, 472, 473, -1, -1, -1,
17262  -1, 478, -1, -1, -1, 482, -1, -1, 485, -1,
17263  487, -1, 489, -1, -1, 492, 493, -1, -1, -1,
17264  -1, -1, 499, 500, 501, -1, 503, 504, -1, 506,
17265  -1, -1, 509, -1, -1, 512, -1, 514, 515, 516,
17266  517, -1, -1, -1, 521, -1, 523, 524, 525, 526,
17267  527, 528, -1, -1, 531, 532, 533, 534, -1, 536,
17268  537, -1, -1, 540, 541, 542, 543, -1, -1, 546,
17269  547, -1, 549, 550, 551, 552, -1, -1, -1, -1,
17270  -1, 558, 559, -1, -1, -1, -1, 564, 565, 566,
17271  -1, 568, 569, -1, 571, 572, -1, -1, -1, -1,
17272  -1, 578, -1, -1, 581, -1, -1, -1, 585, 586,
17273  -1, -1, -1, -1, -1, -1, 593, -1, -1, 596,
17274  -1, -1, -1, 600, 601, 602, 603, 604, -1, -1,
17275  -1, -1, -1, -1, 611, -1, -1, 614, -1, 616,
17276  -1, -1, 619
17277 };
17278 
17279 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
17280  symbol of state STATE-NUM. */
17281 static const yytype_uint16 yystos[] =
17282 {
17283  0, 13, 15, 30, 34, 48, 49, 56, 60, 61,
17284  76, 94, 116, 125, 126, 127, 138, 139, 151, 165,
17285  183, 198, 200, 205, 208, 231, 233, 251, 268, 272,
17286  368, 385, 398, 409, 431, 434, 436, 439, 442, 443,
17287  452, 454, 462, 468, 476, 481, 483, 513, 520, 563,
17288  575, 579, 582, 587, 615, 630, 641, 644, 645, 646,
17289  647, 648, 650, 655, 657, 664, 697, 724, 731, 732,
17290  851, 1016, 1058, 1060, 1074, 1077, 1082, 1084, 1085, 1090,
17291  1093, 1098, 1105, 1117, 1118, 1276, 1278, 1293, 1296, 1321,
17292  1329, 1340, 1347, 1361, 1365, 1368, 1378, 1384, 1388, 1390,
17293  1391, 1443, 1471, 1477, 1479, 1486, 1489, 1516, 1522, 1523,
17294  1524, 1525, 1582, 1590, 1591, 11, 103, 122, 192, 221,
17295  273, 403, 474, 537, 585, 1054, 1547, 1548, 1549, 1552,
17296  269, 356, 1092, 1517, 545, 1434, 225, 5, 7, 8,
17297  9, 10, 11, 14, 18, 21, 23, 24, 25, 26,
17298  27, 28, 30, 34, 38, 41, 42, 43, 45, 47,
17299  48, 51, 54, 55, 57, 58, 60, 62, 63, 64,
17300  65, 66, 67, 69, 70, 72, 73, 74, 75, 76,
17301  77, 78, 79, 80, 82, 83, 85, 86, 87, 88,
17302  89, 93, 96, 98, 101, 105, 106, 107, 110, 115,
17303  116, 121, 122, 124, 128, 130, 131, 132, 133, 134,
17304  138, 141, 142, 143, 147, 149, 150, 152, 153, 154,
17305  157, 158, 160, 161, 162, 163, 164, 165, 168, 169,
17306  170, 171, 172, 175, 176, 178, 179, 180, 183, 187,
17307  188, 190, 192, 194, 195, 196, 197, 199, 201, 205,
17308  206, 208, 211, 212, 216, 217, 218, 219, 222, 223,
17309  224, 227, 232, 233, 237, 241, 242, 244, 245, 249,
17310  252, 253, 256, 259, 260, 266, 267, 269, 271, 273,
17311  274, 282, 284, 285, 286, 287, 288, 289, 290, 291,
17312  292, 293, 294, 295, 296, 297, 298, 299, 300, 302,
17313  303, 304, 306, 307, 308, 309, 311, 312, 317, 318,
17314  319, 320, 321, 322, 325, 326, 328, 330, 332, 333,
17315  334, 335, 336, 337, 338, 339, 340, 343, 344, 347,
17316  348, 349, 350, 354, 355, 359, 361, 362, 363, 365,
17317  366, 367, 369, 379, 380, 381, 383, 384, 386, 387,
17318  388, 389, 390, 391, 392, 393, 394, 395, 398, 399,
17319  400, 402, 404, 405, 406, 407, 408, 410, 411, 412,
17320  415, 419, 420, 421, 422, 423, 426, 427, 428, 429,
17321  430, 432, 433, 435, 436, 437, 440, 442, 444, 445,
17322  447, 448, 449, 451, 454, 455, 456, 457, 458, 459,
17323  460, 461, 462, 463, 464, 466, 467, 471, 472, 473,
17324  474, 478, 482, 484, 485, 486, 487, 489, 490, 491,
17325  492, 493, 499, 500, 501, 503, 504, 506, 509, 512,
17326  513, 514, 515, 516, 517, 520, 521, 523, 524, 525,
17327  526, 527, 528, 531, 532, 533, 534, 536, 537, 540,
17328  541, 542, 543, 546, 547, 549, 550, 551, 552, 558,
17329  559, 563, 564, 565, 566, 568, 569, 571, 572, 574,
17330  575, 578, 581, 583, 585, 586, 593, 596, 600, 601,
17331  602, 603, 604, 611, 612, 614, 615, 616, 619, 691,
17332  1432, 1437, 1441, 1442, 302, 536, 539, 1473, 1473, 611,
17333  1518, 103, 191, 273, 474, 494, 537, 542, 577, 585,
17334  673, 674, 903, 904, 905, 994, 995, 996, 1330, 1277,
17335  103, 162, 192, 225, 273, 403, 474, 537, 542, 560,
17336  585, 600, 1289, 1437, 1092, 98, 733, 690, 638, 1429,
17337  1431, 1437, 656, 1294, 391, 82, 411, 1389, 106, 225,
17338  616, 1396, 1473, 1092, 852, 1437, 1385, 462, 585, 1473,
17339  1092, 1297, 1379, 497, 721, 725, 726, 1437, 690, 1518,
17340  1437, 1121, 1123, 1124, 1444, 1348, 725, 486, 558, 486,
17341  539, 1342, 391, 1478, 1322, 1437, 30, 76, 149, 398,
17342  420, 454, 513, 1584, 468, 630, 1119, 0, 151, 642,
17343  398, 171, 187, 386, 1366, 1429, 1437, 155, 1028, 1437,
17344  155, 691, 202, 691, 261, 1434, 1437, 1439, 799, 800,
17345  803, 826, 1437, 690, 539, 162, 1022, 1547, 1473, 1518,
17346  1099, 698, 638, 556, 1075, 1086, 17, 1519, 220, 906,
17347  202, 1439, 801, 826, 690, 375, 1544, 1548, 1549, 1550,
17348  1551, 1552, 539, 904, 225, 225, 225, 221, 280, 412,
17349  1338, 1339, 7, 21, 27, 33, 35, 36, 37, 39,
17350  52, 53, 58, 59, 66, 69, 88, 91, 92, 97,
17351  99, 102, 103, 108, 109, 110, 115, 117, 120, 166,
17352  173, 174, 181, 187, 195, 197, 203, 209, 216, 220,
17353  231, 234, 258, 266, 277, 305, 310, 321, 325, 327,
17354  331, 332, 333, 334, 335, 342, 351, 352, 353, 357,
17355  358, 363, 382, 388, 393, 394, 396, 410, 438, 439,
17356  451, 453, 459, 460, 466, 518, 519, 525, 529, 530,
17357  535, 545, 549, 550, 551, 552, 561, 562, 563, 567,
17358  570, 585, 589, 590, 591, 592, 597, 599, 603, 604,
17359  619, 623, 624, 629, 630, 633, 634, 637, 638, 955,
17360  1138, 1139, 1140, 1141, 1145, 1148, 1149, 1150, 1151, 1152,
17361  1153, 1161, 1165, 1177, 1415, 1417, 1419, 1420, 1421, 1425,
17362  1427, 1432, 1437, 220, 1288, 1288, 1288, 1437, 202, 1288,
17363  1288, 826, 1288, 690, 1288, 1473, 651, 1369, 130, 1490,
17364  1437, 367, 65, 416, 638, 1439, 123, 210, 280, 1299,
17365  1437, 1138, 235, 1392, 1472, 1473, 46, 853, 189, 33,
17366  302, 1353, 1386, 1437, 690, 1094, 1473, 123, 280, 1300,
17367  1328, 302, 411, 486, 1380, 1381, 593, 722, 476, 727,
17368  1487, 556, 1519, 1122, 12, 135, 210, 502, 503, 504,
17369  505, 506, 507, 522, 1128, 1129, 1130, 1543, 58, 59,
17370  120, 199, 269, 338, 388, 473, 558, 637, 957, 1437,
17371  1445, 1457, 1461, 1463, 34, 58, 69, 92, 94, 104,
17372  153, 158, 161, 190, 192, 199, 201, 224, 225, 248,
17373  269, 302, 367, 392, 402, 403, 406, 407, 427, 473,
17374  486, 521, 539, 602, 957, 993, 1349, 1353, 1354, 1356,
17375  1458, 727, 430, 509, 1069, 1070, 1071, 416, 608, 1061,
17376  1062, 1063, 1069, 1341, 1437, 1473, 1328, 35, 209, 545,
17377  1416, 1435, 1583, 1583, 1583, 1583, 1583, 1123, 1119, 631,
17378  636, 1437, 155, 1363, 1362, 319, 543, 569, 1018, 583,
17379  99, 1439, 1440, 1020, 805, 827, 1437, 1019, 369, 6,
17380  56, 139, 352, 415, 417, 828, 1024, 1440, 1429, 691,
17381  508, 1553, 1554, 1021, 1083, 1100, 1101, 1102, 1103, 1429,
17382  630, 699, 1437, 658, 1283, 1284, 1429, 1283, 55, 354,
17383  354, 431, 1520, 351, 352, 1144, 1437, 804, 827, 185,
17384  6, 1440, 1506, 1507, 439, 10, 403, 560, 677, 1134,
17385  1546, 1554, 1566, 1570, 1571, 1577, 677, 1134, 1545, 1554,
17386  1566, 1571, 1577, 1547, 1552, 906, 1437, 1437, 1437, 189,
17387  1331, 1335, 1336, 1437, 1338, 630, 630, 630, 1148, 630,
17388  630, 630, 1138, 1180, 630, 630, 630, 630, 630, 630,
17389  630, 630, 630, 1137, 1137, 630, 944, 630, 630, 630,
17390  545, 630, 630, 630, 630, 630, 630, 630, 630, 630,
17391  630, 630, 630, 630, 1138, 630, 630, 630, 1178, 1179,
17392  1425, 1437, 630, 630, 630, 630, 630, 630, 630, 630,
17393  630, 1138, 944, 630, 630, 630, 630, 630, 630, 630,
17394  630, 630, 630, 630, 630, 630, 630, 630, 630, 630,
17395  630, 944, 545, 630, 630, 630, 545, 630, 630, 630,
17396  35, 209, 545, 630, 1137, 944, 944, 630, 630, 630,
17397  630, 630, 630, 1148, 1148, 1148, 1138, 1538, 1539, 1437,
17398  1166, 1437, 16, 17, 372, 375, 617, 1142, 1143, 155,
17399  156, 193, 204, 243, 254, 281, 345, 1146, 31, 136,
17400  238, 262, 331, 425, 479, 480, 492, 621, 622, 623,
17401  624, 625, 626, 627, 628, 1144, 1148, 68, 374, 632,
17402  1435, 630, 638, 166, 1437, 691, 1437, 364, 827, 691,
17403  1439, 355, 601, 837, 838, 1290, 1291, 1292, 1354, 691,
17404  1440, 1505, 1282, 1288, 588, 652, 33, 128, 153, 157,
17405  194, 212, 274, 402, 411, 426, 444, 487, 517, 1370,
17406  1375, 1376, 1473, 81, 637, 734, 735, 736, 737, 1437,
17407  12, 13, 94, 125, 139, 162, 165, 178, 200, 225,
17408  231, 272, 404, 408, 424, 432, 440, 468, 481, 482,
17409  531, 560, 582, 584, 1491, 1493, 1495, 1496, 19, 155,
17410  1232, 1233, 1480, 1437, 1054, 491, 48, 80, 280, 1398,
17411  1429, 1474, 1475, 1091, 264, 267, 413, 854, 856, 637,
17412  649, 1434, 274, 1095, 1440, 1096, 1097, 1429, 1078, 235,
17413  1285, 1301, 1302, 1429, 48, 1382, 632, 1435, 54, 63,
17414  73, 85, 86, 87, 101, 320, 337, 464, 524, 541,
17415  728, 730, 12, 408, 1488, 1493, 462, 1521, 1520, 576,
17416  1526, 1527, 625, 1132, 1133, 1134, 1130, 476, 638, 33,
17417  120, 155, 477, 958, 959, 1312, 1439, 186, 1312, 1447,
17418  637, 1439, 33, 120, 961, 962, 1439, 638, 1448, 1446,
17419  1312, 161, 262, 606, 1360, 630, 103, 162, 192, 403,
17420  539, 560, 600, 1360, 12, 915, 1439, 263, 1251, 1253,
17421  189, 238, 1355, 1357, 67, 517, 186, 517, 536, 67,
17422  517, 12, 41, 89, 93, 242, 318, 381, 493, 533,
17423  1343, 1344, 1345, 161, 212, 517, 517, 1251, 1360, 1357,
17424  274, 152, 70, 405, 536, 559, 517, 596, 1059, 632,
17425  366, 613, 83, 632, 1284, 1054, 632, 365, 1586, 532,
17426  1587, 247, 447, 1585, 631, 1527, 1529, 1531, 1532, 151,
17427  643, 1439, 1117, 1293, 1296, 1321, 1329, 1364, 1367, 1416,
17428  1437, 120, 901, 902, 912, 913, 966, 106, 1137, 637,
17429  692, 6, 806, 692, 630, 105, 823, 823, 823, 4,
17430  632, 388, 1017, 1023, 467, 600, 1554, 1283, 238, 632,
17431  385, 1111, 1113, 1114, 700, 701, 1138, 222, 282, 283,
17432  284, 285, 286, 287, 288, 289, 290, 291, 293, 294,
17433  295, 296, 297, 298, 299, 300, 301, 303, 304, 428,
17434  429, 659, 660, 663, 171, 412, 632, 1076, 57, 171,
17435  175, 186, 317, 412, 1087, 1088, 1089, 55, 431, 166,
17436  672, 806, 106, 823, 218, 632, 1134, 1134, 1134, 162,
17437  192, 192, 1554, 1429, 997, 998, 997, 997, 1286, 1287,
17438  1429, 1430, 1437, 632, 1333, 638, 1337, 1138, 1138, 12,
17439  135, 1173, 1234, 1173, 1173, 1173, 605, 1182, 1138, 1138,
17440  1177, 1177, 1138, 1138, 1138, 135, 1173, 1234, 631, 358,
17441  631, 631, 1138, 1138, 1138, 1138, 1425, 1538, 111, 112,
17442  113, 114, 115, 213, 214, 215, 216, 321, 323, 324,
17443  325, 332, 410, 465, 466, 603, 618, 619, 1229, 1230,
17444  1138, 1177, 107, 110, 549, 552, 1231, 135, 1168, 1138,
17445  1138, 1138, 1138, 1229, 1138, 1177, 1179, 9, 632, 638,
17446  135, 1173, 1138, 1138, 135, 1173, 1138, 1138, 1177, 1177,
17447  1177, 1138, 1138, 1138, 1177, 1141, 1138, 1138, 1138, 1138,
17448  1138, 1138, 631, 1138, 1173, 1173, 1138, 1138, 135, 1173,
17449  1138, 1230, 1230, 1138, 44, 255, 557, 1138, 1138, 631,
17450  1426, 1427, 1437, 1173, 1173, 1138, 1138, 1138, 631, 632,
17451  631, 468, 630, 1535, 1536, 1138, 637, 1167, 1439, 638,
17452  1138, 1138, 1138, 1140, 174, 357, 562, 578, 1144, 12,
17453  18, 1140, 1147, 1141, 1141, 630, 1148, 1141, 1141, 1141,
17454  1141, 262, 1141, 1141, 234, 1141, 234, 1141, 1141, 1141,
17455  1141, 1141, 31, 238, 262, 425, 1439, 1148, 1138, 1154,
17456  1437, 638, 1429, 1290, 632, 1292, 153, 632, 1283, 1279,
17457  637, 653, 654, 274, 274, 274, 274, 48, 274, 274,
17458  632, 1371, 110, 549, 552, 729, 739, 1165, 1419, 1425,
17459  1439, 632, 155, 402, 1494, 456, 456, 537, 542, 585,
17460  600, 370, 1498, 536, 364, 1500, 64, 486, 1497, 104,
17461  600, 1499, 364, 632, 1437, 179, 348, 1437, 1481, 1482,
17462  1301, 1434, 1106, 269, 1397, 1233, 632, 1283, 70, 630,
17463  861, 862, 861, 862, 386, 864, 206, 250, 1439, 29,
17464  556, 1387, 632, 556, 632, 556, 1283, 1302, 1298, 385,
17465  1196, 1197, 12, 1383, 1381, 632, 155, 1494, 364, 364,
17466  1437, 12, 135, 1534, 632, 1125, 1138, 1423, 1437, 1437,
17467  68, 964, 1138, 1440, 363, 388, 545, 1469, 244, 416,
17468  1464, 1465, 1466, 1467, 199, 269, 473, 1459, 1312, 1437,
17469  558, 1449, 1460, 1463, 632, 1451, 1462, 238, 1358, 1434,
17470  1138, 625, 906, 691, 691, 691, 1429, 691, 1429, 274,
17471  336, 517, 1352, 1352, 277, 358, 567, 1254, 1255, 1417,
17472  1437, 1360, 1437, 691, 1360, 1440, 1355, 691, 1360, 241,
17473  534, 176, 186, 1346, 632, 1358, 1355, 1429, 1357, 1355,
17474  1355, 1360, 1360, 581, 1072, 1071, 489, 1063, 468, 630,
17475  634, 1183, 1184, 1185, 1186, 1187, 1198, 1199, 1213, 1416,
17476  389, 1588, 373, 1247, 1253, 1533, 902, 68, 957, 131,
17477  1439, 74, 88, 252, 329, 354, 414, 508, 694, 696,
17478  421, 571, 824, 825, 227, 820, 821, 822, 829, 837,
17479  838, 103, 211, 379, 388, 395, 490, 585, 675, 676,
17480  1434, 24, 309, 814, 815, 816, 829, 830, 831, 837,
17481  838, 807, 808, 814, 1440, 169, 6, 11, 13, 15,
17482  25, 26, 56, 60, 61, 66, 74, 82, 91, 106,
17483  124, 132, 133, 139, 147, 153, 164, 184, 223, 225,
17484  232, 249, 272, 308, 326, 330, 368, 373, 380, 385,
17485  388, 419, 433, 434, 435, 436, 458, 514, 515, 516,
17486  521, 537, 540, 563, 576, 848, 908, 910, 912, 913,
17487  1029, 1033, 1035, 1038, 1044, 1045, 1046, 1051, 1052, 1243,
17488  364, 685, 1025, 122, 237, 1429, 120, 1104, 1437, 1102,
17489  1429, 850, 1113, 225, 250, 991, 1115, 631, 632, 155,
17490  155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
17491  155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
17492  155, 155, 155, 632, 1284, 583, 1088, 900, 901, 74,
17493  349, 422, 572, 817, 818, 819, 829, 833, 834, 835,
17494  836, 837, 838, 612, 587, 802, 46, 608, 1507, 192,
17495  691, 691, 906, 691, 1437, 665, 565, 588, 1005, 364,
17496  364, 364, 632, 1334, 1196, 638, 1337, 1336, 189, 625,
17497  1437, 632, 631, 1173, 631, 1174, 631, 631, 631, 1138,
17498  145, 605, 1181, 19, 631, 588, 631, 631, 631, 632,
17499  588, 632, 1162, 631, 625, 631, 632, 632, 631, 631,
17500  631, 631, 189, 632, 631, 632, 1164, 631, 632, 632,
17501  632, 624, 632, 631, 631, 630, 1425, 1437, 1173, 631,
17502  631, 631, 1173, 631, 632, 631, 631, 631, 631, 631,
17503  631, 632, 631, 238, 631, 632, 632, 631, 632, 632,
17504  631, 631, 631, 632, 189, 632, 1173, 631, 631, 632,
17505  632, 632, 631, 189, 1138, 189, 1138, 189, 1138, 189,
17506  631, 632, 631, 631, 631, 631, 632, 19, 260, 632,
17507  981, 631, 1177, 1203, 1204, 1205, 468, 630, 1120, 1530,
17508  1531, 576, 1540, 635, 1459, 477, 1437, 174, 357, 562,
17509  578, 630, 17, 1138, 1538, 160, 1239, 1141, 1138, 1138,
17510  1141, 630, 1148, 1141, 1134, 1158, 1159, 1160, 630, 638,
17511  1437, 1280, 1292, 1312, 1313, 1440, 50, 446, 1055, 1283,
17512  1439, 632, 1376, 1283, 1377, 737, 740, 741, 736, 359,
17513  460, 738, 536, 630, 1508, 1440, 1508, 1508, 1508, 192,
17514  403, 539, 1492, 1496, 155, 179, 193, 204, 253, 254,
17515  281, 348, 400, 1483, 1485, 606, 1235, 1295, 1107, 1108,
17516  1109, 1110, 1429, 226, 280, 416, 613, 1476, 1475, 630,
17517  1134, 117, 181, 209, 277, 358, 567, 1258, 1261, 1262,
17518  528, 865, 855, 11, 857, 1138, 1434, 1440, 1440, 1097,
17519  1429, 171, 412, 586, 1079, 1080, 1081, 468, 476, 592,
17520  593, 630, 896, 1303, 1306, 630, 730, 729, 632, 1440,
17521  192, 403, 1492, 1528, 1133, 189, 235, 1126, 1127, 1246,
17522  1247, 1271, 1135, 1135, 638, 120, 963, 965, 1439, 1312,
17523  630, 630, 260, 366, 613, 632, 632, 638, 638, 638,
17524  1463, 1138, 1464, 1450, 1312, 1452, 1453, 12, 33, 120,
17525  364, 1138, 1470, 1434, 189, 1359, 631, 1437, 362, 632,
17526  1360, 411, 1251, 1345, 1359, 1360, 1355, 1429, 1360, 1360,
17527  499, 500, 501, 663, 1073, 585, 1064, 1065, 1212, 1437,
17528  95, 228, 247, 258, 341, 453, 522, 1195, 476, 632,
17529  1429, 1212, 632, 186, 1589, 46, 1251, 1313, 1313, 339,
17530  1434, 508, 508, 508, 508, 508, 467, 1434, 1434, 1313,
17531  632, 822, 1434, 1434, 1434, 1434, 117, 181, 209, 277,
17532  358, 567, 1257, 1434, 1434, 631, 632, 1313, 1313, 632,
17533  816, 809, 810, 829, 830, 831, 388, 71, 84, 385,
17534  924, 927, 928, 989, 991, 995, 996, 1053, 1313, 1053,
17535  385, 1313, 1313, 1053, 1313, 385, 385, 1313, 1313, 556,
17536  131, 1313, 248, 537, 185, 385, 401, 991, 1053, 248,
17537  1313, 385, 537, 131, 1313, 1313, 1313, 1313, 1313, 1053,
17538  385, 46, 1313, 850, 1313, 385, 387, 19, 155, 556,
17539  1057, 385, 385, 1313, 1313, 1313, 1313, 134, 318, 1437,
17540  1313, 385, 1313, 908, 632, 847, 848, 1033, 630, 638,
17541  923, 929, 1428, 1437, 78, 463, 434, 1026, 1555, 1112,
17542  630, 1138, 630, 1257, 1433, 1434, 1257, 1257, 1433, 1433,
17543  117, 181, 277, 358, 567, 1259, 1433, 1257, 1257, 1433,
17544  1433, 1433, 1433, 1433, 1433, 1433, 1257, 1257, 1433, 1420,
17545  1433, 1257, 660, 1313, 1313, 1313, 1313, 632, 819, 1439,
17546  273, 172, 811, 812, 813, 829, 830, 831, 832, 835,
17547  836, 837, 838, 388, 545, 1439, 1437, 1578, 8, 29,
17548  797, 691, 630, 449, 262, 630, 840, 907, 909, 910,
17549  45, 206, 461, 1010, 1010, 1429, 1429, 1429, 1287, 1437,
17550  588, 1332, 1437, 1184, 638, 1337, 234, 1138, 631, 1138,
17551  548, 1138, 1138, 149, 33, 59, 107, 110, 118, 343,
17552  484, 552, 580, 1175, 958, 1138, 958, 1175, 1177, 631,
17553  234, 234, 1138, 1138, 1138, 1177, 1138, 1138, 1138, 1138,
17554  1138, 1141, 631, 631, 1138, 1138, 1138, 1138, 1138, 1138,
17555  1177, 234, 1138, 1138, 1138, 631, 1138, 1138, 1138, 1138,
17556  189, 1138, 189, 1138, 189, 1138, 1138, 1138, 33, 59,
17557  976, 977, 978, 979, 980, 1258, 1257, 631, 631, 1541,
17558  1542, 1543, 1204, 1120, 631, 1534, 1439, 1138, 1538, 1140,
17559  631, 632, 631, 1148, 1229, 1229, 17, 1138, 1538, 1239,
17560  1138, 631, 632, 1176, 1177, 1437, 1281, 914, 1439, 1055,
17561  654, 1372, 155, 632, 1437, 1509, 1510, 556, 625, 1429,
17562  1437, 1504, 1504, 1504, 1484, 1236, 1252, 1253, 1303, 632,
17563  1111, 1113, 545, 1436, 613, 269, 858, 859, 860, 1437,
17564  870, 1141, 46, 630, 872, 862, 155, 630, 556, 1080,
17565  897, 1304, 630, 1309, 1314, 1309, 631, 896, 1305, 1422,
17566  1423, 1426, 1437, 1307, 1228, 1437, 155, 200, 189, 1504,
17567  1504, 1504, 1118, 140, 1184, 1272, 186, 272, 1131, 1271,
17568  1252, 1127, 19, 1136, 1434, 1437, 625, 1437, 1469, 545,
17569  545, 416, 437, 471, 1468, 1466, 1465, 1312, 1451, 1470,
17570  632, 1455, 1457, 1461, 1259, 1350, 158, 602, 1255, 1255,
17571  358, 1351, 1235, 1355, 155, 155, 632, 155, 388, 1066,
17572  1200, 1207, 1212, 1183, 247, 247, 376, 1214, 247, 258,
17573  453, 1214, 1198, 1183, 1324, 1325, 1426, 1185, 1196, 1209,
17574  1210, 1257, 322, 1248, 965, 959, 106, 106, 122, 237,
17575  277, 358, 567, 839, 1260, 1261, 1432, 822, 676, 839,
17576  839, 816, 632, 810, 169, 1013, 1428, 1092, 61, 185,
17577  401, 577, 926, 990, 1013, 991, 992, 992, 120, 1437,
17578  1428, 1092, 1259, 1257, 1428, 1257, 12, 1034, 1042, 1043,
17579  1437, 1092, 1434, 1434, 957, 1313, 1257, 250, 1042, 250,
17580  1428, 1428, 914, 1043, 1313, 179, 253, 354, 917, 1257,
17581  120, 1437, 1259, 1259, 1428, 1092, 1244, 1245, 1426, 120,
17582  1257, 849, 1434, 1092, 850, 1429, 1092, 1092, 77, 79,
17583  120, 143, 180, 423, 916, 120, 1257, 120, 1257, 120,
17584  1257, 1257, 1034, 911, 6, 139, 1046, 920, 921, 922,
17585  923, 924, 1437, 8, 179, 1056, 424, 925, 926, 983,
17586  930, 638, 352, 399, 23, 163, 679, 556, 132, 147,
17587  681, 630, 1556, 630, 401, 1225, 1226, 1227, 1437, 661,
17588  662, 1257, 1434, 1258, 839, 839, 819, 369, 202, 1313,
17589  632, 813, 545, 19, 449, 630, 125, 231, 582, 798,
17590  678, 1572, 118, 236, 418, 523, 919, 1429, 262, 841,
17591  846, 847, 920, 846, 632, 909, 666, 668, 670, 638,
17592  1184, 1235, 1337, 1235, 1138, 631, 1138, 548, 630, 948,
17593  949, 949, 630, 943, 630, 941, 942, 948, 949, 236,
17594  943, 236, 631, 631, 631, 631, 631, 1163, 1138, 1138,
17595  631, 631, 632, 631, 373, 1170, 632, 632, 631, 632,
17596  631, 238, 1155, 1156, 631, 631, 631, 631, 632, 631,
17597  631, 1138, 631, 186, 631, 631, 632, 631, 632, 632,
17598  631, 1138, 631, 1138, 631, 1138, 631, 631, 631, 630,
17599  971, 971, 20, 126, 451, 623, 973, 974, 975, 632,
17600  632, 1132, 1543, 631, 1537, 638, 1014, 631, 1177, 1140,
17601  631, 632, 631, 1135, 1160, 631, 1050, 1051, 1052, 186,
17602  608, 1373, 54, 63, 73, 85, 86, 87, 101, 320,
17603  337, 448, 464, 524, 541, 742, 741, 631, 632, 1506,
17604  638, 638, 556, 556, 556, 630, 1138, 364, 1319, 1109,
17605  1429, 1113, 221, 1116, 1393, 631, 632, 1135, 856, 385,
17606  873, 874, 1258, 858, 1440, 1128, 1310, 1311, 1426, 1315,
17607  632, 630, 1306, 631, 631, 632, 638, 1526, 631, 632,
17608  729, 370, 1506, 189, 189, 189, 1235, 1235, 141, 377,
17609  1267, 1268, 1273, 582, 238, 1434, 1437, 638, 631, 631,
17610  75, 568, 416, 1470, 1454, 1456, 1251, 1251, 1360, 1434,
17611  1434, 663, 1434, 155, 121, 1067, 576, 631, 1530, 1208,
17612  635, 247, 1198, 1214, 1214, 247, 364, 364, 588, 632,
17613  1323, 1312, 1233, 1128, 1138, 1249, 1424, 810, 1036, 630,
17614  250, 250, 992, 1013, 998, 1013, 1013, 139, 476, 1034,
17615  1047, 1031, 632, 1258, 959, 1434, 1428, 1055, 608, 1434,
17616  1048, 1034, 632, 20, 126, 1250, 853, 1034, 1039, 1034,
17617  630, 631, 632, 1437, 1429, 32, 33, 38, 40, 42,
17618  43, 59, 107, 110, 118, 137, 154, 180, 182, 195,
17619  196, 236, 266, 275, 276, 278, 314, 315, 316, 333,
17620  334, 335, 340, 343, 360, 361, 393, 394, 418, 472,
17621  476, 488, 546, 549, 552, 553, 554, 555, 594, 595,
17622  619, 931, 934, 935, 936, 937, 938, 939, 940, 1437,
17623  399, 1138, 1138, 364, 685, 691, 364, 74, 686, 1437,
17624  1557, 19, 1034, 631, 632, 631, 632, 630, 1437, 839,
17625  813, 1434, 919, 1579, 364, 364, 702, 703, 705, 1437,
17626  491, 1429, 896, 631, 221, 439, 843, 1399, 909, 630,
17627  630, 630, 1437, 1235, 1246, 1229, 1138, 117, 277, 358,
17628  567, 21, 33, 47, 574, 957, 967, 968, 969, 358,
17629  358, 631, 1229, 1229, 1138, 46, 470, 1169, 1138, 1138,
17630  1177, 42, 341, 631, 608, 1157, 1138, 1229, 1138, 1138,
17631  1138, 1138, 631, 631, 631, 1258, 631, 981, 976, 974,
17632  976, 977, 1257, 1206, 1535, 1437, 631, 1177, 1136, 1052,
17633  1051, 1374, 416, 1510, 608, 1513, 625, 625, 1506, 1506,
17634  1506, 120, 1138, 1317, 1318, 142, 1116, 256, 1399, 860,
17635  631, 206, 250, 875, 631, 632, 631, 1132, 632, 1312,
17636  1316, 1317, 1314, 1308, 1306, 1422, 1437, 850, 1437, 189,
17637  1506, 1506, 1506, 1252, 202, 1240, 1436, 1436, 637, 1269,
17638  1270, 1439, 478, 625, 1455, 1460, 1434, 155, 390, 1068,
17639  1534, 1233, 1186, 1183, 1198, 247, 247, 1183, 1198, 1189,
17640  1188, 1190, 1325, 1235, 1318, 1223, 1224, 1132, 632, 1250,
17641  386, 630, 1037, 1138, 1013, 998, 630, 997, 997, 120,
17642  120, 929, 1087, 1043, 964, 539, 931, 1030, 1245, 1040,
17643  1042, 1032, 1377, 922, 630, 984, 948, 948, 949, 943,
17644  941, 397, 932, 941, 941, 969, 59, 594, 935, 937,
17645  969, 969, 59, 595, 595, 598, 941, 933, 949, 943,
17646  943, 969, 948, 949, 25, 68, 72, 74, 120, 357,
17647  364, 401, 472, 521, 577, 951, 952, 953, 982, 1144,
17648  598, 948, 969, 33, 948, 970, 948, 948, 949, 630,
17649  942, 950, 638, 1229, 486, 1434, 138, 1027, 631, 632,
17650  1558, 1559, 631, 1226, 662, 675, 491, 229, 238, 378,
17651  706, 707, 708, 709, 1134, 463, 631, 632, 704, 1434,
17652  631, 631, 907, 19, 899, 1011, 1012, 1437, 1011, 1011,
17653  263, 1256, 631, 631, 631, 631, 631, 33, 21, 574,
17654  957, 33, 958, 631, 632, 631, 631, 631, 1171, 1416,
17655  631, 631, 632, 631, 328, 252, 411, 631, 631, 631,
17656  631, 631, 631, 972, 631, 632, 918, 1127, 1252, 1530,
17657  631, 170, 272, 200, 441, 1511, 1511, 1511, 631, 632,
17658  1320, 235, 630, 863, 857, 876, 1437, 874, 898, 1311,
17659  1318, 631, 1529, 1506, 46, 207, 1237, 1274, 1439, 632,
17660  328, 1434, 155, 1201, 364, 1192, 1198, 1198, 364, 1194,
17661  1138, 1138, 630, 1246, 1221, 1222, 1211, 1424, 1258, 873,
17662  631, 630, 630, 1011, 630, 630, 110, 549, 552, 623,
17663  624, 1418, 1419, 1056, 1429, 951, 1092, 1041, 1079, 631,
17664  985, 1437, 305, 986, 484, 580, 620, 945, 946, 947,
17665  630, 945, 945, 969, 598, 945, 630, 969, 945, 963,
17666  120, 143, 180, 1434, 955, 956, 1418, 582, 120, 120,
17667  134, 318, 250, 953, 250, 357, 969, 970, 969, 970,
17668  945, 358, 945, 1437, 680, 687, 688, 1437, 468, 630,
17669  1560, 1563, 631, 1434, 631, 632, 704, 1567, 679, 1573,
17670  705, 931, 954, 842, 846, 630, 896, 631, 632, 1250,
17671  630, 631, 631, 1255, 958, 970, 358, 1172, 1424, 1138,
17672  328, 168, 631, 1257, 1131, 1131, 370, 62, 245, 350,
17673  510, 526, 614, 1502, 1503, 608, 1512, 1512, 1512, 1318,
17674  250, 539, 1134, 866, 630, 592, 877, 918, 1241, 1424,
17675  1238, 1246, 957, 960, 1270, 1434, 1535, 1191, 588, 1193,
17676  588, 1228, 1256, 184, 221, 587, 1216, 1217, 1220, 918,
17677  1250, 631, 1011, 1011, 631, 1011, 1011, 1420, 1420, 850,
17678  1049, 235, 631, 632, 190, 384, 485, 364, 987, 947,
17679  1015, 1416, 1015, 955, 593, 512, 682, 52, 65, 177,
17680  220, 246, 257, 367, 450, 689, 747, 749, 750, 751,
17681  753, 754, 755, 756, 757, 758, 760, 768, 769, 772,
17682  783, 786, 788, 789, 1432, 1438, 1442, 1564, 630, 1562,
17683  1563, 608, 1565, 1561, 1580, 708, 1437, 1429, 684, 685,
17684  449, 964, 1529, 843, 896, 844, 74, 249, 999, 1002,
17685  1005, 1006, 1007, 1012, 358, 608, 1000, 1004, 1006, 1009,
17686  1001, 1003, 1006, 1008, 631, 632, 1250, 631, 631, 545,
17687  545, 545, 17, 1501, 200, 306, 307, 311, 312, 1514,
17688  1515, 582, 1429, 870, 527, 871, 868, 869, 1437, 238,
17689  259, 74, 106, 225, 308, 326, 349, 537, 893, 894,
17690  895, 1354, 609, 610, 632, 1242, 1250, 1138, 1252, 959,
17691  1275, 1202, 1138, 630, 1138, 630, 631, 991, 991, 1217,
17692  631, 631, 999, 631, 631, 1056, 630, 1437, 125, 582,
17693  631, 632, 631, 1138, 150, 683, 770, 773, 1437, 189,
17694  348, 761, 748, 1438, 1438, 1437, 752, 645, 279, 438,
17695  607, 792, 30, 790, 639, 1123, 1562, 631, 51, 61,
17696  269, 1526, 693, 954, 186, 681, 1574, 631, 1526, 1434,
17697  1313, 667, 1007, 1250, 631, 383, 669, 1009, 671, 1008,
17698  1424, 1502, 370, 1257, 1257, 1257, 1257, 1515, 1326, 1327,
17699  1426, 1196, 1135, 1258, 631, 632, 879, 547, 1313, 131,
17700  131, 1313, 1313, 1313, 1313, 630, 888, 895, 153, 1424,
17701  403, 1263, 70, 1400, 1530, 1228, 1228, 186, 1215, 1215,
17702  983, 999, 1000, 1001, 873, 50, 354, 446, 476, 988,
17703  988, 969, 1416, 969, 1138, 1138, 605, 775, 779, 189,
17704  1437, 763, 764, 1138, 711, 746, 747, 749, 751, 753,
17705  755, 756, 757, 758, 760, 768, 783, 786, 788, 711,
17706  793, 791, 784, 787, 631, 1529, 61, 370, 61, 129,
17707  694, 695, 1144, 1581, 1134, 686, 954, 845, 1257, 1050,
17708  1432, 1050, 1050, 1250, 632, 1312, 1394, 631, 867, 869,
17709  630, 881, 883, 878, 1434, 1313, 1313, 1260, 1260, 1258,
17710  1439, 528, 889, 890, 1313, 1250, 14, 148, 159, 371,
17711  544, 1401, 1402, 265, 1403, 631, 631, 202, 247, 373,
17712  1219, 1218, 631, 5, 120, 357, 364, 364, 771, 780,
17713  145, 779, 782, 235, 149, 1138, 149, 746, 636, 581,
17714  1138, 712, 792, 790, 370, 370, 129, 746, 1568, 138,
17715  1575, 1529, 1327, 1318, 960, 871, 630, 882, 883, 884,
17716  313, 880, 883, 1434, 1434, 891, 631, 632, 914, 1264,
17717  46, 46, 148, 46, 1402, 511, 544, 1404, 1405, 46,
17718  46, 630, 630, 582, 125, 605, 774, 776, 1138, 711,
17719  149, 759, 220, 765, 279, 636, 795, 794, 119, 710,
17720  713, 785, 1438, 785, 144, 687, 693, 1395, 631, 632,
17721  313, 886, 887, 1141, 892, 1439, 890, 630, 1416, 1416,
17722  46, 1416, 46, 46, 1405, 1225, 1227, 988, 988, 777,
17723  776, 782, 781, 52, 762, 1437, 548, 1138, 138, 90,
17724  167, 717, 743, 1437, 149, 746, 636, 459, 1576, 457,
17725  1406, 883, 632, 885, 893, 358, 1265, 1266, 1416, 1416,
17726  1416, 631, 631, 1138, 149, 548, 632, 711, 796, 711,
17727  205, 632, 714, 81, 100, 636, 1569, 746, 218, 1400,
17728  887, 631, 631, 632, 778, 52, 711, 1437, 766, 149,
17729  149, 186, 1437, 954, 186, 186, 746, 46, 1403, 1266,
17730  548, 145, 146, 767, 438, 607, 715, 120, 744, 720,
17731  721, 1257, 716, 1416, 221, 1407, 711, 711, 763, 496,
17732  498, 718, 719, 720, 723, 1144, 1437, 745, 1117, 358,
17733  630, 1409, 632, 746, 188, 1138, 265, 457, 1408, 631,
17734  637, 1410, 1411, 1426, 476, 1412, 719, 1439, 631, 632,
17735  1413, 1414, 1426, 1411, 632, 1312, 1414, 1134, 1318, 1135
17736 };
17737 
17738 #define yyerrok (yyerrstatus = 0)
17739 #define yyclearin (yychar = YYEMPTY)
17740 #define YYEMPTY (-2)
17741 #define YYEOF 0
17742 
17743 #define YYACCEPT goto yyacceptlab
17744 #define YYABORT goto yyabortlab
17745 #define YYERROR goto yyerrorlab
17746 
17747 
17748 /* Like YYERROR except do call yyerror. This remains here temporarily
17749  to ease the transition to the new meaning of YYERROR, for GCC.
17750  Once GCC version 2 has supplanted version 1, this can go. */
17751 
17752 #define YYFAIL goto yyerrlab
17753 
17754 #define YYRECOVERING() (!!yyerrstatus)
17755 
17756 #define YYBACKUP(Token, Value) \
17757 do \
17758  if (yychar == YYEMPTY && yylen == 1) \
17759  { \
17760  yychar = (Token); \
17761  yylval = (Value); \
17762  yytoken = YYTRANSLATE (yychar); \
17763  YYPOPSTACK (1); \
17764  goto yybackup; \
17765  } \
17766  else \
17767  { \
17768  yyerror (YY_("syntax error: cannot back up")); \
17769  YYERROR; \
17770  } \
17771 while (YYID (0))
17772 
17773 
17774 #define YYTERROR 1
17775 #define YYERRCODE 256
17776 
17777 
17778 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
17779  If N is 0, then set CURRENT to the empty location which ends
17780  the previous symbol: RHS[0] (always defined). */
17781 
17782 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
17783 #ifndef YYLLOC_DEFAULT
17784 # define YYLLOC_DEFAULT(Current, Rhs, N) \
17785  do \
17786  if (YYID (N)) \
17787  { \
17788  (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
17789  (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
17790  (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
17791  (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
17792  } \
17793  else \
17794  { \
17795  (Current).first_line = (Current).last_line = \
17796  YYRHSLOC (Rhs, 0).last_line; \
17797  (Current).first_column = (Current).last_column = \
17798  YYRHSLOC (Rhs, 0).last_column; \
17799  } \
17800  while (YYID (0))
17801 #endif
17802 
17803 
17804 /* YY_LOCATION_PRINT -- Print the location on the stream.
17805  This macro was not mandated originally: define only if we know
17806  we won't break user code: when these are the locations we know. */
17807 
17808 #ifndef YY_LOCATION_PRINT
17809 # if YYLTYPE_IS_TRIVIAL
17810 # define YY_LOCATION_PRINT(File, Loc) \
17811  fprintf (File, "%d.%d-%d.%d", \
17812  (Loc).first_line, (Loc).first_column, \
17813  (Loc).last_line, (Loc).last_column)
17814 # else
17815 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
17816 # endif
17817 #endif
17818 
17819 
17820 /* YYLEX -- calling `yylex' with the right arguments. */
17821 
17822 #ifdef YYLEX_PARAM
17823 # define YYLEX yylex (&yylval, YYLEX_PARAM)
17824 #else
17825 # define YYLEX yylex (&yylval)
17826 #endif
17827 
17828 /* Enable debugging if requested. */
17829 #if YYDEBUG
17830 
17831 # ifndef YYFPRINTF
17832 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
17833 # define YYFPRINTF fprintf
17834 # endif
17835 
17836 # define YYDPRINTF(Args) \
17837 do { \
17838  if (yydebug) \
17839  YYFPRINTF Args; \
17840 } while (YYID (0))
17841 
17842 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
17843 do { \
17844  if (yydebug) \
17845  { \
17846  YYFPRINTF (stderr, "%s ", Title); \
17847  yy_symbol_print (stderr, \
17848  Type, Value); \
17849  YYFPRINTF (stderr, "\n"); \
17850  } \
17851 } while (YYID (0))
17852 
17853 
17854 /*--------------------------------.
17855 | Print this symbol on YYOUTPUT. |
17856 `--------------------------------*/
17857 
17858 /*ARGSUSED*/
17859 #if (defined __STDC__ || defined __C99__FUNC__ \
17860  || defined __cplusplus || defined _MSC_VER)
17861 static void
17862 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
17863 #else
17864 static void
17865 yy_symbol_value_print (yyoutput, yytype, yyvaluep)
17866  FILE *yyoutput;
17867  int yytype;
17868  YYSTYPE const * const yyvaluep;
17869 #endif
17870 {
17871  if (!yyvaluep)
17872  return;
17873 # ifdef YYPRINT
17874  if (yytype < YYNTOKENS)
17875  YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
17876 # else
17877  YYUSE (yyoutput);
17878 # endif
17879  switch (yytype)
17880  {
17881  default:
17882  break;
17883  }
17884 }
17885 
17886 
17887 /*--------------------------------.
17888 | Print this symbol on YYOUTPUT. |
17889 `--------------------------------*/
17890 
17891 #if (defined __STDC__ || defined __C99__FUNC__ \
17892  || defined __cplusplus || defined _MSC_VER)
17893 static void
17894 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
17895 #else
17896 static void
17897 yy_symbol_print (yyoutput, yytype, yyvaluep)
17898  FILE *yyoutput;
17899  int yytype;
17900  YYSTYPE const * const yyvaluep;
17901 #endif
17902 {
17903  if (yytype < YYNTOKENS)
17904  YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
17905  else
17906  YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
17907 
17908  yy_symbol_value_print (yyoutput, yytype, yyvaluep);
17909  YYFPRINTF (yyoutput, ")");
17910 }
17911 
17912 /*------------------------------------------------------------------.
17913 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
17914 | TOP (included). |
17915 `------------------------------------------------------------------*/
17916 
17917 #if (defined __STDC__ || defined __C99__FUNC__ \
17918  || defined __cplusplus || defined _MSC_VER)
17919 static void
17920 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
17921 #else
17922 static void
17923 yy_stack_print (yybottom, yytop)
17924  yytype_int16 *yybottom;
17925  yytype_int16 *yytop;
17926 #endif
17927 {
17928  YYFPRINTF (stderr, "Stack now");
17929  for (; yybottom <= yytop; yybottom++)
17930  {
17931  int yybot = *yybottom;
17932  YYFPRINTF (stderr, " %d", yybot);
17933  }
17934  YYFPRINTF (stderr, "\n");
17935 }
17936 
17937 # define YY_STACK_PRINT(Bottom, Top) \
17938 do { \
17939  if (yydebug) \
17940  yy_stack_print ((Bottom), (Top)); \
17941 } while (YYID (0))
17942 
17943 
17944 /*------------------------------------------------.
17945 | Report that the YYRULE is going to be reduced. |
17946 `------------------------------------------------*/
17947 
17948 #if (defined __STDC__ || defined __C99__FUNC__ \
17949  || defined __cplusplus || defined _MSC_VER)
17950 static void
17951 yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
17952 #else
17953 static void
17954 yy_reduce_print (yyvsp, yyrule)
17955  YYSTYPE *yyvsp;
17956  int yyrule;
17957 #endif
17958 {
17959  int yynrhs = yyr2[yyrule];
17960  int yyi;
17961  unsigned long int yylno = yyrline[yyrule];
17962  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
17963  yyrule - 1, yylno);
17964  /* The symbols being reduced. */
17965  for (yyi = 0; yyi < yynrhs; yyi++)
17966  {
17967  YYFPRINTF (stderr, " $%d = ", yyi + 1);
17968  yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
17969  &(yyvsp[(yyi + 1) - (yynrhs)])
17970  );
17971  YYFPRINTF (stderr, "\n");
17972  }
17973 }
17974 
17975 # define YY_REDUCE_PRINT(Rule) \
17976 do { \
17977  if (yydebug) \
17978  yy_reduce_print (yyvsp, Rule); \
17979 } while (YYID (0))
17980 
17981 /* Nonzero means print parse trace. It is left uninitialized so that
17982  multiple parsers can coexist. */
17983 int yydebug;
17984 #else /* !YYDEBUG */
17985 # define YYDPRINTF(Args)
17986 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
17987 # define YY_STACK_PRINT(Bottom, Top)
17988 # define YY_REDUCE_PRINT(Rule)
17989 #endif /* !YYDEBUG */
17990 
17991 
17992 /* YYINITDEPTH -- initial size of the parser's stacks. */
17993 #ifndef YYINITDEPTH
17994 # define YYINITDEPTH 200
17995 #endif
17996 
17997 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
17998  if the built-in stack extension method is used).
17999 
18000  Do not make this value too large; the results are undefined if
18001  YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
18002  evaluated with infinite-precision integer arithmetic. */
18003 
18004 #ifndef YYMAXDEPTH
18005 # define YYMAXDEPTH 10000
18006 #endif
18007 
18008 
18009 
18010 #if YYERROR_VERBOSE
18011 
18012 # ifndef yystrlen
18013 # if defined __GLIBC__ && defined _STRING_H
18014 # define yystrlen strlen
18015 # else
18016 /* Return the length of YYSTR. */
18017 #if (defined __STDC__ || defined __C99__FUNC__ \
18018  || defined __cplusplus || defined _MSC_VER)
18019 static YYSIZE_T
18020 yystrlen (const char *yystr)
18021 #else
18022 static YYSIZE_T
18023 yystrlen (yystr)
18024  const char *yystr;
18025 #endif
18026 {
18027  YYSIZE_T yylen;
18028  for (yylen = 0; yystr[yylen]; yylen++)
18029  continue;
18030  return yylen;
18031 }
18032 # endif
18033 # endif
18034 
18035 # ifndef yystpcpy
18036 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
18037 # define yystpcpy stpcpy
18038 # else
18039 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
18040  YYDEST. */
18041 #if (defined __STDC__ || defined __C99__FUNC__ \
18042  || defined __cplusplus || defined _MSC_VER)
18043 static char *
18044 yystpcpy (char *yydest, const char *yysrc)
18045 #else
18046 static char *
18047 yystpcpy (yydest, yysrc)
18048  char *yydest;
18049  const char *yysrc;
18050 #endif
18051 {
18052  char *yyd = yydest;
18053  const char *yys = yysrc;
18054 
18055  while ((*yyd++ = *yys++) != '\0')
18056  continue;
18057 
18058  return yyd - 1;
18059 }
18060 # endif
18061 # endif
18062 
18063 # ifndef yytnamerr
18064 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
18065  quotes and backslashes, so that it's suitable for yyerror. The
18066  heuristic is that double-quoting is unnecessary unless the string
18067  contains an apostrophe, a comma, or backslash (other than
18068  backslash-backslash). YYSTR is taken from yytname. If YYRES is
18069  null, do not copy; instead, return the length of what the result
18070  would have been. */
18071 static YYSIZE_T
18072 yytnamerr (char *yyres, const char *yystr)
18073 {
18074  if (*yystr == '"')
18075  {
18076  YYSIZE_T yyn = 0;
18077  char const *yyp = yystr;
18078 
18079  for (;;)
18080  switch (*++yyp)
18081  {
18082  case '\'':
18083  case ',':
18084  goto do_not_strip_quotes;
18085 
18086  case '\\':
18087  if (*++yyp != '\\')
18088  goto do_not_strip_quotes;
18089  /* Fall through. */
18090  default:
18091  if (yyres)
18092  yyres[yyn] = *yyp;
18093  yyn++;
18094  break;
18095 
18096  case '"':
18097  if (yyres)
18098  yyres[yyn] = '\0';
18099  return yyn;
18100  }
18101  do_not_strip_quotes: ;
18102  }
18103 
18104  if (! yyres)
18105  return yystrlen (yystr);
18106 
18107  return yystpcpy (yyres, yystr) - yyres;
18108 }
18109 # endif
18110 
18111 /* Copy into YYRESULT an error message about the unexpected token
18112  YYCHAR while in state YYSTATE. Return the number of bytes copied,
18113  including the terminating null byte. If YYRESULT is null, do not
18114  copy anything; just return the number of bytes that would be
18115  copied. As a special case, return 0 if an ordinary "syntax error"
18116  message will do. Return YYSIZE_MAXIMUM if overflow occurs during
18117  size calculation. */
18118 static YYSIZE_T
18119 yysyntax_error (char *yyresult, int yystate, int yychar)
18120 {
18121  int yyn = yypact[yystate];
18122 
18123  if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
18124  return 0;
18125  else
18126  {
18127  int yytype = YYTRANSLATE (yychar);
18128  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
18129  YYSIZE_T yysize = yysize0;
18130  YYSIZE_T yysize1;
18131  int yysize_overflow = 0;
18132  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
18133  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
18134  int yyx;
18135 
18136 # if 0
18137  /* This is so xgettext sees the translatable formats that are
18138  constructed on the fly. */
18139  YY_("syntax error, unexpected %s");
18140  YY_("syntax error, unexpected %s, expecting %s");
18141  YY_("syntax error, unexpected %s, expecting %s or %s");
18142  YY_("syntax error, unexpected %s, expecting %s or %s or %s");
18143  YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
18144 # endif
18145  char *yyfmt;
18146  char const *yyf;
18147  static char const yyunexpected[] = "syntax error, unexpected %s";
18148  static char const yyexpecting[] = ", expecting %s";
18149  static char const yyor[] = " or %s";
18150  char yyformat[sizeof yyunexpected
18151  + sizeof yyexpecting - 1
18152  + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
18153  * (sizeof yyor - 1))];
18154  char const *yyprefix = yyexpecting;
18155 
18156  /* Start YYX at -YYN if negative to avoid negative indexes in
18157  YYCHECK. */
18158  int yyxbegin = yyn < 0 ? -yyn : 0;
18159 
18160  /* Stay within bounds of both yycheck and yytname. */
18161  int yychecklim = YYLAST - yyn + 1;
18162  int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
18163  int yycount = 1;
18164 
18165  yyarg[0] = yytname[yytype];
18166  yyfmt = yystpcpy (yyformat, yyunexpected);
18167 
18168  for (yyx = yyxbegin; yyx < yyxend; ++yyx)
18169  if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
18170  {
18171  if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
18172  {
18173  yycount = 1;
18174  yysize = yysize0;
18175  yyformat[sizeof yyunexpected - 1] = '\0';
18176  break;
18177  }
18178  yyarg[yycount++] = yytname[yyx];
18179  yysize1 = yysize + yytnamerr (0, yytname[yyx]);
18180  yysize_overflow |= (yysize1 < yysize);
18181  yysize = yysize1;
18182  yyfmt = yystpcpy (yyfmt, yyprefix);
18183  yyprefix = yyor;
18184  }
18185 
18186  yyf = YY_(yyformat);
18187  yysize1 = yysize + yystrlen (yyf);
18188  yysize_overflow |= (yysize1 < yysize);
18189  yysize = yysize1;
18190 
18191  if (yysize_overflow)
18192  return YYSIZE_MAXIMUM;
18193 
18194  if (yyresult)
18195  {
18196  /* Avoid sprintf, as that infringes on the user's name space.
18197  Don't have undefined behavior even if the translation
18198  produced a string with the wrong number of "%s"s. */
18199  char *yyp = yyresult;
18200  int yyi = 0;
18201  while ((*yyp = *yyf) != '\0')
18202  {
18203  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
18204  {
18205  yyp += yytnamerr (yyp, yyarg[yyi++]);
18206  yyf += 2;
18207  }
18208  else
18209  {
18210  yyp++;
18211  yyf++;
18212  }
18213  }
18214  }
18215  return yysize;
18216  }
18217 }
18218 #endif /* YYERROR_VERBOSE */
18219 
18220 
18221 /*-----------------------------------------------.
18222 | Release the memory associated to this symbol. |
18223 `-----------------------------------------------*/
18224 
18225 /*ARGSUSED*/
18226 #if (defined __STDC__ || defined __C99__FUNC__ \
18227  || defined __cplusplus || defined _MSC_VER)
18228 static void
18229 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
18230 #else
18231 static void
18232 yydestruct (yymsg, yytype, yyvaluep)
18233  const char *yymsg;
18234  int yytype;
18235  YYSTYPE *yyvaluep;
18236 #endif
18237 {
18238  YYUSE (yyvaluep);
18239 
18240  if (!yymsg)
18241  yymsg = "Deleting";
18242  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
18243 
18244  switch (yytype)
18245  {
18246 
18247  default:
18248  break;
18249  }
18250 }
18251 
18252 /* Prevent warnings from -Wmissing-prototypes. */
18253 #ifdef YYPARSE_PARAM
18254 #if defined __STDC__ || defined __cplusplus
18255 int yyparse (void *YYPARSE_PARAM);
18256 #else
18257 int yyparse ();
18258 #endif
18259 #else /* ! YYPARSE_PARAM */
18260 #if defined __STDC__ || defined __cplusplus
18261 int yyparse (void);
18262 #else
18263 int yyparse ();
18264 #endif
18265 #endif /* ! YYPARSE_PARAM */
18266 
18267 
18268 
18269 
18270 
18271 /*-------------------------.
18272 | yyparse or yypush_parse. |
18273 `-------------------------*/
18274 
18275 #ifdef YYPARSE_PARAM
18276 #if (defined __STDC__ || defined __C99__FUNC__ \
18277  || defined __cplusplus || defined _MSC_VER)
18278 int
18279 yyparse (void *YYPARSE_PARAM)
18280 #else
18281 int
18282 yyparse (YYPARSE_PARAM)
18283  void *YYPARSE_PARAM;
18284 #endif
18285 #else /* ! YYPARSE_PARAM */
18286 #if (defined __STDC__ || defined __C99__FUNC__ \
18287  || defined __cplusplus || defined _MSC_VER)
18288 int
18289 yyparse (void)
18290 #else
18291 int
18292 yyparse ()
18293 
18294 #endif
18295 #endif
18296 {
18297 /* The lookahead symbol. */
18298 int yychar;
18299 
18300 /* The semantic value of the lookahead symbol. */
18301 YYSTYPE yylval;
18302 
18303  /* Number of syntax errors so far. */
18304  int yynerrs;
18305 
18306  int yystate;
18307  /* Number of tokens to shift before error messages enabled. */
18308  int yyerrstatus;
18309 
18310  /* The stacks and their tools:
18311  `yyss': related to states.
18312  `yyvs': related to semantic values.
18313 
18314  Refer to the stacks thru separate pointers, to allow yyoverflow
18315  to reallocate them elsewhere. */
18316 
18317  /* The state stack. */
18318  yytype_int16 yyssa[YYINITDEPTH];
18319  yytype_int16 *yyss;
18320  yytype_int16 *yyssp;
18321 
18322  /* The semantic value stack. */
18323  YYSTYPE yyvsa[YYINITDEPTH];
18324  YYSTYPE *yyvs;
18325  YYSTYPE *yyvsp;
18326 
18327  YYSIZE_T yystacksize;
18328 
18329  int yyn;
18330  int yyresult;
18331  /* Lookahead token as an internal (translated) token number. */
18332  int yytoken;
18333  /* The variables used to return semantic value and location from the
18334  action routines. */
18335  YYSTYPE yyval;
18336 
18337 #if YYERROR_VERBOSE
18338  /* Buffer for error messages, and its allocated size. */
18339  char yymsgbuf[128];
18340  char *yymsg = yymsgbuf;
18341  YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
18342 #endif
18343 
18344 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
18345 
18346  /* The number of symbols on the RHS of the reduced rule.
18347  Keep to zero when no symbol should be popped. */
18348  int yylen = 0;
18349 
18350  yytoken = 0;
18351  yyss = yyssa;
18352  yyvs = yyvsa;
18353  yystacksize = YYINITDEPTH;
18354 
18355  YYDPRINTF ((stderr, "Starting parse\n"));
18356 
18357  yystate = 0;
18358  yyerrstatus = 0;
18359  yynerrs = 0;
18360  yychar = YYEMPTY; /* Cause a token to be read. */
18361 
18362  /* Initialize stack pointers.
18363  Waste one element of value and location stack
18364  so that they stay on the same level as the state stack.
18365  The wasted elements are never initialized. */
18366  yyssp = yyss;
18367  yyvsp = yyvs;
18368 
18369  goto yysetstate;
18370 
18371 /*------------------------------------------------------------.
18372 | yynewstate -- Push a new state, which is found in yystate. |
18373 `------------------------------------------------------------*/
18374  yynewstate:
18375  /* In all cases, when you get here, the value and location stacks
18376  have just been pushed. So pushing a state here evens the stacks. */
18377  yyssp++;
18378 
18379  yysetstate:
18380  *yyssp = yystate;
18381 
18382  if (yyss + yystacksize - 1 <= yyssp)
18383  {
18384  /* Get the current used size of the three stacks, in elements. */
18385  YYSIZE_T yysize = yyssp - yyss + 1;
18386 
18387 #ifdef yyoverflow
18388  {
18389  /* Give user a chance to reallocate the stack. Use copies of
18390  these so that the &'s don't force the real ones into
18391  memory. */
18392  YYSTYPE *yyvs1 = yyvs;
18393  yytype_int16 *yyss1 = yyss;
18394 
18395  /* Each stack pointer address is followed by the size of the
18396  data in use in that stack, in bytes. This used to be a
18397  conditional around just the two extra args, but that might
18398  be undefined if yyoverflow is a macro. */
18399  yyoverflow (YY_("memory exhausted"),
18400  &yyss1, yysize * sizeof (*yyssp),
18401  &yyvs1, yysize * sizeof (*yyvsp),
18402  &yystacksize);
18403 
18404  yyss = yyss1;
18405  yyvs = yyvs1;
18406  }
18407 #else /* no yyoverflow */
18408 # ifndef YYSTACK_RELOCATE
18409  goto yyexhaustedlab;
18410 # else
18411  /* Extend the stack our own way. */
18412  if (YYMAXDEPTH <= yystacksize)
18413  goto yyexhaustedlab;
18414  yystacksize *= 2;
18415  if (YYMAXDEPTH < yystacksize)
18416  yystacksize = YYMAXDEPTH;
18417 
18418  {
18419  yytype_int16 *yyss1 = yyss;
18420  union yyalloc *yyptr =
18421  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
18422  if (! yyptr)
18423  goto yyexhaustedlab;
18424  YYSTACK_RELOCATE (yyss_alloc, yyss);
18425  YYSTACK_RELOCATE (yyvs_alloc, yyvs);
18426 # undef YYSTACK_RELOCATE
18427  if (yyss1 != yyssa)
18428  YYSTACK_FREE (yyss1);
18429  }
18430 # endif
18431 #endif /* no yyoverflow */
18432 
18433  yyssp = yyss + yysize - 1;
18434  yyvsp = yyvs + yysize - 1;
18435 
18436  YYDPRINTF ((stderr, "Stack size increased to %lu\n",
18437  (unsigned long int) yystacksize));
18438 
18439  if (yyss + yystacksize - 1 <= yyssp)
18440  YYABORT;
18441  }
18442 
18443  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
18444 
18445  if (yystate == YYFINAL)
18446  YYACCEPT;
18447 
18448  goto yybackup;
18449 
18450 /*-----------.
18451 | yybackup. |
18452 `-----------*/
18453 yybackup:
18454 
18455  /* Do appropriate processing given the current state. Read a
18456  lookahead token if we need one and don't already have one. */
18457 
18458  /* First try to decide what to do without reference to lookahead token. */
18459  yyn = yypact[yystate];
18460  if (yyn == YYPACT_NINF)
18461  goto yydefault;
18462 
18463  /* Not known => get a lookahead token if don't already have one. */
18464 
18465  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
18466  if (yychar == YYEMPTY)
18467  {
18468  YYDPRINTF ((stderr, "Reading a token: "));
18469  yychar = YYLEX;
18470  }
18471 
18472  if (yychar <= YYEOF)
18473  {
18474  yychar = yytoken = YYEOF;
18475  YYDPRINTF ((stderr, "Now at end of input.\n"));
18476  }
18477  else
18478  {
18479  yytoken = YYTRANSLATE (yychar);
18480  YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
18481  }
18482 
18483  /* If the proper action on seeing token YYTOKEN is to reduce or to
18484  detect an error, take that action. */
18485  yyn += yytoken;
18486  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
18487  goto yydefault;
18488  yyn = yytable[yyn];
18489  if (yyn <= 0)
18490  {
18491  if (yyn == 0 || yyn == YYTABLE_NINF)
18492  goto yyerrlab;
18493  yyn = -yyn;
18494  goto yyreduce;
18495  }
18496 
18497  /* Count tokens shifted since error; after three, turn off error
18498  status. */
18499  if (yyerrstatus)
18500  yyerrstatus--;
18501 
18502  /* Shift the lookahead token. */
18503  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
18504 
18505  /* Discard the shifted token. */
18506  yychar = YYEMPTY;
18507 
18508  yystate = yyn;
18509  *++yyvsp = yylval;
18510 
18511  goto yynewstate;
18512 
18513 
18514 /*-----------------------------------------------------------.
18515 | yydefault -- do the default action for the current state. |
18516 `-----------------------------------------------------------*/
18517 yydefault:
18518  yyn = yydefact[yystate];
18519  if (yyn == 0)
18520  goto yyerrlab;
18521  goto yyreduce;
18522 
18523 
18524 /*-----------------------------.
18525 | yyreduce -- Do a reduction. |
18526 `-----------------------------*/
18527 yyreduce:
18528  /* yyn is the number of a rule to reduce with. */
18529  yylen = yyr2[yyn];
18530 
18531  /* If YYLEN is nonzero, implement the default value of the action:
18532  `$$ = $1'.
18533 
18534  Otherwise, the following line sets YYVAL to garbage.
18535  This behavior is undocumented and Bison
18536  users should not rely upon it. Assigning to YYVAL
18537  unconditionally makes the parser a bit smaller, and it avoids a
18538  GCC warning that YYVAL may be used uninitialized. */
18539  yyval = yyvsp[1-yylen];
18540 
18541 
18542  YY_REDUCE_PRINT (yyn);
18543  switch (yyn)
18544  {
18545  case 2:
18546 
18547 /* Line 1455 of yacc.c */
18548 #line 1965 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18549  {
18550  THD *thd= YYTHD;
18551  if (!thd->bootstrap &&
18552  (!(thd->lex->select_lex.options & OPTION_FOUND_COMMENT)))
18553  {
18554  my_message(ER_EMPTY_QUERY, ER(ER_EMPTY_QUERY), MYF(0));
18555  MYSQL_YYABORT;
18556  }
18557  thd->lex->sql_command= SQLCOM_EMPTY_QUERY;
18558  YYLIP->found_semicolon= NULL;
18559  }
18560  break;
18561 
18562  case 3:
18563 
18564 /* Line 1455 of yacc.c */
18565 #line 1977 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18566  {
18567  Lex_input_stream *lip = YYLIP;
18568 
18569  if ((YYTHD->client_capabilities & CLIENT_MULTI_QUERIES) &&
18570  lip->multi_statements &&
18571  ! lip->eof())
18572  {
18573  /*
18574  We found a well formed query, and multi queries are allowed:
18575  - force the parser to stop after the ';'
18576  - mark the start of the next query for the next invocation
18577  of the parser.
18578  */
18579  lip->next_state= MY_LEX_END;
18580  lip->found_semicolon= lip->get_ptr();
18581  }
18582  else
18583  {
18584  /* Single query, terminated. */
18585  lip->found_semicolon= NULL;
18586  }
18587  }
18588  break;
18589 
18590  case 5:
18591 
18592 /* Line 1455 of yacc.c */
18593 #line 2002 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18594  {
18595  /* Single query, not terminated. */
18596  YYLIP->found_semicolon= NULL;
18597  }
18598  break;
18599 
18600  case 62:
18601 
18602 /* Line 1455 of yacc.c */
18603 #line 2076 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18604  {
18605  THD *thd= YYTHD;
18606  LEX *lex= thd->lex;
18607  lex->sql_command= SQLCOM_DEALLOCATE_PREPARE;
18608  lex->prepared_stmt_name= (yyvsp[(3) - (3)].lex_str);
18609  }
18610  break;
18611 
18612  case 65:
18613 
18614 /* Line 1455 of yacc.c */
18615 #line 2091 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18616  {
18617  THD *thd= YYTHD;
18618  LEX *lex= thd->lex;
18619  lex->sql_command= SQLCOM_PREPARE;
18620  lex->prepared_stmt_name= (yyvsp[(2) - (4)].lex_str);
18621  /*
18622  We don't know know at this time whether there's a password
18623  in prepare_src, so we err on the side of caution. Setting
18624  the flag will force a rewrite which will obscure all of
18625  prepare_src in the "Query" log line. We'll see the actual
18626  query (with just the passwords obscured, if any) immediately
18627  afterwards in the "Prepare" log lines anyway, and then again
18628  in the "Execute" log line if and when prepare_src is executed.
18629  */
18630  lex->contains_plaintext_password= true;
18631  }
18632  break;
18633 
18634  case 66:
18635 
18636 /* Line 1455 of yacc.c */
18637 #line 2111 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18638  {
18639  THD *thd= YYTHD;
18640  LEX *lex= thd->lex;
18641  lex->prepared_stmt_code= (yyvsp[(1) - (1)].lex_str);
18642  lex->prepared_stmt_code_is_varref= FALSE;
18643  }
18644  break;
18645 
18646  case 67:
18647 
18648 /* Line 1455 of yacc.c */
18649 #line 2118 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18650  {
18651  THD *thd= YYTHD;
18652  LEX *lex= thd->lex;
18653  lex->prepared_stmt_code= (yyvsp[(2) - (2)].lex_str);
18654  lex->prepared_stmt_code_is_varref= TRUE;
18655  }
18656  break;
18657 
18658  case 68:
18659 
18660 /* Line 1455 of yacc.c */
18661 #line 2128 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18662  {
18663  THD *thd= YYTHD;
18664  LEX *lex= thd->lex;
18665  lex->sql_command= SQLCOM_EXECUTE;
18666  lex->prepared_stmt_name= (yyvsp[(2) - (2)].lex_str);
18667  }
18668  break;
18669 
18670  case 69:
18671 
18672 /* Line 1455 of yacc.c */
18673 #line 2135 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18674  {}
18675  break;
18676 
18677  case 74:
18678 
18679 /* Line 1455 of yacc.c */
18680 #line 2150 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18681  {
18682  LEX *lex=Lex;
18683  LEX_STRING *lexstr= (LEX_STRING*)sql_memdup(&(yyvsp[(2) - (2)].lex_str), sizeof(LEX_STRING));
18684  if (!lexstr || lex->prepared_stmt_params.push_back(lexstr))
18685  MYSQL_YYABORT;
18686  }
18687  break;
18688 
18689  case 75:
18690 
18691 /* Line 1455 of yacc.c */
18692 #line 2162 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18693  {
18694  if (Lex->sphead)
18695  {
18696  my_error(ER_SP_BADSTATEMENT, MYF(0), "HELP");
18697  MYSQL_YYABORT;
18698  }
18699  }
18700  break;
18701 
18702  case 76:
18703 
18704 /* Line 1455 of yacc.c */
18705 #line 2170 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18706  {
18707  LEX *lex= Lex;
18708  lex->sql_command= SQLCOM_HELP;
18709  lex->help_arg= (yyvsp[(3) - (3)].lex_str).str;
18710  }
18711  break;
18712 
18713  case 77:
18714 
18715 /* Line 1455 of yacc.c */
18716 #line 2181 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18717  {
18718  LEX *lex = Lex;
18719  lex->sql_command = SQLCOM_CHANGE_MASTER;
18720  /*
18721  Clear LEX_MASTER_INFO struct. repl_ignore_server_ids is freed
18722  in THD::cleanup_after_query. So it is guaranteed to be
18723  uninitialized before here.
18724  Its allocation is deferred till the option is parsed below.
18725  */
18726  lex->mi.set_unspecified();
18727  DBUG_ASSERT(Lex->mi.repl_ignore_server_ids.elements == 0);
18728  }
18729  break;
18730 
18731  case 78:
18732 
18733 /* Line 1455 of yacc.c */
18734 #line 2194 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18735  {}
18736  break;
18737 
18738  case 81:
18739 
18740 /* Line 1455 of yacc.c */
18741 #line 2204 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18742  {
18743  Lex->mi.host = (yyvsp[(3) - (3)].lex_str).str;
18744  }
18745  break;
18746 
18747  case 82:
18748 
18749 /* Line 1455 of yacc.c */
18750 #line 2208 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18751  {
18752  Lex->mi.bind_addr = (yyvsp[(3) - (3)].lex_str).str;
18753  }
18754  break;
18755 
18756  case 83:
18757 
18758 /* Line 1455 of yacc.c */
18759 #line 2212 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18760  {
18761  Lex->mi.user = (yyvsp[(3) - (3)].lex_str).str;
18762  }
18763  break;
18764 
18765  case 84:
18766 
18767 /* Line 1455 of yacc.c */
18768 #line 2216 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18769  {
18770  Lex->mi.password = (yyvsp[(3) - (3)].lex_str).str;
18771  Lex->contains_plaintext_password= true;
18772  }
18773  break;
18774 
18775  case 85:
18776 
18777 /* Line 1455 of yacc.c */
18778 #line 2221 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18779  {
18780  Lex->mi.port = (yyvsp[(3) - (3)].ulong_num);
18781  }
18782  break;
18783 
18784  case 86:
18785 
18786 /* Line 1455 of yacc.c */
18787 #line 2225 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18788  {
18789  Lex->mi.connect_retry = (yyvsp[(3) - (3)].ulong_num);
18790  }
18791  break;
18792 
18793  case 87:
18794 
18795 /* Line 1455 of yacc.c */
18796 #line 2229 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18797  {
18798  Lex->mi.retry_count= (yyvsp[(3) - (3)].ulong_num);
18799  Lex->mi.retry_count_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
18800  }
18801  break;
18802 
18803  case 88:
18804 
18805 /* Line 1455 of yacc.c */
18806 #line 2234 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18807  {
18808  if ((yyvsp[(3) - (3)].ulong_num) > MASTER_DELAY_MAX)
18809  {
18810  Lex_input_stream *lip= YYLIP;
18811  const char *start= lip->get_tok_start();
18812  const char *msg= YYTHD->strmake(start, lip->get_ptr() - start);
18813  my_error(ER_MASTER_DELAY_VALUE_OUT_OF_RANGE, MYF(0),
18814  msg, MASTER_DELAY_MAX);
18815  }
18816  else
18817  Lex->mi.sql_delay = (yyvsp[(3) - (3)].ulong_num);
18818  }
18819  break;
18820 
18821  case 89:
18822 
18823 /* Line 1455 of yacc.c */
18824 #line 2247 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18825  {
18826  Lex->mi.ssl= (yyvsp[(3) - (3)].ulong_num) ?
18827  LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
18828  }
18829  break;
18830 
18831  case 90:
18832 
18833 /* Line 1455 of yacc.c */
18834 #line 2252 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18835  {
18836  Lex->mi.ssl_ca= (yyvsp[(3) - (3)].lex_str).str;
18837  }
18838  break;
18839 
18840  case 91:
18841 
18842 /* Line 1455 of yacc.c */
18843 #line 2256 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18844  {
18845  Lex->mi.ssl_capath= (yyvsp[(3) - (3)].lex_str).str;
18846  }
18847  break;
18848 
18849  case 92:
18850 
18851 /* Line 1455 of yacc.c */
18852 #line 2260 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18853  {
18854  Lex->mi.ssl_cert= (yyvsp[(3) - (3)].lex_str).str;
18855  }
18856  break;
18857 
18858  case 93:
18859 
18860 /* Line 1455 of yacc.c */
18861 #line 2264 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18862  {
18863  Lex->mi.ssl_cipher= (yyvsp[(3) - (3)].lex_str).str;
18864  }
18865  break;
18866 
18867  case 94:
18868 
18869 /* Line 1455 of yacc.c */
18870 #line 2268 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18871  {
18872  Lex->mi.ssl_key= (yyvsp[(3) - (3)].lex_str).str;
18873  }
18874  break;
18875 
18876  case 95:
18877 
18878 /* Line 1455 of yacc.c */
18879 #line 2272 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18880  {
18881  Lex->mi.ssl_verify_server_cert= (yyvsp[(3) - (3)].ulong_num) ?
18882  LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
18883  }
18884  break;
18885 
18886  case 96:
18887 
18888 /* Line 1455 of yacc.c */
18889 #line 2277 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18890  {
18891  Lex->mi.ssl_crl= (yyvsp[(3) - (3)].lex_str).str;
18892  }
18893  break;
18894 
18895  case 97:
18896 
18897 /* Line 1455 of yacc.c */
18898 #line 2281 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18899  {
18900  Lex->mi.ssl_crlpath= (yyvsp[(3) - (3)].lex_str).str;
18901  }
18902  break;
18903 
18904  case 98:
18905 
18906 /* Line 1455 of yacc.c */
18907 #line 2286 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18908  {
18909  Lex->mi.heartbeat_period= (float) (yyvsp[(3) - (3)].item_num)->val_real();
18910  if (Lex->mi.heartbeat_period > SLAVE_MAX_HEARTBEAT_PERIOD ||
18911  Lex->mi.heartbeat_period < 0.0)
18912  {
18913  const char format[]= "%d";
18914  char buf[4*sizeof(SLAVE_MAX_HEARTBEAT_PERIOD) + sizeof(format)];
18915  sprintf(buf, format, SLAVE_MAX_HEARTBEAT_PERIOD);
18916  my_error(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE, MYF(0), buf);
18917  MYSQL_YYABORT;
18918  }
18919  if (Lex->mi.heartbeat_period > slave_net_timeout)
18920  {
18921  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
18922  ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX,
18923  ER(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX));
18924  }
18925  if (Lex->mi.heartbeat_period < 0.001)
18926  {
18927  if (Lex->mi.heartbeat_period != 0.0)
18928  {
18929  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
18930  ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN,
18931  ER(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN));
18932  Lex->mi.heartbeat_period= 0.0;
18933  }
18934  Lex->mi.heartbeat_opt= LEX_MASTER_INFO::LEX_MI_DISABLE;
18935  }
18936  Lex->mi.heartbeat_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
18937  }
18938  break;
18939 
18940  case 99:
18941 
18942 /* Line 1455 of yacc.c */
18943 #line 2317 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18944  {
18945  Lex->mi.repl_ignore_server_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
18946  }
18947  break;
18948 
18949  case 100:
18950 
18951 /* Line 1455 of yacc.c */
18952 #line 2322 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18953  {
18954  Lex->mi.auto_position= (yyvsp[(3) - (3)].ulong_num) ?
18955  LEX_MASTER_INFO::LEX_MI_ENABLE :
18956  LEX_MASTER_INFO::LEX_MI_DISABLE;
18957  }
18958  break;
18959 
18960  case 105:
18961 
18962 /* Line 1455 of yacc.c */
18963 #line 2339 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18964  {
18965  if (Lex->mi.repl_ignore_server_ids.elements == 0)
18966  {
18967  my_init_dynamic_array2(&Lex->mi.repl_ignore_server_ids,
18968  sizeof(::server_id),
18969  Lex->mi.server_ids_buffer,
18970  array_elements(Lex->mi.server_ids_buffer),
18971  16);
18972  }
18973  insert_dynamic(&Lex->mi.repl_ignore_server_ids, (uchar*) &((yyvsp[(1) - (1)].ulong_num)));
18974  }
18975  break;
18976 
18977  case 106:
18978 
18979 /* Line 1455 of yacc.c */
18980 #line 2353 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18981  {
18982  Lex->mi.log_file_name = (yyvsp[(3) - (3)].lex_str).str;
18983  }
18984  break;
18985 
18986  case 107:
18987 
18988 /* Line 1455 of yacc.c */
18989 #line 2357 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
18990  {
18991  Lex->mi.pos = (yyvsp[(3) - (3)].ulonglong_number);
18992  /*
18993  If the user specified a value < BIN_LOG_HEADER_SIZE, adjust it
18994  instead of causing subsequent errors.
18995  We need to do it in this file, because only there we know that
18996  MASTER_LOG_POS has been explicitely specified. On the contrary
18997  in change_master() (sql_repl.cc) we cannot distinguish between 0
18998  (MASTER_LOG_POS explicitely specified as 0) and 0 (unspecified),
18999  whereas we want to distinguish (specified 0 means "read the binlog
19000  from 0" (4 in fact), unspecified means "don't change the position
19001  (keep the preceding value)").
19002  */
19003  Lex->mi.pos = max<ulonglong>(BIN_LOG_HEADER_SIZE, Lex->mi.pos);
19004  }
19005  break;
19006 
19007  case 108:
19008 
19009 /* Line 1455 of yacc.c */
19010 #line 2373 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19011  {
19012  Lex->mi.relay_log_name = (yyvsp[(3) - (3)].lex_str).str;
19013  }
19014  break;
19015 
19016  case 109:
19017 
19018 /* Line 1455 of yacc.c */
19019 #line 2377 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19020  {
19021  Lex->mi.relay_log_pos = (yyvsp[(3) - (3)].ulong_num);
19022  /* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
19023  Lex->mi.relay_log_pos = max<ulong>(BIN_LOG_HEADER_SIZE,
19024  Lex->mi.relay_log_pos);
19025  }
19026  break;
19027 
19028  case 110:
19029 
19030 /* Line 1455 of yacc.c */
19031 #line 2389 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19032  {
19033  THD *thd= YYTHD;
19034  LEX *lex= thd->lex;
19035  lex->sql_command= SQLCOM_CREATE_TABLE;
19036  if (!lex->select_lex.add_table_to_list(thd, (yyvsp[(5) - (5)].table), NULL,
19037  TL_OPTION_UPDATING,
19038  TL_WRITE, MDL_SHARED))
19039  MYSQL_YYABORT;
19040  /*
19041  Instruct open_table() to acquire SHARED lock to check the
19042  existance of table. If the table does not exist then
19043  it will be upgraded EXCLUSIVE MDL lock. If table exist
19044  then open_table() will return with an error or warning.
19045  */
19046  lex->query_tables->open_strategy= TABLE_LIST::OPEN_FOR_CREATE;
19047  lex->alter_info.reset();
19048  lex->col_list.empty();
19049  lex->change=NullS;
19050  memset(&lex->create_info, 0, sizeof(lex->create_info));
19051  lex->create_info.options=(yyvsp[(2) - (5)].num) | (yyvsp[(4) - (5)].num);
19052  lex->create_info.default_table_charset= NULL;
19053  lex->name.str= 0;
19054  lex->name.length= 0;
19055  lex->create_last_non_select_table= lex->last_table();
19056  }
19057  break;
19058 
19059  case 111:
19060 
19061 /* Line 1455 of yacc.c */
19062 #line 2415 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19063  {
19064  THD *thd= YYTHD;
19065  LEX *lex= thd->lex;
19066  lex->current_select= &lex->select_lex;
19067  if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
19068  !lex->create_info.db_type)
19069  {
19070  lex->create_info.db_type=
19071  lex->create_info.options & HA_LEX_CREATE_TMP_TABLE ?
19073  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
19074  ER_WARN_USING_OTHER_HANDLER,
19075  ER(ER_WARN_USING_OTHER_HANDLER),
19076  ha_resolve_storage_engine_name(lex->create_info.db_type),
19077  (yyvsp[(5) - (7)].table)->table.str);
19078  }
19080  }
19081  break;
19082 
19083  case 112:
19084 
19085 /* Line 1455 of yacc.c */
19086 #line 2434 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19087  {
19088  if (add_create_index_prepare(Lex, (yyvsp[(7) - (7)].table)))
19089  MYSQL_YYABORT;
19090  }
19091  break;
19092 
19093  case 113:
19094 
19095 /* Line 1455 of yacc.c */
19096 #line 2439 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19097  {
19098  if (add_create_index(Lex, (yyvsp[(2) - (12)].key_type), (yyvsp[(4) - (12)].lex_str)))
19099  MYSQL_YYABORT;
19100  }
19101  break;
19102 
19103  case 114:
19104 
19105 /* Line 1455 of yacc.c */
19106 #line 2443 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19107  { }
19108  break;
19109 
19110  case 115:
19111 
19112 /* Line 1455 of yacc.c */
19113 #line 2446 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19114  {
19115  if (add_create_index_prepare(Lex, (yyvsp[(7) - (7)].table)))
19116  MYSQL_YYABORT;
19117  }
19118  break;
19119 
19120  case 116:
19121 
19122 /* Line 1455 of yacc.c */
19123 #line 2451 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19124  {
19125  if (add_create_index(Lex, (yyvsp[(2) - (12)].key_type), (yyvsp[(4) - (12)].lex_str)))
19126  MYSQL_YYABORT;
19127  }
19128  break;
19129 
19130  case 117:
19131 
19132 /* Line 1455 of yacc.c */
19133 #line 2455 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19134  { }
19135  break;
19136 
19137  case 118:
19138 
19139 /* Line 1455 of yacc.c */
19140 #line 2458 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19141  {
19142  if (add_create_index_prepare(Lex, (yyvsp[(7) - (7)].table)))
19143  MYSQL_YYABORT;
19144  }
19145  break;
19146 
19147  case 119:
19148 
19149 /* Line 1455 of yacc.c */
19150 #line 2463 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19151  {
19152  if (add_create_index(Lex, (yyvsp[(2) - (12)].key_type), (yyvsp[(4) - (12)].lex_str)))
19153  MYSQL_YYABORT;
19154  }
19155  break;
19156 
19157  case 120:
19158 
19159 /* Line 1455 of yacc.c */
19160 #line 2467 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19161  { }
19162  break;
19163 
19164  case 121:
19165 
19166 /* Line 1455 of yacc.c */
19167 #line 2469 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19168  {
19169  Lex->create_info.default_table_charset= NULL;
19170  Lex->create_info.used_fields= 0;
19171  }
19172  break;
19173 
19174  case 122:
19175 
19176 /* Line 1455 of yacc.c */
19177 #line 2474 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19178  {
19179  LEX *lex=Lex;
19180  lex->sql_command=SQLCOM_CREATE_DB;
19181  lex->name= (yyvsp[(4) - (6)].lex_str);
19182  lex->create_info.options=(yyvsp[(3) - (6)].num);
19183  }
19184  break;
19185 
19186  case 123:
19187 
19188 /* Line 1455 of yacc.c */
19189 #line 2481 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19190  {
19191  Lex->create_view_mode= VIEW_CREATE_NEW;
19192  Lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED;
19193  Lex->create_view_suid= TRUE;
19194  }
19195  break;
19196 
19197  case 124:
19198 
19199 /* Line 1455 of yacc.c */
19200 #line 2487 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19201  {}
19202  break;
19203 
19204  case 125:
19205 
19206 /* Line 1455 of yacc.c */
19207 #line 2489 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19208  {
19209  Lex->sql_command = SQLCOM_CREATE_USER;
19210  }
19211  break;
19212 
19213  case 126:
19214 
19215 /* Line 1455 of yacc.c */
19216 #line 2493 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19217  {
19218  Lex->alter_tablespace_info->ts_cmd_type= CREATE_LOGFILE_GROUP;
19219  }
19220  break;
19221 
19222  case 127:
19223 
19224 /* Line 1455 of yacc.c */
19225 #line 2497 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19226  {
19227  Lex->alter_tablespace_info->ts_cmd_type= CREATE_TABLESPACE;
19228  }
19229  break;
19230 
19231  case 128:
19232 
19233 /* Line 1455 of yacc.c */
19234 #line 2501 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19235  {
19236  Lex->sql_command= SQLCOM_CREATE_SERVER;
19237  }
19238  break;
19239 
19240  case 129:
19241 
19242 /* Line 1455 of yacc.c */
19243 #line 2512 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19244  {
19245  Lex->server_options.server_name= (yyvsp[(2) - (10)].lex_str).str;
19246  Lex->server_options.server_name_length= (yyvsp[(2) - (10)].lex_str).length;
19247  Lex->server_options.scheme= (yyvsp[(6) - (10)].lex_str).str;
19248  }
19249  break;
19250 
19251  case 132:
19252 
19253 /* Line 1455 of yacc.c */
19254 #line 2526 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19255  {
19256  Lex->server_options.username= (yyvsp[(2) - (2)].lex_str).str;
19257  }
19258  break;
19259 
19260  case 133:
19261 
19262 /* Line 1455 of yacc.c */
19263 #line 2530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19264  {
19265  Lex->server_options.host= (yyvsp[(2) - (2)].lex_str).str;
19266  }
19267  break;
19268 
19269  case 134:
19270 
19271 /* Line 1455 of yacc.c */
19272 #line 2534 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19273  {
19274  Lex->server_options.db= (yyvsp[(2) - (2)].lex_str).str;
19275  }
19276  break;
19277 
19278  case 135:
19279 
19280 /* Line 1455 of yacc.c */
19281 #line 2538 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19282  {
19283  Lex->server_options.owner= (yyvsp[(2) - (2)].lex_str).str;
19284  }
19285  break;
19286 
19287  case 136:
19288 
19289 /* Line 1455 of yacc.c */
19290 #line 2542 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19291  {
19292  Lex->server_options.password= (yyvsp[(2) - (2)].lex_str).str;
19293  Lex->contains_plaintext_password= true;
19294  }
19295  break;
19296 
19297  case 137:
19298 
19299 /* Line 1455 of yacc.c */
19300 #line 2547 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19301  {
19302  Lex->server_options.socket= (yyvsp[(2) - (2)].lex_str).str;
19303  }
19304  break;
19305 
19306  case 138:
19307 
19308 /* Line 1455 of yacc.c */
19309 #line 2551 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19310  {
19311  Lex->server_options.port= (yyvsp[(2) - (2)].ulong_num);
19312  }
19313  break;
19314 
19315  case 139:
19316 
19317 /* Line 1455 of yacc.c */
19318 #line 2558 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19319  {
19320  THD *thd= YYTHD;
19321  LEX *lex=Lex;
19322 
19323  lex->stmt_definition_begin= (yyvsp[(1) - (4)].simple_string);
19324  lex->create_info.options= (yyvsp[(3) - (4)].num);
19325  if (!(lex->event_parse_data= Event_parse_data::new_instance(thd)))
19326  MYSQL_YYABORT;
19327  lex->event_parse_data->identifier= (yyvsp[(4) - (4)].spname);
19328  lex->event_parse_data->on_completion=
19329  Event_parse_data::ON_COMPLETION_DROP;
19330 
19331  lex->sql_command= SQLCOM_CREATE_EVENT;
19332  /* We need that for disallowing subqueries */
19333  }
19334  break;
19335 
19336  case 140:
19337 
19338 /* Line 1455 of yacc.c */
19339 #line 2578 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19340  {
19341  /*
19342  sql_command is set here because some rules in ev_sql_stmt
19343  can overwrite it
19344  */
19345  Lex->sql_command= SQLCOM_CREATE_EVENT;
19346  }
19347  break;
19348 
19349  case 141:
19350 
19351 /* Line 1455 of yacc.c */
19352 #line 2589 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19353  {
19354  Lex->event_parse_data->item_expression= (yyvsp[(2) - (3)].item);
19355  Lex->event_parse_data->interval= (yyvsp[(3) - (3)].interval);
19356  }
19357  break;
19358 
19359  case 143:
19360 
19361 /* Line 1455 of yacc.c */
19362 #line 2596 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19363  {
19364  Lex->event_parse_data->item_execute_at= (yyvsp[(2) - (2)].item);
19365  }
19366  break;
19367 
19368  case 144:
19369 
19370 /* Line 1455 of yacc.c */
19371 #line 2602 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19372  { (yyval.num)= 0; }
19373  break;
19374 
19375  case 145:
19376 
19377 /* Line 1455 of yacc.c */
19378 #line 2604 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19379  {
19380  Lex->event_parse_data->status= Event_parse_data::ENABLED;
19381  Lex->event_parse_data->status_changed= true;
19382  (yyval.num)= 1;
19383  }
19384  break;
19385 
19386  case 146:
19387 
19388 /* Line 1455 of yacc.c */
19389 #line 2610 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19390  {
19391  Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED;
19392  Lex->event_parse_data->status_changed= true;
19393  (yyval.num)= 1;
19394  }
19395  break;
19396 
19397  case 147:
19398 
19399 /* Line 1455 of yacc.c */
19400 #line 2616 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19401  {
19402  Lex->event_parse_data->status= Event_parse_data::DISABLED;
19403  Lex->event_parse_data->status_changed= true;
19404  (yyval.num)= 1;
19405  }
19406  break;
19407 
19408  case 148:
19409 
19410 /* Line 1455 of yacc.c */
19411 #line 2625 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19412  {
19413  Item *item= new (YYTHD->mem_root) Item_func_now_local(0);
19414  if (item == NULL)
19415  MYSQL_YYABORT;
19416  Lex->event_parse_data->item_starts= item;
19417  }
19418  break;
19419 
19420  case 149:
19421 
19422 /* Line 1455 of yacc.c */
19423 #line 2632 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19424  {
19425  Lex->event_parse_data->item_starts= (yyvsp[(2) - (2)].item);
19426  }
19427  break;
19428 
19429  case 151:
19430 
19431 /* Line 1455 of yacc.c */
19432 #line 2640 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19433  {
19434  Lex->event_parse_data->item_ends= (yyvsp[(2) - (2)].item);
19435  }
19436  break;
19437 
19438  case 152:
19439 
19440 /* Line 1455 of yacc.c */
19441 #line 2646 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19442  { (yyval.num)= 0; }
19443  break;
19444 
19445  case 154:
19446 
19447 /* Line 1455 of yacc.c */
19448 #line 2652 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19449  {
19450  Lex->event_parse_data->on_completion=
19451  Event_parse_data::ON_COMPLETION_PRESERVE;
19452  (yyval.num)= 1;
19453  }
19454  break;
19455 
19456  case 155:
19457 
19458 /* Line 1455 of yacc.c */
19459 #line 2658 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19460  {
19461  Lex->event_parse_data->on_completion=
19462  Event_parse_data::ON_COMPLETION_DROP;
19463  (yyval.num)= 1;
19464  }
19465  break;
19466 
19467  case 156:
19468 
19469 /* Line 1455 of yacc.c */
19470 #line 2666 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19471  { (yyval.num)= 0; }
19472  break;
19473 
19474  case 157:
19475 
19476 /* Line 1455 of yacc.c */
19477 #line 2668 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19478  {
19479  Lex->comment= Lex->event_parse_data->comment= (yyvsp[(2) - (2)].lex_str);
19480  (yyval.num)= 1;
19481  }
19482  break;
19483 
19484  case 158:
19485 
19486 /* Line 1455 of yacc.c */
19487 #line 2675 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19488  {
19489  THD *thd= YYTHD;
19490  LEX *lex= thd->lex;
19491  Lex_input_stream *lip= YYLIP;
19492 
19493  /*
19494  This stops the following :
19495  - CREATE EVENT ... DO CREATE EVENT ...;
19496  - ALTER EVENT ... DO CREATE EVENT ...;
19497  - CREATE EVENT ... DO ALTER EVENT DO ....;
19498  - CREATE PROCEDURE ... BEGIN CREATE EVENT ... END|
19499  This allows:
19500  - CREATE EVENT ... DO DROP EVENT yyy;
19501  - CREATE EVENT ... DO ALTER EVENT yyy;
19502  (the nested ALTER EVENT can have anything but DO clause)
19503  - ALTER EVENT ... DO ALTER EVENT yyy;
19504  (the nested ALTER EVENT can have anything but DO clause)
19505  - ALTER EVENT ... DO DROP EVENT yyy;
19506  - CREATE PROCEDURE ... BEGIN ALTER EVENT ... END|
19507  (the nested ALTER EVENT can have anything but DO clause)
19508  - CREATE PROCEDURE ... BEGIN DROP EVENT ... END|
19509  */
19510  if (lex->sphead)
19511  {
19512  my_error(ER_EVENT_RECURSION_FORBIDDEN, MYF(0));
19513  MYSQL_YYABORT;
19514  }
19515 
19516  sp_head *sp= sp_start_parsing(thd,
19517  SP_TYPE_PROCEDURE,
19518  lex->event_parse_data->identifier);
19519 
19520  if (!sp)
19521  MYSQL_YYABORT;
19522 
19523  lex->sphead= sp;
19524 
19525  memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics));
19526  sp->m_chistics= &lex->sp_chistics;
19527 
19528  sp->set_body_start(thd, lip->get_cpp_ptr());
19529  }
19530  break;
19531 
19532  case 159:
19533 
19534 /* Line 1455 of yacc.c */
19535 #line 2718 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19536  {
19537  THD *thd= YYTHD;
19538  LEX *lex= thd->lex;
19539 
19540  sp_finish_parsing(thd);
19541 
19542  lex->sp_chistics.suid= SP_IS_SUID; //always the definer!
19543  lex->event_parse_data->body_changed= TRUE;
19544  }
19545  break;
19546 
19547  case 173:
19548 
19549 /* Line 1455 of yacc.c */
19550 #line 2747 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19551  {
19552  LEX *lex=Lex;
19553  lex->users_list.empty();
19554  lex->columns.empty();
19555  lex->grant= lex->grant_tot_col= 0;
19556  lex->all_privileges= 0;
19557  lex->select_lex.db= 0;
19558  lex->ssl_type= SSL_TYPE_NOT_SPECIFIED;
19559  lex->ssl_cipher= lex->x509_subject= lex->x509_issuer= 0;
19560  memset(&(lex->mqh), 0, sizeof(lex->mqh));
19561  }
19562  break;
19563 
19564  case 174:
19565 
19566 /* Line 1455 of yacc.c */
19567 #line 2762 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19568  {
19569  if (!(yyvsp[(1) - (3)].lex_str).str ||
19570  (check_and_convert_db_name(&(yyvsp[(1) - (3)].lex_str), FALSE) != IDENT_NAME_OK))
19571  MYSQL_YYABORT;
19572  if (sp_check_name(&(yyvsp[(3) - (3)].lex_str)))
19573  {
19574  MYSQL_YYABORT;
19575  }
19576  (yyval.spname)= new sp_name((yyvsp[(1) - (3)].lex_str), (yyvsp[(3) - (3)].lex_str), true);
19577  if ((yyval.spname) == NULL)
19578  MYSQL_YYABORT;
19579  (yyval.spname)->init_qname(YYTHD);
19580  }
19581  break;
19582 
19583  case 175:
19584 
19585 /* Line 1455 of yacc.c */
19586 #line 2776 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19587  {
19588  THD *thd= YYTHD;
19589  LEX *lex= thd->lex;
19590  LEX_STRING db;
19591  if (sp_check_name(&(yyvsp[(1) - (1)].lex_str)))
19592  {
19593  MYSQL_YYABORT;
19594  }
19595  if (lex->copy_db_to(&db.str, &db.length))
19596  MYSQL_YYABORT;
19597  (yyval.spname)= new sp_name(db, (yyvsp[(1) - (1)].lex_str), false);
19598  if ((yyval.spname) == NULL)
19599  MYSQL_YYABORT;
19600  (yyval.spname)->init_qname(thd);
19601  }
19602  break;
19603 
19604  case 176:
19605 
19606 /* Line 1455 of yacc.c */
19607 #line 2794 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19608  {}
19609  break;
19610 
19611  case 177:
19612 
19613 /* Line 1455 of yacc.c */
19614 #line 2795 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19615  {}
19616  break;
19617 
19618  case 178:
19619 
19620 /* Line 1455 of yacc.c */
19621 #line 2799 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19622  {}
19623  break;
19624 
19625  case 179:
19626 
19627 /* Line 1455 of yacc.c */
19628 #line 2800 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19629  {}
19630  break;
19631 
19632  case 180:
19633 
19634 /* Line 1455 of yacc.c */
19635 #line 2806 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19636  { Lex->sp_chistics.comment= (yyvsp[(2) - (2)].lex_str); }
19637  break;
19638 
19639  case 181:
19640 
19641 /* Line 1455 of yacc.c */
19642 #line 2808 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19643  { /* Just parse it, we only have one language for now. */ }
19644  break;
19645 
19646  case 182:
19647 
19648 /* Line 1455 of yacc.c */
19649 #line 2810 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19650  { Lex->sp_chistics.daccess= SP_NO_SQL; }
19651  break;
19652 
19653  case 183:
19654 
19655 /* Line 1455 of yacc.c */
19656 #line 2812 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19657  { Lex->sp_chistics.daccess= SP_CONTAINS_SQL; }
19658  break;
19659 
19660  case 184:
19661 
19662 /* Line 1455 of yacc.c */
19663 #line 2814 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19664  { Lex->sp_chistics.daccess= SP_READS_SQL_DATA; }
19665  break;
19666 
19667  case 185:
19668 
19669 /* Line 1455 of yacc.c */
19670 #line 2816 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19671  { Lex->sp_chistics.daccess= SP_MODIFIES_SQL_DATA; }
19672  break;
19673 
19674  case 186:
19675 
19676 /* Line 1455 of yacc.c */
19677 #line 2818 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19678  {}
19679  break;
19680 
19681  case 187:
19682 
19683 /* Line 1455 of yacc.c */
19684 #line 2823 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19685  { }
19686  break;
19687 
19688  case 188:
19689 
19690 /* Line 1455 of yacc.c */
19691 #line 2824 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19692  { Lex->sp_chistics.detistic= TRUE; }
19693  break;
19694 
19695  case 189:
19696 
19697 /* Line 1455 of yacc.c */
19698 #line 2825 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19699  { Lex->sp_chistics.detistic= FALSE; }
19700  break;
19701 
19702  case 190:
19703 
19704 /* Line 1455 of yacc.c */
19705 #line 2830 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19706  {
19707  Lex->sp_chistics.suid= SP_IS_SUID;
19708  }
19709  break;
19710 
19711  case 191:
19712 
19713 /* Line 1455 of yacc.c */
19714 #line 2834 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19715  {
19716  Lex->sp_chistics.suid= SP_IS_NOT_SUID;
19717  }
19718  break;
19719 
19720  case 192:
19721 
19722 /* Line 1455 of yacc.c */
19723 #line 2841 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19724  {
19725  LEX *lex = Lex;
19726 
19727  lex->sql_command= SQLCOM_CALL;
19728  lex->spname= (yyvsp[(2) - (2)].spname);
19729  lex->value_list.empty();
19730  sp_add_used_routine(lex, YYTHD, (yyvsp[(2) - (2)].spname), SP_TYPE_PROCEDURE);
19731  }
19732  break;
19733 
19734  case 193:
19735 
19736 /* Line 1455 of yacc.c */
19737 #line 2849 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19738  {}
19739  break;
19740 
19741  case 198:
19742 
19743 /* Line 1455 of yacc.c */
19744 #line 2865 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19745  {
19746  Lex->value_list.push_back((yyvsp[(3) - (3)].item));
19747  }
19748  break;
19749 
19750  case 199:
19751 
19752 /* Line 1455 of yacc.c */
19753 #line 2869 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19754  {
19755  Lex->value_list.push_back((yyvsp[(1) - (1)].item));
19756  }
19757  break;
19758 
19759  case 204:
19760 
19761 /* Line 1455 of yacc.c */
19762 #line 2887 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19763  {
19764  LEX *lex= Lex;
19765 
19766  lex->length= 0;
19767  lex->dec= 0;
19768  lex->type= 0;
19769 
19770  lex->default_value= 0;
19771  lex->on_update_value= 0;
19772 
19773  lex->comment= null_lex_str;
19774  lex->charset= NULL;
19775 
19776  lex->interval_list.empty();
19777  lex->uint_geom_type= 0;
19778  }
19779  break;
19780 
19781  case 205:
19782 
19783 /* Line 1455 of yacc.c */
19784 #line 2907 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19785  {
19786  THD *thd= YYTHD;
19787  LEX *lex= thd->lex;
19788  sp_head *sp= lex->sphead;
19789  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
19790 
19791  if (pctx->find_variable((yyvsp[(1) - (3)].lex_str), TRUE))
19792  {
19793  my_error(ER_SP_DUP_PARAM, MYF(0), (yyvsp[(1) - (3)].lex_str).str);
19794  MYSQL_YYABORT;
19795  }
19796 
19797  sp_variable *spvar= pctx->add_variable(thd,
19798  (yyvsp[(1) - (3)].lex_str),
19799  (enum enum_field_types) (yyvsp[(3) - (3)].num),
19800  sp_variable::MODE_IN);
19801 
19802  if (fill_field_definition(thd, sp,
19803  (enum enum_field_types) (yyvsp[(3) - (3)].num),
19804  &spvar->field_def))
19805  {
19806  MYSQL_YYABORT;
19807  }
19808  spvar->field_def.field_name= spvar->name.str;
19809  spvar->field_def.pack_flag |= FIELDFLAG_MAYBE_NULL;
19810  }
19811  break;
19812 
19813  case 210:
19814 
19815 /* Line 1455 of yacc.c */
19816 #line 2948 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19817  {
19818  THD *thd= YYTHD;
19819  LEX *lex= thd->lex;
19820  sp_head *sp= lex->sphead;
19821  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
19822 
19823  if (pctx->find_variable((yyvsp[(3) - (4)].lex_str), TRUE))
19824  {
19825  my_error(ER_SP_DUP_PARAM, MYF(0), (yyvsp[(3) - (4)].lex_str).str);
19826  MYSQL_YYABORT;
19827  }
19828  sp_variable *spvar= pctx->add_variable(thd,
19829  (yyvsp[(3) - (4)].lex_str),
19830  (enum enum_field_types) (yyvsp[(4) - (4)].num),
19831  (sp_variable::enum_mode) (yyvsp[(1) - (4)].num));
19832 
19833  if (fill_field_definition(thd, sp,
19834  (enum enum_field_types) (yyvsp[(4) - (4)].num),
19835  &spvar->field_def))
19836  {
19837  MYSQL_YYABORT;
19838  }
19839  spvar->field_def.field_name= spvar->name.str;
19840  spvar->field_def.pack_flag |= FIELDFLAG_MAYBE_NULL;
19841  }
19842  break;
19843 
19844  case 211:
19845 
19846 /* Line 1455 of yacc.c */
19847 #line 2976 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19848  { (yyval.num)= sp_variable::MODE_IN; }
19849  break;
19850 
19851  case 212:
19852 
19853 /* Line 1455 of yacc.c */
19854 #line 2977 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19855  { (yyval.num)= sp_variable::MODE_IN; }
19856  break;
19857 
19858  case 213:
19859 
19860 /* Line 1455 of yacc.c */
19861 #line 2978 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19862  { (yyval.num)= sp_variable::MODE_OUT; }
19863  break;
19864 
19865  case 214:
19866 
19867 /* Line 1455 of yacc.c */
19868 #line 2979 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19869  { (yyval.num)= sp_variable::MODE_INOUT; }
19870  break;
19871 
19872  case 215:
19873 
19874 /* Line 1455 of yacc.c */
19875 #line 2983 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19876  {}
19877  break;
19878 
19879  case 217:
19880 
19881 /* Line 1455 of yacc.c */
19882 #line 2988 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19883  {}
19884  break;
19885 
19886  case 219:
19887 
19888 /* Line 1455 of yacc.c */
19889 #line 2994 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19890  {
19891  (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
19892  }
19893  break;
19894 
19895  case 220:
19896 
19897 /* Line 1455 of yacc.c */
19898 #line 2998 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19899  {
19900  /* We check for declarations out of (standard) order this way
19901  because letting the grammar rules reflect it caused tricky
19902  shift/reduce conflicts with the wrong result. (And we get
19903  better error handling this way.) */
19904  if (((yyvsp[(2) - (3)].spblock).vars || (yyvsp[(2) - (3)].spblock).conds) && ((yyvsp[(1) - (3)].spblock).curs || (yyvsp[(1) - (3)].spblock).hndlrs))
19905  { /* Variable or condition following cursor or handler */
19906  my_message(ER_SP_VARCOND_AFTER_CURSHNDLR,
19907  ER(ER_SP_VARCOND_AFTER_CURSHNDLR), MYF(0));
19908  MYSQL_YYABORT;
19909  }
19910  if ((yyvsp[(2) - (3)].spblock).curs && (yyvsp[(1) - (3)].spblock).hndlrs)
19911  { /* Cursor following handler */
19912  my_message(ER_SP_CURSOR_AFTER_HANDLER,
19913  ER(ER_SP_CURSOR_AFTER_HANDLER), MYF(0));
19914  MYSQL_YYABORT;
19915  }
19916  (yyval.spblock).vars= (yyvsp[(1) - (3)].spblock).vars + (yyvsp[(2) - (3)].spblock).vars;
19917  (yyval.spblock).conds= (yyvsp[(1) - (3)].spblock).conds + (yyvsp[(2) - (3)].spblock).conds;
19918  (yyval.spblock).hndlrs= (yyvsp[(1) - (3)].spblock).hndlrs + (yyvsp[(2) - (3)].spblock).hndlrs;
19919  (yyval.spblock).curs= (yyvsp[(1) - (3)].spblock).curs + (yyvsp[(2) - (3)].spblock).curs;
19920  }
19921  break;
19922 
19923  case 221:
19924 
19925 /* Line 1455 of yacc.c */
19926 #line 3024 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19927  {
19928  THD *thd= YYTHD;
19929  LEX *lex= thd->lex;
19930  sp_head *sp= lex->sphead;
19931  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
19932 
19933  sp->reset_lex(thd);
19934  pctx->declare_var_boundary((yyvsp[(2) - (2)].num));
19935  }
19936  break;
19937 
19938  case 222:
19939 
19940 /* Line 1455 of yacc.c */
19941 #line 3035 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
19942  {
19943  THD *thd= YYTHD;
19944  LEX *lex= thd->lex;
19945  sp_head *sp= lex->sphead;
19946  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
19947  uint num_vars= pctx->context_var_count();
19948  enum enum_field_types var_type= (enum enum_field_types) (yyvsp[(4) - (5)].num);
19949  Item *dflt_value_item= (yyvsp[(5) - (5)].item);
19950  LEX_STRING dflt_value_query= EMPTY_STR;
19951 
19952  if (dflt_value_item)
19953  {
19954  // sp_opt_default only pushes start ptr for DEFAULT clause.
19955  const char *expr_start_ptr=
19957  if (lex->is_metadata_used())
19958  {
19959  dflt_value_query= make_string(thd, expr_start_ptr,
19960  YY_TOKEN_END);
19961  if (!dflt_value_query.str)
19962  MYSQL_YYABORT;
19963  }
19964  }
19965  else
19966  {
19967  dflt_value_item= new (thd->mem_root) Item_null();
19968 
19969  if (dflt_value_item == NULL)
19970  MYSQL_YYABORT;
19971  }
19972 
19973  // We can have several variables in DECLARE statement.
19974  // We need to create an sp_instr_set instruction for each variable.
19975 
19976  for (uint i = num_vars-(yyvsp[(2) - (5)].num) ; i < num_vars ; i++)
19977  {
19978  uint var_idx= pctx->var_context2runtime(i);
19979  sp_variable *spvar= pctx->find_variable(var_idx);
19980 
19981  if (!spvar)
19982  MYSQL_YYABORT;
19983 
19984  spvar->type= var_type;
19985  spvar->default_value= dflt_value_item;
19986 
19987  if (fill_field_definition(thd, sp, var_type, &spvar->field_def))
19988  MYSQL_YYABORT;
19989 
19990  spvar->field_def.field_name= spvar->name.str;
19991  spvar->field_def.pack_flag |= FIELDFLAG_MAYBE_NULL;
19992 
19993  /* The last instruction is responsible for freeing LEX. */
19994 
19995  sp_instr_set *is=
19996  new (thd->mem_root)
19997  sp_instr_set(sp->instructions(),
19998  lex,
19999  var_idx,
20000  dflt_value_item,
20001  dflt_value_query,
20002  (i == num_vars - 1));
20003 
20004  if (!is || sp->add_instr(thd, is))
20005  MYSQL_YYABORT;
20006  }
20007 
20008  pctx->declare_var_boundary(0);
20009  if (sp->restore_lex(thd))
20010  MYSQL_YYABORT;
20011  (yyval.spblock).vars= (yyvsp[(2) - (5)].num);
20012  (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
20013  }
20014  break;
20015 
20016  case 223:
20017 
20018 /* Line 1455 of yacc.c */
20019 #line 3108 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20020  {
20021  THD *thd= YYTHD;
20022  LEX *lex= thd->lex;
20023  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20024 
20025  if (pctx->find_condition((yyvsp[(2) - (5)].lex_str), TRUE))
20026  {
20027  my_error(ER_SP_DUP_COND, MYF(0), (yyvsp[(2) - (5)].lex_str).str);
20028  MYSQL_YYABORT;
20029  }
20030  if(pctx->add_condition(thd, (yyvsp[(2) - (5)].lex_str), (yyvsp[(5) - (5)].spcondvalue)))
20031  MYSQL_YYABORT;
20032  (yyval.spblock).vars= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
20033  (yyval.spblock).conds= 1;
20034  }
20035  break;
20036 
20037  case 224:
20038 
20039 /* Line 1455 of yacc.c */
20040 #line 3124 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20041  {
20042  THD *thd= YYTHD;
20043  LEX *lex= thd->lex;
20044  sp_head *sp= lex->sphead;
20045 
20046  sp_pcontext *parent_pctx= lex->get_sp_current_parsing_ctx();
20047 
20048  sp_pcontext *handler_pctx=
20049  parent_pctx->push_context(thd, sp_pcontext::HANDLER_SCOPE);
20050 
20051  sp_handler *h=
20052  parent_pctx->add_handler(thd, (sp_handler::enum_type) (yyvsp[(2) - (4)].num));
20053 
20054  lex->set_sp_current_parsing_ctx(handler_pctx);
20055 
20057  new (thd->mem_root)
20058  sp_instr_hpush_jump(sp->instructions(), handler_pctx, h);
20059 
20060  if (!i || sp->add_instr(thd, i))
20061  MYSQL_YYABORT;
20062 
20063  if ((yyvsp[(2) - (4)].num) == sp_handler::CONTINUE)
20064  {
20065  // Mark the end of CONTINUE handler scope.
20066 
20068  i, handler_pctx->last_label()))
20069  {
20070  MYSQL_YYABORT;
20071  }
20072  }
20073 
20075  i, handler_pctx->push_label(thd, EMPTY_STR, 0)))
20076  {
20077  MYSQL_YYABORT;
20078  }
20079  }
20080  break;
20081 
20082  case 225:
20083 
20084 /* Line 1455 of yacc.c */
20085 #line 3164 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20086  {
20087  THD *thd= YYTHD;
20088  LEX *lex= Lex;
20089  sp_head *sp= lex->sphead;
20090  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20091  sp_label *hlab= pctx->pop_label(); /* After this hdlr */
20092 
20093  if ((yyvsp[(2) - (7)].num) == sp_handler::CONTINUE)
20094  {
20095  sp_instr_hreturn *i=
20096  new (thd->mem_root) sp_instr_hreturn(sp->instructions(), pctx);
20097 
20098  if (!i || sp->add_instr(thd, i))
20099  MYSQL_YYABORT;
20100  }
20101  else
20102  { /* EXIT or UNDO handler, just jump to the end of the block */
20103  sp_instr_hreturn *i=
20104  new (thd->mem_root) sp_instr_hreturn(sp->instructions(), pctx);
20105 
20106  if (i == NULL ||
20107  sp->add_instr(thd, i) ||
20108  sp->m_parser_data.add_backpatch_entry(i, pctx->last_label()))
20109  MYSQL_YYABORT;
20110  }
20111 
20112  sp->m_parser_data.do_backpatch(hlab, sp->instructions());
20113 
20114  lex->set_sp_current_parsing_ctx(pctx->pop_context());
20115 
20116  (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).curs= 0;
20117  (yyval.spblock).hndlrs= 1;
20118  }
20119  break;
20120 
20121  case 226:
20122 
20123 /* Line 1455 of yacc.c */
20124 #line 3198 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20125  {
20126  THD *thd= YYTHD;
20127  LEX *lex= Lex;
20128  sp_head *sp= lex->sphead;
20129 
20130  sp->reset_lex(thd);
20131  sp->m_parser_data.set_current_stmt_start_ptr(YY_TOKEN_END);
20132  }
20133  break;
20134 
20135  case 227:
20136 
20137 /* Line 1455 of yacc.c */
20138 #line 3207 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20139  {
20140  THD *thd= YYTHD;
20141  LEX *cursor_lex= Lex;
20142  sp_head *sp= cursor_lex->sphead;
20143 
20144  DBUG_ASSERT(cursor_lex->sql_command == SQLCOM_SELECT);
20145 
20146  if (cursor_lex->result)
20147  {
20148  my_message(ER_SP_BAD_CURSOR_SELECT, ER(ER_SP_BAD_CURSOR_SELECT),
20149  MYF(0));
20150  MYSQL_YYABORT;
20151  }
20152 
20153  cursor_lex->sp_lex_in_use= true;
20154 
20155  if (sp->restore_lex(thd))
20156  MYSQL_YYABORT;
20157 
20158  LEX *lex= Lex;
20159  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20160 
20161  uint offp;
20162 
20163  if (pctx->find_cursor((yyvsp[(2) - (6)].lex_str), &offp, TRUE))
20164  {
20165  my_error(ER_SP_DUP_CURS, MYF(0), (yyvsp[(2) - (6)].lex_str).str);
20166  delete cursor_lex;
20167  MYSQL_YYABORT;
20168  }
20169 
20170  LEX_STRING cursor_query= EMPTY_STR;
20171 
20172  if (cursor_lex->is_metadata_used())
20173  {
20174  cursor_query=
20175  make_string(thd,
20176  sp->m_parser_data.get_current_stmt_start_ptr(),
20177  YY_TOKEN_END);
20178 
20179  if (!cursor_query.str)
20180  MYSQL_YYABORT;
20181  }
20182 
20183  sp_instr_cpush *i=
20184  new (thd->mem_root)
20185  sp_instr_cpush(sp->instructions(), pctx,
20186  cursor_lex, cursor_query,
20187  pctx->current_cursor_count());
20188 
20189  if (i == NULL ||
20190  sp->add_instr(thd, i) ||
20191  pctx->add_cursor((yyvsp[(2) - (6)].lex_str)))
20192  {
20193  MYSQL_YYABORT;
20194  }
20195 
20196  (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= 0;
20197  (yyval.spblock).curs= 1;
20198  }
20199  break;
20200 
20201  case 228:
20202 
20203 /* Line 1455 of yacc.c */
20204 #line 3270 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20205  { (yyval.num)= sp_handler::EXIT; }
20206  break;
20207 
20208  case 229:
20209 
20210 /* Line 1455 of yacc.c */
20211 #line 3271 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20212  { (yyval.num)= sp_handler::CONTINUE; }
20213  break;
20214 
20215  case 230:
20216 
20217 /* Line 1455 of yacc.c */
20218 #line 3277 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20219  { (yyval.num)= 1; }
20220  break;
20221 
20222  case 231:
20223 
20224 /* Line 1455 of yacc.c */
20225 #line 3279 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20226  { (yyval.num)+= 1; }
20227  break;
20228 
20229  case 232:
20230 
20231 /* Line 1455 of yacc.c */
20232 #line 3284 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20233  {
20234  LEX *lex= Lex;
20235  sp_head *sp= lex->sphead;
20236  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20237  sp_pcontext *parent_pctx= pctx->parent_context();
20238 
20239  if (parent_pctx->check_duplicate_handler((yyvsp[(1) - (1)].spcondvalue)))
20240  {
20241  my_message(ER_SP_DUP_HANDLER, ER(ER_SP_DUP_HANDLER), MYF(0));
20242  MYSQL_YYABORT;
20243  }
20244  else
20245  {
20247  (sp_instr_hpush_jump *)sp->last_instruction();
20248 
20249  i->add_condition((yyvsp[(1) - (1)].spcondvalue));
20250  }
20251  }
20252  break;
20253 
20254  case 233:
20255 
20256 /* Line 1455 of yacc.c */
20257 #line 3307 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20258  { /* mysql errno */
20259  if ((yyvsp[(1) - (1)].ulong_num) == 0)
20260  {
20261  my_error(ER_WRONG_VALUE, MYF(0), "CONDITION", "0");
20262  MYSQL_YYABORT;
20263  }
20264  (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value((yyvsp[(1) - (1)].ulong_num));
20265  if ((yyval.spcondvalue) == NULL)
20266  MYSQL_YYABORT;
20267  }
20268  break;
20269 
20270  case 235:
20271 
20272 /* Line 1455 of yacc.c */
20273 #line 3322 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20274  { /* SQLSTATE */
20275 
20276  /*
20277  An error is triggered:
20278  - if the specified string is not a valid SQLSTATE,
20279  - or if it represents the completion condition -- it is not
20280  allowed to SIGNAL, or declare a handler for the completion
20281  condition.
20282  */
20283  if (!is_sqlstate_valid(&(yyvsp[(3) - (3)].lex_str)) || is_sqlstate_completion((yyvsp[(3) - (3)].lex_str).str))
20284  {
20285  my_error(ER_SP_BAD_SQLSTATE, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
20286  MYSQL_YYABORT;
20287  }
20288  (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value((yyvsp[(3) - (3)].lex_str).str);
20289  if ((yyval.spcondvalue) == NULL)
20290  MYSQL_YYABORT;
20291  }
20292  break;
20293 
20294  case 236:
20295 
20296 /* Line 1455 of yacc.c */
20297 #line 3343 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20298  {}
20299  break;
20300 
20301  case 237:
20302 
20303 /* Line 1455 of yacc.c */
20304 #line 3344 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20305  {}
20306  break;
20307 
20308  case 238:
20309 
20310 /* Line 1455 of yacc.c */
20311 #line 3349 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20312  {
20313  (yyval.spcondvalue)= (yyvsp[(1) - (1)].spcondvalue);
20314  }
20315  break;
20316 
20317  case 239:
20318 
20319 /* Line 1455 of yacc.c */
20320 #line 3353 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20321  {
20322  LEX *lex= Lex;
20323  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20324 
20325  (yyval.spcondvalue)= pctx->find_condition((yyvsp[(1) - (1)].lex_str), false);
20326 
20327  if ((yyval.spcondvalue) == NULL)
20328  {
20329  my_error(ER_SP_COND_MISMATCH, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
20330  MYSQL_YYABORT;
20331  }
20332  }
20333  break;
20334 
20335  case 240:
20336 
20337 /* Line 1455 of yacc.c */
20338 #line 3366 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20339  {
20340  (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value(sp_condition_value::WARNING);
20341  if ((yyval.spcondvalue) == NULL)
20342  MYSQL_YYABORT;
20343  }
20344  break;
20345 
20346  case 241:
20347 
20348 /* Line 1455 of yacc.c */
20349 #line 3372 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20350  {
20351  (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value(sp_condition_value::NOT_FOUND);
20352  if ((yyval.spcondvalue) == NULL)
20353  MYSQL_YYABORT;
20354  }
20355  break;
20356 
20357  case 242:
20358 
20359 /* Line 1455 of yacc.c */
20360 #line 3378 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20361  {
20362  (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value(sp_condition_value::EXCEPTION);
20363  if ((yyval.spcondvalue) == NULL)
20364  MYSQL_YYABORT;
20365  }
20366  break;
20367 
20368  case 243:
20369 
20370 /* Line 1455 of yacc.c */
20371 #line 3387 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20372  {
20373  THD *thd= YYTHD;
20374  LEX *lex= thd->lex;
20375  Yacc_state *state= & thd->m_parser_state->m_yacc;
20376 
20377  lex->sql_command= SQLCOM_SIGNAL;
20378  lex->m_sql_cmd=
20379  new (thd->mem_root) Sql_cmd_signal((yyvsp[(2) - (3)].spcondvalue), state->m_set_signal_info);
20380  if (lex->m_sql_cmd == NULL)
20381  MYSQL_YYABORT;
20382  }
20383  break;
20384 
20385  case 244:
20386 
20387 /* Line 1455 of yacc.c */
20388 #line 3402 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20389  {
20390  LEX *lex= Lex;
20391  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20392 
20393  if (!pctx)
20394  {
20395  /* SIGNAL foo cannot be used outside of stored programs */
20396  my_error(ER_SP_COND_MISMATCH, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
20397  MYSQL_YYABORT;
20398  }
20399 
20400  sp_condition_value *cond= pctx->find_condition((yyvsp[(1) - (1)].lex_str), false);
20401 
20402  if (!cond)
20403  {
20404  my_error(ER_SP_COND_MISMATCH, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
20405  MYSQL_YYABORT;
20406  }
20407  if (cond->type != sp_condition_value::SQLSTATE)
20408  {
20409  my_error(ER_SIGNAL_BAD_CONDITION_TYPE, MYF(0));
20410  MYSQL_YYABORT;
20411  }
20412  (yyval.spcondvalue)= cond;
20413  }
20414  break;
20415 
20416  case 245:
20417 
20418 /* Line 1455 of yacc.c */
20419 #line 3428 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20420  { (yyval.spcondvalue)= (yyvsp[(1) - (1)].spcondvalue); }
20421  break;
20422 
20423  case 246:
20424 
20425 /* Line 1455 of yacc.c */
20426 #line 3433 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20427  { (yyval.spcondvalue)= NULL; }
20428  break;
20429 
20430  case 247:
20431 
20432 /* Line 1455 of yacc.c */
20433 #line 3435 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20434  { (yyval.spcondvalue)= (yyvsp[(1) - (1)].spcondvalue); }
20435  break;
20436 
20437  case 248:
20438 
20439 /* Line 1455 of yacc.c */
20440 #line 3440 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20441  {
20442  YYTHD->m_parser_state->m_yacc.m_set_signal_info.clear();
20443  }
20444  break;
20445 
20446  case 250:
20447 
20448 /* Line 1455 of yacc.c */
20449 #line 3448 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20450  {
20451  Set_signal_information *info;
20452  info= & YYTHD->m_parser_state->m_yacc.m_set_signal_info;
20453  int index= (int) (yyvsp[(1) - (3)].diag_condition_item_name);
20454  info->clear();
20455  info->m_item[index]= (yyvsp[(3) - (3)].item);
20456  }
20457  break;
20458 
20459  case 251:
20460 
20461 /* Line 1455 of yacc.c */
20462 #line 3457 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20463  {
20464  Set_signal_information *info;
20465  info= & YYTHD->m_parser_state->m_yacc.m_set_signal_info;
20466  int index= (int) (yyvsp[(3) - (5)].diag_condition_item_name);
20467  if (info->m_item[index] != NULL)
20468  {
20469  my_error(ER_DUP_SIGNAL_SET, MYF(0),
20470  Diag_condition_item_names[index].str);
20471  MYSQL_YYABORT;
20472  }
20473  info->m_item[index]= (yyvsp[(5) - (5)].item);
20474  }
20475  break;
20476 
20477  case 252:
20478 
20479 /* Line 1455 of yacc.c */
20480 #line 3476 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20481  { (yyval.item)= (yyvsp[(1) - (1)].item); }
20482  break;
20483 
20484  case 253:
20485 
20486 /* Line 1455 of yacc.c */
20487 #line 3478 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20488  {
20489  if ((yyvsp[(1) - (1)].item)->type() == Item::FUNC_ITEM)
20490  {
20491  Item_func *item= (Item_func*) (yyvsp[(1) - (1)].item);
20492  if (item->functype() == Item_func::SUSERVAR_FUNC)
20493  {
20494  /*
20495  Don't allow the following syntax:
20496  SIGNAL/RESIGNAL ...
20497  SET <signal condition item name> = @foo := expr
20498  */
20499  my_parse_error(ER(ER_SYNTAX_ERROR));
20500  MYSQL_YYABORT;
20501  }
20502  }
20503  (yyval.item)= (yyvsp[(1) - (1)].item);
20504  }
20505  break;
20506 
20507  case 254:
20508 
20509 /* Line 1455 of yacc.c */
20510 #line 3496 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20511  { (yyval.item)= (yyvsp[(1) - (1)].item); }
20512  break;
20513 
20514  case 255:
20515 
20516 /* Line 1455 of yacc.c */
20517 #line 3502 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20518  { (yyval.diag_condition_item_name)= DIAG_CLASS_ORIGIN; }
20519  break;
20520 
20521  case 256:
20522 
20523 /* Line 1455 of yacc.c */
20524 #line 3504 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20525  { (yyval.diag_condition_item_name)= DIAG_SUBCLASS_ORIGIN; }
20526  break;
20527 
20528  case 257:
20529 
20530 /* Line 1455 of yacc.c */
20531 #line 3506 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20532  { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_CATALOG; }
20533  break;
20534 
20535  case 258:
20536 
20537 /* Line 1455 of yacc.c */
20538 #line 3508 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20539  { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_SCHEMA; }
20540  break;
20541 
20542  case 259:
20543 
20544 /* Line 1455 of yacc.c */
20545 #line 3510 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20546  { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_NAME; }
20547  break;
20548 
20549  case 260:
20550 
20551 /* Line 1455 of yacc.c */
20552 #line 3512 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20553  { (yyval.diag_condition_item_name)= DIAG_CATALOG_NAME; }
20554  break;
20555 
20556  case 261:
20557 
20558 /* Line 1455 of yacc.c */
20559 #line 3514 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20560  { (yyval.diag_condition_item_name)= DIAG_SCHEMA_NAME; }
20561  break;
20562 
20563  case 262:
20564 
20565 /* Line 1455 of yacc.c */
20566 #line 3516 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20567  { (yyval.diag_condition_item_name)= DIAG_TABLE_NAME; }
20568  break;
20569 
20570  case 263:
20571 
20572 /* Line 1455 of yacc.c */
20573 #line 3518 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20574  { (yyval.diag_condition_item_name)= DIAG_COLUMN_NAME; }
20575  break;
20576 
20577  case 264:
20578 
20579 /* Line 1455 of yacc.c */
20580 #line 3520 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20581  { (yyval.diag_condition_item_name)= DIAG_CURSOR_NAME; }
20582  break;
20583 
20584  case 265:
20585 
20586 /* Line 1455 of yacc.c */
20587 #line 3522 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20588  { (yyval.diag_condition_item_name)= DIAG_MESSAGE_TEXT; }
20589  break;
20590 
20591  case 266:
20592 
20593 /* Line 1455 of yacc.c */
20594 #line 3524 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20595  { (yyval.diag_condition_item_name)= DIAG_MYSQL_ERRNO; }
20596  break;
20597 
20598  case 267:
20599 
20600 /* Line 1455 of yacc.c */
20601 #line 3529 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20602  {
20603  THD *thd= YYTHD;
20604  LEX *lex= thd->lex;
20605  Yacc_state *state= & thd->m_parser_state->m_yacc;
20606 
20607  lex->sql_command= SQLCOM_RESIGNAL;
20608  lex->m_sql_cmd=
20609  new (thd->mem_root) Sql_cmd_resignal((yyvsp[(2) - (3)].spcondvalue),
20610  state->m_set_signal_info);
20611  if (lex->m_sql_cmd == NULL)
20612  MYSQL_YYABORT;
20613  }
20614  break;
20615 
20616  case 268:
20617 
20618 /* Line 1455 of yacc.c */
20619 #line 3545 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20620  {
20621  Diagnostics_information *info= (yyvsp[(4) - (4)].diag_info);
20622 
20623  info->set_which_da((yyvsp[(2) - (4)].diag_area));
20624 
20625  Lex->sql_command= SQLCOM_GET_DIAGNOSTICS;
20626  Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_get_diagnostics(info);
20627 
20628  if (Lex->m_sql_cmd == NULL)
20629  MYSQL_YYABORT;
20630  }
20631  break;
20632 
20633  case 269:
20634 
20635 /* Line 1455 of yacc.c */
20636 #line 3560 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20637  { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
20638  break;
20639 
20640  case 270:
20641 
20642 /* Line 1455 of yacc.c */
20643 #line 3562 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20644  { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
20645  break;
20646 
20647  case 271:
20648 
20649 /* Line 1455 of yacc.c */
20650 #line 3567 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20651  {
20652  (yyval.diag_info)= new (YYTHD->mem_root) Statement_information((yyvsp[(1) - (1)].stmt_info_list));
20653  if ((yyval.diag_info) == NULL)
20654  MYSQL_YYABORT;
20655  }
20656  break;
20657 
20658  case 272:
20659 
20660 /* Line 1455 of yacc.c */
20661 #line 3573 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20662  {
20663  (yyval.diag_info)= new (YYTHD->mem_root) Condition_information((yyvsp[(2) - (3)].item), (yyvsp[(3) - (3)].cond_info_list));
20664  if ((yyval.diag_info) == NULL)
20665  MYSQL_YYABORT;
20666  }
20667  break;
20668 
20669  case 273:
20670 
20671 /* Line 1455 of yacc.c */
20672 #line 3582 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20673  {
20674  (yyval.stmt_info_list)= new (YYTHD->mem_root) List<Statement_information_item>;
20675  if ((yyval.stmt_info_list) == NULL || (yyval.stmt_info_list)->push_back((yyvsp[(1) - (1)].stmt_info_item)))
20676  MYSQL_YYABORT;
20677  }
20678  break;
20679 
20680  case 274:
20681 
20682 /* Line 1455 of yacc.c */
20683 #line 3588 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20684  {
20685  if ((yyvsp[(1) - (3)].stmt_info_list)->push_back((yyvsp[(3) - (3)].stmt_info_item)))
20686  MYSQL_YYABORT;
20687  (yyval.stmt_info_list)= (yyvsp[(1) - (3)].stmt_info_list);
20688  }
20689  break;
20690 
20691  case 275:
20692 
20693 /* Line 1455 of yacc.c */
20694 #line 3597 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20695  {
20696  (yyval.stmt_info_item)= new (YYTHD->mem_root) Statement_information_item((yyvsp[(3) - (3)].stmt_info_item_name), (yyvsp[(1) - (3)].item));
20697  if ((yyval.stmt_info_item) == NULL)
20698  MYSQL_YYABORT;
20699  }
20700  break;
20701 
20702  case 276:
20703 
20704 /* Line 1455 of yacc.c */
20705 #line 3605 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20706  {
20707  THD *thd= YYTHD;
20708  LEX *lex= thd->lex;
20709  Lex_input_stream *lip= YYLIP;
20710  sp_head *sp= lex->sphead;
20711 
20712  /*
20713  NOTE: lex->sphead is NULL if we're parsing something like
20714  'GET DIAGNOSTICS v' outside a stored program. We should throw
20715  ER_SP_UNDECLARED_VAR in such cases.
20716  */
20717 
20718  if (!sp)
20719  {
20720  my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
20721  MYSQL_YYABORT;
20722  }
20723 
20724  (yyval.item)=
20725  create_item_for_sp_var(
20726  thd, (yyvsp[(1) - (1)].lex_str), NULL,
20727  sp->m_parser_data.get_current_stmt_start_ptr(),
20728  lip->get_tok_start(),
20729  lip->get_ptr());
20730 
20731  if ((yyval.item) == NULL)
20732  MYSQL_YYABORT;
20733  }
20734  break;
20735 
20736  case 277:
20737 
20738 /* Line 1455 of yacc.c */
20739 #line 3634 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20740  {
20741  (yyval.item)= new (YYTHD->mem_root) Item_func_get_user_var((yyvsp[(2) - (2)].lex_str));
20742  if ((yyval.item) == NULL)
20743  MYSQL_YYABORT;
20744  }
20745  break;
20746 
20747  case 278:
20748 
20749 /* Line 1455 of yacc.c */
20750 #line 3643 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20751  { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; }
20752  break;
20753 
20754  case 279:
20755 
20756 /* Line 1455 of yacc.c */
20757 #line 3645 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20758  { (yyval.stmt_info_item_name)= Statement_information_item::ROW_COUNT; }
20759  break;
20760 
20761  case 280:
20762 
20763 /* Line 1455 of yacc.c */
20764 #line 3654 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20765  { (yyval.item)= (yyvsp[(1) - (1)].item); }
20766  break;
20767 
20768  case 281:
20769 
20770 /* Line 1455 of yacc.c */
20771 #line 3659 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20772  {
20773  (yyval.cond_info_list)= new (YYTHD->mem_root) List<Condition_information_item>;
20774  if ((yyval.cond_info_list) == NULL || (yyval.cond_info_list)->push_back((yyvsp[(1) - (1)].cond_info_item)))
20775  MYSQL_YYABORT;
20776  }
20777  break;
20778 
20779  case 282:
20780 
20781 /* Line 1455 of yacc.c */
20782 #line 3665 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20783  {
20784  if ((yyvsp[(1) - (3)].cond_info_list)->push_back((yyvsp[(3) - (3)].cond_info_item)))
20785  MYSQL_YYABORT;
20786  (yyval.cond_info_list)= (yyvsp[(1) - (3)].cond_info_list);
20787  }
20788  break;
20789 
20790  case 283:
20791 
20792 /* Line 1455 of yacc.c */
20793 #line 3674 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20794  {
20795  (yyval.cond_info_item)= new (YYTHD->mem_root) Condition_information_item((yyvsp[(3) - (3)].cond_info_item_name), (yyvsp[(1) - (3)].item));
20796  if ((yyval.cond_info_item) == NULL)
20797  MYSQL_YYABORT;
20798  }
20799  break;
20800 
20801  case 284:
20802 
20803 /* Line 1455 of yacc.c */
20804 #line 3682 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20805  { (yyval.cond_info_item_name)= Condition_information_item::CLASS_ORIGIN; }
20806  break;
20807 
20808  case 285:
20809 
20810 /* Line 1455 of yacc.c */
20811 #line 3684 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20812  { (yyval.cond_info_item_name)= Condition_information_item::SUBCLASS_ORIGIN; }
20813  break;
20814 
20815  case 286:
20816 
20817 /* Line 1455 of yacc.c */
20818 #line 3686 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20819  { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_CATALOG; }
20820  break;
20821 
20822  case 287:
20823 
20824 /* Line 1455 of yacc.c */
20825 #line 3688 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20826  { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_SCHEMA; }
20827  break;
20828 
20829  case 288:
20830 
20831 /* Line 1455 of yacc.c */
20832 #line 3690 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20833  { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_NAME; }
20834  break;
20835 
20836  case 289:
20837 
20838 /* Line 1455 of yacc.c */
20839 #line 3692 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20840  { (yyval.cond_info_item_name)= Condition_information_item::CATALOG_NAME; }
20841  break;
20842 
20843  case 290:
20844 
20845 /* Line 1455 of yacc.c */
20846 #line 3694 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20847  { (yyval.cond_info_item_name)= Condition_information_item::SCHEMA_NAME; }
20848  break;
20849 
20850  case 291:
20851 
20852 /* Line 1455 of yacc.c */
20853 #line 3696 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20854  { (yyval.cond_info_item_name)= Condition_information_item::TABLE_NAME; }
20855  break;
20856 
20857  case 292:
20858 
20859 /* Line 1455 of yacc.c */
20860 #line 3698 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20861  { (yyval.cond_info_item_name)= Condition_information_item::COLUMN_NAME; }
20862  break;
20863 
20864  case 293:
20865 
20866 /* Line 1455 of yacc.c */
20867 #line 3700 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20868  { (yyval.cond_info_item_name)= Condition_information_item::CURSOR_NAME; }
20869  break;
20870 
20871  case 294:
20872 
20873 /* Line 1455 of yacc.c */
20874 #line 3702 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20875  { (yyval.cond_info_item_name)= Condition_information_item::MESSAGE_TEXT; }
20876  break;
20877 
20878  case 295:
20879 
20880 /* Line 1455 of yacc.c */
20881 #line 3704 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20882  { (yyval.cond_info_item_name)= Condition_information_item::MYSQL_ERRNO; }
20883  break;
20884 
20885  case 296:
20886 
20887 /* Line 1455 of yacc.c */
20888 #line 3706 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20889  { (yyval.cond_info_item_name)= Condition_information_item::RETURNED_SQLSTATE; }
20890  break;
20891 
20892  case 297:
20893 
20894 /* Line 1455 of yacc.c */
20895 #line 3711 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20896  {
20897  /* NOTE: field definition is filled in sp_decl section. */
20898 
20899  THD *thd= YYTHD;
20900  LEX *lex= thd->lex;
20901  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20902 
20903  if (pctx->find_variable((yyvsp[(1) - (1)].lex_str), TRUE))
20904  {
20905  my_error(ER_SP_DUP_VAR, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
20906  MYSQL_YYABORT;
20907  }
20908 
20909  pctx->add_variable(thd,
20910  (yyvsp[(1) - (1)].lex_str),
20911  MYSQL_TYPE_DECIMAL,
20912  sp_variable::MODE_IN);
20913  (yyval.num)= 1;
20914  }
20915  break;
20916 
20917  case 298:
20918 
20919 /* Line 1455 of yacc.c */
20920 #line 3731 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20921  {
20922  /* NOTE: field definition is filled in sp_decl section. */
20923 
20924  THD *thd= YYTHD;
20925  LEX *lex= thd->lex;
20926  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
20927 
20928  if (pctx->find_variable((yyvsp[(3) - (3)].lex_str), TRUE))
20929  {
20930  my_error(ER_SP_DUP_VAR, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
20931  MYSQL_YYABORT;
20932  }
20933 
20934  pctx->add_variable(thd,
20935  (yyvsp[(3) - (3)].lex_str),
20936  MYSQL_TYPE_DECIMAL,
20937  sp_variable::MODE_IN);
20938  (yyval.num)= (yyvsp[(1) - (3)].num) + 1;
20939  }
20940  break;
20941 
20942  case 299:
20943 
20944 /* Line 1455 of yacc.c */
20945 #line 3754 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20946  { (yyval.item) = NULL; }
20947  break;
20948 
20949  case 300:
20950 
20951 /* Line 1455 of yacc.c */
20952 #line 3756 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20953  { Lex->sphead->m_parser_data.push_expr_start_ptr(YY_TOKEN_END); }
20954  break;
20955 
20956  case 301:
20957 
20958 /* Line 1455 of yacc.c */
20959 #line 3758 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20960  { (yyval.item) = (yyvsp[(3) - (3)].item); }
20961  break;
20962 
20963  case 315:
20964 
20965 /* Line 1455 of yacc.c */
20966 #line 3779 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20967  { Lex->sphead->m_parser_data.new_cont_backpatch(); }
20968  break;
20969 
20970  case 316:
20971 
20972 /* Line 1455 of yacc.c */
20973 #line 3781 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20974  {
20975  sp_head *sp= Lex->sphead;
20976 
20977  sp->m_parser_data.do_cont_backpatch(sp->instructions());
20978  }
20979  break;
20980 
20981  case 317:
20982 
20983 /* Line 1455 of yacc.c */
20984 #line 3789 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
20985  {
20986  THD *thd= YYTHD;
20987  LEX *lex= thd->lex;
20988  Lex_input_stream *lip= YYLIP;
20989  sp_head *sp= lex->sphead;
20990 
20991  sp->reset_lex(thd);
20992  sp->m_parser_data.set_current_stmt_start_ptr(lip->get_tok_start());
20993  }
20994  break;
20995 
20996  case 318:
20997 
20998 /* Line 1455 of yacc.c */
20999 #line 3799 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21000  {
21001  THD *thd= YYTHD;
21002  LEX *lex= thd->lex;
21003  sp_head *sp= lex->sphead;
21004 
21005  sp->m_flags|= sp_get_flags_for_command(lex);
21006  if (lex->sql_command == SQLCOM_CHANGE_DB)
21007  { /* "USE db" doesn't work in a procedure */
21008  my_error(ER_SP_BADSTATEMENT, MYF(0), "USE");
21009  MYSQL_YYABORT;
21010  }
21011  /*
21012  Don't add an instruction for SET statements, since all
21013  instructions for them were already added during processing
21014  of "set" rule.
21015  */
21016  DBUG_ASSERT(lex->sql_command != SQLCOM_SET_OPTION ||
21017  lex->var_list.is_empty());
21018  if (lex->sql_command != SQLCOM_SET_OPTION)
21019  {
21020  /* Extract the query statement from the tokenizer. */
21021 
21022  LEX_STRING query=
21023  make_string(thd,
21024  sp->m_parser_data.get_current_stmt_start_ptr(),
21025  YY_TOKEN_END);
21026 
21027  if (!query.str)
21028  MYSQL_YYABORT;
21029 
21030  /* Add instruction. */
21031 
21032  sp_instr_stmt *i=
21033  new (thd->mem_root)
21034  sp_instr_stmt(sp->instructions(), lex, query);
21035 
21036  if (!i || sp->add_instr(thd, i))
21037  MYSQL_YYABORT;
21038  }
21039 
21040  if (sp->restore_lex(thd))
21041  MYSQL_YYABORT;
21042  }
21043  break;
21044 
21045  case 319:
21046 
21047 /* Line 1455 of yacc.c */
21048 #line 3846 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21049  {
21050  THD *thd= YYTHD;
21051  LEX *lex= thd->lex;
21052  sp_head *sp= lex->sphead;
21053 
21054  sp->reset_lex(thd);
21055 
21056  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
21057  }
21058  break;
21059 
21060  case 320:
21061 
21062 /* Line 1455 of yacc.c */
21063 #line 3856 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21064  {
21065  THD *thd= YYTHD;
21066  LEX *lex= thd->lex;
21067  sp_head *sp= lex->sphead;
21068 
21069  /* Extract expression string. */
21070 
21071  LEX_STRING expr_query= EMPTY_STR;
21072  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
21073 
21074  if (lex->is_metadata_used())
21075  {
21076  expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
21077  if (!expr_query.str)
21078  MYSQL_YYABORT;
21079  }
21080 
21081  /* Check that this is a stored function. */
21082 
21083  if (sp->m_type != SP_TYPE_FUNCTION)
21084  {
21085  my_message(ER_SP_BADRETURN, ER(ER_SP_BADRETURN), MYF(0));
21086  MYSQL_YYABORT;
21087  }
21088 
21089  /* Indicate that we've reached RETURN statement. */
21090 
21091  sp->m_flags|= sp_head::HAS_RETURN;
21092 
21093  /* Add instruction. */
21094 
21095  sp_instr_freturn *i=
21096  new (thd->mem_root)
21097  sp_instr_freturn(sp->instructions(), lex, (yyvsp[(3) - (3)].item), expr_query,
21098  sp->m_return_field_def.sql_type);
21099 
21100  if (i == NULL ||
21101  sp->add_instr(thd, i) ||
21102  sp->restore_lex(thd))
21103  {
21104  MYSQL_YYABORT;
21105  }
21106  }
21107  break;
21108 
21109  case 321:
21110 
21111 /* Line 1455 of yacc.c */
21112 #line 3902 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21113  { /* Unlabeled controls get a secret label. */
21114  THD *thd= YYTHD;
21115  LEX *lex= thd->lex;
21116  sp_head *sp= lex->sphead;
21117  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21118 
21119  pctx->push_label(thd,
21120  EMPTY_STR,
21121  sp->instructions());
21122  }
21123  break;
21124 
21125  case 322:
21126 
21127 /* Line 1455 of yacc.c */
21128 #line 3913 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21129  {
21130  LEX *lex= Lex;
21131  sp_head *sp= lex->sphead;
21132  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21133 
21134  sp->m_parser_data.do_backpatch(pctx->pop_label(),
21135  sp->instructions());
21136  }
21137  break;
21138 
21139  case 323:
21140 
21141 /* Line 1455 of yacc.c */
21142 #line 3925 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21143  {
21144  THD *thd= YYTHD;
21145  LEX *lex= Lex;
21146  sp_head *sp = lex->sphead;
21147  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21148  sp_label *lab= pctx->find_label((yyvsp[(2) - (2)].lex_str));
21149 
21150  if (! lab)
21151  {
21152  my_error(ER_SP_LILABEL_MISMATCH, MYF(0), "LEAVE", (yyvsp[(2) - (2)].lex_str).str);
21153  MYSQL_YYABORT;
21154  }
21155 
21156  uint ip= sp->instructions();
21157 
21158  /*
21159  When jumping to a BEGIN-END block end, the target jump
21160  points to the block hpop/cpop cleanup instructions,
21161  so we should exclude the block context here.
21162  When jumping to something else (i.e., sp_label::ITERATION),
21163  there are no hpop/cpop at the jump destination,
21164  so we should include the block context here for cleanup.
21165  */
21166  bool exclusive= (lab->type == sp_label::BEGIN);
21167 
21168  uint n= pctx->diff_handlers(lab->ctx, exclusive);
21169 
21170  if (n)
21171  {
21172  sp_instr_hpop *hpop=
21173  new (thd->mem_root) sp_instr_hpop(ip++, pctx);
21174 
21175  if (!hpop || sp->add_instr(thd, hpop))
21176  MYSQL_YYABORT;
21177  }
21178 
21179  n= pctx->diff_cursors(lab->ctx, exclusive);
21180 
21181  if (n)
21182  {
21183  sp_instr_cpop *cpop=
21184  new (thd->mem_root) sp_instr_cpop(ip++, pctx, n);
21185 
21186  if (!cpop || sp->add_instr(thd, cpop))
21187  MYSQL_YYABORT;
21188  }
21189 
21190  sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(ip, pctx);
21191 
21192  if (!i ||
21193  /* Jumping forward */
21194  sp->m_parser_data.add_backpatch_entry(i, lab) ||
21195  sp->add_instr(thd, i))
21196  MYSQL_YYABORT;
21197  }
21198  break;
21199 
21200  case 324:
21201 
21202 /* Line 1455 of yacc.c */
21203 #line 3984 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21204  {
21205  THD *thd= YYTHD;
21206  LEX *lex= Lex;
21207  sp_head *sp= lex->sphead;
21208  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21209  sp_label *lab= pctx->find_label((yyvsp[(2) - (2)].lex_str));
21210 
21211  if (! lab || lab->type != sp_label::ITERATION)
21212  {
21213  my_error(ER_SP_LILABEL_MISMATCH, MYF(0), "ITERATE", (yyvsp[(2) - (2)].lex_str).str);
21214  MYSQL_YYABORT;
21215  }
21216 
21217  uint ip= sp->instructions();
21218 
21219  /* Inclusive the dest. */
21220  uint n= pctx->diff_handlers(lab->ctx, FALSE);
21221 
21222  if (n)
21223  {
21224  sp_instr_hpop *hpop=
21225  new (thd->mem_root) sp_instr_hpop(ip++, pctx);
21226 
21227  if (!hpop || sp->add_instr(thd, hpop))
21228  MYSQL_YYABORT;
21229  }
21230 
21231  /* Inclusive the dest. */
21232  n= pctx->diff_cursors(lab->ctx, FALSE);
21233 
21234  if (n)
21235  {
21236  sp_instr_cpop *cpop=
21237  new (thd->mem_root) sp_instr_cpop(ip++, pctx, n);
21238 
21239  if (!cpop || sp->add_instr(thd, cpop))
21240  MYSQL_YYABORT;
21241  }
21242 
21243  /* Jump back */
21244  sp_instr_jump *i=
21245  new (thd->mem_root) sp_instr_jump(ip, pctx, lab->ip);
21246 
21247  if (!i || sp->add_instr(thd, i))
21248  MYSQL_YYABORT;
21249  }
21250  break;
21251 
21252  case 325:
21253 
21254 /* Line 1455 of yacc.c */
21255 #line 4034 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21256  {
21257  THD *thd= YYTHD;
21258  LEX *lex= Lex;
21259  sp_head *sp= lex->sphead;
21260  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21261  uint offset;
21262 
21263  if (! pctx->find_cursor((yyvsp[(2) - (2)].lex_str), &offset, false))
21264  {
21265  my_error(ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[(2) - (2)].lex_str).str);
21266  MYSQL_YYABORT;
21267  }
21268 
21269  sp_instr_copen *i=
21270  new (thd->mem_root)
21271  sp_instr_copen(sp->instructions(), pctx, offset);
21272 
21273  if (!i || sp->add_instr(thd, i))
21274  MYSQL_YYABORT;
21275  }
21276  break;
21277 
21278  case 326:
21279 
21280 /* Line 1455 of yacc.c */
21281 #line 4058 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21282  {
21283  THD *thd= YYTHD;
21284  LEX *lex= Lex;
21285  sp_head *sp= lex->sphead;
21286  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21287  uint offset;
21288 
21289  if (! pctx->find_cursor((yyvsp[(3) - (4)].lex_str), &offset, false))
21290  {
21291  my_error(ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[(3) - (4)].lex_str).str);
21292  MYSQL_YYABORT;
21293  }
21294 
21295  sp_instr_cfetch *i=
21296  new (thd->mem_root)
21297  sp_instr_cfetch(sp->instructions(), pctx, offset);
21298 
21299  if (!i || sp->add_instr(thd, i))
21300  MYSQL_YYABORT;
21301  }
21302  break;
21303 
21304  case 327:
21305 
21306 /* Line 1455 of yacc.c */
21307 #line 4079 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21308  {}
21309  break;
21310 
21311  case 328:
21312 
21313 /* Line 1455 of yacc.c */
21314 #line 4084 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21315  {
21316  THD *thd= YYTHD;
21317  LEX *lex= Lex;
21318  sp_head *sp= lex->sphead;
21319  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21320  uint offset;
21321 
21322  if (! pctx->find_cursor((yyvsp[(2) - (2)].lex_str), &offset, false))
21323  {
21324  my_error(ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[(2) - (2)].lex_str).str);
21325  MYSQL_YYABORT;
21326  }
21327 
21328  sp_instr_cclose *i=
21329  new (thd->mem_root)
21330  sp_instr_cclose(sp->instructions(), pctx, offset);
21331 
21332  if (!i || sp->add_instr(thd, i))
21333  MYSQL_YYABORT;
21334  }
21335  break;
21336 
21337  case 332:
21338 
21339 /* Line 1455 of yacc.c */
21340 #line 4114 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21341  {
21342  LEX *lex= Lex;
21343  sp_head *sp= lex->sphead;
21344  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21345  sp_variable *spv;
21346 
21347  if (!pctx || !(spv= pctx->find_variable((yyvsp[(1) - (1)].lex_str), false)))
21348  {
21349  my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
21350  MYSQL_YYABORT;
21351  }
21352 
21353  /* An SP local variable */
21354  sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
21355 
21356  i->add_to_varlist(spv);
21357  }
21358  break;
21359 
21360  case 333:
21361 
21362 /* Line 1455 of yacc.c */
21363 #line 4132 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21364  {
21365  LEX *lex= Lex;
21366  sp_head *sp= lex->sphead;
21367  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21368  sp_variable *spv;
21369 
21370  if (!pctx || !(spv= pctx->find_variable((yyvsp[(3) - (3)].lex_str), false)))
21371  {
21372  my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
21373  MYSQL_YYABORT;
21374  }
21375 
21376  /* An SP local variable */
21377  sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
21378 
21379  i->add_to_varlist(spv);
21380  }
21381  break;
21382 
21383  case 334:
21384 
21385 /* Line 1455 of yacc.c */
21386 #line 4152 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21387  {
21388  THD *thd= YYTHD;
21389  LEX *lex= thd->lex;
21390  sp_head *sp= lex->sphead;
21391 
21392  sp->reset_lex(thd);
21393  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
21394  }
21395  break;
21396 
21397  case 335:
21398 
21399 /* Line 1455 of yacc.c */
21400 #line 4161 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21401  {
21402  THD *thd= YYTHD;
21403  LEX *lex= Lex;
21404  sp_head *sp= lex->sphead;
21405  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21406 
21407  /* Extract expression string. */
21408 
21409  LEX_STRING expr_query= EMPTY_STR;
21410  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
21411 
21412  if (lex->is_metadata_used())
21413  {
21414  expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
21415  if (!expr_query.str)
21416  MYSQL_YYABORT;
21417  }
21418 
21420  new (thd->mem_root)
21421  sp_instr_jump_if_not(sp->instructions(), lex,
21422  (yyvsp[(2) - (2)].item), expr_query);
21423 
21424  /* Add jump instruction. */
21425 
21426  if (i == NULL ||
21428  i, pctx->push_label(thd, EMPTY_STR, 0)) ||
21430  sp->add_instr(thd, i) ||
21431  sp->restore_lex(thd))
21432  {
21433  MYSQL_YYABORT;
21434  }
21435  }
21436  break;
21437 
21438  case 336:
21439 
21440 /* Line 1455 of yacc.c */
21441 #line 4197 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21442  {
21443  THD *thd= YYTHD;
21444  LEX *lex= thd->lex;
21445  sp_head *sp= lex->sphead;
21446  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21447 
21448  sp_instr_jump *i =
21449  new (thd->mem_root) sp_instr_jump(sp->instructions(), pctx);
21450 
21451  if (!i || sp->add_instr(thd, i))
21452  MYSQL_YYABORT;
21453 
21454  sp->m_parser_data.do_backpatch(pctx->pop_label(),
21455  sp->instructions());
21456 
21458  i, pctx->push_label(thd, EMPTY_STR, 0));
21459  }
21460  break;
21461 
21462  case 337:
21463 
21464 /* Line 1455 of yacc.c */
21465 #line 4216 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21466  {
21467  LEX *lex= Lex;
21468  sp_head *sp= lex->sphead;
21469  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21470 
21471  sp->m_parser_data.do_backpatch(pctx->pop_label(),
21472  sp->instructions());
21473  }
21474  break;
21475 
21476  case 343:
21477 
21478 /* Line 1455 of yacc.c */
21479 #line 4239 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21480  {
21481  THD *thd= YYTHD;
21482  LEX *lex= thd->lex;
21483  sp_head *sp= lex->sphead;
21484 
21485  case_stmt_action_case(thd);
21486 
21487  sp->reset_lex(thd); /* For CASE-expr $3 */
21488  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
21489  }
21490  break;
21491 
21492  case 344:
21493 
21494 /* Line 1455 of yacc.c */
21495 #line 4250 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21496  {
21497  THD *thd= YYTHD;
21498  LEX *lex= Lex;
21499  sp_head *sp= lex->sphead;
21500 
21501  /* Extract CASE-expression string. */
21502 
21503  LEX_STRING case_expr_query= EMPTY_STR;
21504  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
21505 
21506  if (lex->is_metadata_used())
21507  {
21508  case_expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
21509  if (!case_expr_query.str)
21510  MYSQL_YYABORT;
21511  }
21512 
21513  /* Register new CASE-expression and get its id. */
21514 
21515  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21516  int case_expr_id= pctx->push_case_expr_id();
21517 
21518  if (case_expr_id < 0)
21519  MYSQL_YYABORT;
21520 
21521  /* Add CASE-set instruction. */
21522 
21524  new (thd->mem_root)
21525  sp_instr_set_case_expr(sp->instructions(), lex,
21526  case_expr_id, (yyvsp[(3) - (3)].item), case_expr_query);
21527 
21528  if (i == NULL ||
21530  sp->add_instr(thd, i) ||
21531  sp->restore_lex(thd))
21532  {
21533  MYSQL_YYABORT;
21534  }
21535  }
21536  break;
21537 
21538  case 345:
21539 
21540 /* Line 1455 of yacc.c */
21541 #line 4294 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21542  {
21543  case_stmt_action_end_case(Lex, true);
21544  }
21545  break;
21546 
21547  case 346:
21548 
21549 /* Line 1455 of yacc.c */
21550 #line 4301 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21551  {
21552  case_stmt_action_case(YYTHD);
21553  }
21554  break;
21555 
21556  case 347:
21557 
21558 /* Line 1455 of yacc.c */
21559 #line 4308 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21560  {
21561  case_stmt_action_end_case(Lex, false);
21562  }
21563  break;
21564 
21565  case 352:
21566 
21567 /* Line 1455 of yacc.c */
21568 #line 4325 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21569  {
21570  THD *thd= YYTHD;
21571  LEX *lex= thd->lex;
21572  sp_head *sp= lex->sphead;
21573 
21574  sp->reset_lex(thd);
21575  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
21576  }
21577  break;
21578 
21579  case 353:
21580 
21581 /* Line 1455 of yacc.c */
21582 #line 4334 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21583  {
21584  /* Simple case: <caseval> = <whenval> */
21585 
21586  THD *thd= YYTHD;
21587  LEX *lex= thd->lex;
21588  sp_head *sp= lex->sphead;
21589  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21590 
21591  /* Extract expression string. */
21592 
21593  LEX_STRING when_expr_query= EMPTY_STR;
21594  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
21595 
21596  if (lex->is_metadata_used())
21597  {
21598  when_expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
21599  if (!when_expr_query.str)
21600  MYSQL_YYABORT;
21601  }
21602 
21603  /* Add CASE-when-jump instruction. */
21604 
21606  new (thd->mem_root)
21607  sp_instr_jump_case_when(sp->instructions(), lex,
21608  pctx->get_current_case_expr_id(),
21609  (yyvsp[(3) - (3)].item), when_expr_query);
21610 
21611  if (i == NULL ||
21612  i->on_after_expr_parsing(thd) ||
21614  i, pctx->push_label(thd, EMPTY_STR, 0)) ||
21616  sp->add_instr(thd, i) ||
21617  sp->restore_lex(thd))
21618  {
21619  MYSQL_YYABORT;
21620  }
21621  }
21622  break;
21623 
21624  case 354:
21625 
21626 /* Line 1455 of yacc.c */
21627 #line 4375 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21628  {
21629  if (case_stmt_action_then(YYTHD, Lex))
21630  MYSQL_YYABORT;
21631  }
21632  break;
21633 
21634  case 355:
21635 
21636 /* Line 1455 of yacc.c */
21637 #line 4383 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21638  {
21639  THD *thd= YYTHD;
21640  LEX *lex= thd->lex;
21641  sp_head *sp= lex->sphead;
21642 
21643  sp->reset_lex(thd);
21644  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
21645  }
21646  break;
21647 
21648  case 356:
21649 
21650 /* Line 1455 of yacc.c */
21651 #line 4392 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21652  {
21653  THD *thd= YYTHD;
21654  LEX *lex= thd->lex;
21655  sp_head *sp= lex->sphead;
21656  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21657 
21658  /* Extract expression string. */
21659 
21660  LEX_STRING when_query= EMPTY_STR;
21661  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
21662 
21663  if (lex->is_metadata_used())
21664  {
21665  when_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
21666  if (!when_query.str)
21667  MYSQL_YYABORT;
21668  }
21669 
21670  /* Add jump instruction. */
21671 
21673  new (thd->mem_root)
21674  sp_instr_jump_if_not(sp->instructions(), lex, (yyvsp[(3) - (3)].item), when_query);
21675 
21676  if (i == NULL ||
21678  i, pctx->push_label(thd, EMPTY_STR, 0)) ||
21680  sp->add_instr(thd, i) ||
21681  sp->restore_lex(thd))
21682  {
21683  MYSQL_YYABORT;
21684  }
21685  }
21686  break;
21687 
21688  case 357:
21689 
21690 /* Line 1455 of yacc.c */
21691 #line 4428 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21692  {
21693  if (case_stmt_action_then(YYTHD, Lex))
21694  MYSQL_YYABORT;
21695  }
21696  break;
21697 
21698  case 358:
21699 
21700 /* Line 1455 of yacc.c */
21701 #line 4436 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21702  {
21703  THD *thd= YYTHD;
21704  LEX *lex= Lex;
21705  sp_head *sp= lex->sphead;
21706  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21707 
21708  sp_instr_error *i=
21709  new (thd->mem_root)
21710  sp_instr_error(sp->instructions(), pctx, ER_SP_CASE_NOT_FOUND);
21711 
21712  if (!i || sp->add_instr(thd, i))
21713  MYSQL_YYABORT;
21714  }
21715  break;
21716 
21717  case 360:
21718 
21719 /* Line 1455 of yacc.c */
21720 #line 4454 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21721  {
21722  LEX *lex= Lex;
21723  sp_head *sp= lex->sphead;
21724  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21725  sp_label *lab= pctx->find_label((yyvsp[(1) - (2)].lex_str));
21726 
21727  if (lab)
21728  {
21729  my_error(ER_SP_LABEL_REDEFINE, MYF(0), (yyvsp[(1) - (2)].lex_str).str);
21730  MYSQL_YYABORT;
21731  }
21732  else
21733  {
21734  lab= pctx->push_label(YYTHD, (yyvsp[(1) - (2)].lex_str), sp->instructions());
21735  lab->type= sp_label::ITERATION;
21736  }
21737  }
21738  break;
21739 
21740  case 361:
21741 
21742 /* Line 1455 of yacc.c */
21743 #line 4472 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21744  {
21745  LEX *lex= Lex;
21746  sp_head *sp= lex->sphead;
21747  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21748  sp_label *lab= pctx->pop_label();
21749 
21750  if ((yyvsp[(5) - (5)].lex_str).str)
21751  {
21752  if (my_strcasecmp(system_charset_info, (yyvsp[(5) - (5)].lex_str).str, lab->name.str) != 0)
21753  {
21754  my_error(ER_SP_LABEL_MISMATCH, MYF(0), (yyvsp[(5) - (5)].lex_str).str);
21755  MYSQL_YYABORT;
21756  }
21757  }
21758  sp->m_parser_data.do_backpatch(lab, sp->instructions());
21759  }
21760  break;
21761 
21762  case 362:
21763 
21764 /* Line 1455 of yacc.c */
21765 #line 4491 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21766  { (yyval.lex_str)= null_lex_str; }
21767  break;
21768 
21769  case 363:
21770 
21771 /* Line 1455 of yacc.c */
21772 #line 4492 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21773  { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
21774  break;
21775 
21776  case 364:
21777 
21778 /* Line 1455 of yacc.c */
21779 #line 4497 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21780  {
21781  LEX *lex= Lex;
21782  sp_head *sp= lex->sphead;
21783  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21784  sp_label *lab= pctx->find_label((yyvsp[(1) - (2)].lex_str));
21785 
21786  if (lab)
21787  {
21788  my_error(ER_SP_LABEL_REDEFINE, MYF(0), (yyvsp[(1) - (2)].lex_str).str);
21789  MYSQL_YYABORT;
21790  }
21791 
21792  lab= pctx->push_label(YYTHD, (yyvsp[(1) - (2)].lex_str), sp->instructions());
21793  lab->type= sp_label::BEGIN;
21794  }
21795  break;
21796 
21797  case 365:
21798 
21799 /* Line 1455 of yacc.c */
21800 #line 4513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21801  {
21802  LEX *lex= Lex;
21803  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21804  sp_label *lab= pctx->pop_label();
21805 
21806  if ((yyvsp[(5) - (5)].lex_str).str)
21807  {
21808  if (my_strcasecmp(system_charset_info, (yyvsp[(5) - (5)].lex_str).str, lab->name.str) != 0)
21809  {
21810  my_error(ER_SP_LABEL_MISMATCH, MYF(0), (yyvsp[(5) - (5)].lex_str).str);
21811  MYSQL_YYABORT;
21812  }
21813  }
21814  }
21815  break;
21816 
21817  case 366:
21818 
21819 /* Line 1455 of yacc.c */
21820 #line 4530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21821  { /* Unlabeled blocks get a secret label. */
21822  LEX *lex= Lex;
21823  sp_head *sp= lex->sphead;
21824  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21825 
21826  sp_label *lab=
21827  pctx->push_label(YYTHD, EMPTY_STR, sp->instructions());
21828 
21829  lab->type= sp_label::BEGIN;
21830  }
21831  break;
21832 
21833  case 367:
21834 
21835 /* Line 1455 of yacc.c */
21836 #line 4541 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21837  {
21838  LEX *lex= Lex;
21839  lex->get_sp_current_parsing_ctx()->pop_label();
21840  }
21841  break;
21842 
21843  case 368:
21844 
21845 /* Line 1455 of yacc.c */
21846 #line 4549 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21847  { /* QQ This is just a dummy for grouping declarations and statements
21848  together. No [[NOT] ATOMIC] yet, and we need to figure out how
21849  make it coexist with the existing BEGIN COMMIT/ROLLBACK. */
21850  THD *thd= YYTHD;
21851  LEX *lex= thd->lex;
21852  sp_pcontext *parent_pctx= lex->get_sp_current_parsing_ctx();
21853 
21854  sp_pcontext *child_pctx=
21855  parent_pctx->push_context(thd, sp_pcontext::REGULAR_SCOPE);
21856 
21857  lex->set_sp_current_parsing_ctx(child_pctx);
21858  }
21859  break;
21860 
21861  case 369:
21862 
21863 /* Line 1455 of yacc.c */
21864 #line 4564 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21865  {
21866  THD *thd= YYTHD;
21867  LEX *lex= Lex;
21868  sp_head *sp= lex->sphead;
21869  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21870 
21871  // We always have a label.
21872  sp->m_parser_data.do_backpatch(pctx->last_label(),
21873  sp->instructions());
21874 
21875  if ((yyvsp[(3) - (5)].spblock).hndlrs)
21876  {
21877  sp_instr *i=
21878  new (thd->mem_root) sp_instr_hpop(sp->instructions(), pctx);
21879 
21880  if (!i || sp->add_instr(thd, i))
21881  MYSQL_YYABORT;
21882  }
21883 
21884  if ((yyvsp[(3) - (5)].spblock).curs)
21885  {
21886  sp_instr *i=
21887  new (thd->mem_root)
21888  sp_instr_cpop(sp->instructions(), pctx, (yyvsp[(3) - (5)].spblock).curs);
21889 
21890  if (!i || sp->add_instr(thd, i))
21891  MYSQL_YYABORT;
21892  }
21893 
21894  lex->set_sp_current_parsing_ctx(pctx->pop_context());
21895  }
21896  break;
21897 
21898  case 370:
21899 
21900 /* Line 1455 of yacc.c */
21901 #line 4600 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21902  {
21903  THD *thd= YYTHD;
21904  LEX *lex= Lex;
21905  sp_head *sp= lex->sphead;
21906  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21907 
21908  sp_instr_jump *i=
21909  new (thd->mem_root)
21910  sp_instr_jump(sp->instructions(), pctx,
21911  pctx->last_label()->ip);
21912 
21913  if (!i || sp->add_instr(thd, i))
21914  MYSQL_YYABORT;
21915  }
21916  break;
21917 
21918  case 371:
21919 
21920 /* Line 1455 of yacc.c */
21921 #line 4615 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21922  {
21923  THD *thd= YYTHD;
21924  LEX *lex= thd->lex;
21925  sp_head *sp= lex->sphead;
21926 
21927  sp->reset_lex(thd);
21928  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
21929  }
21930  break;
21931 
21932  case 372:
21933 
21934 /* Line 1455 of yacc.c */
21935 #line 4624 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21936  {
21937  THD *thd= YYTHD;
21938  LEX *lex= Lex;
21939  sp_head *sp= lex->sphead;
21940  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21941 
21942  /* Extract expression string. */
21943 
21944  LEX_STRING expr_query= EMPTY_STR;
21945  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
21946 
21947  if (lex->is_metadata_used())
21948  {
21949  expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
21950  if (!expr_query.str)
21951  MYSQL_YYABORT;
21952  }
21953 
21954  /* Add jump instruction. */
21955 
21957  new (thd->mem_root)
21958  sp_instr_jump_if_not(sp->instructions(), lex, (yyvsp[(3) - (3)].item), expr_query);
21959 
21960  if (i == NULL ||
21961  /* Jumping forward */
21962  sp->m_parser_data.add_backpatch_entry(i, pctx->last_label()) ||
21965  sp->add_instr(thd, i) ||
21966  sp->restore_lex(thd))
21967  {
21968  MYSQL_YYABORT;
21969  }
21970  }
21971  break;
21972 
21973  case 373:
21974 
21975 /* Line 1455 of yacc.c */
21976 #line 4662 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21977  {
21978  THD *thd= YYTHD;
21979  LEX *lex= Lex;
21980  sp_head *sp= lex->sphead;
21981  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
21982 
21983  sp_instr_jump *i=
21984  new (thd->mem_root)
21985  sp_instr_jump(sp->instructions(), pctx, pctx->last_label()->ip);
21986 
21987  if (!i || sp->add_instr(thd, i))
21988  MYSQL_YYABORT;
21989 
21990  sp->m_parser_data.do_cont_backpatch(sp->instructions());
21991  }
21992  break;
21993 
21994  case 374:
21995 
21996 /* Line 1455 of yacc.c */
21997 #line 4678 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
21998  {
21999  THD *thd= YYTHD;
22000  LEX *lex= thd->lex;
22001  sp_head *sp= lex->sphead;
22002 
22003  sp->reset_lex(thd);
22004  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_END);
22005  }
22006  break;
22007 
22008  case 375:
22009 
22010 /* Line 1455 of yacc.c */
22011 #line 4687 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22012  {
22013  THD *thd= YYTHD;
22014  LEX *lex= thd->lex;
22015  sp_head *sp= lex->sphead;
22016  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
22017  uint ip= sp->instructions();
22018 
22019  /* Extract expression string. */
22020 
22021  LEX_STRING expr_query= EMPTY_STR;
22022  const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
22023 
22024  if (lex->is_metadata_used())
22025  {
22026  expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
22027  if (!expr_query.str)
22028  MYSQL_YYABORT;
22029  }
22030 
22031  /* Add jump instruction. */
22032 
22034  new (thd->mem_root)
22035  sp_instr_jump_if_not(ip, lex, (yyvsp[(5) - (5)].item), expr_query,
22036  pctx->last_label()->ip);
22037 
22038  if (i == NULL ||
22039  sp->add_instr(thd, i) ||
22040  sp->restore_lex(thd))
22041  {
22042  MYSQL_YYABORT;
22043  }
22044 
22045  /* We can shortcut the cont_backpatch here */
22046  i->set_cont_dest(ip + 1);
22047  }
22048  break;
22049 
22050  case 377:
22051 
22052 /* Line 1455 of yacc.c */
22053 #line 4728 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22054  { (yyval.num)= TRG_ACTION_BEFORE; }
22055  break;
22056 
22057  case 378:
22058 
22059 /* Line 1455 of yacc.c */
22060 #line 4730 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22061  { (yyval.num)= TRG_ACTION_AFTER; }
22062  break;
22063 
22064  case 379:
22065 
22066 /* Line 1455 of yacc.c */
22067 #line 4735 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22068  { (yyval.num)= TRG_EVENT_INSERT; }
22069  break;
22070 
22071  case 380:
22072 
22073 /* Line 1455 of yacc.c */
22074 #line 4737 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22075  { (yyval.num)= TRG_EVENT_UPDATE; }
22076  break;
22077 
22078  case 381:
22079 
22080 /* Line 1455 of yacc.c */
22081 #line 4739 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22082  { (yyval.num)= TRG_EVENT_DELETE; }
22083  break;
22084 
22085  case 385:
22086 
22087 /* Line 1455 of yacc.c */
22088 #line 4773 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22089  {}
22090  break;
22091 
22092  case 386:
22093 
22094 /* Line 1455 of yacc.c */
22095 #line 4775 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22096  {
22097  LEX *lex= Lex;
22098  lex->alter_tablespace_info->logfile_group_name= (yyvsp[(4) - (4)].lex_str).str;
22099  }
22100  break;
22101 
22102  case 387:
22103 
22104 /* Line 1455 of yacc.c */
22105 #line 4785 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22106  {
22107  Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_ADD_FILE;
22108  }
22109  break;
22110 
22111  case 388:
22112 
22113 /* Line 1455 of yacc.c */
22114 #line 4791 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22115  {
22116  Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_DROP_FILE;
22117  }
22118  break;
22119 
22120  case 393:
22121 
22122 /* Line 1455 of yacc.c */
22123 #line 4814 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22124  {}
22125  break;
22126 
22127  case 444:
22128 
22129 /* Line 1455 of yacc.c */
22130 #line 4912 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22131  {
22132  LEX *lex= Lex;
22133  lex->alter_tablespace_info->data_file_name= (yyvsp[(2) - (2)].lex_str).str;
22134  }
22135  break;
22136 
22137  case 445:
22138 
22139 /* Line 1455 of yacc.c */
22140 #line 4920 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22141  {
22142  LEX *lex= Lex;
22143  lex->alter_tablespace_info->undo_file_name= (yyvsp[(2) - (2)].lex_str).str;
22144  }
22145  break;
22146 
22147  case 446:
22148 
22149 /* Line 1455 of yacc.c */
22150 #line 4928 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22151  {
22152  LEX *lex= Lex;
22153  lex->alter_tablespace_info->redo_file_name= (yyvsp[(2) - (2)].lex_str).str;
22154  }
22155  break;
22156 
22157  case 447:
22158 
22159 /* Line 1455 of yacc.c */
22160 #line 4936 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22161  {
22162  LEX *lex= Lex;
22163  lex->alter_tablespace_info= new st_alter_tablespace();
22164  if (lex->alter_tablespace_info == NULL)
22165  MYSQL_YYABORT;
22166  lex->alter_tablespace_info->tablespace_name= (yyvsp[(1) - (1)].lex_str).str;
22167  lex->sql_command= SQLCOM_ALTER_TABLESPACE;
22168  }
22169  break;
22170 
22171  case 448:
22172 
22173 /* Line 1455 of yacc.c */
22174 #line 4948 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22175  {
22176  LEX *lex= Lex;
22177  lex->alter_tablespace_info= new st_alter_tablespace();
22178  if (lex->alter_tablespace_info == NULL)
22179  MYSQL_YYABORT;
22180  lex->alter_tablespace_info->logfile_group_name= (yyvsp[(1) - (1)].lex_str).str;
22181  lex->sql_command= SQLCOM_ALTER_TABLESPACE;
22182  }
22183  break;
22184 
22185  case 449:
22186 
22187 /* Line 1455 of yacc.c */
22188 #line 4960 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22189  {
22190  LEX *lex= Lex;
22191  lex->alter_tablespace_info->ts_access_mode= TS_READ_ONLY;
22192  }
22193  break;
22194 
22195  case 450:
22196 
22197 /* Line 1455 of yacc.c */
22198 #line 4965 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22199  {
22200  LEX *lex= Lex;
22201  lex->alter_tablespace_info->ts_access_mode= TS_READ_WRITE;
22202  }
22203  break;
22204 
22205  case 451:
22206 
22207 /* Line 1455 of yacc.c */
22208 #line 4970 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22209  {
22210  LEX *lex= Lex;
22211  lex->alter_tablespace_info->ts_access_mode= TS_NOT_ACCESSIBLE;
22212  }
22213  break;
22214 
22215  case 452:
22216 
22217 /* Line 1455 of yacc.c */
22218 #line 4978 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22219  {
22220  LEX *lex= Lex;
22221  lex->alter_tablespace_info->initial_size= (yyvsp[(3) - (3)].ulonglong_number);
22222  }
22223  break;
22224 
22225  case 453:
22226 
22227 /* Line 1455 of yacc.c */
22228 #line 4986 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22229  {
22230  LEX *lex= Lex;
22231  lex->alter_tablespace_info->autoextend_size= (yyvsp[(3) - (3)].ulonglong_number);
22232  }
22233  break;
22234 
22235  case 454:
22236 
22237 /* Line 1455 of yacc.c */
22238 #line 4994 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22239  {
22240  LEX *lex= Lex;
22241  lex->alter_tablespace_info->max_size= (yyvsp[(3) - (3)].ulonglong_number);
22242  }
22243  break;
22244 
22245  case 455:
22246 
22247 /* Line 1455 of yacc.c */
22248 #line 5002 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22249  {
22250  LEX *lex= Lex;
22251  lex->alter_tablespace_info->extent_size= (yyvsp[(3) - (3)].ulonglong_number);
22252  }
22253  break;
22254 
22255  case 456:
22256 
22257 /* Line 1455 of yacc.c */
22258 #line 5010 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22259  {
22260  LEX *lex= Lex;
22261  lex->alter_tablespace_info->undo_buffer_size= (yyvsp[(3) - (3)].ulonglong_number);
22262  }
22263  break;
22264 
22265  case 457:
22266 
22267 /* Line 1455 of yacc.c */
22268 #line 5018 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22269  {
22270  LEX *lex= Lex;
22271  lex->alter_tablespace_info->redo_buffer_size= (yyvsp[(3) - (3)].ulonglong_number);
22272  }
22273  break;
22274 
22275  case 458:
22276 
22277 /* Line 1455 of yacc.c */
22278 #line 5026 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22279  {
22280  LEX *lex= Lex;
22281  if (lex->alter_tablespace_info->nodegroup_id != UNDEF_NODEGROUP)
22282  {
22283  my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NODEGROUP");
22284  MYSQL_YYABORT;
22285  }
22286  lex->alter_tablespace_info->nodegroup_id= (yyvsp[(3) - (3)].ulong_num);
22287  }
22288  break;
22289 
22290  case 459:
22291 
22292 /* Line 1455 of yacc.c */
22293 #line 5039 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22294  {
22295  LEX *lex= Lex;
22296  if (lex->alter_tablespace_info->ts_comment != NULL)
22297  {
22298  my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"COMMENT");
22299  MYSQL_YYABORT;
22300  }
22301  lex->alter_tablespace_info->ts_comment= (yyvsp[(3) - (3)].lex_str).str;
22302  }
22303  break;
22304 
22305  case 460:
22306 
22307 /* Line 1455 of yacc.c */
22308 #line 5052 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22309  {
22310  LEX *lex= Lex;
22311  if (lex->alter_tablespace_info->storage_engine != NULL)
22312  {
22313  my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),
22314  "STORAGE ENGINE");
22315  MYSQL_YYABORT;
22316  }
22317  lex->alter_tablespace_info->storage_engine= (yyvsp[(4) - (4)].db_type);
22318  }
22319  break;
22320 
22321  case 461:
22322 
22323 /* Line 1455 of yacc.c */
22324 #line 5066 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22325  {
22326  LEX *lex= Lex;
22327  lex->alter_tablespace_info->wait_until_completed= TRUE;
22328  }
22329  break;
22330 
22331  case 462:
22332 
22333 /* Line 1455 of yacc.c */
22334 #line 5071 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22335  {
22336  LEX *lex= Lex;
22337  if (!(lex->alter_tablespace_info->wait_until_completed))
22338  {
22339  my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NO_WAIT");
22340  MYSQL_YYABORT;
22341  }
22342  lex->alter_tablespace_info->wait_until_completed= FALSE;
22343  }
22344  break;
22345 
22346  case 463:
22347 
22348 /* Line 1455 of yacc.c */
22349 #line 5083 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22350  { (yyval.ulonglong_number)= (yyvsp[(1) - (1)].ulonglong_number);}
22351  break;
22352 
22353  case 464:
22354 
22355 /* Line 1455 of yacc.c */
22356 #line 5085 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22357  {
22358  ulonglong number;
22359  uint text_shift_number= 0;
22360  longlong prefix_number;
22361  char *start_ptr= (yyvsp[(1) - (1)].lex_str).str;
22362  uint str_len= (yyvsp[(1) - (1)].lex_str).length;
22363  char *end_ptr= start_ptr + str_len;
22364  int error;
22365  prefix_number= my_strtoll10(start_ptr, &end_ptr, &error);
22366  if ((start_ptr + str_len - 1) == end_ptr)
22367  {
22368  switch (end_ptr[0])
22369  {
22370  case 'g':
22371  case 'G':
22372  text_shift_number+=10;
22373  case 'm':
22374  case 'M':
22375  text_shift_number+=10;
22376  case 'k':
22377  case 'K':
22378  text_shift_number+=10;
22379  break;
22380  default:
22381  {
22382  my_error(ER_WRONG_SIZE_NUMBER, MYF(0));
22383  MYSQL_YYABORT;
22384  }
22385  }
22386  if (prefix_number >> 31)
22387  {
22388  my_error(ER_SIZE_OVERFLOW_ERROR, MYF(0));
22389  MYSQL_YYABORT;
22390  }
22391  number= prefix_number << text_shift_number;
22392  }
22393  else
22394  {
22395  my_error(ER_WRONG_SIZE_NUMBER, MYF(0));
22396  MYSQL_YYABORT;
22397  }
22398  (yyval.ulonglong_number)= number;
22399  }
22400  break;
22401 
22402  case 465:
22403 
22404 /* Line 1455 of yacc.c */
22405 #line 5135 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22406  {}
22407  break;
22408 
22409  case 466:
22410 
22411 /* Line 1455 of yacc.c */
22412 #line 5138 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22413  {}
22414  break;
22415 
22416  case 467:
22417 
22418 /* Line 1455 of yacc.c */
22419 #line 5140 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22420  {
22421  THD *thd= YYTHD;
22422  TABLE_LIST *src_table;
22423  LEX *lex= thd->lex;
22424 
22425  lex->create_info.options|= HA_LEX_CREATE_TABLE_LIKE;
22426  src_table= lex->select_lex.add_table_to_list(thd, (yyvsp[(2) - (2)].table), NULL, 0,
22427  TL_READ,
22428  MDL_SHARED_READ);
22429  if (! src_table)
22430  MYSQL_YYABORT;
22431  /* CREATE TABLE ... LIKE is not allowed for views. */
22432  src_table->required_type= FRMTYPE_TABLE;
22433  }
22434  break;
22435 
22436  case 468:
22437 
22438 /* Line 1455 of yacc.c */
22439 #line 5155 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22440  {
22441  THD *thd= YYTHD;
22442  TABLE_LIST *src_table;
22443  LEX *lex= thd->lex;
22444 
22445  lex->create_info.options|= HA_LEX_CREATE_TABLE_LIKE;
22446  src_table= lex->select_lex.add_table_to_list(thd, (yyvsp[(3) - (4)].table), NULL, 0,
22447  TL_READ,
22448  MDL_SHARED_READ);
22449  if (! src_table)
22450  MYSQL_YYABORT;
22451  /* CREATE TABLE ... LIKE is not allowed for views. */
22452  src_table->required_type= FRMTYPE_TABLE;
22453  }
22454  break;
22455 
22456  case 469:
22457 
22458 /* Line 1455 of yacc.c */
22459 #line 5174 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22460  {}
22461  break;
22462 
22463  case 470:
22464 
22465 /* Line 1455 of yacc.c */
22466 #line 5177 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22467  { Select->set_braces(1);}
22468  break;
22469 
22470  case 471:
22471 
22472 /* Line 1455 of yacc.c */
22473 #line 5178 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22474  {}
22475  break;
22476 
22477  case 472:
22478 
22479 /* Line 1455 of yacc.c */
22480 #line 5182 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22481  {}
22482  break;
22483 
22484  case 473:
22485 
22486 /* Line 1455 of yacc.c */
22487 #line 5184 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22488  { Select->set_braces(0);}
22489  break;
22490 
22491  case 474:
22492 
22493 /* Line 1455 of yacc.c */
22494 #line 5185 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22495  {}
22496  break;
22497 
22498  case 475:
22499 
22500 /* Line 1455 of yacc.c */
22501 #line 5187 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22502  { Select->set_braces(1);}
22503  break;
22504 
22505  case 476:
22506 
22507 /* Line 1455 of yacc.c */
22508 #line 5188 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22509  {}
22510  break;
22511 
22512  case 477:
22513 
22514 /* Line 1455 of yacc.c */
22515 #line 5193 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22516  {
22517  /*
22518  Remove all tables used in PARTITION clause from the global table
22519  list. Partitioning with subqueries is not allowed anyway.
22520  */
22521  TABLE_LIST *last_non_sel_table= Lex->create_last_non_select_table;
22522  last_non_sel_table->next_global= 0;
22523  Lex->query_tables_last= &last_non_sel_table->next_global;
22524  }
22525  break;
22526 
22527  case 478:
22528 
22529 /* Line 1455 of yacc.c */
22530 #line 5229 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22531  {}
22532  break;
22533 
22534  case 480:
22535 
22536 /* Line 1455 of yacc.c */
22537 #line 5235 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22538  {
22539  LEX *lex= Lex;
22540  lex->part_info= new partition_info();
22541  if (!lex->part_info)
22542  {
22543  mem_alloc_error(sizeof(partition_info));
22544  MYSQL_YYABORT;
22545  }
22546  if (lex->sql_command == SQLCOM_ALTER_TABLE)
22547  {
22548  lex->alter_info.flags|= Alter_info::ALTER_PARTITION;
22549  }
22550  }
22551  break;
22552 
22553  case 482:
22554 
22555 /* Line 1455 of yacc.c */
22556 #line 5253 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22557  {
22558 #ifdef WITH_PARTITION_STORAGE_ENGINE
22559  LEX_STRING partition_name={C_STRING_WITH_LEN("partition")};
22560  if (!plugin_is_ready(&partition_name, MYSQL_STORAGE_ENGINE_PLUGIN))
22561  {
22562  my_error(ER_OPTION_PREVENTS_STATEMENT, MYF(0),
22563  "--skip-partition");
22564  MYSQL_YYABORT;
22565  }
22566 #else
22567  my_error(ER_FEATURE_DISABLED, MYF(0), "partitioning",
22568  "--with-plugin-partition");
22569  MYSQL_YYABORT;
22570 #endif
22571  }
22572  break;
22573 
22574  case 483:
22575 
22576 /* Line 1455 of yacc.c */
22577 #line 5272 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22578  {
22579  LEX *lex= Lex;
22580  if (!lex->part_info)
22581  {
22582  my_parse_error(ER(ER_PARTITION_ENTRY_ERROR));
22583  MYSQL_YYABORT;
22584  }
22585  /*
22586  We enter here when opening the frm file to translate
22587  partition info string into part_info data structure.
22588  */
22589  }
22590  break;
22591 
22592  case 484:
22593 
22594 /* Line 1455 of yacc.c */
22595 #line 5284 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22596  {}
22597  break;
22598 
22599  case 486:
22600 
22601 /* Line 1455 of yacc.c */
22602 #line 5293 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22603  {
22604  partition_info *part_info= Lex->part_info;
22605  part_info->list_of_part_fields= TRUE;
22606  part_info->column_list= FALSE;
22607  part_info->part_type= HASH_PARTITION;
22608  }
22609  break;
22610 
22611  case 487:
22612 
22613 /* Line 1455 of yacc.c */
22614 #line 5300 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22615  { Lex->part_info->part_type= HASH_PARTITION; }
22616  break;
22617 
22618  case 488:
22619 
22620 /* Line 1455 of yacc.c */
22621 #line 5301 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22622  {}
22623  break;
22624 
22625  case 489:
22626 
22627 /* Line 1455 of yacc.c */
22628 #line 5303 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22629  { Lex->part_info->part_type= RANGE_PARTITION; }
22630  break;
22631 
22632  case 490:
22633 
22634 /* Line 1455 of yacc.c */
22635 #line 5305 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22636  { Lex->part_info->part_type= RANGE_PARTITION; }
22637  break;
22638 
22639  case 491:
22640 
22641 /* Line 1455 of yacc.c */
22642 #line 5307 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22643  { Lex->part_info->part_type= LIST_PARTITION; }
22644  break;
22645 
22646  case 492:
22647 
22648 /* Line 1455 of yacc.c */
22649 #line 5309 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22650  { Lex->part_info->part_type= LIST_PARTITION; }
22651  break;
22652 
22653  case 493:
22654 
22655 /* Line 1455 of yacc.c */
22656 #line 5313 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22657  {}
22658  break;
22659 
22660  case 494:
22661 
22662 /* Line 1455 of yacc.c */
22663 #line 5315 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22664  { Lex->part_info->linear_hash_ind= TRUE;}
22665  break;
22666 
22667  case 495:
22668 
22669 /* Line 1455 of yacc.c */
22670 #line 5320 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22671  { Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_NONE;}
22672  break;
22673 
22674  case 496:
22675 
22676 /* Line 1455 of yacc.c */
22677 #line 5322 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22678  {
22679  switch ((yyvsp[(3) - (3)].ulong_num)) {
22680  case 1:
22681  Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_51;
22682  break;
22683  case 2:
22684  Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_55;
22685  break;
22686  default:
22687  my_parse_error(ER(ER_SYNTAX_ERROR));
22688  MYSQL_YYABORT;
22689  }
22690  }
22691  break;
22692 
22693  case 497:
22694 
22695 /* Line 1455 of yacc.c */
22696 #line 5338 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22697  {}
22698  break;
22699 
22700  case 498:
22701 
22702 /* Line 1455 of yacc.c */
22703 #line 5339 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22704  {}
22705  break;
22706 
22707  case 499:
22708 
22709 /* Line 1455 of yacc.c */
22710 #line 5343 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22711  {}
22712  break;
22713 
22714  case 500:
22715 
22716 /* Line 1455 of yacc.c */
22717 #line 5344 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22718  {}
22719  break;
22720 
22721  case 501:
22722 
22723 /* Line 1455 of yacc.c */
22724 #line 5349 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22725  {
22726  partition_info *part_info= Lex->part_info;
22727  part_info->num_columns++;
22728  if (part_info->part_field_list.push_back((yyvsp[(1) - (1)].lex_str).str))
22729  {
22730  mem_alloc_error(1);
22731  MYSQL_YYABORT;
22732  }
22733  if (part_info->num_columns > MAX_REF_PARTS)
22734  {
22735  my_error(ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
22736  "list of partition fields");
22737  MYSQL_YYABORT;
22738  }
22739  }
22740  break;
22741 
22742  case 502:
22743 
22744 /* Line 1455 of yacc.c */
22745 #line 5368 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22746  {
22747  partition_info *part_info= Lex->part_info;
22748  part_info->column_list= TRUE;
22749  part_info->list_of_part_fields= TRUE;
22750  }
22751  break;
22752 
22753  case 503:
22754 
22755 /* Line 1455 of yacc.c */
22756 #line 5378 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22757  {
22758  partition_info *part_info= Lex->part_info;
22759  if (part_info->set_part_expr((yyvsp[(2) - (5)].simple_string)+1, (yyvsp[(3) - (5)].item), (yyvsp[(4) - (5)].simple_string), FALSE))
22760  { MYSQL_YYABORT; }
22761  part_info->num_columns= 1;
22762  part_info->column_list= FALSE;
22763  }
22764  break;
22765 
22766  case 504:
22767 
22768 /* Line 1455 of yacc.c */
22769 #line 5389 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22770  {
22771  if (Lex->part_info->set_part_expr((yyvsp[(2) - (5)].simple_string)+1, (yyvsp[(3) - (5)].item), (yyvsp[(4) - (5)].simple_string), TRUE))
22772  { MYSQL_YYABORT; }
22773  }
22774  break;
22775 
22776  case 505:
22777 
22778 /* Line 1455 of yacc.c */
22779 #line 5397 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22780  {}
22781  break;
22782 
22783  case 506:
22784 
22785 /* Line 1455 of yacc.c */
22786 #line 5399 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22787  {
22788  uint num_parts= (yyvsp[(2) - (2)].ulong_num);
22789  partition_info *part_info= Lex->part_info;
22790  if (num_parts == 0)
22791  {
22792  my_error(ER_NO_PARTS_ERROR, MYF(0), "partitions");
22793  MYSQL_YYABORT;
22794  }
22795 
22796  part_info->num_parts= num_parts;
22797  part_info->use_default_num_partitions= FALSE;
22798  }
22799  break;
22800 
22801  case 507:
22802 
22803 /* Line 1455 of yacc.c */
22804 #line 5414 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22805  {}
22806  break;
22807 
22808  case 508:
22809 
22810 /* Line 1455 of yacc.c */
22811 #line 5416 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22812  { Lex->part_info->subpart_type= HASH_PARTITION; }
22813  break;
22814 
22815  case 509:
22816 
22817 /* Line 1455 of yacc.c */
22818 #line 5417 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22819  {}
22820  break;
22821 
22822  case 510:
22823 
22824 /* Line 1455 of yacc.c */
22825 #line 5420 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22826  {
22827  partition_info *part_info= Lex->part_info;
22828  part_info->subpart_type= HASH_PARTITION;
22829  part_info->list_of_subpart_fields= TRUE;
22830  }
22831  break;
22832 
22833  case 511:
22834 
22835 /* Line 1455 of yacc.c */
22836 #line 5425 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22837  {}
22838  break;
22839 
22840  case 512:
22841 
22842 /* Line 1455 of yacc.c */
22843 #line 5429 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22844  {}
22845  break;
22846 
22847  case 513:
22848 
22849 /* Line 1455 of yacc.c */
22850 #line 5430 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22851  {}
22852  break;
22853 
22854  case 514:
22855 
22856 /* Line 1455 of yacc.c */
22857 #line 5435 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22858  {
22859  partition_info *part_info= Lex->part_info;
22860  if (part_info->subpart_field_list.push_back((yyvsp[(1) - (1)].lex_str).str))
22861  {
22862  mem_alloc_error(1);
22863  MYSQL_YYABORT;
22864  }
22865  if (part_info->subpart_field_list.elements > MAX_REF_PARTS)
22866  {
22867  my_error(ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
22868  "list of subpartition fields");
22869  MYSQL_YYABORT;
22870  }
22871  }
22872  break;
22873 
22874  case 515:
22875 
22876 /* Line 1455 of yacc.c */
22877 #line 5453 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22878  {
22879  LEX *lex= Lex;
22880  bool not_corr_func;
22881  not_corr_func= !lex->safe_to_cache_query;
22882  lex->safe_to_cache_query= 1;
22883  if (not_corr_func)
22884  {
22885  my_parse_error(ER(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR));
22886  MYSQL_YYABORT;
22887  }
22888  (yyval.item)=(yyvsp[(1) - (1)].item);
22889  }
22890  break;
22891 
22892  case 516:
22893 
22894 /* Line 1455 of yacc.c */
22895 #line 5468 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22896  {}
22897  break;
22898 
22899  case 517:
22900 
22901 /* Line 1455 of yacc.c */
22902 #line 5470 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22903  {
22904  uint num_parts= (yyvsp[(2) - (2)].ulong_num);
22905  LEX *lex= Lex;
22906  if (num_parts == 0)
22907  {
22908  my_error(ER_NO_PARTS_ERROR, MYF(0), "subpartitions");
22909  MYSQL_YYABORT;
22910  }
22911  lex->part_info->num_subparts= num_parts;
22912  lex->part_info->use_default_num_subpartitions= FALSE;
22913  }
22914  break;
22915 
22916  case 518:
22917 
22918 /* Line 1455 of yacc.c */
22919 #line 5485 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22920  {
22921  partition_info *part_info= Lex->part_info;
22922  if (part_info->part_type == RANGE_PARTITION)
22923  {
22924  my_error(ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
22925  "RANGE");
22926  MYSQL_YYABORT;
22927  }
22928  else if (part_info->part_type == LIST_PARTITION)
22929  {
22930  my_error(ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
22931  "LIST");
22932  MYSQL_YYABORT;
22933  }
22934  }
22935  break;
22936 
22937  case 519:
22938 
22939 /* Line 1455 of yacc.c */
22940 #line 5501 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22941  {
22942  partition_info *part_info= Lex->part_info;
22943  uint count_curr_parts= part_info->partitions.elements;
22944  if (part_info->num_parts != 0)
22945  {
22946  if (part_info->num_parts !=
22947  count_curr_parts)
22948  {
22949  my_parse_error(ER(ER_PARTITION_WRONG_NO_PART_ERROR));
22950  MYSQL_YYABORT;
22951  }
22952  }
22953  else if (count_curr_parts > 0)
22954  {
22955  part_info->num_parts= count_curr_parts;
22956  }
22957  part_info->count_curr_subparts= 0;
22958  }
22959  break;
22960 
22961  case 520:
22962 
22963 /* Line 1455 of yacc.c */
22964 #line 5522 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22965  {}
22966  break;
22967 
22968  case 521:
22969 
22970 /* Line 1455 of yacc.c */
22971 #line 5523 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22972  {}
22973  break;
22974 
22975  case 522:
22976 
22977 /* Line 1455 of yacc.c */
22978 #line 5528 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
22979  {
22980  partition_info *part_info= Lex->part_info;
22981  partition_element *p_elem= new partition_element();
22982 
22983  if (!p_elem || part_info->partitions.push_back(p_elem))
22984  {
22985  mem_alloc_error(sizeof(partition_element));
22986  MYSQL_YYABORT;
22987  }
22988  p_elem->part_state= PART_NORMAL;
22989  part_info->curr_part_elem= p_elem;
22990  part_info->current_partition= p_elem;
22991  part_info->use_default_partitions= FALSE;
22992  part_info->use_default_num_partitions= FALSE;
22993  }
22994  break;
22995 
22996  case 523:
22997 
22998 /* Line 1455 of yacc.c */
22999 #line 5547 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23000  {}
23001  break;
23002 
23003  case 524:
23004 
23005 /* Line 1455 of yacc.c */
23006 #line 5552 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23007  {
23008  partition_info *part_info= Lex->part_info;
23009  partition_element *p_elem= part_info->curr_part_elem;
23010  p_elem->partition_name= (yyvsp[(1) - (1)].lex_str).str;
23011  }
23012  break;
23013 
23014  case 525:
23015 
23016 /* Line 1455 of yacc.c */
23017 #line 5561 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23018  {
23019  LEX *lex= Lex;
23020  partition_info *part_info= lex->part_info;
23021  if (! lex->is_partition_management())
23022  {
23023  if (part_info->part_type == RANGE_PARTITION)
23024  {
23025  my_error(ER_PARTITION_REQUIRES_VALUES_ERROR, MYF(0),
23026  "RANGE", "LESS THAN");
23027  MYSQL_YYABORT;
23028  }
23029  if (part_info->part_type == LIST_PARTITION)
23030  {
23031  my_error(ER_PARTITION_REQUIRES_VALUES_ERROR, MYF(0),
23032  "LIST", "IN");
23033  MYSQL_YYABORT;
23034  }
23035  }
23036  else
23037  part_info->part_type= HASH_PARTITION;
23038  }
23039  break;
23040 
23041  case 526:
23042 
23043 /* Line 1455 of yacc.c */
23044 #line 5583 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23045  {
23046  LEX *lex= Lex;
23047  partition_info *part_info= lex->part_info;
23048  if (! lex->is_partition_management())
23049  {
23050  if (part_info->part_type != RANGE_PARTITION)
23051  {
23052  my_error(ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
23053  "RANGE", "LESS THAN");
23054  MYSQL_YYABORT;
23055  }
23056  }
23057  else
23058  part_info->part_type= RANGE_PARTITION;
23059  }
23060  break;
23061 
23062  case 527:
23063 
23064 /* Line 1455 of yacc.c */
23065 #line 5598 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23066  {}
23067  break;
23068 
23069  case 528:
23070 
23071 /* Line 1455 of yacc.c */
23072 #line 5600 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23073  {
23074  LEX *lex= Lex;
23075  partition_info *part_info= lex->part_info;
23076  if (! lex->is_partition_management())
23077  {
23078  if (part_info->part_type != LIST_PARTITION)
23079  {
23080  my_error(ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
23081  "LIST", "IN");
23082  MYSQL_YYABORT;
23083  }
23084  }
23085  else
23086  part_info->part_type= LIST_PARTITION;
23087  }
23088  break;
23089 
23090  case 529:
23091 
23092 /* Line 1455 of yacc.c */
23093 #line 5615 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23094  {}
23095  break;
23096 
23097  case 530:
23098 
23099 /* Line 1455 of yacc.c */
23100 #line 5620 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23101  {
23102  partition_info *part_info= Lex->part_info;
23103 
23104  if (part_info->num_columns &&
23105  part_info->num_columns != 1U)
23106  {
23107  part_info->print_debug("Kilroy II", NULL);
23108  my_parse_error(ER(ER_PARTITION_COLUMN_LIST_ERROR));
23109  MYSQL_YYABORT;
23110  }
23111  else
23112  part_info->num_columns= 1U;
23113  if (part_info->init_column_part())
23114  {
23115  MYSQL_YYABORT;
23116  }
23117  if (part_info->add_max_value())
23118  {
23119  MYSQL_YYABORT;
23120  }
23121  }
23122  break;
23123 
23124  case 531:
23125 
23126 /* Line 1455 of yacc.c */
23127 #line 5641 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23128  {}
23129  break;
23130 
23131  case 532:
23132 
23133 /* Line 1455 of yacc.c */
23134 #line 5646 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23135  {
23136  LEX *lex= Lex;
23137  partition_info *part_info= lex->part_info;
23138  part_info->print_debug("part_values_in: part_value_item", NULL);
23139 
23140  if (part_info->num_columns != 1U)
23141  {
23142  if (!lex->is_partition_management() ||
23143  part_info->num_columns == 0 ||
23144  part_info->num_columns > MAX_REF_PARTS)
23145  {
23146  part_info->print_debug("Kilroy III", NULL);
23147  my_parse_error(ER(ER_PARTITION_COLUMN_LIST_ERROR));
23148  MYSQL_YYABORT;
23149  }
23150  /*
23151  Reorganize the current large array into a list of small
23152  arrays with one entry in each array. This can happen
23153  in the first partition of an ALTER TABLE statement where
23154  we ADD or REORGANIZE partitions. Also can only happen
23155  for LIST [COLUMNS] partitions.
23156  */
23157  if (part_info->reorganize_into_single_field_col_val())
23158  {
23159  MYSQL_YYABORT;
23160  }
23161  }
23162  }
23163  break;
23164 
23165  case 533:
23166 
23167 /* Line 1455 of yacc.c */
23168 #line 5675 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23169  {
23170  partition_info *part_info= Lex->part_info;
23171  if (part_info->num_columns < 2U)
23172  {
23173  my_parse_error(ER(ER_ROW_SINGLE_PARTITION_FIELD_ERROR));
23174  MYSQL_YYABORT;
23175  }
23176  }
23177  break;
23178 
23179  case 534:
23180 
23181 /* Line 1455 of yacc.c */
23182 #line 5686 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23183  {}
23184  break;
23185 
23186  case 535:
23187 
23188 /* Line 1455 of yacc.c */
23189 #line 5687 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23190  {}
23191  break;
23192 
23193  case 536:
23194 
23195 /* Line 1455 of yacc.c */
23196 #line 5692 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23197  {
23198  partition_info *part_info= Lex->part_info;
23199  part_info->print_debug("( part_value_item", NULL);
23200  /* Initialisation code needed for each list of value expressions */
23201  if (!(part_info->part_type == LIST_PARTITION &&
23202  part_info->num_columns == 1U) &&
23203  part_info->init_column_part())
23204  {
23205  MYSQL_YYABORT;
23206  }
23207  }
23208  break;
23209 
23210  case 537:
23211 
23212 /* Line 1455 of yacc.c */
23213 #line 5703 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23214  {}
23215  break;
23216 
23217  case 538:
23218 
23219 /* Line 1455 of yacc.c */
23220 #line 5705 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23221  {
23222  partition_info *part_info= Lex->part_info;
23223  part_info->print_debug(") part_value_item", NULL);
23224  if (part_info->num_columns == 0)
23225  part_info->num_columns= part_info->curr_list_object;
23226  if (part_info->num_columns != part_info->curr_list_object)
23227  {
23228  /*
23229  All value items lists must be of equal length, in some cases
23230  which is covered by the above if-statement we don't know yet
23231  how many columns is in the partition so the assignment above
23232  ensures that we only report errors when we know we have an
23233  error.
23234  */
23235  part_info->print_debug("Kilroy I", NULL);
23236  my_parse_error(ER(ER_PARTITION_COLUMN_LIST_ERROR));
23237  MYSQL_YYABORT;
23238  }
23239  part_info->curr_list_object= 0;
23240  }
23241  break;
23242 
23243  case 539:
23244 
23245 /* Line 1455 of yacc.c */
23246 #line 5728 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23247  {}
23248  break;
23249 
23250  case 540:
23251 
23252 /* Line 1455 of yacc.c */
23253 #line 5729 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23254  {}
23255  break;
23256 
23257  case 541:
23258 
23259 /* Line 1455 of yacc.c */
23260 #line 5734 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23261  {
23262  partition_info *part_info= Lex->part_info;
23263  if (part_info->part_type == LIST_PARTITION)
23264  {
23265  my_parse_error(ER(ER_MAXVALUE_IN_VALUES_IN));
23266  MYSQL_YYABORT;
23267  }
23268  if (part_info->add_max_value())
23269  {
23270  MYSQL_YYABORT;
23271  }
23272  }
23273  break;
23274 
23275  case 542:
23276 
23277 /* Line 1455 of yacc.c */
23278 #line 5747 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23279  {
23280  LEX *lex= Lex;
23281  partition_info *part_info= lex->part_info;
23282  Item *part_expr= (yyvsp[(1) - (1)].item);
23283 
23284  if (!lex->safe_to_cache_query)
23285  {
23286  my_parse_error(ER(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR));
23287  MYSQL_YYABORT;
23288  }
23289  if (part_info->add_column_list_value(YYTHD, part_expr))
23290  {
23291  MYSQL_YYABORT;
23292  }
23293  }
23294  break;
23295 
23296  case 543:
23297 
23298 /* Line 1455 of yacc.c */
23299 #line 5767 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23300  {
23301  partition_info *part_info= Lex->part_info;
23302  if (part_info->num_subparts != 0 &&
23303  !part_info->use_default_subpartitions)
23304  {
23305  /*
23306  We come here when we have defined subpartitions on the first
23307  partition but not on all the subsequent partitions.
23308  */
23309  my_parse_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR));
23310  MYSQL_YYABORT;
23311  }
23312  }
23313  break;
23314 
23315  case 544:
23316 
23317 /* Line 1455 of yacc.c */
23318 #line 5781 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23319  {
23320  partition_info *part_info= Lex->part_info;
23321  if (part_info->num_subparts != 0)
23322  {
23323  if (part_info->num_subparts !=
23324  part_info->count_curr_subparts)
23325  {
23326  my_parse_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR));
23327  MYSQL_YYABORT;
23328  }
23329  }
23330  else if (part_info->count_curr_subparts > 0)
23331  {
23332  if (part_info->partitions.elements > 1)
23333  {
23334  my_parse_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR));
23335  MYSQL_YYABORT;
23336  }
23337  part_info->num_subparts= part_info->count_curr_subparts;
23338  }
23339  part_info->count_curr_subparts= 0;
23340  }
23341  break;
23342 
23343  case 545:
23344 
23345 /* Line 1455 of yacc.c */
23346 #line 5806 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23347  {}
23348  break;
23349 
23350  case 546:
23351 
23352 /* Line 1455 of yacc.c */
23353 #line 5807 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23354  {}
23355  break;
23356 
23357  case 547:
23358 
23359 /* Line 1455 of yacc.c */
23360 #line 5812 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23361  {
23362  partition_info *part_info= Lex->part_info;
23363  partition_element *curr_part= part_info->current_partition;
23364  partition_element *sub_p_elem= new partition_element(curr_part);
23365  if (part_info->use_default_subpartitions &&
23366  part_info->partitions.elements >= 2)
23367  {
23368  /*
23369  create table t1 (a int)
23370  partition by list (a) subpartition by hash (a)
23371  (partition p0 values in (1),
23372  partition p1 values in (2) subpartition sp11);
23373  causes use to arrive since we are on the second
23374  partition, but still use_default_subpartitions
23375  is set. When we come here we're processing at least
23376  the second partition (the current partition processed
23377  have already been put into the partitions list.
23378  */
23379  my_parse_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR));
23380  MYSQL_YYABORT;
23381  }
23382  if (!sub_p_elem ||
23383  curr_part->subpartitions.push_back(sub_p_elem))
23384  {
23385  mem_alloc_error(sizeof(partition_element));
23386  MYSQL_YYABORT;
23387  }
23388  part_info->curr_part_elem= sub_p_elem;
23389  part_info->use_default_subpartitions= FALSE;
23390  part_info->use_default_num_subpartitions= FALSE;
23391  part_info->count_curr_subparts++;
23392  }
23393  break;
23394 
23395  case 548:
23396 
23397 /* Line 1455 of yacc.c */
23398 #line 5844 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23399  {}
23400  break;
23401 
23402  case 549:
23403 
23404 /* Line 1455 of yacc.c */
23405 #line 5849 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23406  { Lex->part_info->curr_part_elem->partition_name= (yyvsp[(1) - (1)].lex_str).str; }
23407  break;
23408 
23409  case 550:
23410 
23411 /* Line 1455 of yacc.c */
23412 #line 5853 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23413  {}
23414  break;
23415 
23416  case 551:
23417 
23418 /* Line 1455 of yacc.c */
23419 #line 5854 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23420  {}
23421  break;
23422 
23423  case 552:
23424 
23425 /* Line 1455 of yacc.c */
23426 #line 5858 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23427  {}
23428  break;
23429 
23430  case 553:
23431 
23432 /* Line 1455 of yacc.c */
23433 #line 5859 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23434  {}
23435  break;
23436 
23437  case 554:
23438 
23439 /* Line 1455 of yacc.c */
23440 #line 5864 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23441  { Lex->part_info->curr_part_elem->tablespace_name= (yyvsp[(3) - (3)].lex_str).str; }
23442  break;
23443 
23444  case 555:
23445 
23446 /* Line 1455 of yacc.c */
23447 #line 5866 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23448  {
23449  partition_info *part_info= Lex->part_info;
23450  part_info->curr_part_elem->engine_type= (yyvsp[(4) - (4)].db_type);
23451  part_info->default_engine_type= (yyvsp[(4) - (4)].db_type);
23452  }
23453  break;
23454 
23455  case 556:
23456 
23457 /* Line 1455 of yacc.c */
23458 #line 5872 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23459  { Lex->part_info->curr_part_elem->nodegroup_id= (uint16) (yyvsp[(3) - (3)].ulong_num); }
23460  break;
23461 
23462  case 557:
23463 
23464 /* Line 1455 of yacc.c */
23465 #line 5874 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23466  { Lex->part_info->curr_part_elem->part_max_rows= (ha_rows) (yyvsp[(3) - (3)].ulonglong_number); }
23467  break;
23468 
23469  case 558:
23470 
23471 /* Line 1455 of yacc.c */
23472 #line 5876 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23473  { Lex->part_info->curr_part_elem->part_min_rows= (ha_rows) (yyvsp[(3) - (3)].ulonglong_number); }
23474  break;
23475 
23476  case 559:
23477 
23478 /* Line 1455 of yacc.c */
23479 #line 5878 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23480  { Lex->part_info->curr_part_elem->data_file_name= (yyvsp[(4) - (4)].lex_str).str; }
23481  break;
23482 
23483  case 560:
23484 
23485 /* Line 1455 of yacc.c */
23486 #line 5880 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23487  { Lex->part_info->curr_part_elem->index_file_name= (yyvsp[(4) - (4)].lex_str).str; }
23488  break;
23489 
23490  case 561:
23491 
23492 /* Line 1455 of yacc.c */
23493 #line 5882 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23494  { Lex->part_info->curr_part_elem->part_comment= (yyvsp[(3) - (3)].lex_str).str; }
23495  break;
23496 
23497  case 562:
23498 
23499 /* Line 1455 of yacc.c */
23500 #line 5891 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23501  {
23502  LEX *lex=Lex;
23503  if (lex->sql_command == SQLCOM_INSERT)
23504  lex->sql_command= SQLCOM_INSERT_SELECT;
23505  else if (lex->sql_command == SQLCOM_REPLACE)
23506  lex->sql_command= SQLCOM_REPLACE_SELECT;
23507  /*
23508  The following work only with the local list, the global list
23509  is created correctly in this case
23510  */
23511  lex->current_select->table_list.save_and_clear(&lex->save_list);
23512  mysql_init_select(lex);
23513  lex->current_select->parsing_place= SELECT_LIST;
23514  }
23515  break;
23516 
23517  case 563:
23518 
23519 /* Line 1455 of yacc.c */
23520 #line 5906 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23521  {
23522  Select->parsing_place= NO_MATTER;
23523  }
23524  break;
23525 
23526  case 564:
23527 
23528 /* Line 1455 of yacc.c */
23529 #line 5910 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23530  {
23531  /*
23532  The following work only with the local list, the global list
23533  is created correctly in this case
23534  */
23535  Lex->current_select->table_list.push_front(&Lex->save_list);
23536  }
23537  break;
23538 
23539  case 565:
23540 
23541 /* Line 1455 of yacc.c */
23542 #line 5920 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23543  {}
23544  break;
23545 
23546  case 566:
23547 
23548 /* Line 1455 of yacc.c */
23549 #line 5921 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23550  {}
23551  break;
23552 
23553  case 567:
23554 
23555 /* Line 1455 of yacc.c */
23556 #line 5925 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23557  {}
23558  break;
23559 
23560  case 568:
23561 
23562 /* Line 1455 of yacc.c */
23563 #line 5926 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23564  {}
23565  break;
23566 
23567  case 569:
23568 
23569 /* Line 1455 of yacc.c */
23570 #line 5930 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23571  {}
23572  break;
23573 
23574  case 570:
23575 
23576 /* Line 1455 of yacc.c */
23577 #line 5931 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23578  {}
23579  break;
23580 
23581  case 571:
23582 
23583 /* Line 1455 of yacc.c */
23584 #line 5935 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23585  {}
23586  break;
23587 
23588  case 572:
23589 
23590 /* Line 1455 of yacc.c */
23591 #line 5936 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23592  {}
23593  break;
23594 
23595  case 573:
23596 
23597 /* Line 1455 of yacc.c */
23598 #line 5940 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23599  { (yyval.num)= 0; }
23600  break;
23601 
23602  case 574:
23603 
23604 /* Line 1455 of yacc.c */
23605 #line 5941 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23606  { (yyval.num)= (yyvsp[(1) - (1)].num);}
23607  break;
23608 
23609  case 575:
23610 
23611 /* Line 1455 of yacc.c */
23612 #line 5945 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23613  { (yyval.num)=(yyvsp[(1) - (1)].num); }
23614  break;
23615 
23616  case 576:
23617 
23618 /* Line 1455 of yacc.c */
23619 #line 5946 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23620  { (yyval.num)= (yyvsp[(1) - (2)].num) | (yyvsp[(2) - (2)].num); }
23621  break;
23622 
23623  case 577:
23624 
23625 /* Line 1455 of yacc.c */
23626 #line 5950 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23627  { (yyval.num)=HA_LEX_CREATE_TMP_TABLE; }
23628  break;
23629 
23630  case 578:
23631 
23632 /* Line 1455 of yacc.c */
23633 #line 5954 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23634  { (yyval.num)= 0; }
23635  break;
23636 
23637  case 579:
23638 
23639 /* Line 1455 of yacc.c */
23640 #line 5955 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23641  { (yyval.num)=HA_LEX_CREATE_IF_NOT_EXISTS; }
23642  break;
23643 
23644  case 587:
23645 
23646 /* Line 1455 of yacc.c */
23647 #line 5976 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23648  {
23649  Lex->create_info.db_type= (yyvsp[(3) - (3)].db_type);
23650  Lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
23651  }
23652  break;
23653 
23654  case 588:
23655 
23656 /* Line 1455 of yacc.c */
23657 #line 5981 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23658  {
23659  Lex->create_info.max_rows= (yyvsp[(3) - (3)].ulonglong_number);
23660  Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS;
23661  }
23662  break;
23663 
23664  case 589:
23665 
23666 /* Line 1455 of yacc.c */
23667 #line 5986 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23668  {
23669  Lex->create_info.min_rows= (yyvsp[(3) - (3)].ulonglong_number);
23670  Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS;
23671  }
23672  break;
23673 
23674  case 590:
23675 
23676 /* Line 1455 of yacc.c */
23677 #line 5991 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23678  {
23679  Lex->create_info.avg_row_length=(yyvsp[(3) - (3)].ulong_num);
23680  Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH;
23681  }
23682  break;
23683 
23684  case 591:
23685 
23686 /* Line 1455 of yacc.c */
23687 #line 5996 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23688  {
23689  Lex->create_info.password=(yyvsp[(3) - (3)].lex_str).str;
23690  Lex->create_info.used_fields|= HA_CREATE_USED_PASSWORD;
23691  }
23692  break;
23693 
23694  case 592:
23695 
23696 /* Line 1455 of yacc.c */
23697 #line 6001 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23698  {
23699  Lex->create_info.comment=(yyvsp[(3) - (3)].lex_str);
23700  Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
23701  }
23702  break;
23703 
23704  case 593:
23705 
23706 /* Line 1455 of yacc.c */
23707 #line 6006 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23708  {
23709  Lex->create_info.auto_increment_value=(yyvsp[(3) - (3)].ulonglong_number);
23710  Lex->create_info.used_fields|= HA_CREATE_USED_AUTO;
23711  }
23712  break;
23713 
23714  case 594:
23715 
23716 /* Line 1455 of yacc.c */
23717 #line 6011 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23718  {
23719  switch((yyvsp[(3) - (3)].ulong_num)) {
23720  case 0:
23721  Lex->create_info.table_options|= HA_OPTION_NO_PACK_KEYS;
23722  break;
23723  case 1:
23724  Lex->create_info.table_options|= HA_OPTION_PACK_KEYS;
23725  break;
23726  default:
23727  my_parse_error(ER(ER_SYNTAX_ERROR));
23728  MYSQL_YYABORT;
23729  }
23730  Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
23731  }
23732  break;
23733 
23734  case 595:
23735 
23736 /* Line 1455 of yacc.c */
23737 #line 6026 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23738  {
23739  Lex->create_info.table_options&=
23740  ~(HA_OPTION_PACK_KEYS | HA_OPTION_NO_PACK_KEYS);
23741  Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
23742  }
23743  break;
23744 
23745  case 596:
23746 
23747 /* Line 1455 of yacc.c */
23748 #line 6032 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23749  {
23750  switch((yyvsp[(3) - (3)].ulong_num)) {
23751  case 0:
23752  Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_OFF;
23753  break;
23754  case 1:
23755  Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_ON;
23756  break;
23757  default:
23758  my_parse_error(ER(ER_SYNTAX_ERROR));
23759  MYSQL_YYABORT;
23760  }
23761  Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
23762  }
23763  break;
23764 
23765  case 597:
23766 
23767 /* Line 1455 of yacc.c */
23768 #line 6047 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23769  {
23770  Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_DEFAULT;
23771  Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
23772  }
23773  break;
23774 
23775  case 598:
23776 
23777 /* Line 1455 of yacc.c */
23778 #line 6052 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23779  {
23780  switch((yyvsp[(3) - (3)].ulong_num)) {
23781  case 0:
23782  Lex->create_info.table_options|= HA_OPTION_NO_STATS_PERSISTENT;
23783  break;
23784  case 1:
23785  Lex->create_info.table_options|= HA_OPTION_STATS_PERSISTENT;
23786  break;
23787  default:
23788  my_parse_error(ER(ER_SYNTAX_ERROR));
23789  MYSQL_YYABORT;
23790  }
23791  Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
23792  }
23793  break;
23794 
23795  case 599:
23796 
23797 /* Line 1455 of yacc.c */
23798 #line 6067 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23799  {
23800  Lex->create_info.table_options&=
23801  ~(HA_OPTION_STATS_PERSISTENT | HA_OPTION_NO_STATS_PERSISTENT);
23802  Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
23803  }
23804  break;
23805 
23806  case 600:
23807 
23808 /* Line 1455 of yacc.c */
23809 #line 6073 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23810  {
23811  /* From user point of view STATS_SAMPLE_PAGES can be specified as
23812  STATS_SAMPLE_PAGES=N (where 0<N<=65535, it does not make sense to
23813  scan 0 pages) or STATS_SAMPLE_PAGES=default. Internally we record
23814  =default as 0. See create_frm() in sql/table.cc, we use only two
23815  bytes for stats_sample_pages and this is why we do not allow
23816  larger values. 65535 pages, 16kb each means to sample 1GB, which
23817  is impractical. If at some point this needs to be extended, then
23818  we can store the higher bits from stats_sample_pages in .frm too. */
23819  if ((yyvsp[(3) - (3)].ulong_num) == 0 || (yyvsp[(3) - (3)].ulong_num) > 0xffff)
23820  {
23821  my_parse_error(ER(ER_SYNTAX_ERROR));
23822  MYSQL_YYABORT;
23823  }
23824  Lex->create_info.stats_sample_pages=(yyvsp[(3) - (3)].ulong_num);
23825  Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
23826  }
23827  break;
23828 
23829  case 601:
23830 
23831 /* Line 1455 of yacc.c */
23832 #line 6091 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23833  {
23834  Lex->create_info.stats_sample_pages=0;
23835  Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
23836  }
23837  break;
23838 
23839  case 602:
23840 
23841 /* Line 1455 of yacc.c */
23842 #line 6096 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23843  {
23844  Lex->create_info.table_options|= (yyvsp[(3) - (3)].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
23845  Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
23846  }
23847  break;
23848 
23849  case 603:
23850 
23851 /* Line 1455 of yacc.c */
23852 #line 6101 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23853  {
23854  Lex->create_info.table_options|= (yyvsp[(3) - (3)].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
23855  Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
23856  }
23857  break;
23858 
23859  case 604:
23860 
23861 /* Line 1455 of yacc.c */
23862 #line 6106 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23863  {
23864  Lex->create_info.table_options|= (yyvsp[(3) - (3)].ulong_num) ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE;
23865  Lex->create_info.used_fields|= HA_CREATE_USED_DELAY_KEY_WRITE;
23866  }
23867  break;
23868 
23869  case 605:
23870 
23871 /* Line 1455 of yacc.c */
23872 #line 6111 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23873  {
23874  Lex->create_info.row_type= (yyvsp[(3) - (3)].row_type);
23875  Lex->create_info.used_fields|= HA_CREATE_USED_ROW_FORMAT;
23876  }
23877  break;
23878 
23879  case 606:
23880 
23881 /* Line 1455 of yacc.c */
23882 #line 6116 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23883  {
23884  Lex->select_lex.table_list.save_and_clear(&Lex->save_list);
23885  }
23886  break;
23887 
23888  case 607:
23889 
23890 /* Line 1455 of yacc.c */
23891 #line 6120 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23892  {
23893  /*
23894  Move the union list to the merge_list and exclude its tables
23895  from the global list.
23896  */
23897  LEX *lex=Lex;
23898  lex->create_info.merge_list= lex->select_lex.table_list;
23899  lex->select_lex.table_list= lex->save_list;
23900  /*
23901  When excluding union list from the global list we assume that
23902  elements of the former immediately follow elements which represent
23903  table being created/altered and parent tables.
23904  */
23905  TABLE_LIST *last_non_sel_table= lex->create_last_non_select_table;
23906  DBUG_ASSERT(last_non_sel_table->next_global ==
23907  lex->create_info.merge_list.first);
23908  last_non_sel_table->next_global= 0;
23909  Lex->query_tables_last= &last_non_sel_table->next_global;
23910 
23911  lex->create_info.used_fields|= HA_CREATE_USED_UNION;
23912  }
23913  break;
23914 
23915  case 610:
23916 
23917 /* Line 1455 of yacc.c */
23918 #line 6144 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23919  {
23920  Lex->create_info.merge_insert_method= (yyvsp[(3) - (3)].ulong_num);
23921  Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD;
23922  }
23923  break;
23924 
23925  case 611:
23926 
23927 /* Line 1455 of yacc.c */
23928 #line 6149 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23929  {
23930  Lex->create_info.data_file_name= (yyvsp[(4) - (4)].lex_str).str;
23931  Lex->create_info.used_fields|= HA_CREATE_USED_DATADIR;
23932  }
23933  break;
23934 
23935  case 612:
23936 
23937 /* Line 1455 of yacc.c */
23938 #line 6154 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23939  {
23940  Lex->create_info.index_file_name= (yyvsp[(4) - (4)].lex_str).str;
23941  Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR;
23942  }
23943  break;
23944 
23945  case 613:
23946 
23947 /* Line 1455 of yacc.c */
23948 #line 6159 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23949  {Lex->create_info.tablespace= (yyvsp[(2) - (2)].lex_str).str;}
23950  break;
23951 
23952  case 614:
23953 
23954 /* Line 1455 of yacc.c */
23955 #line 6161 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23956  {Lex->create_info.storage_media= HA_SM_DISK;}
23957  break;
23958 
23959  case 615:
23960 
23961 /* Line 1455 of yacc.c */
23962 #line 6163 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23963  {Lex->create_info.storage_media= HA_SM_MEMORY;}
23964  break;
23965 
23966  case 616:
23967 
23968 /* Line 1455 of yacc.c */
23969 #line 6165 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23970  {
23971  Lex->create_info.connect_string.str= (yyvsp[(3) - (3)].lex_str).str;
23972  Lex->create_info.connect_string.length= (yyvsp[(3) - (3)].lex_str).length;
23973  Lex->create_info.used_fields|= HA_CREATE_USED_CONNECTION;
23974  }
23975  break;
23976 
23977  case 617:
23978 
23979 /* Line 1455 of yacc.c */
23980 #line 6171 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23981  {
23982  Lex->create_info.used_fields|= HA_CREATE_USED_KEY_BLOCK_SIZE;
23983  Lex->create_info.key_block_size= (yyvsp[(3) - (3)].ulong_num);
23984  }
23985  break;
23986 
23987  case 618:
23988 
23989 /* Line 1455 of yacc.c */
23990 #line 6179 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
23991  {
23992  HA_CREATE_INFO *cinfo= &Lex->create_info;
23993  if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
23994  cinfo->default_table_charset && (yyvsp[(4) - (4)].charset) &&
23995  !my_charset_same(cinfo->default_table_charset,(yyvsp[(4) - (4)].charset)))
23996  {
23997  my_error(ER_CONFLICTING_DECLARATIONS, MYF(0),
23998  "CHARACTER SET ", cinfo->default_table_charset->csname,
23999  "CHARACTER SET ", (yyvsp[(4) - (4)].charset)->csname);
24000  MYSQL_YYABORT;
24001  }
24002  Lex->create_info.default_table_charset= (yyvsp[(4) - (4)].charset);
24003  Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
24004  }
24005  break;
24006 
24007  case 619:
24008 
24009 /* Line 1455 of yacc.c */
24010 #line 6197 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24011  {
24012  HA_CREATE_INFO *cinfo= &Lex->create_info;
24013  if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
24014  cinfo->default_table_charset && (yyvsp[(4) - (4)].charset) &&
24015  !((yyvsp[(4) - (4)].charset)= merge_charset_and_collation(cinfo->default_table_charset,
24016  (yyvsp[(4) - (4)].charset))))
24017  {
24018  MYSQL_YYABORT;
24019  }
24020 
24021  Lex->create_info.default_table_charset= (yyvsp[(4) - (4)].charset);
24022  Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
24023  }
24024  break;
24025 
24026  case 620:
24027 
24028 /* Line 1455 of yacc.c */
24029 #line 6214 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24030  {
24031  THD *thd= YYTHD;
24032  plugin_ref plugin=
24033  ha_resolve_by_name(thd, &(yyvsp[(1) - (1)].lex_str),
24034  thd->lex->create_info.options & HA_LEX_CREATE_TMP_TABLE);
24035 
24036  if (plugin)
24037  (yyval.db_type)= plugin_data(plugin, handlerton*);
24038  else
24039  {
24040  if (thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION)
24041  {
24042  my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
24043  MYSQL_YYABORT;
24044  }
24045  (yyval.db_type)= 0;
24046  push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
24047  ER_UNKNOWN_STORAGE_ENGINE,
24048  ER(ER_UNKNOWN_STORAGE_ENGINE),
24049  (yyvsp[(1) - (1)].lex_str).str);
24050  }
24051  }
24052  break;
24053 
24054  case 621:
24055 
24056 /* Line 1455 of yacc.c */
24057 #line 6240 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24058  {
24059  THD *thd= YYTHD;
24060  LEX *lex= thd->lex;
24061  plugin_ref plugin=
24062  ha_resolve_by_name(thd, &(yyvsp[(1) - (1)].lex_str),
24063  lex->create_info.options & HA_LEX_CREATE_TMP_TABLE);
24064  if (plugin)
24065  (yyval.db_type)= plugin_data(plugin, handlerton*);
24066  else
24067  {
24068  my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
24069  MYSQL_YYABORT;
24070  }
24071  }
24072  break;
24073 
24074  case 622:
24075 
24076 /* Line 1455 of yacc.c */
24077 #line 6257 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24078  { (yyval.row_type)= ROW_TYPE_DEFAULT; }
24079  break;
24080 
24081  case 623:
24082 
24083 /* Line 1455 of yacc.c */
24084 #line 6258 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24085  { (yyval.row_type)= ROW_TYPE_FIXED; }
24086  break;
24087 
24088  case 624:
24089 
24090 /* Line 1455 of yacc.c */
24091 #line 6259 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24092  { (yyval.row_type)= ROW_TYPE_DYNAMIC; }
24093  break;
24094 
24095  case 625:
24096 
24097 /* Line 1455 of yacc.c */
24098 #line 6260 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24099  { (yyval.row_type)= ROW_TYPE_COMPRESSED; }
24100  break;
24101 
24102  case 626:
24103 
24104 /* Line 1455 of yacc.c */
24105 #line 6261 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24106  { (yyval.row_type)= ROW_TYPE_REDUNDANT; }
24107  break;
24108 
24109  case 627:
24110 
24111 /* Line 1455 of yacc.c */
24112 #line 6262 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24113  { (yyval.row_type)= ROW_TYPE_COMPACT; }
24114  break;
24115 
24116  case 628:
24117 
24118 /* Line 1455 of yacc.c */
24119 #line 6266 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24120  { (yyval.ulong_num)= MERGE_INSERT_DISABLED; }
24121  break;
24122 
24123  case 629:
24124 
24125 /* Line 1455 of yacc.c */
24126 #line 6267 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24127  { (yyval.ulong_num)= MERGE_INSERT_TO_FIRST; }
24128  break;
24129 
24130  case 630:
24131 
24132 /* Line 1455 of yacc.c */
24133 #line 6268 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24134  { (yyval.ulong_num)= MERGE_INSERT_TO_LAST; }
24135  break;
24136 
24137  case 631:
24138 
24139 /* Line 1455 of yacc.c */
24140 #line 6272 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24141  {}
24142  break;
24143 
24144  case 633:
24145 
24146 /* Line 1455 of yacc.c */
24147 #line 6277 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24148  {(yyval.num) = (int) STRING_RESULT; }
24149  break;
24150 
24151  case 634:
24152 
24153 /* Line 1455 of yacc.c */
24154 #line 6278 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24155  {(yyval.num) = (int) REAL_RESULT; }
24156  break;
24157 
24158  case 635:
24159 
24160 /* Line 1455 of yacc.c */
24161 #line 6279 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24162  {(yyval.num) = (int) DECIMAL_RESULT; }
24163  break;
24164 
24165  case 636:
24166 
24167 /* Line 1455 of yacc.c */
24168 #line 6280 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24169  {(yyval.num) = (int) INT_RESULT; }
24170  break;
24171 
24172  case 637:
24173 
24174 /* Line 1455 of yacc.c */
24175 #line 6286 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24176  {
24177  Lex->create_last_non_select_table= Lex->last_table();
24178  }
24179  break;
24180 
24181  case 643:
24182 
24183 /* Line 1455 of yacc.c */
24184 #line 6304 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24185  {
24186  Lex->col_list.empty(); /* Alloced by sql_alloc */
24187  }
24188  break;
24189 
24190  case 644:
24191 
24192 /* Line 1455 of yacc.c */
24193 #line 6311 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24194  {
24195  if (add_create_index (Lex, (yyvsp[(1) - (7)].key_type), (yyvsp[(2) - (7)].lex_str)))
24196  MYSQL_YYABORT;
24197  }
24198  break;
24199 
24200  case 645:
24201 
24202 /* Line 1455 of yacc.c */
24203 #line 6317 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24204  {
24205  if (add_create_index (Lex, (yyvsp[(1) - (8)].key_type), (yyvsp[(3) - (8)].lex_str)))
24206  MYSQL_YYABORT;
24207  }
24208  break;
24209 
24210  case 646:
24211 
24212 /* Line 1455 of yacc.c */
24213 #line 6323 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24214  {
24215  if (add_create_index (Lex, (yyvsp[(1) - (8)].key_type), (yyvsp[(3) - (8)].lex_str)))
24216  MYSQL_YYABORT;
24217  }
24218  break;
24219 
24220  case 647:
24221 
24222 /* Line 1455 of yacc.c */
24223 #line 6329 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24224  {
24225  if (add_create_index (Lex, (yyvsp[(2) - (8)].key_type), (yyvsp[(3) - (8)].lex_str).str ? (yyvsp[(3) - (8)].lex_str) : (yyvsp[(1) - (8)].lex_str)))
24226  MYSQL_YYABORT;
24227  }
24228  break;
24229 
24230  case 648:
24231 
24232 /* Line 1455 of yacc.c */
24233 #line 6334 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24234  {
24235  LEX *lex=Lex;
24236  Key *key= new Foreign_key((yyvsp[(4) - (8)].lex_str).str ? (yyvsp[(4) - (8)].lex_str) : (yyvsp[(1) - (8)].lex_str), lex->col_list,
24237  (yyvsp[(8) - (8)].table)->db,
24238  (yyvsp[(8) - (8)].table)->table,
24239  lex->ref_list,
24240  lex->fk_delete_opt,
24241  lex->fk_update_opt,
24242  lex->fk_match_option);
24243  if (key == NULL)
24244  MYSQL_YYABORT;
24245  lex->alter_info.key_list.push_back(key);
24246  if (add_create_index (lex, Key::MULTIPLE, (yyvsp[(1) - (8)].lex_str).str ? (yyvsp[(1) - (8)].lex_str) : (yyvsp[(4) - (8)].lex_str),
24247  &default_key_create_info, 1))
24248  MYSQL_YYABORT;
24249  /* Only used for ALTER TABLE. Ignored otherwise. */
24250  lex->alter_info.flags|= Alter_info::ADD_FOREIGN_KEY;
24251  }
24252  break;
24253 
24254  case 649:
24255 
24256 /* Line 1455 of yacc.c */
24257 #line 6353 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24258  {
24259  Lex->col_list.empty(); /* Alloced by sql_alloc */
24260  }
24261  break;
24262 
24263  case 653:
24264 
24265 /* Line 1455 of yacc.c */
24266 #line 6368 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24267  { (yyval.lex_str)= null_lex_str; }
24268  break;
24269 
24270  case 654:
24271 
24272 /* Line 1455 of yacc.c */
24273 #line 6369 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24274  { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
24275  break;
24276 
24277  case 655:
24278 
24279 /* Line 1455 of yacc.c */
24280 #line 6373 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24281  { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str); }
24282  break;
24283 
24284  case 656:
24285 
24286 /* Line 1455 of yacc.c */
24287 #line 6378 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24288  {
24289  LEX *lex=Lex;
24290  lex->length=lex->dec=0;
24291  lex->type=0;
24292  lex->default_value= lex->on_update_value= 0;
24293  lex->comment=null_lex_str;
24294  lex->charset=NULL;
24295  }
24296  break;
24297 
24298  case 657:
24299 
24300 /* Line 1455 of yacc.c */
24301 #line 6387 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24302  {
24303  LEX *lex=Lex;
24304  if (add_field_to_list(lex->thd, &(yyvsp[(1) - (4)].lex_str), (enum enum_field_types) (yyvsp[(3) - (4)].num),
24305  lex->length,lex->dec,lex->type,
24306  lex->default_value, lex->on_update_value,
24307  &lex->comment,
24308  lex->change,&lex->interval_list,lex->charset,
24309  lex->uint_geom_type))
24310  MYSQL_YYABORT;
24311  }
24312  break;
24313 
24314  case 658:
24315 
24316 /* Line 1455 of yacc.c */
24317 #line 6400 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24318  { (yyval.num)=(yyvsp[(1) - (3)].num); }
24319  break;
24320 
24321  case 659:
24322 
24323 /* Line 1455 of yacc.c */
24324 #line 6401 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24325  { (yyval.num)=(yyvsp[(1) - (3)].num); }
24326  break;
24327 
24328  case 660:
24329 
24330 /* Line 1455 of yacc.c */
24331 #line 6402 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24332  { (yyval.num)=MYSQL_TYPE_FLOAT; }
24333  break;
24334 
24335  case 661:
24336 
24337 /* Line 1455 of yacc.c */
24338 #line 6404 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24339  {
24340  Lex->length= (char*) "1";
24341  (yyval.num)=MYSQL_TYPE_BIT;
24342  }
24343  break;
24344 
24345  case 662:
24346 
24347 /* Line 1455 of yacc.c */
24348 #line 6409 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24349  {
24350  (yyval.num)=MYSQL_TYPE_BIT;
24351  }
24352  break;
24353 
24354  case 663:
24355 
24356 /* Line 1455 of yacc.c */
24357 #line 6413 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24358  {
24359  Lex->length= (char*) "1";
24360  (yyval.num)=MYSQL_TYPE_TINY;
24361  }
24362  break;
24363 
24364  case 664:
24365 
24366 /* Line 1455 of yacc.c */
24367 #line 6418 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24368  {
24369  Lex->length= (char*) "1";
24370  (yyval.num)=MYSQL_TYPE_TINY;
24371  }
24372  break;
24373 
24374  case 665:
24375 
24376 /* Line 1455 of yacc.c */
24377 #line 6423 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24378  {
24379  (yyval.num)=MYSQL_TYPE_STRING;
24380  }
24381  break;
24382 
24383  case 666:
24384 
24385 /* Line 1455 of yacc.c */
24386 #line 6427 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24387  {
24388  Lex->length= (char*) "1";
24389  (yyval.num)=MYSQL_TYPE_STRING;
24390  }
24391  break;
24392 
24393  case 667:
24394 
24395 /* Line 1455 of yacc.c */
24396 #line 6432 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24397  {
24398  (yyval.num)=MYSQL_TYPE_STRING;
24399  Lex->charset=national_charset_info;
24400  }
24401  break;
24402 
24403  case 668:
24404 
24405 /* Line 1455 of yacc.c */
24406 #line 6437 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24407  {
24408  Lex->length= (char*) "1";
24409  (yyval.num)=MYSQL_TYPE_STRING;
24410  Lex->charset=national_charset_info;
24411  }
24412  break;
24413 
24414  case 669:
24415 
24416 /* Line 1455 of yacc.c */
24417 #line 6443 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24418  {
24419  Lex->charset=&my_charset_bin;
24420  (yyval.num)=MYSQL_TYPE_STRING;
24421  }
24422  break;
24423 
24424  case 670:
24425 
24426 /* Line 1455 of yacc.c */
24427 #line 6448 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24428  {
24429  Lex->length= (char*) "1";
24430  Lex->charset=&my_charset_bin;
24431  (yyval.num)=MYSQL_TYPE_STRING;
24432  }
24433  break;
24434 
24435  case 671:
24436 
24437 /* Line 1455 of yacc.c */
24438 #line 6454 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24439  {
24440  (yyval.num)= MYSQL_TYPE_VARCHAR;
24441  }
24442  break;
24443 
24444  case 672:
24445 
24446 /* Line 1455 of yacc.c */
24447 #line 6458 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24448  {
24449  (yyval.num)= MYSQL_TYPE_VARCHAR;
24450  Lex->charset=national_charset_info;
24451  }
24452  break;
24453 
24454  case 673:
24455 
24456 /* Line 1455 of yacc.c */
24457 #line 6463 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24458  {
24459  Lex->charset=&my_charset_bin;
24460  (yyval.num)= MYSQL_TYPE_VARCHAR;
24461  }
24462  break;
24463 
24464  case 674:
24465 
24466 /* Line 1455 of yacc.c */
24467 #line 6468 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24468  {
24469  if (Lex->length)
24470  {
24471  errno= 0;
24472  ulong length= strtoul(Lex->length, NULL, 10);
24473  if (errno == 0 && length <= MAX_FIELD_BLOBLENGTH && length != 4)
24474  {
24475  /* Reset unsupported positive column width to default value */
24476  Lex->length= NULL;
24477  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
24478  ER_INVALID_YEAR_COLUMN_LENGTH,
24479  ER(ER_INVALID_YEAR_COLUMN_LENGTH),
24480  length);
24481  }
24482  }
24483  (yyval.num)=MYSQL_TYPE_YEAR;
24484  }
24485  break;
24486 
24487  case 675:
24488 
24489 /* Line 1455 of yacc.c */
24490 #line 6486 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24491  { (yyval.num)=MYSQL_TYPE_DATE; }
24492  break;
24493 
24494  case 676:
24495 
24496 /* Line 1455 of yacc.c */
24497 #line 6488 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24498  { (yyval.num)= MYSQL_TYPE_TIME2; }
24499  break;
24500 
24501  case 677:
24502 
24503 /* Line 1455 of yacc.c */
24504 #line 6490 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24505  {
24506  if (YYTHD->variables.sql_mode & MODE_MAXDB)
24507  (yyval.num)=MYSQL_TYPE_DATETIME2;
24508  else
24509  {
24510  /*
24511  Unlike other types TIMESTAMP fields are NOT NULL by default.
24512  This behavior is deprecated now.
24513  */
24514  if (!YYTHD->variables.explicit_defaults_for_timestamp)
24515  Lex->type|= NOT_NULL_FLAG;
24516 
24517  (yyval.num)=MYSQL_TYPE_TIMESTAMP2;
24518  }
24519  }
24520  break;
24521 
24522  case 678:
24523 
24524 /* Line 1455 of yacc.c */
24525 #line 6506 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24526  { (yyval.num)= MYSQL_TYPE_DATETIME2; }
24527  break;
24528 
24529  case 679:
24530 
24531 /* Line 1455 of yacc.c */
24532 #line 6508 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24533  {
24534  Lex->charset=&my_charset_bin;
24535  (yyval.num)=MYSQL_TYPE_TINY_BLOB;
24536  }
24537  break;
24538 
24539  case 680:
24540 
24541 /* Line 1455 of yacc.c */
24542 #line 6513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24543  {
24544  Lex->charset=&my_charset_bin;
24545  (yyval.num)=MYSQL_TYPE_BLOB;
24546  }
24547  break;
24548 
24549  case 681:
24550 
24551 /* Line 1455 of yacc.c */
24552 #line 6518 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24553  {
24554 #ifdef HAVE_SPATIAL
24555  Lex->charset=&my_charset_bin;
24556  Lex->uint_geom_type= (uint)(yyvsp[(1) - (1)].num);
24557  (yyval.num)=MYSQL_TYPE_GEOMETRY;
24558 #else
24559  my_error(ER_FEATURE_DISABLED, MYF(0),
24560  sym_group_geom.name, sym_group_geom.needed_define);
24561  MYSQL_YYABORT;
24562 #endif
24563  }
24564  break;
24565 
24566  case 682:
24567 
24568 /* Line 1455 of yacc.c */
24569 #line 6530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24570  {
24571  Lex->charset=&my_charset_bin;
24572  (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB;
24573  }
24574  break;
24575 
24576  case 683:
24577 
24578 /* Line 1455 of yacc.c */
24579 #line 6535 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24580  {
24581  Lex->charset=&my_charset_bin;
24582  (yyval.num)=MYSQL_TYPE_LONG_BLOB;
24583  }
24584  break;
24585 
24586  case 684:
24587 
24588 /* Line 1455 of yacc.c */
24589 #line 6540 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24590  {
24591  Lex->charset=&my_charset_bin;
24592  (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB;
24593  }
24594  break;
24595 
24596  case 685:
24597 
24598 /* Line 1455 of yacc.c */
24599 #line 6545 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24600  { (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; }
24601  break;
24602 
24603  case 686:
24604 
24605 /* Line 1455 of yacc.c */
24606 #line 6547 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24607  { (yyval.num)=MYSQL_TYPE_TINY_BLOB; }
24608  break;
24609 
24610  case 687:
24611 
24612 /* Line 1455 of yacc.c */
24613 #line 6549 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24614  { (yyval.num)=MYSQL_TYPE_BLOB; }
24615  break;
24616 
24617  case 688:
24618 
24619 /* Line 1455 of yacc.c */
24620 #line 6551 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24621  { (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; }
24622  break;
24623 
24624  case 689:
24625 
24626 /* Line 1455 of yacc.c */
24627 #line 6553 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24628  { (yyval.num)=MYSQL_TYPE_LONG_BLOB; }
24629  break;
24630 
24631  case 690:
24632 
24633 /* Line 1455 of yacc.c */
24634 #line 6555 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24635  { (yyval.num)=MYSQL_TYPE_NEWDECIMAL;}
24636  break;
24637 
24638  case 691:
24639 
24640 /* Line 1455 of yacc.c */
24641 #line 6557 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24642  { (yyval.num)=MYSQL_TYPE_NEWDECIMAL;}
24643  break;
24644 
24645  case 692:
24646 
24647 /* Line 1455 of yacc.c */
24648 #line 6559 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24649  { (yyval.num)=MYSQL_TYPE_NEWDECIMAL;}
24650  break;
24651 
24652  case 693:
24653 
24654 /* Line 1455 of yacc.c */
24655 #line 6561 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24656  {Lex->interval_list.empty();}
24657  break;
24658 
24659  case 694:
24660 
24661 /* Line 1455 of yacc.c */
24662 #line 6563 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24663  { (yyval.num)=MYSQL_TYPE_ENUM; }
24664  break;
24665 
24666  case 695:
24667 
24668 /* Line 1455 of yacc.c */
24669 #line 6565 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24670  { Lex->interval_list.empty();}
24671  break;
24672 
24673  case 696:
24674 
24675 /* Line 1455 of yacc.c */
24676 #line 6567 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24677  { (yyval.num)=MYSQL_TYPE_SET; }
24678  break;
24679 
24680  case 697:
24681 
24682 /* Line 1455 of yacc.c */
24683 #line 6569 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24684  { (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; }
24685  break;
24686 
24687  case 698:
24688 
24689 /* Line 1455 of yacc.c */
24690 #line 6571 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24691  {
24692  (yyval.num)=MYSQL_TYPE_LONGLONG;
24693  Lex->type|= (AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNSIGNED_FLAG |
24694  UNIQUE_FLAG);
24695  }
24696  break;
24697 
24698  case 699:
24699 
24700 /* Line 1455 of yacc.c */
24701 #line 6579 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24702  { (yyval.num)= Field::GEOM_GEOMETRY; }
24703  break;
24704 
24705  case 700:
24706 
24707 /* Line 1455 of yacc.c */
24708 #line 6580 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24709  { (yyval.num)= Field::GEOM_GEOMETRYCOLLECTION; }
24710  break;
24711 
24712  case 701:
24713 
24714 /* Line 1455 of yacc.c */
24715 #line 6582 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24716  {
24717  Lex->length= (char*)"25";
24718  (yyval.num)= Field::GEOM_POINT;
24719  }
24720  break;
24721 
24722  case 702:
24723 
24724 /* Line 1455 of yacc.c */
24725 #line 6586 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24726  { (yyval.num)= Field::GEOM_MULTIPOINT; }
24727  break;
24728 
24729  case 703:
24730 
24731 /* Line 1455 of yacc.c */
24732 #line 6587 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24733  { (yyval.num)= Field::GEOM_LINESTRING; }
24734  break;
24735 
24736  case 704:
24737 
24738 /* Line 1455 of yacc.c */
24739 #line 6588 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24740  { (yyval.num)= Field::GEOM_MULTILINESTRING; }
24741  break;
24742 
24743  case 705:
24744 
24745 /* Line 1455 of yacc.c */
24746 #line 6589 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24747  { (yyval.num)= Field::GEOM_POLYGON; }
24748  break;
24749 
24750  case 706:
24751 
24752 /* Line 1455 of yacc.c */
24753 #line 6590 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24754  { (yyval.num)= Field::GEOM_MULTIPOLYGON; }
24755  break;
24756 
24757  case 707:
24758 
24759 /* Line 1455 of yacc.c */
24760 #line 6594 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24761  {}
24762  break;
24763 
24764  case 708:
24765 
24766 /* Line 1455 of yacc.c */
24767 #line 6598 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24768  {}
24769  break;
24770 
24771  case 709:
24772 
24773 /* Line 1455 of yacc.c */
24774 #line 6599 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24775  {}
24776  break;
24777 
24778  case 710:
24779 
24780 /* Line 1455 of yacc.c */
24781 #line 6603 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24782  {}
24783  break;
24784 
24785  case 711:
24786 
24787 /* Line 1455 of yacc.c */
24788 #line 6604 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24789  {}
24790  break;
24791 
24792  case 712:
24793 
24794 /* Line 1455 of yacc.c */
24795 #line 6608 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24796  {}
24797  break;
24798 
24799  case 713:
24800 
24801 /* Line 1455 of yacc.c */
24802 #line 6609 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24803  {}
24804  break;
24805 
24806  case 714:
24807 
24808 /* Line 1455 of yacc.c */
24809 #line 6610 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24810  {}
24811  break;
24812 
24813  case 715:
24814 
24815 /* Line 1455 of yacc.c */
24816 #line 6611 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24817  {}
24818  break;
24819 
24820  case 716:
24821 
24822 /* Line 1455 of yacc.c */
24823 #line 6612 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24824  {}
24825  break;
24826 
24827  case 717:
24828 
24829 /* Line 1455 of yacc.c */
24830 #line 6616 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24831  { (yyval.num)=MYSQL_TYPE_LONG; }
24832  break;
24833 
24834  case 718:
24835 
24836 /* Line 1455 of yacc.c */
24837 #line 6617 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24838  { (yyval.num)=MYSQL_TYPE_TINY; }
24839  break;
24840 
24841  case 719:
24842 
24843 /* Line 1455 of yacc.c */
24844 #line 6618 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24845  { (yyval.num)=MYSQL_TYPE_SHORT; }
24846  break;
24847 
24848  case 720:
24849 
24850 /* Line 1455 of yacc.c */
24851 #line 6619 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24852  { (yyval.num)=MYSQL_TYPE_INT24; }
24853  break;
24854 
24855  case 721:
24856 
24857 /* Line 1455 of yacc.c */
24858 #line 6620 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24859  { (yyval.num)=MYSQL_TYPE_LONGLONG; }
24860  break;
24861 
24862  case 722:
24863 
24864 /* Line 1455 of yacc.c */
24865 #line 6625 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24866  {
24867  (yyval.num)= YYTHD->variables.sql_mode & MODE_REAL_AS_FLOAT ?
24868  MYSQL_TYPE_FLOAT : MYSQL_TYPE_DOUBLE;
24869  }
24870  break;
24871 
24872  case 723:
24873 
24874 /* Line 1455 of yacc.c */
24875 #line 6630 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24876  { (yyval.num)=MYSQL_TYPE_DOUBLE; }
24877  break;
24878 
24879  case 724:
24880 
24881 /* Line 1455 of yacc.c */
24882 #line 6632 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24883  { (yyval.num)=MYSQL_TYPE_DOUBLE; }
24884  break;
24885 
24886  case 725:
24887 
24888 /* Line 1455 of yacc.c */
24889 #line 6637 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24890  { Lex->dec=Lex->length= (char*)0; }
24891  break;
24892 
24893  case 726:
24894 
24895 /* Line 1455 of yacc.c */
24896 #line 6639 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24897  { Lex->dec= (char*)0; }
24898  break;
24899 
24900  case 727:
24901 
24902 /* Line 1455 of yacc.c */
24903 #line 6641 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24904  {}
24905  break;
24906 
24907  case 728:
24908 
24909 /* Line 1455 of yacc.c */
24910 #line 6646 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24911  {
24912  LEX *lex=Lex;
24913  lex->length=(yyvsp[(2) - (5)].lex_str).str;
24914  lex->dec=(yyvsp[(4) - (5)].lex_str).str;
24915  }
24916  break;
24917 
24918  case 729:
24919 
24920 /* Line 1455 of yacc.c */
24921 #line 6655 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24922  { Lex->dec= (char *) 0; }
24923  break;
24924 
24925  case 730:
24926 
24927 /* Line 1455 of yacc.c */
24928 #line 6656 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24929  { Lex->dec= (yyvsp[(2) - (3)].lex_str).str; }
24930  break;
24931 
24932  case 731:
24933 
24934 /* Line 1455 of yacc.c */
24935 #line 6660 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24936  { (yyval.ulong_num)= 0; }
24937  break;
24938 
24939  case 732:
24940 
24941 /* Line 1455 of yacc.c */
24942 #line 6661 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24943  { (yyval.ulong_num)= 0; }
24944  break;
24945 
24946  case 733:
24947 
24948 /* Line 1455 of yacc.c */
24949 #line 6663 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24950  {
24951  int error;
24952  (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(2) - (3)].lex_str).str, NULL, &error);
24953  }
24954  break;
24955 
24956  case 734:
24957 
24958 /* Line 1455 of yacc.c */
24959 #line 6670 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24960  {}
24961  break;
24962 
24963  case 735:
24964 
24965 /* Line 1455 of yacc.c */
24966 #line 6671 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24967  {}
24968  break;
24969 
24970  case 736:
24971 
24972 /* Line 1455 of yacc.c */
24973 #line 6675 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24974  {}
24975  break;
24976 
24977  case 737:
24978 
24979 /* Line 1455 of yacc.c */
24980 #line 6676 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24981  {}
24982  break;
24983 
24984  case 738:
24985 
24986 /* Line 1455 of yacc.c */
24987 #line 6680 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24988  {}
24989  break;
24990 
24991  case 739:
24992 
24993 /* Line 1455 of yacc.c */
24994 #line 6681 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
24995  { Lex->type|= UNSIGNED_FLAG;}
24996  break;
24997 
24998  case 740:
24999 
25000 /* Line 1455 of yacc.c */
25001 #line 6682 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25002  { Lex->type|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
25003  break;
25004 
25005  case 741:
25006 
25007 /* Line 1455 of yacc.c */
25008 #line 6686 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25009  { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
25010  break;
25011 
25012  case 742:
25013 
25014 /* Line 1455 of yacc.c */
25015 #line 6687 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25016  { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
25017  break;
25018 
25019  case 743:
25020 
25021 /* Line 1455 of yacc.c */
25022 #line 6688 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25023  { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
25024  break;
25025 
25026  case 744:
25027 
25028 /* Line 1455 of yacc.c */
25029 #line 6689 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25030  { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
25031  break;
25032 
25033  case 745:
25034 
25035 /* Line 1455 of yacc.c */
25036 #line 6692 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25037  { Lex->length=(char*) 0; /* use default length */ }
25038  break;
25039 
25040  case 746:
25041 
25042 /* Line 1455 of yacc.c */
25043 #line 6693 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25044  { }
25045  break;
25046 
25047  case 747:
25048 
25049 /* Line 1455 of yacc.c */
25050 #line 6697 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25051  {}
25052  break;
25053 
25054  case 748:
25055 
25056 /* Line 1455 of yacc.c */
25057 #line 6698 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25058  {}
25059  break;
25060 
25061  case 749:
25062 
25063 /* Line 1455 of yacc.c */
25064 #line 6702 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25065  {}
25066  break;
25067 
25068  case 750:
25069 
25070 /* Line 1455 of yacc.c */
25071 #line 6703 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25072  {}
25073  break;
25074 
25075  case 751:
25076 
25077 /* Line 1455 of yacc.c */
25078 #line 6707 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25079  {}
25080  break;
25081 
25082  case 753:
25083 
25084 /* Line 1455 of yacc.c */
25085 #line 6712 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25086  { Lex->type&= ~ NOT_NULL_FLAG; }
25087  break;
25088 
25089  case 754:
25090 
25091 /* Line 1455 of yacc.c */
25092 #line 6713 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25093  { Lex->type|= NOT_NULL_FLAG; }
25094  break;
25095 
25096  case 755:
25097 
25098 /* Line 1455 of yacc.c */
25099 #line 6714 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25100  { Lex->default_value=(yyvsp[(2) - (2)].item); }
25101  break;
25102 
25103  case 756:
25104 
25105 /* Line 1455 of yacc.c */
25106 #line 6715 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25107  { Lex->on_update_value= (yyvsp[(3) - (3)].item); }
25108  break;
25109 
25110  case 757:
25111 
25112 /* Line 1455 of yacc.c */
25113 #line 6716 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25114  { Lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; }
25115  break;
25116 
25117  case 758:
25118 
25119 /* Line 1455 of yacc.c */
25120 #line 6718 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25121  {
25122  LEX *lex=Lex;
25123  lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_FLAG;
25124  lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
25125  }
25126  break;
25127 
25128  case 759:
25129 
25130 /* Line 1455 of yacc.c */
25131 #line 6724 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25132  {
25133  LEX *lex=Lex;
25134  lex->type|= PRI_KEY_FLAG | NOT_NULL_FLAG;
25135  lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
25136  }
25137  break;
25138 
25139  case 760:
25140 
25141 /* Line 1455 of yacc.c */
25142 #line 6730 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25143  {
25144  LEX *lex=Lex;
25145  lex->type|= UNIQUE_FLAG;
25146  lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
25147  }
25148  break;
25149 
25150  case 761:
25151 
25152 /* Line 1455 of yacc.c */
25153 #line 6736 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25154  {
25155  LEX *lex=Lex;
25156  lex->type|= UNIQUE_KEY_FLAG;
25157  lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
25158  }
25159  break;
25160 
25161  case 762:
25162 
25163 /* Line 1455 of yacc.c */
25164 #line 6741 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25165  { Lex->comment= (yyvsp[(2) - (2)].lex_str); }
25166  break;
25167 
25168  case 763:
25169 
25170 /* Line 1455 of yacc.c */
25171 #line 6743 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25172  {
25173  if (Lex->charset && !my_charset_same(Lex->charset,(yyvsp[(2) - (2)].charset)))
25174  {
25175  my_error(ER_COLLATION_CHARSET_MISMATCH, MYF(0),
25176  (yyvsp[(2) - (2)].charset)->name,Lex->charset->csname);
25177  MYSQL_YYABORT;
25178  }
25179  else
25180  {
25181  Lex->charset=(yyvsp[(2) - (2)].charset);
25182  }
25183  }
25184  break;
25185 
25186  case 764:
25187 
25188 /* Line 1455 of yacc.c */
25189 #line 6756 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25190  {
25191  Lex->type&= ~(FIELD_FLAGS_COLUMN_FORMAT_MASK);
25192  Lex->type|=
25193  (COLUMN_FORMAT_TYPE_DEFAULT << FIELD_FLAGS_COLUMN_FORMAT);
25194  }
25195  break;
25196 
25197  case 765:
25198 
25199 /* Line 1455 of yacc.c */
25200 #line 6762 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25201  {
25202  Lex->type&= ~(FIELD_FLAGS_COLUMN_FORMAT_MASK);
25203  Lex->type|=
25204  (COLUMN_FORMAT_TYPE_FIXED << FIELD_FLAGS_COLUMN_FORMAT);
25205  }
25206  break;
25207 
25208  case 766:
25209 
25210 /* Line 1455 of yacc.c */
25211 #line 6768 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25212  {
25213  Lex->type&= ~(FIELD_FLAGS_COLUMN_FORMAT_MASK);
25214  Lex->type|=
25215  (COLUMN_FORMAT_TYPE_DYNAMIC << FIELD_FLAGS_COLUMN_FORMAT);
25216  }
25217  break;
25218 
25219  case 767:
25220 
25221 /* Line 1455 of yacc.c */
25222 #line 6774 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25223  {
25224  Lex->type&= ~(FIELD_FLAGS_STORAGE_MEDIA_MASK);
25225  Lex->type|= (HA_SM_DEFAULT << FIELD_FLAGS_STORAGE_MEDIA);
25226  }
25227  break;
25228 
25229  case 768:
25230 
25231 /* Line 1455 of yacc.c */
25232 #line 6779 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25233  {
25234  Lex->type&= ~(FIELD_FLAGS_STORAGE_MEDIA_MASK);
25235  Lex->type|= (HA_SM_DISK << FIELD_FLAGS_STORAGE_MEDIA);
25236  }
25237  break;
25238 
25239  case 769:
25240 
25241 /* Line 1455 of yacc.c */
25242 #line 6784 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25243  {
25244  Lex->type&= ~(FIELD_FLAGS_STORAGE_MEDIA_MASK);
25245  Lex->type|= (HA_SM_MEMORY << FIELD_FLAGS_STORAGE_MEDIA);
25246  }
25247  break;
25248 
25249  case 770:
25250 
25251 /* Line 1455 of yacc.c */
25252 #line 6793 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25253  {
25254  (yyval.num)= (yyvsp[(1) - (2)].num);
25255 
25256  if (Lex->charset) /* Lex->charset is scanned in "type" */
25257  {
25258  if (!(Lex->charset= merge_charset_and_collation(Lex->charset, (yyvsp[(2) - (2)].charset))))
25259  MYSQL_YYABORT;
25260  }
25261  else if ((yyvsp[(2) - (2)].charset))
25262  {
25263  my_error(ER_NOT_SUPPORTED_YET, MYF(0),
25264  "COLLATE with no CHARACTER SET "
25265  "in SP parameters, RETURNS, DECLARE");
25266  MYSQL_YYABORT;
25267  }
25268  }
25269  break;
25270 
25271  case 771:
25272 
25273 /* Line 1455 of yacc.c */
25274 #line 6814 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25275  {
25276  (yyval.item)= new (YYTHD->mem_root) Item_func_now_local((yyvsp[(2) - (2)].ulong_num));
25277  if ((yyval.item) == NULL)
25278  MYSQL_YYABORT;
25279  }
25280  break;
25281 
25282  case 773:
25283 
25284 /* Line 1455 of yacc.c */
25285 #line 6823 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25286  { (yyval.item)=(yyvsp[(1) - (1)].item); }
25287  break;
25288 
25289  case 774:
25290 
25291 /* Line 1455 of yacc.c */
25292 #line 6827 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25293  {}
25294  break;
25295 
25296  case 775:
25297 
25298 /* Line 1455 of yacc.c */
25299 #line 6828 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25300  {}
25301  break;
25302 
25303  case 776:
25304 
25305 /* Line 1455 of yacc.c */
25306 #line 6833 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25307  {
25308  if (!((yyval.charset)=get_charset_by_csname((yyvsp[(1) - (1)].lex_str).str,MY_CS_PRIMARY,MYF(0))))
25309  {
25310  my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
25311  MYSQL_YYABORT;
25312  }
25313  }
25314  break;
25315 
25316  case 777:
25317 
25318 /* Line 1455 of yacc.c */
25319 #line 6840 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25320  { (yyval.charset)= &my_charset_bin; }
25321  break;
25322 
25323  case 778:
25324 
25325 /* Line 1455 of yacc.c */
25326 #line 6844 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25327  { (yyval.charset)=(yyvsp[(1) - (1)].charset); }
25328  break;
25329 
25330  case 779:
25331 
25332 /* Line 1455 of yacc.c */
25333 #line 6845 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25334  { (yyval.charset)=NULL; }
25335  break;
25336 
25337  case 780:
25338 
25339 /* Line 1455 of yacc.c */
25340 #line 6849 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25341  { (yyval.charset)= NULL; }
25342  break;
25343 
25344  case 781:
25345 
25346 /* Line 1455 of yacc.c */
25347 #line 6850 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25348  { (yyval.charset)= (yyvsp[(2) - (2)].charset); }
25349  break;
25350 
25351  case 782:
25352 
25353 /* Line 1455 of yacc.c */
25354 #line 6855 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25355  {
25356  if (!((yyval.charset)=get_charset_by_csname((yyvsp[(1) - (1)].lex_str).str,MY_CS_PRIMARY,MYF(0))) &&
25357  !((yyval.charset)=get_old_charset_by_name((yyvsp[(1) - (1)].lex_str).str)))
25358  {
25359  my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
25360  MYSQL_YYABORT;
25361  }
25362  }
25363  break;
25364 
25365  case 783:
25366 
25367 /* Line 1455 of yacc.c */
25368 #line 6863 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25369  { (yyval.charset)= &my_charset_bin; }
25370  break;
25371 
25372  case 784:
25373 
25374 /* Line 1455 of yacc.c */
25375 #line 6867 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25376  { (yyval.charset)=(yyvsp[(1) - (1)].charset); }
25377  break;
25378 
25379  case 785:
25380 
25381 /* Line 1455 of yacc.c */
25382 #line 6868 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25383  { (yyval.charset)=NULL; }
25384  break;
25385 
25386  case 786:
25387 
25388 /* Line 1455 of yacc.c */
25389 #line 6873 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25390  {
25391  if (!((yyval.charset)= mysqld_collation_get_by_name((yyvsp[(1) - (1)].lex_str).str)))
25392  MYSQL_YYABORT;
25393  }
25394  break;
25395 
25396  case 787:
25397 
25398 /* Line 1455 of yacc.c */
25399 #line 6880 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25400  { (yyval.charset)=NULL; }
25401  break;
25402 
25403  case 788:
25404 
25405 /* Line 1455 of yacc.c */
25406 #line 6881 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25407  { (yyval.charset)=(yyvsp[(2) - (2)].charset); }
25408  break;
25409 
25410  case 789:
25411 
25412 /* Line 1455 of yacc.c */
25413 #line 6885 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25414  { (yyval.charset)=(yyvsp[(1) - (1)].charset); }
25415  break;
25416 
25417  case 790:
25418 
25419 /* Line 1455 of yacc.c */
25420 #line 6886 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25421  { (yyval.charset)=NULL; }
25422  break;
25423 
25424  case 791:
25425 
25426 /* Line 1455 of yacc.c */
25427 #line 6890 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25428  {}
25429  break;
25430 
25431  case 792:
25432 
25433 /* Line 1455 of yacc.c */
25434 #line 6891 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25435  {}
25436  break;
25437 
25438  case 793:
25439 
25440 /* Line 1455 of yacc.c */
25441 #line 6896 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25442  { Lex->charset= &my_charset_latin1; }
25443  break;
25444 
25445  case 794:
25446 
25447 /* Line 1455 of yacc.c */
25448 #line 6898 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25449  {
25450  Lex->charset= &my_charset_latin1_bin;
25451  }
25452  break;
25453 
25454  case 795:
25455 
25456 /* Line 1455 of yacc.c */
25457 #line 6902 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25458  {
25459  Lex->charset= &my_charset_latin1_bin;
25460  }
25461  break;
25462 
25463  case 796:
25464 
25465 /* Line 1455 of yacc.c */
25466 #line 6909 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25467  {
25468  if (!(Lex->charset=get_charset_by_csname("ucs2",
25469  MY_CS_PRIMARY,MYF(0))))
25470  {
25471  my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), "ucs2");
25472  MYSQL_YYABORT;
25473  }
25474  }
25475  break;
25476 
25477  case 797:
25478 
25479 /* Line 1455 of yacc.c */
25480 #line 6918 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25481  {
25482  if (!(Lex->charset= mysqld_collation_get_by_name("ucs2_bin")))
25483  MYSQL_YYABORT;
25484  }
25485  break;
25486 
25487  case 798:
25488 
25489 /* Line 1455 of yacc.c */
25490 #line 6923 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25491  {
25492  if (!(Lex->charset= mysqld_collation_get_by_name("ucs2_bin")))
25493  my_error(ER_UNKNOWN_COLLATION, MYF(0), "ucs2_bin");
25494  }
25495  break;
25496 
25497  case 799:
25498 
25499 /* Line 1455 of yacc.c */
25500 #line 6930 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25501  { Lex->charset=NULL; }
25502  break;
25503 
25504  case 802:
25505 
25506 /* Line 1455 of yacc.c */
25507 #line 6933 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25508  { Lex->charset=&my_charset_bin; }
25509  break;
25510 
25511  case 803:
25512 
25513 /* Line 1455 of yacc.c */
25514 #line 6934 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25515  { Lex->charset=(yyvsp[(2) - (3)].charset); }
25516  break;
25517 
25518  case 804:
25519 
25520 /* Line 1455 of yacc.c */
25521 #line 6936 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25522  {
25523  Lex->charset= NULL;
25524  Lex->type|= BINCMP_FLAG;
25525  }
25526  break;
25527 
25528  case 805:
25529 
25530 /* Line 1455 of yacc.c */
25531 #line 6941 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25532  {
25533  Lex->charset= (yyvsp[(3) - (3)].charset);
25534  Lex->type|= BINCMP_FLAG;
25535  }
25536  break;
25537 
25538  case 806:
25539 
25540 /* Line 1455 of yacc.c */
25541 #line 6948 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25542  { }
25543  break;
25544 
25545  case 807:
25546 
25547 /* Line 1455 of yacc.c */
25548 #line 6949 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25549  { Lex->type|= BINCMP_FLAG; }
25550  break;
25551 
25552  case 808:
25553 
25554 /* Line 1455 of yacc.c */
25555 #line 6954 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25556  {
25557  if ((yyvsp[(2) - (2)].ulong_num) == 0)
25558  {
25559  my_parse_error(ER(ER_SYNTAX_ERROR));
25560  MYSQL_YYABORT;
25561  }
25562  }
25563  break;
25564 
25565  case 809:
25566 
25567 /* Line 1455 of yacc.c */
25568 #line 6962 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25569  { (yyval.ulong_num)= (yyvsp[(2) - (4)].ulong_num); }
25570  break;
25571 
25572  case 810:
25573 
25574 /* Line 1455 of yacc.c */
25575 #line 6966 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25576  { (yyval.ulong_num)= 0; }
25577  break;
25578 
25579  case 811:
25580 
25581 /* Line 1455 of yacc.c */
25582 #line 6967 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25583  { (yyval.ulong_num)= 1 << MY_STRXFRM_DESC_SHIFT; }
25584  break;
25585 
25586  case 812:
25587 
25588 /* Line 1455 of yacc.c */
25589 #line 6971 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25590  { (yyval.ulong_num)= 1 << MY_STRXFRM_REVERSE_SHIFT; }
25591  break;
25592 
25593  case 813:
25594 
25595 /* Line 1455 of yacc.c */
25596 #line 6974 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25597  { (yyval.ulong_num)= 0; }
25598  break;
25599 
25600  case 814:
25601 
25602 /* Line 1455 of yacc.c */
25603 #line 6975 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25604  { (yyval.ulong_num)= (yyvsp[(1) - (1)].ulong_num); }
25605  break;
25606 
25607  case 815:
25608 
25609 /* Line 1455 of yacc.c */
25610 #line 6976 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25611  { (yyval.ulong_num)= (yyvsp[(1) - (2)].ulong_num) | (yyvsp[(2) - (2)].ulong_num); }
25612  break;
25613 
25614  case 816:
25615 
25616 /* Line 1455 of yacc.c */
25617 #line 6977 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25618  { (yyval.ulong_num)= (yyvsp[(1) - (1)].ulong_num) ; }
25619  break;
25620 
25621  case 817:
25622 
25623 /* Line 1455 of yacc.c */
25624 #line 6982 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25625  {
25626  (yyval.ulong_num)= (yyvsp[(1) - (1)].ulong_num) < 1 ? 1 : ((yyvsp[(1) - (1)].ulong_num) > MY_STRXFRM_NLEVELS ? MY_STRXFRM_NLEVELS : (yyvsp[(1) - (1)].ulong_num));
25627  (yyval.ulong_num)--;
25628  }
25629  break;
25630 
25631  case 818:
25632 
25633 /* Line 1455 of yacc.c */
25634 #line 6990 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25635  {
25636  (yyval.ulong_num)= (1 | (yyvsp[(2) - (2)].ulong_num)) << (yyvsp[(1) - (2)].ulong_num);
25637  }
25638  break;
25639 
25640  case 819:
25641 
25642 /* Line 1455 of yacc.c */
25643 #line 6996 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25644  { (yyval.ulong_num)= (yyvsp[(1) - (1)].ulong_num); }
25645  break;
25646 
25647  case 820:
25648 
25649 /* Line 1455 of yacc.c */
25650 #line 6997 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25651  { (yyval.ulong_num)|= (yyvsp[(3) - (3)].ulong_num); }
25652  break;
25653 
25654  case 821:
25655 
25656 /* Line 1455 of yacc.c */
25657 #line 7002 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25658  {
25659  uint start= (yyvsp[(1) - (3)].ulong_num);
25660  uint end= (yyvsp[(3) - (3)].ulong_num);
25661  for ((yyval.ulong_num)= 0; start <= end; start++)
25662  (yyval.ulong_num)|= (1 << start);
25663  }
25664  break;
25665 
25666  case 822:
25667 
25668 /* Line 1455 of yacc.c */
25669 #line 7011 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25670  { (yyval.ulong_num)= (yyvsp[(1) - (1)].ulong_num); }
25671  break;
25672 
25673  case 823:
25674 
25675 /* Line 1455 of yacc.c */
25676 #line 7012 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25677  { (yyval.ulong_num)= (yyvsp[(1) - (1)].ulong_num); }
25678  break;
25679 
25680  case 824:
25681 
25682 /* Line 1455 of yacc.c */
25683 #line 7016 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25684  { (yyval.ulong_num)= 0; }
25685  break;
25686 
25687  case 825:
25688 
25689 /* Line 1455 of yacc.c */
25690 #line 7017 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25691  { (yyval.ulong_num)= (yyvsp[(2) - (2)].ulong_num); }
25692  break;
25693 
25694  case 828:
25695 
25696 /* Line 1455 of yacc.c */
25697 #line 7031 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25698  {
25699  (yyval.table)=(yyvsp[(2) - (5)].table);
25700  }
25701  break;
25702 
25703  case 829:
25704 
25705 /* Line 1455 of yacc.c */
25706 #line 7038 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25707  { Lex->ref_list.empty(); }
25708  break;
25709 
25710  case 831:
25711 
25712 /* Line 1455 of yacc.c */
25713 #line 7044 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25714  {
25715  Key_part_spec *key= new Key_part_spec((yyvsp[(3) - (3)].lex_str), 0);
25716  if (key == NULL)
25717  MYSQL_YYABORT;
25718  Lex->ref_list.push_back(key);
25719  }
25720  break;
25721 
25722  case 832:
25723 
25724 /* Line 1455 of yacc.c */
25725 #line 7051 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25726  {
25727  Key_part_spec *key= new Key_part_spec((yyvsp[(1) - (1)].lex_str), 0);
25728  if (key == NULL)
25729  MYSQL_YYABORT;
25730  LEX *lex= Lex;
25731  lex->ref_list.empty();
25732  lex->ref_list.push_back(key);
25733  }
25734  break;
25735 
25736  case 833:
25737 
25738 /* Line 1455 of yacc.c */
25739 #line 7063 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25740  { Lex->fk_match_option= Foreign_key::FK_MATCH_UNDEF; }
25741  break;
25742 
25743  case 834:
25744 
25745 /* Line 1455 of yacc.c */
25746 #line 7065 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25747  { Lex->fk_match_option= Foreign_key::FK_MATCH_FULL; }
25748  break;
25749 
25750  case 835:
25751 
25752 /* Line 1455 of yacc.c */
25753 #line 7067 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25754  { Lex->fk_match_option= Foreign_key::FK_MATCH_PARTIAL; }
25755  break;
25756 
25757  case 836:
25758 
25759 /* Line 1455 of yacc.c */
25760 #line 7069 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25761  { Lex->fk_match_option= Foreign_key::FK_MATCH_SIMPLE; }
25762  break;
25763 
25764  case 837:
25765 
25766 /* Line 1455 of yacc.c */
25767 #line 7074 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25768  {
25769  LEX *lex= Lex;
25770  lex->fk_update_opt= Foreign_key::FK_OPTION_UNDEF;
25771  lex->fk_delete_opt= Foreign_key::FK_OPTION_UNDEF;
25772  }
25773  break;
25774 
25775  case 838:
25776 
25777 /* Line 1455 of yacc.c */
25778 #line 7080 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25779  {
25780  LEX *lex= Lex;
25781  lex->fk_update_opt= (yyvsp[(3) - (3)].m_fk_option);
25782  lex->fk_delete_opt= Foreign_key::FK_OPTION_UNDEF;
25783  }
25784  break;
25785 
25786  case 839:
25787 
25788 /* Line 1455 of yacc.c */
25789 #line 7086 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25790  {
25791  LEX *lex= Lex;
25792  lex->fk_update_opt= Foreign_key::FK_OPTION_UNDEF;
25793  lex->fk_delete_opt= (yyvsp[(3) - (3)].m_fk_option);
25794  }
25795  break;
25796 
25797  case 840:
25798 
25799 /* Line 1455 of yacc.c */
25800 #line 7093 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25801  {
25802  LEX *lex= Lex;
25803  lex->fk_update_opt= (yyvsp[(3) - (6)].m_fk_option);
25804  lex->fk_delete_opt= (yyvsp[(6) - (6)].m_fk_option);
25805  }
25806  break;
25807 
25808  case 841:
25809 
25810 /* Line 1455 of yacc.c */
25811 #line 7100 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25812  {
25813  LEX *lex= Lex;
25814  lex->fk_update_opt= (yyvsp[(6) - (6)].m_fk_option);
25815  lex->fk_delete_opt= (yyvsp[(3) - (6)].m_fk_option);
25816  }
25817  break;
25818 
25819  case 842:
25820 
25821 /* Line 1455 of yacc.c */
25822 #line 7108 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25823  { (yyval.m_fk_option)= Foreign_key::FK_OPTION_RESTRICT; }
25824  break;
25825 
25826  case 843:
25827 
25828 /* Line 1455 of yacc.c */
25829 #line 7109 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25830  { (yyval.m_fk_option)= Foreign_key::FK_OPTION_CASCADE; }
25831  break;
25832 
25833  case 844:
25834 
25835 /* Line 1455 of yacc.c */
25836 #line 7110 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25837  { (yyval.m_fk_option)= Foreign_key::FK_OPTION_SET_NULL; }
25838  break;
25839 
25840  case 845:
25841 
25842 /* Line 1455 of yacc.c */
25843 #line 7111 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25844  { (yyval.m_fk_option)= Foreign_key::FK_OPTION_NO_ACTION; }
25845  break;
25846 
25847  case 846:
25848 
25849 /* Line 1455 of yacc.c */
25850 #line 7112 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25851  { (yyval.m_fk_option)= Foreign_key::FK_OPTION_DEFAULT; }
25852  break;
25853 
25854  case 847:
25855 
25856 /* Line 1455 of yacc.c */
25857 #line 7116 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25858  { (yyval.key_type)= Key::MULTIPLE; }
25859  break;
25860 
25861  case 848:
25862 
25863 /* Line 1455 of yacc.c */
25864 #line 7120 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25865  { (yyval.key_type)= Key::PRIMARY; }
25866  break;
25867 
25868  case 849:
25869 
25870 /* Line 1455 of yacc.c */
25871 #line 7121 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25872  { (yyval.key_type)= Key::UNIQUE; }
25873  break;
25874 
25875  case 850:
25876 
25877 /* Line 1455 of yacc.c */
25878 #line 7125 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25879  {}
25880  break;
25881 
25882  case 851:
25883 
25884 /* Line 1455 of yacc.c */
25885 #line 7126 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25886  {}
25887  break;
25888 
25889  case 852:
25890 
25891 /* Line 1455 of yacc.c */
25892 #line 7130 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25893  {}
25894  break;
25895 
25896  case 854:
25897 
25898 /* Line 1455 of yacc.c */
25899 #line 7135 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25900  {}
25901  break;
25902 
25903  case 855:
25904 
25905 /* Line 1455 of yacc.c */
25906 #line 7136 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25907  {}
25908  break;
25909 
25910  case 856:
25911 
25912 /* Line 1455 of yacc.c */
25913 #line 7137 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25914  {}
25915  break;
25916 
25917  case 857:
25918 
25919 /* Line 1455 of yacc.c */
25920 #line 7141 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25921  { (yyval.key_type)= Key::MULTIPLE; }
25922  break;
25923 
25924  case 858:
25925 
25926 /* Line 1455 of yacc.c */
25927 #line 7142 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25928  { (yyval.key_type)= Key::UNIQUE; }
25929  break;
25930 
25931  case 859:
25932 
25933 /* Line 1455 of yacc.c */
25934 #line 7146 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25935  { (yyval.key_type)= Key::FULLTEXT;}
25936  break;
25937 
25938  case 860:
25939 
25940 /* Line 1455 of yacc.c */
25941 #line 7151 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25942  {
25943 #ifdef HAVE_SPATIAL
25944  (yyval.key_type)= Key::SPATIAL;
25945 #else
25946  my_error(ER_FEATURE_DISABLED, MYF(0),
25947  sym_group_geom.name, sym_group_geom.needed_define);
25948  MYSQL_YYABORT;
25949 #endif
25950  }
25951  break;
25952 
25953  case 861:
25954 
25955 /* Line 1455 of yacc.c */
25956 #line 7163 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25957  {
25958  Lex->key_create_info= default_key_create_info;
25959  }
25960  break;
25961 
25962  case 864:
25963 
25964 /* Line 1455 of yacc.c */
25965 #line 7180 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25966  {}
25967  break;
25968 
25969  case 866:
25970 
25971 /* Line 1455 of yacc.c */
25972 #line 7185 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25973  {}
25974  break;
25975 
25976  case 868:
25977 
25978 /* Line 1455 of yacc.c */
25979 #line 7190 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25980  {}
25981  break;
25982 
25983  case 876:
25984 
25985 /* Line 1455 of yacc.c */
25986 #line 7210 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25987  { Lex->key_create_info.algorithm= (yyvsp[(2) - (2)].key_alg); }
25988  break;
25989 
25990  case 877:
25991 
25992 /* Line 1455 of yacc.c */
25993 #line 7211 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
25994  { Lex->key_create_info.algorithm= (yyvsp[(2) - (2)].key_alg); }
25995  break;
25996 
25997  case 878:
25998 
25999 /* Line 1455 of yacc.c */
26000 #line 7216 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26001  { Lex->key_create_info.block_size= (yyvsp[(3) - (3)].ulong_num); }
26002  break;
26003 
26004  case 879:
26005 
26006 /* Line 1455 of yacc.c */
26007 #line 7217 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26008  { Lex->key_create_info.comment= (yyvsp[(2) - (2)].lex_str); }
26009  break;
26010 
26011  case 884:
26012 
26013 /* Line 1455 of yacc.c */
26014 #line 7232 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26015  {
26016  if (plugin_is_ready(&(yyvsp[(3) - (3)].lex_str), MYSQL_FTPARSER_PLUGIN))
26017  Lex->key_create_info.parser_name= (yyvsp[(3) - (3)].lex_str);
26018  else
26019  {
26020  my_error(ER_FUNCTION_NOT_DEFINED, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
26021  MYSQL_YYABORT;
26022  }
26023  }
26024  break;
26025 
26026  case 885:
26027 
26028 /* Line 1455 of yacc.c */
26029 #line 7244 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26030  { (yyval.key_alg)= HA_KEY_ALG_BTREE; }
26031  break;
26032 
26033  case 886:
26034 
26035 /* Line 1455 of yacc.c */
26036 #line 7245 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26037  { (yyval.key_alg)= HA_KEY_ALG_RTREE; }
26038  break;
26039 
26040  case 887:
26041 
26042 /* Line 1455 of yacc.c */
26043 #line 7246 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26044  { (yyval.key_alg)= HA_KEY_ALG_HASH; }
26045  break;
26046 
26047  case 888:
26048 
26049 /* Line 1455 of yacc.c */
26050 #line 7250 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26051  { Lex->col_list.push_back((yyvsp[(3) - (4)].key_part)); }
26052  break;
26053 
26054  case 889:
26055 
26056 /* Line 1455 of yacc.c */
26057 #line 7251 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26058  { Lex->col_list.push_back((yyvsp[(1) - (2)].key_part)); }
26059  break;
26060 
26061  case 890:
26062 
26063 /* Line 1455 of yacc.c */
26064 #line 7256 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26065  {
26066  (yyval.key_part)= new Key_part_spec((yyvsp[(1) - (1)].lex_str), 0);
26067  if ((yyval.key_part) == NULL)
26068  MYSQL_YYABORT;
26069  }
26070  break;
26071 
26072  case 891:
26073 
26074 /* Line 1455 of yacc.c */
26075 #line 7262 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26076  {
26077  int key_part_len= atoi((yyvsp[(3) - (4)].lex_str).str);
26078  if (!key_part_len)
26079  {
26080  my_error(ER_KEY_PART_0, MYF(0), (yyvsp[(1) - (4)].lex_str).str);
26081  }
26082  (yyval.key_part)= new Key_part_spec((yyvsp[(1) - (4)].lex_str), (uint) key_part_len);
26083  if ((yyval.key_part) == NULL)
26084  MYSQL_YYABORT;
26085  }
26086  break;
26087 
26088  case 892:
26089 
26090 /* Line 1455 of yacc.c */
26091 #line 7275 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26092  { (yyval.lex_str)= null_lex_str; }
26093  break;
26094 
26095  case 893:
26096 
26097 /* Line 1455 of yacc.c */
26098 #line 7276 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26099  { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
26100  break;
26101 
26102  case 894:
26103 
26104 /* Line 1455 of yacc.c */
26105 #line 7280 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26106  { (yyval.lex_str)= null_lex_str; }
26107  break;
26108 
26109  case 895:
26110 
26111 /* Line 1455 of yacc.c */
26112 #line 7281 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26113  { (yyval.lex_str)= (yyvsp[(2) - (2)].lex_str); }
26114  break;
26115 
26116  case 896:
26117 
26118 /* Line 1455 of yacc.c */
26119 #line 7285 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26120  { Lex->interval_list.push_back((yyvsp[(1) - (1)].string)); }
26121  break;
26122 
26123  case 897:
26124 
26125 /* Line 1455 of yacc.c */
26126 #line 7286 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26127  { Lex->interval_list.push_back((yyvsp[(3) - (3)].string)); }
26128  break;
26129 
26130  case 898:
26131 
26132 /* Line 1455 of yacc.c */
26133 #line 7294 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26134  {
26135  THD *thd= YYTHD;
26136  LEX *lex= thd->lex;
26137  lex->name.str= 0;
26138  lex->name.length= 0;
26139  lex->sql_command= SQLCOM_ALTER_TABLE;
26140  lex->duplicates= DUP_ERROR;
26141  if (!lex->select_lex.add_table_to_list(thd, (yyvsp[(4) - (4)].table), NULL,
26142  TL_OPTION_UPDATING,
26143  TL_READ_NO_INSERT,
26144  MDL_SHARED_UPGRADABLE))
26145  MYSQL_YYABORT;
26146  lex->col_list.empty();
26147  lex->select_lex.init_order();
26148  lex->select_lex.db= (lex->select_lex.table_list.first)->db;
26149  memset(&lex->create_info, 0, sizeof(lex->create_info));
26150  lex->create_info.db_type= 0;
26151  lex->create_info.default_table_charset= NULL;
26152  lex->create_info.row_type= ROW_TYPE_NOT_USED;
26153  lex->alter_info.reset();
26154  lex->no_write_to_binlog= 0;
26155  lex->create_info.storage_media= HA_SM_DEFAULT;
26156  lex->create_last_non_select_table= lex->last_table();
26157  DBUG_ASSERT(!lex->m_sql_cmd);
26158  }
26159  break;
26160 
26161  case 899:
26162 
26163 /* Line 1455 of yacc.c */
26164 #line 7320 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26165  {
26166  THD *thd= YYTHD;
26167  LEX *lex= thd->lex;
26168  if (!lex->m_sql_cmd)
26169  {
26170  /* Create a generic ALTER TABLE statment. */
26171  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table();
26172  if (lex->m_sql_cmd == NULL)
26173  MYSQL_YYABORT;
26174  }
26175  }
26176  break;
26177 
26178  case 900:
26179 
26180 /* Line 1455 of yacc.c */
26181 #line 7332 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26182  {
26183  Lex->create_info.default_table_charset= NULL;
26184  Lex->create_info.used_fields= 0;
26185  }
26186  break;
26187 
26188  case 901:
26189 
26190 /* Line 1455 of yacc.c */
26191 #line 7337 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26192  {
26193  LEX *lex=Lex;
26194  lex->sql_command=SQLCOM_ALTER_DB;
26195  lex->name= (yyvsp[(3) - (5)].lex_str);
26196  if (lex->name.str == NULL &&
26197  lex->copy_db_to(&lex->name.str, &lex->name.length))
26198  MYSQL_YYABORT;
26199  }
26200  break;
26201 
26202  case 902:
26203 
26204 /* Line 1455 of yacc.c */
26205 #line 7346 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26206  {
26207  LEX *lex= Lex;
26208  if (lex->sphead)
26209  {
26210  my_error(ER_SP_NO_DROP_SP, MYF(0), "DATABASE");
26211  MYSQL_YYABORT;
26212  }
26213  lex->sql_command= SQLCOM_ALTER_DB_UPGRADE;
26214  lex->name= (yyvsp[(3) - (7)].lex_str);
26215  }
26216  break;
26217 
26218  case 903:
26219 
26220 /* Line 1455 of yacc.c */
26221 #line 7357 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26222  {
26223  LEX *lex= Lex;
26224 
26225  if (lex->sphead)
26226  {
26227  my_error(ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE");
26228  MYSQL_YYABORT;
26229  }
26230  memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics));
26231  }
26232  break;
26233 
26234  case 904:
26235 
26236 /* Line 1455 of yacc.c */
26237 #line 7368 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26238  {
26239  LEX *lex=Lex;
26240 
26241  lex->sql_command= SQLCOM_ALTER_PROCEDURE;
26242  lex->spname= (yyvsp[(3) - (5)].spname);
26243  }
26244  break;
26245 
26246  case 905:
26247 
26248 /* Line 1455 of yacc.c */
26249 #line 7375 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26250  {
26251  LEX *lex= Lex;
26252 
26253  if (lex->sphead)
26254  {
26255  my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION");
26256  MYSQL_YYABORT;
26257  }
26258  memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics));
26259  }
26260  break;
26261 
26262  case 906:
26263 
26264 /* Line 1455 of yacc.c */
26265 #line 7386 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26266  {
26267  LEX *lex=Lex;
26268 
26269  lex->sql_command= SQLCOM_ALTER_FUNCTION;
26270  lex->spname= (yyvsp[(3) - (5)].spname);
26271  }
26272  break;
26273 
26274  case 907:
26275 
26276 /* Line 1455 of yacc.c */
26277 #line 7393 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26278  {
26279  LEX *lex= Lex;
26280 
26281  if (lex->sphead)
26282  {
26283  my_error(ER_SP_BADSTATEMENT, MYF(0), "ALTER VIEW");
26284  MYSQL_YYABORT;
26285  }
26286  lex->create_view_mode= VIEW_ALTER;
26287  }
26288  break;
26289 
26290  case 908:
26291 
26292 /* Line 1455 of yacc.c */
26293 #line 7404 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26294  {}
26295  break;
26296 
26297  case 909:
26298 
26299 /* Line 1455 of yacc.c */
26300 #line 7411 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26301  {
26302  LEX *lex= Lex;
26303 
26304  if (lex->sphead)
26305  {
26306  my_error(ER_SP_BADSTATEMENT, MYF(0), "ALTER VIEW");
26307  MYSQL_YYABORT;
26308  }
26309  lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED;
26310  lex->create_view_mode= VIEW_ALTER;
26311  }
26312  break;
26313 
26314  case 910:
26315 
26316 /* Line 1455 of yacc.c */
26317 #line 7423 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26318  {}
26319  break;
26320 
26321  case 911:
26322 
26323 /* Line 1455 of yacc.c */
26324 #line 7425 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26325  {
26326  /*
26327  It is safe to use Lex->spname because
26328  ALTER EVENT xxx RENATE TO yyy DO ALTER EVENT RENAME TO
26329  is not allowed. Lex->spname is used in the case of RENAME TO
26330  If it had to be supported spname had to be added to
26331  Event_parse_data.
26332  */
26333 
26334  if (!(Lex->event_parse_data= Event_parse_data::new_instance(YYTHD)))
26335  MYSQL_YYABORT;
26336  Lex->event_parse_data->identifier= (yyvsp[(4) - (4)].spname);
26337 
26338  Lex->sql_command= SQLCOM_ALTER_EVENT;
26339  }
26340  break;
26341 
26342  case 912:
26343 
26344 /* Line 1455 of yacc.c */
26345 #line 7445 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26346  {
26347  if (!((yyvsp[(6) - (10)].num) || (yyvsp[(7) - (10)].num) || (yyvsp[(8) - (10)].num) || (yyvsp[(9) - (10)].num) || (yyvsp[(10) - (10)].num)))
26348  {
26349  my_parse_error(ER(ER_SYNTAX_ERROR));
26350  MYSQL_YYABORT;
26351  }
26352  /*
26353  sql_command is set here because some rules in ev_sql_stmt
26354  can overwrite it
26355  */
26356  Lex->sql_command= SQLCOM_ALTER_EVENT;
26357  }
26358  break;
26359 
26360  case 913:
26361 
26362 /* Line 1455 of yacc.c */
26363 #line 7458 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26364  {
26365  LEX *lex= Lex;
26366  lex->alter_tablespace_info->ts_cmd_type= ALTER_TABLESPACE;
26367  }
26368  break;
26369 
26370  case 914:
26371 
26372 /* Line 1455 of yacc.c */
26373 #line 7463 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26374  {
26375  LEX *lex= Lex;
26376  lex->alter_tablespace_info->ts_cmd_type= ALTER_LOGFILE_GROUP;
26377  }
26378  break;
26379 
26380  case 915:
26381 
26382 /* Line 1455 of yacc.c */
26383 #line 7468 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26384  {
26385  LEX *lex= Lex;
26386  lex->alter_tablespace_info->ts_cmd_type= CHANGE_FILE_TABLESPACE;
26387  }
26388  break;
26389 
26390  case 916:
26391 
26392 /* Line 1455 of yacc.c */
26393 #line 7473 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26394  {
26395  LEX *lex= Lex;
26396  lex->alter_tablespace_info->ts_cmd_type= ALTER_ACCESS_MODE_TABLESPACE;
26397  }
26398  break;
26399 
26400  case 917:
26401 
26402 /* Line 1455 of yacc.c */
26403 #line 7478 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26404  {
26405  LEX *lex= Lex;
26406  lex->sql_command= SQLCOM_ALTER_SERVER;
26407  lex->server_options.server_name= (yyvsp[(3) - (7)].lex_str).str;
26408  lex->server_options.server_name_length= (yyvsp[(3) - (7)].lex_str).length;
26409  }
26410  break;
26411 
26412  case 918:
26413 
26414 /* Line 1455 of yacc.c */
26415 #line 7485 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26416  {
26417  Lex->sql_command= SQLCOM_ALTER_USER;
26418  }
26419  break;
26420 
26421  case 919:
26422 
26423 /* Line 1455 of yacc.c */
26424 #line 7492 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26425  {
26426  if (Lex->users_list.push_back((yyvsp[(1) - (3)].lex_user)))
26427  MYSQL_YYABORT;
26428  }
26429  break;
26430 
26431  case 920:
26432 
26433 /* Line 1455 of yacc.c */
26434 #line 7497 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26435  {
26436  if (Lex->users_list.push_back((yyvsp[(3) - (5)].lex_user)))
26437  MYSQL_YYABORT;
26438  }
26439  break;
26440 
26441  case 921:
26442 
26443 /* Line 1455 of yacc.c */
26444 #line 7504 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26445  { (yyval.num)= 0;}
26446  break;
26447 
26448  case 922:
26449 
26450 /* Line 1455 of yacc.c */
26451 #line 7505 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26452  { (yyval.num)= 1; }
26453  break;
26454 
26455  case 923:
26456 
26457 /* Line 1455 of yacc.c */
26458 #line 7506 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26459  { (yyval.num)= 1; }
26460  break;
26461 
26462  case 924:
26463 
26464 /* Line 1455 of yacc.c */
26465 #line 7507 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26466  { (yyval.num)= 1; }
26467  break;
26468 
26469  case 925:
26470 
26471 /* Line 1455 of yacc.c */
26472 #line 7511 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26473  { (yyval.num)= 0;}
26474  break;
26475 
26476  case 926:
26477 
26478 /* Line 1455 of yacc.c */
26479 #line 7513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26480  {
26481  /*
26482  Use lex's spname to hold the new name.
26483  The original name is in the Event_parse_data object
26484  */
26485  Lex->spname= (yyvsp[(3) - (3)].spname);
26486  (yyval.num)= 1;
26487  }
26488  break;
26489 
26490  case 927:
26491 
26492 /* Line 1455 of yacc.c */
26493 #line 7524 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26494  { (yyval.num)= 0;}
26495  break;
26496 
26497  case 928:
26498 
26499 /* Line 1455 of yacc.c */
26500 #line 7525 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26501  { (yyval.num)= 1; }
26502  break;
26503 
26504  case 929:
26505 
26506 /* Line 1455 of yacc.c */
26507 #line 7529 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26508  { (yyval.lex_str).str= 0; (yyval.lex_str).length= 0; }
26509  break;
26510 
26511  case 930:
26512 
26513 /* Line 1455 of yacc.c */
26514 #line 7530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26515  { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
26516  break;
26517 
26518  case 932:
26519 
26520 /* Line 1455 of yacc.c */
26521 #line 7536 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26522  {
26523  Lex->m_sql_cmd= new (YYTHD->mem_root)
26525  Sql_cmd_discard_import_tablespace::DISCARD_TABLESPACE);
26526  if (Lex->m_sql_cmd == NULL)
26527  MYSQL_YYABORT;
26528  }
26529  break;
26530 
26531  case 933:
26532 
26533 /* Line 1455 of yacc.c */
26534 #line 7544 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26535  {
26536  Lex->m_sql_cmd= new (YYTHD->mem_root)
26538  Sql_cmd_discard_import_tablespace::IMPORT_TABLESPACE);
26539  if (Lex->m_sql_cmd == NULL)
26540  MYSQL_YYABORT;
26541  }
26542  break;
26543 
26544  case 939:
26545 
26546 /* Line 1455 of yacc.c */
26547 #line 7566 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26548  {
26549  Lex->alter_info.flags|= Alter_info::ALTER_DROP_PARTITION;
26550  }
26551  break;
26552 
26553  case 940:
26554 
26555 /* Line 1455 of yacc.c */
26556 #line 7571 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26557  {
26558  LEX *lex= Lex;
26559  lex->alter_info.flags|= Alter_info::ALTER_REBUILD_PARTITION;
26560  lex->no_write_to_binlog= (yyvsp[(3) - (4)].num);
26561  }
26562  break;
26563 
26564  case 941:
26565 
26566 /* Line 1455 of yacc.c */
26567 #line 7578 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26568  {
26569  THD *thd= YYTHD;
26570  LEX *lex= thd->lex;
26571  lex->no_write_to_binlog= (yyvsp[(3) - (4)].num);
26572  lex->check_opt.init();
26573  DBUG_ASSERT(!lex->m_sql_cmd);
26574  lex->m_sql_cmd= new (thd->mem_root)
26576  if (lex->m_sql_cmd == NULL)
26577  MYSQL_YYABORT;
26578  }
26579  break;
26580 
26581  case 943:
26582 
26583 /* Line 1455 of yacc.c */
26584 #line 7592 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26585  {
26586  THD *thd= YYTHD;
26587  LEX *lex= thd->lex;
26588  lex->no_write_to_binlog= (yyvsp[(3) - (4)].num);
26589  lex->check_opt.init();
26590  DBUG_ASSERT(!lex->m_sql_cmd);
26591  lex->m_sql_cmd= new (thd->mem_root)
26593  if (lex->m_sql_cmd == NULL)
26594  MYSQL_YYABORT;
26595  }
26596  break;
26597 
26598  case 944:
26599 
26600 /* Line 1455 of yacc.c */
26601 #line 7604 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26602  {
26603  THD *thd= YYTHD;
26604  LEX *lex= thd->lex;
26605  lex->check_opt.init();
26606  DBUG_ASSERT(!lex->m_sql_cmd);
26607  lex->m_sql_cmd= new (thd->mem_root)
26609  if (lex->m_sql_cmd == NULL)
26610  MYSQL_YYABORT;
26611  }
26612  break;
26613 
26614  case 946:
26615 
26616 /* Line 1455 of yacc.c */
26617 #line 7617 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26618  {
26619  THD *thd= YYTHD;
26620  LEX *lex= thd->lex;
26621  lex->no_write_to_binlog= (yyvsp[(3) - (4)].num);
26622  lex->check_opt.init();
26623  DBUG_ASSERT(!lex->m_sql_cmd);
26624  lex->m_sql_cmd= new (thd->mem_root)
26626  if (lex->m_sql_cmd == NULL)
26627  MYSQL_YYABORT;
26628  }
26629  break;
26630 
26631  case 948:
26632 
26633 /* Line 1455 of yacc.c */
26634 #line 7630 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26635  {
26636  LEX *lex= Lex;
26637  lex->alter_info.flags|= Alter_info::ALTER_COALESCE_PARTITION;
26638  lex->no_write_to_binlog= (yyvsp[(3) - (4)].num);
26639  lex->alter_info.num_parts= (yyvsp[(4) - (4)].ulong_num);
26640  }
26641  break;
26642 
26643  case 949:
26644 
26645 /* Line 1455 of yacc.c */
26646 #line 7637 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26647  {
26648  THD *thd= YYTHD;
26649  LEX *lex= thd->lex;
26650  lex->check_opt.init();
26651  DBUG_ASSERT(!lex->m_sql_cmd);
26652  lex->m_sql_cmd= new (thd->mem_root)
26654  if (lex->m_sql_cmd == NULL)
26655  MYSQL_YYABORT;
26656  }
26657  break;
26658 
26659  case 951:
26660 
26661 /* Line 1455 of yacc.c */
26662 #line 7650 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26663  {
26664  THD *thd= YYTHD;
26665  LEX *lex= thd->lex;
26666  size_t dummy;
26667  lex->select_lex.db=(yyvsp[(6) - (7)].table)->db.str;
26668  if (lex->select_lex.db == NULL &&
26669  lex->copy_db_to(&lex->select_lex.db, &dummy))
26670  {
26671  MYSQL_YYABORT;
26672  }
26673  lex->name= (yyvsp[(6) - (7)].table)->table;
26674  lex->alter_info.flags|= Alter_info::ALTER_EXCHANGE_PARTITION;
26675  if (!lex->select_lex.add_table_to_list(thd, (yyvsp[(6) - (7)].table), NULL,
26676  TL_OPTION_UPDATING,
26677  TL_READ_NO_INSERT,
26678  MDL_SHARED_NO_WRITE))
26679  MYSQL_YYABORT;
26680  DBUG_ASSERT(!lex->m_sql_cmd);
26681  lex->m_sql_cmd= new (thd->mem_root)
26683  if (lex->m_sql_cmd == NULL)
26684  MYSQL_YYABORT;
26685  }
26686  break;
26687 
26688  case 952:
26689 
26690 /* Line 1455 of yacc.c */
26691 #line 7677 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26692  {
26693  Lex->alter_info.flags|= Alter_info::ALTER_REMOVE_PARTITIONING;
26694  }
26695  break;
26696 
26697  case 953:
26698 
26699 /* Line 1455 of yacc.c */
26700 #line 7684 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26701  {
26702  Lex->alter_info.flags|= Alter_info::ALTER_ALL_PARTITION;
26703  }
26704  break;
26705 
26706  case 955:
26707 
26708 /* Line 1455 of yacc.c */
26709 #line 7692 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26710  {
26711  LEX *lex= Lex;
26712  lex->part_info= new partition_info();
26713  if (!lex->part_info)
26714  {
26715  mem_alloc_error(sizeof(partition_info));
26716  MYSQL_YYABORT;
26717  }
26718  lex->alter_info.flags|= Alter_info::ALTER_ADD_PARTITION;
26719  lex->no_write_to_binlog= (yyvsp[(3) - (3)].num);
26720  }
26721  break;
26722 
26723  case 956:
26724 
26725 /* Line 1455 of yacc.c */
26726 #line 7704 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26727  {}
26728  break;
26729 
26730  case 958:
26731 
26732 /* Line 1455 of yacc.c */
26733 #line 7710 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26734  {
26735  LEX *lex= Lex;
26736  lex->part_info->num_parts= lex->part_info->partitions.elements;
26737  }
26738  break;
26739 
26740  case 959:
26741 
26742 /* Line 1455 of yacc.c */
26743 #line 7715 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26744  {
26745  Lex->part_info->num_parts= (yyvsp[(2) - (2)].ulong_num);
26746  }
26747  break;
26748 
26749  case 960:
26750 
26751 /* Line 1455 of yacc.c */
26752 #line 7722 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26753  {
26754  LEX *lex= Lex;
26755  lex->part_info= new partition_info();
26756  if (!lex->part_info)
26757  {
26758  mem_alloc_error(sizeof(partition_info));
26759  MYSQL_YYABORT;
26760  }
26761  lex->no_write_to_binlog= (yyvsp[(3) - (3)].num);
26762  }
26763  break;
26764 
26765  case 962:
26766 
26767 /* Line 1455 of yacc.c */
26768 #line 7737 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26769  {
26770  Lex->alter_info.flags|= Alter_info::ALTER_TABLE_REORG;
26771  }
26772  break;
26773 
26774  case 963:
26775 
26776 /* Line 1455 of yacc.c */
26777 #line 7741 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26778  {
26779  Lex->alter_info.flags|= Alter_info::ALTER_REORGANIZE_PARTITION;
26780  }
26781  break;
26782 
26783  case 964:
26784 
26785 /* Line 1455 of yacc.c */
26786 #line 7745 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26787  {
26788  partition_info *part_info= Lex->part_info;
26789  part_info->num_parts= part_info->partitions.elements;
26790  }
26791  break;
26792 
26793  case 965:
26794 
26795 /* Line 1455 of yacc.c */
26796 #line 7752 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26797  {}
26798  break;
26799 
26800  case 966:
26801 
26802 /* Line 1455 of yacc.c */
26803 #line 7753 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26804  {}
26805  break;
26806 
26807  case 967:
26808 
26809 /* Line 1455 of yacc.c */
26810 #line 7758 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26811  {
26812  if (Lex->alter_info.partition_names.push_back((yyvsp[(1) - (1)].lex_str).str))
26813  {
26814  mem_alloc_error(1);
26815  MYSQL_YYABORT;
26816  }
26817  }
26818  break;
26819 
26820  case 970:
26821 
26822 /* Line 1455 of yacc.c */
26823 #line 7778 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26824  {
26825  LEX *lex=Lex;
26826  lex->change=0;
26827  lex->alter_info.flags|= Alter_info::ALTER_ADD_COLUMN;
26828  }
26829  break;
26830 
26831  case 971:
26832 
26833 /* Line 1455 of yacc.c */
26834 #line 7787 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26835  {
26836  Lex->create_last_non_select_table= Lex->last_table();
26837  }
26838  break;
26839 
26840  case 972:
26841 
26842 /* Line 1455 of yacc.c */
26843 #line 7791 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26844  {
26845  Lex->create_last_non_select_table= Lex->last_table();
26846  Lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX;
26847  }
26848  break;
26849 
26850  case 973:
26851 
26852 /* Line 1455 of yacc.c */
26853 #line 7796 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26854  {
26855  Lex->alter_info.flags|= Alter_info::ALTER_ADD_COLUMN |
26856  Alter_info::ALTER_ADD_INDEX;
26857  }
26858  break;
26859 
26860  case 974:
26861 
26862 /* Line 1455 of yacc.c */
26863 #line 7801 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26864  {
26865  LEX *lex=Lex;
26866  lex->change= (yyvsp[(3) - (3)].lex_str).str;
26867  lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN;
26868  }
26869  break;
26870 
26871  case 975:
26872 
26873 /* Line 1455 of yacc.c */
26874 #line 7807 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26875  {
26876  Lex->create_last_non_select_table= Lex->last_table();
26877  }
26878  break;
26879 
26880  case 976:
26881 
26882 /* Line 1455 of yacc.c */
26883 #line 7811 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26884  {
26885  LEX *lex=Lex;
26886  lex->length=lex->dec=0; lex->type=0;
26887  lex->default_value= lex->on_update_value= 0;
26888  lex->comment=null_lex_str;
26889  lex->charset= NULL;
26890  lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN;
26891  }
26892  break;
26893 
26894  case 977:
26895 
26896 /* Line 1455 of yacc.c */
26897 #line 7820 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26898  {
26899  LEX *lex=Lex;
26900  if (add_field_to_list(lex->thd,&(yyvsp[(3) - (6)].lex_str),
26901  (enum enum_field_types) (yyvsp[(5) - (6)].num),
26902  lex->length,lex->dec,lex->type,
26903  lex->default_value, lex->on_update_value,
26904  &lex->comment,
26905  (yyvsp[(3) - (6)].lex_str).str, &lex->interval_list, lex->charset,
26906  lex->uint_geom_type))
26907  MYSQL_YYABORT;
26908  }
26909  break;
26910 
26911  case 978:
26912 
26913 /* Line 1455 of yacc.c */
26914 #line 7832 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26915  {
26916  Lex->create_last_non_select_table= Lex->last_table();
26917  }
26918  break;
26919 
26920  case 979:
26921 
26922 /* Line 1455 of yacc.c */
26923 #line 7836 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26924  {
26925  LEX *lex=Lex;
26926  Alter_drop *ad= new Alter_drop(Alter_drop::COLUMN, (yyvsp[(3) - (4)].lex_str).str);
26927  if (ad == NULL)
26928  MYSQL_YYABORT;
26929  lex->alter_info.drop_list.push_back(ad);
26930  lex->alter_info.flags|= Alter_info::ALTER_DROP_COLUMN;
26931  }
26932  break;
26933 
26934  case 980:
26935 
26936 /* Line 1455 of yacc.c */
26937 #line 7845 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26938  {
26939  LEX *lex=Lex;
26940  Alter_drop *ad= new Alter_drop(Alter_drop::FOREIGN_KEY, (yyvsp[(4) - (4)].lex_str).str);
26941  if (ad == NULL)
26942  MYSQL_YYABORT;
26943  lex->alter_info.drop_list.push_back(ad);
26944  lex->alter_info.flags|= Alter_info::DROP_FOREIGN_KEY;
26945  }
26946  break;
26947 
26948  case 981:
26949 
26950 /* Line 1455 of yacc.c */
26951 #line 7854 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26952  {
26953  LEX *lex=Lex;
26954  Alter_drop *ad= new Alter_drop(Alter_drop::KEY, primary_key_name);
26955  if (ad == NULL)
26956  MYSQL_YYABORT;
26957  lex->alter_info.drop_list.push_back(ad);
26958  lex->alter_info.flags|= Alter_info::ALTER_DROP_INDEX;
26959  }
26960  break;
26961 
26962  case 982:
26963 
26964 /* Line 1455 of yacc.c */
26965 #line 7863 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26966  {
26967  LEX *lex=Lex;
26968  Alter_drop *ad= new Alter_drop(Alter_drop::KEY, (yyvsp[(3) - (3)].lex_str).str);
26969  if (ad == NULL)
26970  MYSQL_YYABORT;
26971  lex->alter_info.drop_list.push_back(ad);
26972  lex->alter_info.flags|= Alter_info::ALTER_DROP_INDEX;
26973  }
26974  break;
26975 
26976  case 983:
26977 
26978 /* Line 1455 of yacc.c */
26979 #line 7872 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26980  {
26981  LEX *lex=Lex;
26982  lex->alter_info.keys_onoff= Alter_info::DISABLE;
26983  lex->alter_info.flags|= Alter_info::ALTER_KEYS_ONOFF;
26984  }
26985  break;
26986 
26987  case 984:
26988 
26989 /* Line 1455 of yacc.c */
26990 #line 7878 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
26991  {
26992  LEX *lex=Lex;
26993  lex->alter_info.keys_onoff= Alter_info::ENABLE;
26994  lex->alter_info.flags|= Alter_info::ALTER_KEYS_ONOFF;
26995  }
26996  break;
26997 
26998  case 985:
26999 
27000 /* Line 1455 of yacc.c */
27001 #line 7884 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27002  {
27003  LEX *lex=Lex;
27004  Alter_column *ac= new Alter_column((yyvsp[(3) - (6)].lex_str).str,(yyvsp[(6) - (6)].item));
27005  if (ac == NULL)
27006  MYSQL_YYABORT;
27007  lex->alter_info.alter_list.push_back(ac);
27008  lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN_DEFAULT;
27009  }
27010  break;
27011 
27012  case 986:
27013 
27014 /* Line 1455 of yacc.c */
27015 #line 7893 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27016  {
27017  LEX *lex=Lex;
27018  Alter_column *ac= new Alter_column((yyvsp[(3) - (5)].lex_str).str, (Item*) 0);
27019  if (ac == NULL)
27020  MYSQL_YYABORT;
27021  lex->alter_info.alter_list.push_back(ac);
27022  lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN_DEFAULT;
27023  }
27024  break;
27025 
27026  case 987:
27027 
27028 /* Line 1455 of yacc.c */
27029 #line 7902 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27030  {
27031  LEX *lex=Lex;
27032  size_t dummy;
27033  lex->select_lex.db=(yyvsp[(3) - (3)].table)->db.str;
27034  if (lex->select_lex.db == NULL &&
27035  lex->copy_db_to(&lex->select_lex.db, &dummy))
27036  {
27037  MYSQL_YYABORT;
27038  }
27039  enum_ident_name_check ident_check_status=
27040  check_table_name((yyvsp[(3) - (3)].table)->table.str,(yyvsp[(3) - (3)].table)->table.length, FALSE);
27041  if (ident_check_status == IDENT_NAME_WRONG)
27042  {
27043  my_error(ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[(3) - (3)].table)->table.str);
27044  MYSQL_YYABORT;
27045  }
27046  else if (ident_check_status == IDENT_NAME_TOO_LONG)
27047  {
27048  my_error(ER_TOO_LONG_IDENT, MYF(0), (yyvsp[(3) - (3)].table)->table.str);
27049  MYSQL_YYABORT;
27050  }
27051  if ((yyvsp[(3) - (3)].table)->db.str &&
27052  (check_and_convert_db_name(&(yyvsp[(3) - (3)].table)->db, FALSE) != IDENT_NAME_OK))
27053  MYSQL_YYABORT;
27054  lex->name= (yyvsp[(3) - (3)].table)->table;
27055  lex->alter_info.flags|= Alter_info::ALTER_RENAME;
27056  }
27057  break;
27058 
27059  case 988:
27060 
27061 /* Line 1455 of yacc.c */
27062 #line 7930 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27063  {
27064  if (!(yyvsp[(4) - (5)].charset))
27065  {
27066  THD *thd= YYTHD;
27067  (yyvsp[(4) - (5)].charset)= thd->variables.collation_database;
27068  }
27069  (yyvsp[(5) - (5)].charset)= (yyvsp[(5) - (5)].charset) ? (yyvsp[(5) - (5)].charset) : (yyvsp[(4) - (5)].charset);
27070  if (!my_charset_same((yyvsp[(4) - (5)].charset),(yyvsp[(5) - (5)].charset)))
27071  {
27072  my_error(ER_COLLATION_CHARSET_MISMATCH, MYF(0),
27073  (yyvsp[(5) - (5)].charset)->name, (yyvsp[(4) - (5)].charset)->csname);
27074  MYSQL_YYABORT;
27075  }
27076  LEX *lex= Lex;
27077  lex->create_info.table_charset=
27078  lex->create_info.default_table_charset= (yyvsp[(5) - (5)].charset);
27079  lex->create_info.used_fields|= (HA_CREATE_USED_CHARSET |
27080  HA_CREATE_USED_DEFAULT_CHARSET);
27081  lex->alter_info.flags|= Alter_info::ALTER_CONVERT;
27082  }
27083  break;
27084 
27085  case 989:
27086 
27087 /* Line 1455 of yacc.c */
27088 #line 7951 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27089  {
27090  LEX *lex=Lex;
27091  lex->alter_info.flags|= Alter_info::ALTER_OPTIONS;
27092  if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
27093  !lex->create_info.db_type)
27094  {
27095  lex->create_info.used_fields&= ~HA_CREATE_USED_ENGINE;
27096  }
27097  }
27098  break;
27099 
27100  case 990:
27101 
27102 /* Line 1455 of yacc.c */
27103 #line 7961 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27104  {
27105  Lex->alter_info.flags|= Alter_info::ALTER_RECREATE;
27106  }
27107  break;
27108 
27109  case 991:
27110 
27111 /* Line 1455 of yacc.c */
27112 #line 7965 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27113  {
27114  LEX *lex=Lex;
27115  lex->alter_info.flags|= Alter_info::ALTER_ORDER;
27116  }
27117  break;
27118 
27119  case 999:
27120 
27121 /* Line 1455 of yacc.c */
27122 #line 7982 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27123  {
27124  Lex->alter_info.requested_algorithm=
27125  Alter_info::ALTER_TABLE_ALGORITHM_DEFAULT;
27126  }
27127  break;
27128 
27129  case 1000:
27130 
27131 /* Line 1455 of yacc.c */
27132 #line 7987 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27133  {
27134  if (Lex->alter_info.set_requested_algorithm(&(yyvsp[(3) - (3)].lex_str)))
27135  {
27136  my_error(ER_UNKNOWN_ALTER_ALGORITHM, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
27137  MYSQL_YYABORT;
27138  }
27139  }
27140  break;
27141 
27142  case 1001:
27143 
27144 /* Line 1455 of yacc.c */
27145 #line 7998 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27146  {
27147  Lex->alter_info.requested_lock=
27148  Alter_info::ALTER_TABLE_LOCK_DEFAULT;
27149  }
27150  break;
27151 
27152  case 1002:
27153 
27154 /* Line 1455 of yacc.c */
27155 #line 8003 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27156  {
27157  if (Lex->alter_info.set_requested_lock(&(yyvsp[(3) - (3)].lex_str)))
27158  {
27159  my_error(ER_UNKNOWN_ALTER_LOCK, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
27160  MYSQL_YYABORT;
27161  }
27162  }
27163  break;
27164 
27165  case 1003:
27166 
27167 /* Line 1455 of yacc.c */
27168 #line 8013 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27169  {}
27170  break;
27171 
27172  case 1004:
27173 
27174 /* Line 1455 of yacc.c */
27175 #line 8014 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27176  {}
27177  break;
27178 
27179  case 1005:
27180 
27181 /* Line 1455 of yacc.c */
27182 #line 8018 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27183  { Lex->ignore= 0;}
27184  break;
27185 
27186  case 1006:
27187 
27188 /* Line 1455 of yacc.c */
27189 #line 8019 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27190  { Lex->ignore= 1;}
27191  break;
27192 
27193  case 1007:
27194 
27195 /* Line 1455 of yacc.c */
27196 #line 8023 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27197  { Lex->drop_mode= DROP_DEFAULT; }
27198  break;
27199 
27200  case 1008:
27201 
27202 /* Line 1455 of yacc.c */
27203 #line 8024 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27204  { Lex->drop_mode= DROP_RESTRICT; }
27205  break;
27206 
27207  case 1009:
27208 
27209 /* Line 1455 of yacc.c */
27210 #line 8025 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27211  { Lex->drop_mode= DROP_CASCADE; }
27212  break;
27213 
27214  case 1010:
27215 
27216 /* Line 1455 of yacc.c */
27217 #line 8029 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27218  {}
27219  break;
27220 
27221  case 1011:
27222 
27223 /* Line 1455 of yacc.c */
27224 #line 8031 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27225  {
27226  store_position_for_column((yyvsp[(2) - (2)].lex_str).str);
27227  Lex->alter_info.flags |= Alter_info::ALTER_COLUMN_ORDER;
27228  }
27229  break;
27230 
27231  case 1012:
27232 
27233 /* Line 1455 of yacc.c */
27234 #line 8036 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27235  {
27236  store_position_for_column(first_keyword);
27237  Lex->alter_info.flags |= Alter_info::ALTER_COLUMN_ORDER;
27238  }
27239  break;
27240 
27241  case 1013:
27242 
27243 /* Line 1455 of yacc.c */
27244 #line 8043 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27245  {}
27246  break;
27247 
27248  case 1014:
27249 
27250 /* Line 1455 of yacc.c */
27251 #line 8044 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27252  {}
27253  break;
27254 
27255  case 1015:
27256 
27257 /* Line 1455 of yacc.c */
27258 #line 8045 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27259  {}
27260  break;
27261 
27262  case 1016:
27263 
27264 /* Line 1455 of yacc.c */
27265 #line 8046 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27266  {}
27267  break;
27268 
27269  case 1017:
27270 
27271 /* Line 1455 of yacc.c */
27272 #line 8051 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27273  {
27274  LEX *lex=Lex;
27275  /* Clean previous slave connection values */
27276  lex->slave_connection.reset();
27277  lex->sql_command = SQLCOM_SLAVE_START;
27278  lex->type = 0;
27279  /* We'll use mi structure for UNTIL options */
27280  lex->mi.set_unspecified();
27281  lex->slave_thd_opt= (yyvsp[(3) - (3)].num);
27282  }
27283  break;
27284 
27285  case 1018:
27286 
27287 /* Line 1455 of yacc.c */
27288 #line 8063 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27289  {
27290  /*
27291  It is not possible to set user's information when
27292  one is trying to start the SQL Thread.
27293  */
27294  if ((Lex->slave_thd_opt & SLAVE_SQL) == SLAVE_SQL &&
27295  (Lex->slave_thd_opt & SLAVE_IO) != SLAVE_IO &&
27296  (Lex->slave_connection.user ||
27297  Lex->slave_connection.password ||
27298  Lex->slave_connection.plugin_auth ||
27299  Lex->slave_connection.plugin_dir))
27300  {
27301  my_error(ER_SQLTHREAD_WITH_SECURE_SLAVE, MYF(0));
27302  MYSQL_YYABORT;
27303  }
27304  }
27305  break;
27306 
27307  case 1019:
27308 
27309 /* Line 1455 of yacc.c */
27310 #line 8080 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27311  {
27312  LEX *lex=Lex;
27313  lex->sql_command = SQLCOM_SLAVE_STOP;
27314  lex->type = 0;
27315  lex->slave_thd_opt= (yyvsp[(3) - (3)].num);
27316  }
27317  break;
27318 
27319  case 1020:
27320 
27321 /* Line 1455 of yacc.c */
27322 #line 8090 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27323  {
27324  LEX *lex= Lex;
27325  lex->sql_command= SQLCOM_BEGIN;
27326  /* READ ONLY and READ WRITE are mutually exclusive. */
27327  if (((yyvsp[(3) - (3)].num) & MYSQL_START_TRANS_OPT_READ_WRITE) &&
27328  ((yyvsp[(3) - (3)].num) & MYSQL_START_TRANS_OPT_READ_ONLY))
27329  {
27330  my_parse_error(ER(ER_SYNTAX_ERROR));
27331  MYSQL_YYABORT;
27332  }
27333  lex->start_transaction_opt= (yyvsp[(3) - (3)].num);
27334  }
27335  break;
27336 
27337  case 1021:
27338 
27339 /* Line 1455 of yacc.c */
27340 #line 8106 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27341  {
27342  (yyval.num)= 0;
27343  }
27344  break;
27345 
27346  case 1022:
27347 
27348 /* Line 1455 of yacc.c */
27349 #line 8110 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27350  {
27351  (yyval.num)= (yyvsp[(1) - (1)].num);
27352  }
27353  break;
27354 
27355  case 1023:
27356 
27357 /* Line 1455 of yacc.c */
27358 #line 8117 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27359  {
27360  (yyval.num)= (yyvsp[(1) - (1)].num);
27361  }
27362  break;
27363 
27364  case 1024:
27365 
27366 /* Line 1455 of yacc.c */
27367 #line 8121 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27368  {
27369  (yyval.num)= (yyvsp[(1) - (3)].num) | (yyvsp[(3) - (3)].num);
27370  }
27371  break;
27372 
27373  case 1025:
27374 
27375 /* Line 1455 of yacc.c */
27376 #line 8128 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27377  {
27378  (yyval.num)= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
27379  }
27380  break;
27381 
27382  case 1026:
27383 
27384 /* Line 1455 of yacc.c */
27385 #line 8132 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27386  {
27387  (yyval.num)= MYSQL_START_TRANS_OPT_READ_ONLY;
27388  }
27389  break;
27390 
27391  case 1027:
27392 
27393 /* Line 1455 of yacc.c */
27394 #line 8136 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27395  {
27396  (yyval.num)= MYSQL_START_TRANS_OPT_READ_WRITE;
27397  }
27398  break;
27399 
27400  case 1029:
27401 
27402 /* Line 1455 of yacc.c */
27403 #line 8147 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27404  {
27405  /* empty */
27406  }
27407  break;
27408 
27409  case 1030:
27410 
27411 /* Line 1455 of yacc.c */
27412 #line 8151 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27413  {
27414  Lex->slave_connection.user= (yyvsp[(3) - (3)].lex_str).str;
27415  }
27416  break;
27417 
27418  case 1031:
27419 
27420 /* Line 1455 of yacc.c */
27421 #line 8157 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27422  {
27423  /* empty */
27424  }
27425  break;
27426 
27427  case 1032:
27428 
27429 /* Line 1455 of yacc.c */
27430 #line 8161 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27431  {
27432  Lex->slave_connection.password= (yyvsp[(3) - (3)].lex_str).str;
27433  Lex->contains_plaintext_password= true;
27434  }
27435  break;
27436 
27437  case 1033:
27438 
27439 /* Line 1455 of yacc.c */
27440 #line 8167 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27441  {
27442  /* empty */
27443  }
27444  break;
27445 
27446  case 1034:
27447 
27448 /* Line 1455 of yacc.c */
27449 #line 8171 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27450  {
27451  Lex->slave_connection.plugin_auth= (yyvsp[(3) - (3)].lex_str).str;
27452  }
27453  break;
27454 
27455  case 1035:
27456 
27457 /* Line 1455 of yacc.c */
27458 #line 8177 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27459  {
27460  /* empty */
27461  }
27462  break;
27463 
27464  case 1036:
27465 
27466 /* Line 1455 of yacc.c */
27467 #line 8181 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27468  {
27469  Lex->slave_connection.plugin_dir= (yyvsp[(3) - (3)].lex_str).str;
27470  }
27471  break;
27472 
27473  case 1037:
27474 
27475 /* Line 1455 of yacc.c */
27476 #line 8188 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27477  {
27478  (yyval.num)= 0;
27479  }
27480  break;
27481 
27482  case 1038:
27483 
27484 /* Line 1455 of yacc.c */
27485 #line 8192 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27486  {
27487  (yyval.num)= (yyvsp[(1) - (1)].num);
27488  }
27489  break;
27490 
27491  case 1039:
27492 
27493 /* Line 1455 of yacc.c */
27494 #line 8199 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27495  {
27496  (yyval.num)= (yyvsp[(1) - (1)].num);
27497  }
27498  break;
27499 
27500  case 1040:
27501 
27502 /* Line 1455 of yacc.c */
27503 #line 8203 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27504  {
27505  (yyval.num)= (yyvsp[(1) - (3)].num) | (yyvsp[(3) - (3)].num);
27506  }
27507  break;
27508 
27509  case 1041:
27510 
27511 /* Line 1455 of yacc.c */
27512 #line 8210 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27513  {
27514  (yyval.num)= SLAVE_SQL;
27515  }
27516  break;
27517 
27518  case 1042:
27519 
27520 /* Line 1455 of yacc.c */
27521 #line 8214 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27522  {
27523  (yyval.num)= SLAVE_IO;
27524  }
27525  break;
27526 
27527  case 1043:
27528 
27529 /* Line 1455 of yacc.c */
27530 #line 8220 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27531  {}
27532  break;
27533 
27534  case 1044:
27535 
27536 /* Line 1455 of yacc.c */
27537 #line 8222 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27538  {
27539  LEX *lex=Lex;
27540  if (((lex->mi.log_file_name || lex->mi.pos) &&
27541  lex->mi.gtid) ||
27542  ((lex->mi.relay_log_name || lex->mi.relay_log_pos) &&
27543  lex->mi.gtid) ||
27544  !((lex->mi.log_file_name && lex->mi.pos) ||
27545  (lex->mi.relay_log_name && lex->mi.relay_log_pos) ||
27546  lex->mi.gtid ||
27547  lex->mi.until_after_gaps) ||
27548  /* SQL_AFTER_MTS_GAPS is meaningless in combination */
27549  /* with any other coordinates related options */
27550  ((lex->mi.log_file_name || lex->mi.pos || lex->mi.relay_log_name
27551  || lex->mi.relay_log_pos || lex->mi.gtid)
27552  && lex->mi.until_after_gaps))
27553  {
27554  my_message(ER_BAD_SLAVE_UNTIL_COND,
27555  ER(ER_BAD_SLAVE_UNTIL_COND), MYF(0));
27556  MYSQL_YYABORT;
27557  }
27558  }
27559  break;
27560 
27561  case 1047:
27562 
27563 /* Line 1455 of yacc.c */
27564 #line 8249 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27565  {
27566  Lex->mi.gtid= (yyvsp[(3) - (3)].lex_str).str;
27567  Lex->mi.gtid_until_condition= LEX_MASTER_INFO::UNTIL_SQL_BEFORE_GTIDS;
27568  }
27569  break;
27570 
27571  case 1048:
27572 
27573 /* Line 1455 of yacc.c */
27574 #line 8254 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27575  {
27576  Lex->mi.gtid= (yyvsp[(3) - (3)].lex_str).str;
27577  Lex->mi.gtid_until_condition= LEX_MASTER_INFO::UNTIL_SQL_AFTER_GTIDS;
27578  }
27579  break;
27580 
27581  case 1049:
27582 
27583 /* Line 1455 of yacc.c */
27584 #line 8259 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27585  {
27586  Lex->mi.until_after_gaps= true;
27587  }
27588  break;
27589 
27590  case 1050:
27591 
27592 /* Line 1455 of yacc.c */
27593 #line 8266 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27594  {
27595  LEX *lex=Lex;
27596  lex->sql_command = SQLCOM_CHECKSUM;
27597  /* Will be overriden during execution. */
27598  YYPS->m_lock_type= TL_UNLOCK;
27599  }
27600  break;
27601 
27602  case 1051:
27603 
27604 /* Line 1455 of yacc.c */
27605 #line 8273 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27606  {}
27607  break;
27608 
27609  case 1052:
27610 
27611 /* Line 1455 of yacc.c */
27612 #line 8277 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27613  { Lex->check_opt.flags= 0; }
27614  break;
27615 
27616  case 1053:
27617 
27618 /* Line 1455 of yacc.c */
27619 #line 8278 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27620  { Lex->check_opt.flags= T_QUICK; }
27621  break;
27622 
27623  case 1054:
27624 
27625 /* Line 1455 of yacc.c */
27626 #line 8279 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27627  { Lex->check_opt.flags= T_EXTEND; }
27628  break;
27629 
27630  case 1055:
27631 
27632 /* Line 1455 of yacc.c */
27633 #line 8284 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27634  {
27635  LEX *lex=Lex;
27636  lex->sql_command = SQLCOM_REPAIR;
27637  lex->no_write_to_binlog= (yyvsp[(2) - (3)].num);
27638  lex->check_opt.init();
27639  lex->alter_info.reset();
27640  /* Will be overriden during execution. */
27641  YYPS->m_lock_type= TL_UNLOCK;
27642  }
27643  break;
27644 
27645  case 1056:
27646 
27647 /* Line 1455 of yacc.c */
27648 #line 8294 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27649  {
27650  THD *thd= YYTHD;
27651  LEX* lex= thd->lex;
27652  DBUG_ASSERT(!lex->m_sql_cmd);
27653  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_repair_table();
27654  if (lex->m_sql_cmd == NULL)
27655  MYSQL_YYABORT;
27656  }
27657  break;
27658 
27659  case 1057:
27660 
27661 /* Line 1455 of yacc.c */
27662 #line 8305 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27663  { Lex->check_opt.flags = T_MEDIUM; }
27664  break;
27665 
27666  case 1058:
27667 
27668 /* Line 1455 of yacc.c */
27669 #line 8306 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27670  {}
27671  break;
27672 
27673  case 1059:
27674 
27675 /* Line 1455 of yacc.c */
27676 #line 8310 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27677  {}
27678  break;
27679 
27680  case 1060:
27681 
27682 /* Line 1455 of yacc.c */
27683 #line 8311 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27684  {}
27685  break;
27686 
27687  case 1061:
27688 
27689 /* Line 1455 of yacc.c */
27690 #line 8315 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27691  { Lex->check_opt.flags|= T_QUICK; }
27692  break;
27693 
27694  case 1062:
27695 
27696 /* Line 1455 of yacc.c */
27697 #line 8316 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27698  { Lex->check_opt.flags|= T_EXTEND; }
27699  break;
27700 
27701  case 1063:
27702 
27703 /* Line 1455 of yacc.c */
27704 #line 8317 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27705  { Lex->check_opt.sql_flags|= TT_USEFRM; }
27706  break;
27707 
27708  case 1064:
27709 
27710 /* Line 1455 of yacc.c */
27711 #line 8322 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27712  {
27713  LEX *lex=Lex;
27714  lex->sql_command = SQLCOM_ANALYZE;
27715  lex->no_write_to_binlog= (yyvsp[(2) - (3)].num);
27716  lex->check_opt.init();
27717  lex->alter_info.reset();
27718  /* Will be overriden during execution. */
27719  YYPS->m_lock_type= TL_UNLOCK;
27720  }
27721  break;
27722 
27723  case 1065:
27724 
27725 /* Line 1455 of yacc.c */
27726 #line 8332 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27727  {
27728  THD *thd= YYTHD;
27729  LEX* lex= thd->lex;
27730  DBUG_ASSERT(!lex->m_sql_cmd);
27731  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_analyze_table();
27732  if (lex->m_sql_cmd == NULL)
27733  MYSQL_YYABORT;
27734  }
27735  break;
27736 
27737  case 1066:
27738 
27739 /* Line 1455 of yacc.c */
27740 #line 8344 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27741  {
27742  Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
27743  Lex->comment= (yyvsp[(2) - (2)].lex_str);
27744  }
27745  break;
27746 
27747  case 1067:
27748 
27749 /* Line 1455 of yacc.c */
27750 #line 8352 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27751  {
27752  LEX *lex=Lex;
27753 
27754  if (lex->sphead)
27755  {
27756  my_error(ER_SP_BADSTATEMENT, MYF(0), "CHECK");
27757  MYSQL_YYABORT;
27758  }
27759  lex->sql_command = SQLCOM_CHECK;
27760  lex->check_opt.init();
27761  lex->alter_info.reset();
27762  /* Will be overriden during execution. */
27763  YYPS->m_lock_type= TL_UNLOCK;
27764  }
27765  break;
27766 
27767  case 1068:
27768 
27769 /* Line 1455 of yacc.c */
27770 #line 8367 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27771  {
27772  THD *thd= YYTHD;
27773  LEX* lex= thd->lex;
27774  DBUG_ASSERT(!lex->m_sql_cmd);
27775  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_check_table();
27776  if (lex->m_sql_cmd == NULL)
27777  MYSQL_YYABORT;
27778  }
27779  break;
27780 
27781  case 1069:
27782 
27783 /* Line 1455 of yacc.c */
27784 #line 8378 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27785  { Lex->check_opt.flags = T_MEDIUM; }
27786  break;
27787 
27788  case 1070:
27789 
27790 /* Line 1455 of yacc.c */
27791 #line 8379 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27792  {}
27793  break;
27794 
27795  case 1071:
27796 
27797 /* Line 1455 of yacc.c */
27798 #line 8383 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27799  {}
27800  break;
27801 
27802  case 1072:
27803 
27804 /* Line 1455 of yacc.c */
27805 #line 8384 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27806  {}
27807  break;
27808 
27809  case 1073:
27810 
27811 /* Line 1455 of yacc.c */
27812 #line 8388 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27813  { Lex->check_opt.flags|= T_QUICK; }
27814  break;
27815 
27816  case 1074:
27817 
27818 /* Line 1455 of yacc.c */
27819 #line 8389 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27820  { Lex->check_opt.flags|= T_FAST; }
27821  break;
27822 
27823  case 1075:
27824 
27825 /* Line 1455 of yacc.c */
27826 #line 8390 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27827  { Lex->check_opt.flags|= T_MEDIUM; }
27828  break;
27829 
27830  case 1076:
27831 
27832 /* Line 1455 of yacc.c */
27833 #line 8391 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27834  { Lex->check_opt.flags|= T_EXTEND; }
27835  break;
27836 
27837  case 1077:
27838 
27839 /* Line 1455 of yacc.c */
27840 #line 8392 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27841  { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; }
27842  break;
27843 
27844  case 1078:
27845 
27846 /* Line 1455 of yacc.c */
27847 #line 8393 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27848  { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
27849  break;
27850 
27851  case 1079:
27852 
27853 /* Line 1455 of yacc.c */
27854 #line 8398 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27855  {
27856  LEX *lex=Lex;
27857  lex->sql_command = SQLCOM_OPTIMIZE;
27858  lex->no_write_to_binlog= (yyvsp[(2) - (3)].num);
27859  lex->check_opt.init();
27860  lex->alter_info.reset();
27861  /* Will be overriden during execution. */
27862  YYPS->m_lock_type= TL_UNLOCK;
27863  }
27864  break;
27865 
27866  case 1080:
27867 
27868 /* Line 1455 of yacc.c */
27869 #line 8408 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27870  {
27871  THD *thd= YYTHD;
27872  LEX* lex= thd->lex;
27873  DBUG_ASSERT(!lex->m_sql_cmd);
27874  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_optimize_table();
27875  if (lex->m_sql_cmd == NULL)
27876  MYSQL_YYABORT;
27877  }
27878  break;
27879 
27880  case 1081:
27881 
27882 /* Line 1455 of yacc.c */
27883 #line 8419 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27884  { (yyval.num)= 0; }
27885  break;
27886 
27887  case 1082:
27888 
27889 /* Line 1455 of yacc.c */
27890 #line 8420 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27891  { (yyval.num)= 1; }
27892  break;
27893 
27894  case 1083:
27895 
27896 /* Line 1455 of yacc.c */
27897 #line 8421 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27898  { (yyval.num)= 1; }
27899  break;
27900 
27901  case 1084:
27902 
27903 /* Line 1455 of yacc.c */
27904 #line 8426 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27905  {
27906  Lex->sql_command= SQLCOM_RENAME_TABLE;
27907  }
27908  break;
27909 
27910  case 1085:
27911 
27912 /* Line 1455 of yacc.c */
27913 #line 8430 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27914  {}
27915  break;
27916 
27917  case 1086:
27918 
27919 /* Line 1455 of yacc.c */
27920 #line 8432 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27921  {
27922  Lex->sql_command = SQLCOM_RENAME_USER;
27923  }
27924  break;
27925 
27926  case 1087:
27927 
27928 /* Line 1455 of yacc.c */
27929 #line 8439 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27930  {
27931  if (Lex->users_list.push_back((yyvsp[(1) - (3)].lex_user)) || Lex->users_list.push_back((yyvsp[(3) - (3)].lex_user)))
27932  MYSQL_YYABORT;
27933  }
27934  break;
27935 
27936  case 1088:
27937 
27938 /* Line 1455 of yacc.c */
27939 #line 8444 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27940  {
27941  if (Lex->users_list.push_back((yyvsp[(3) - (5)].lex_user)) || Lex->users_list.push_back((yyvsp[(5) - (5)].lex_user)))
27942  MYSQL_YYABORT;
27943  }
27944  break;
27945 
27946  case 1091:
27947 
27948 /* Line 1455 of yacc.c */
27949 #line 8457 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27950  {
27951  LEX *lex=Lex;
27952  SELECT_LEX *sl= lex->current_select;
27953  if (!sl->add_table_to_list(lex->thd, (yyvsp[(1) - (3)].table),NULL,TL_OPTION_UPDATING,
27954  TL_IGNORE, MDL_EXCLUSIVE) ||
27955  !sl->add_table_to_list(lex->thd, (yyvsp[(3) - (3)].table),NULL,TL_OPTION_UPDATING,
27956  TL_IGNORE, MDL_EXCLUSIVE))
27957  MYSQL_YYABORT;
27958  }
27959  break;
27960 
27961  case 1092:
27962 
27963 /* Line 1455 of yacc.c */
27964 #line 8470 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27965  {
27966  Lex->alter_info.reset();
27967  }
27968  break;
27969 
27970  case 1093:
27971 
27972 /* Line 1455 of yacc.c */
27973 #line 8474 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27974  {
27975  LEX *lex=Lex;
27976  lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE;
27977  lex->ident= (yyvsp[(6) - (6)].lex_str);
27978  }
27979  break;
27980 
27981  case 1098:
27982 
27983 /* Line 1455 of yacc.c */
27984 #line 8493 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27985  {
27986  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (2)].table), NULL, 0, TL_READ,
27987  MDL_SHARED_READ,
27988  Select->pop_index_hints()))
27989  MYSQL_YYABORT;
27990  }
27991  break;
27992 
27993  case 1099:
27994 
27995 /* Line 1455 of yacc.c */
27996 #line 8503 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
27997  {
27998  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (3)].table), NULL, 0, TL_READ,
27999  MDL_SHARED_READ,
28000  Select->pop_index_hints()))
28001  MYSQL_YYABORT;
28002  }
28003  break;
28004 
28005  case 1100:
28006 
28007 /* Line 1455 of yacc.c */
28008 #line 8512 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28009  { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
28010  break;
28011 
28012  case 1101:
28013 
28014 /* Line 1455 of yacc.c */
28015 #line 8513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28016  { (yyval.lex_str) = default_key_cache_base; }
28017  break;
28018 
28019  case 1102:
28020 
28021 /* Line 1455 of yacc.c */
28022 #line 8518 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28023  {
28024  LEX *lex=Lex;
28025  lex->sql_command=SQLCOM_PRELOAD_KEYS;
28026  lex->alter_info.reset();
28027  }
28028  break;
28029 
28030  case 1103:
28031 
28032 /* Line 1455 of yacc.c */
28033 #line 8524 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28034  {}
28035  break;
28036 
28037  case 1108:
28038 
28039 /* Line 1455 of yacc.c */
28040 #line 8539 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28041  {
28042  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (3)].table), NULL, (yyvsp[(3) - (3)].num), TL_READ,
28043  MDL_SHARED_READ,
28044  Select->pop_index_hints()))
28045  MYSQL_YYABORT;
28046  }
28047  break;
28048 
28049  case 1109:
28050 
28051 /* Line 1455 of yacc.c */
28052 #line 8549 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28053  {
28054  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (4)].table), NULL, (yyvsp[(4) - (4)].num), TL_READ,
28055  MDL_SHARED_READ,
28056  Select->pop_index_hints()))
28057  MYSQL_YYABORT;
28058  }
28059  break;
28060 
28061  case 1110:
28062 
28063 /* Line 1455 of yacc.c */
28064 #line 8559 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28065  {
28066  Lex->alter_info.flags|= Alter_info::ALTER_ADMIN_PARTITION;
28067  }
28068  break;
28069 
28070  case 1112:
28071 
28072 /* Line 1455 of yacc.c */
28073 #line 8566 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28074  {
28075  Lex->select_lex.alloc_index_hints(YYTHD);
28076  Select->set_index_hint_type(INDEX_HINT_USE,
28077  old_mode ?
28078  INDEX_HINT_MASK_JOIN :
28079  INDEX_HINT_MASK_ALL);
28080  }
28081  break;
28082 
28083  case 1114:
28084 
28085 /* Line 1455 of yacc.c */
28086 #line 8577 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28087  { }
28088  break;
28089 
28090  case 1116:
28091 
28092 /* Line 1455 of yacc.c */
28093 #line 8583 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28094  { (yyval.num)= 0; }
28095  break;
28096 
28097  case 1117:
28098 
28099 /* Line 1455 of yacc.c */
28100 #line 8584 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28101  { (yyval.num)= TL_OPTION_IGNORE_LEAVES; }
28102  break;
28103 
28104  case 1118:
28105 
28106 /* Line 1455 of yacc.c */
28107 #line 8594 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28108  {
28109  LEX *lex= Lex;
28110  lex->sql_command= SQLCOM_SELECT;
28111  }
28112  break;
28113 
28114  case 1121:
28115 
28116 /* Line 1455 of yacc.c */
28117 #line 8608 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28118  {
28119  if (setup_select_in_parentheses(Lex))
28120  MYSQL_YYABORT;
28121  }
28122  break;
28123 
28124  case 1123:
28125 
28126 /* Line 1455 of yacc.c */
28127 #line 8618 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28128  {
28129  if (setup_select_in_parentheses(Lex))
28130  MYSQL_YYABORT;
28131  }
28132  break;
28133 
28134  case 1125:
28135 
28136 /* Line 1455 of yacc.c */
28137 #line 8627 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28138  {
28139  LEX *lex= Lex;
28140  SELECT_LEX * sel= lex->current_select;
28141  if (lex->current_select->set_braces(0))
28142  {
28143  my_parse_error(ER(ER_SYNTAX_ERROR));
28144  MYSQL_YYABORT;
28145  }
28146  if (sel->linkage == UNION_TYPE &&
28147  sel->master_unit()->first_select()->braces)
28148  {
28149  my_parse_error(ER(ER_SYNTAX_ERROR));
28150  MYSQL_YYABORT;
28151  }
28152  }
28153  break;
28154 
28155  case 1127:
28156 
28157 /* Line 1455 of yacc.c */
28158 #line 8646 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28159  {
28160  LEX *lex= Lex;
28161  SELECT_LEX *sel= lex->current_select;
28162  if (sel->linkage != UNION_TYPE)
28163  mysql_init_select(lex);
28164  lex->current_select->parsing_place= SELECT_LIST;
28165  }
28166  break;
28167 
28168  case 1128:
28169 
28170 /* Line 1455 of yacc.c */
28171 #line 8654 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28172  {
28173  Select->parsing_place= NO_MATTER;
28174  }
28175  break;
28176 
28177  case 1130:
28178 
28179 /* Line 1455 of yacc.c */
28180 #line 8661 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28181  {}
28182  break;
28183 
28184  case 1135:
28185 
28186 /* Line 1455 of yacc.c */
28187 #line 8671 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28188  {
28189  Select->context.table_list=
28190  Select->context.first_name_resolution_table=
28191  Select->table_list.first;
28192  }
28193  break;
28194 
28195  case 1138:
28196 
28197 /* Line 1455 of yacc.c */
28198 #line 8686 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28199  {
28200  if (Select->options & SELECT_DISTINCT && Select->options & SELECT_ALL)
28201  {
28202  my_error(ER_WRONG_USAGE, MYF(0), "ALL", "DISTINCT");
28203  MYSQL_YYABORT;
28204  }
28205  }
28206  break;
28207 
28208  case 1142:
28209 
28210 /* Line 1455 of yacc.c */
28211 #line 8703 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28212  {
28213  /*
28214  Allow this flag only on the first top-level SELECT statement, if
28215  SQL_CACHE wasn't specified, and only once per query.
28216  */
28217  if (Lex->current_select != &Lex->select_lex)
28218  {
28219  my_error(ER_CANT_USE_OPTION_HERE, MYF(0), "SQL_NO_CACHE");
28220  MYSQL_YYABORT;
28221  }
28222  else if (Lex->select_lex.sql_cache == SELECT_LEX::SQL_CACHE)
28223  {
28224  my_error(ER_WRONG_USAGE, MYF(0), "SQL_CACHE", "SQL_NO_CACHE");
28225  MYSQL_YYABORT;
28226  }
28227  else if (Lex->select_lex.sql_cache == SELECT_LEX::SQL_NO_CACHE)
28228  {
28229  my_error(ER_DUP_ARGUMENT, MYF(0), "SQL_NO_CACHE");
28230  MYSQL_YYABORT;
28231  }
28232  else
28233  {
28234  Lex->safe_to_cache_query=0;
28235  Lex->select_lex.options&= ~OPTION_TO_QUERY_CACHE;
28236  Lex->select_lex.sql_cache= SELECT_LEX::SQL_NO_CACHE;
28237  }
28238  }
28239  break;
28240 
28241  case 1143:
28242 
28243 /* Line 1455 of yacc.c */
28244 #line 8731 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28245  {
28246  /*
28247  Allow this flag only on the first top-level SELECT statement, if
28248  SQL_NO_CACHE wasn't specified, and only once per query.
28249  */
28250  if (Lex->current_select != &Lex->select_lex)
28251  {
28252  my_error(ER_CANT_USE_OPTION_HERE, MYF(0), "SQL_CACHE");
28253  MYSQL_YYABORT;
28254  }
28255  else if (Lex->select_lex.sql_cache == SELECT_LEX::SQL_NO_CACHE)
28256  {
28257  my_error(ER_WRONG_USAGE, MYF(0), "SQL_NO_CACHE", "SQL_CACHE");
28258  MYSQL_YYABORT;
28259  }
28260  else if (Lex->select_lex.sql_cache == SELECT_LEX::SQL_CACHE)
28261  {
28262  my_error(ER_DUP_ARGUMENT, MYF(0), "SQL_CACHE");
28263  MYSQL_YYABORT;
28264  }
28265  else
28266  {
28267  Lex->safe_to_cache_query=1;
28268  Lex->select_lex.options|= OPTION_TO_QUERY_CACHE;
28269  Lex->select_lex.sql_cache= SELECT_LEX::SQL_CACHE;
28270  }
28271  }
28272  break;
28273 
28274  case 1145:
28275 
28276 /* Line 1455 of yacc.c */
28277 #line 8763 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28278  {
28279  LEX *lex=Lex;
28280  lex->current_select->set_lock_for_tables(TL_WRITE);
28281  lex->safe_to_cache_query=0;
28282  }
28283  break;
28284 
28285  case 1146:
28286 
28287 /* Line 1455 of yacc.c */
28288 #line 8769 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28289  {
28290  LEX *lex=Lex;
28291  lex->current_select->
28292  set_lock_for_tables(TL_READ_WITH_SHARED_LOCKS);
28293  lex->safe_to_cache_query=0;
28294  }
28295  break;
28296 
28297  case 1149:
28298 
28299 /* Line 1455 of yacc.c */
28300 #line 8781 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28301  {
28302  THD *thd= YYTHD;
28303  Item *item= new (thd->mem_root)
28304  Item_field(&thd->lex->current_select->context,
28305  NULL, NULL, "*");
28306  if (item == NULL)
28307  MYSQL_YYABORT;
28308  if (add_item_to_list(thd, item))
28309  MYSQL_YYABORT;
28310  (thd->lex->current_select->with_wild)++;
28311  }
28312  break;
28313 
28314  case 1150:
28315 
28316 /* Line 1455 of yacc.c */
28317 #line 8796 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28318  {
28319  THD *thd= YYTHD;
28320 
28321  if (add_item_to_list(thd, (yyvsp[(2) - (3)].item)))
28322  MYSQL_YYABORT;
28323  }
28324  break;
28325 
28326  case 1151:
28327 
28328 /* Line 1455 of yacc.c */
28329 #line 8803 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28330  {
28331  THD *thd= YYTHD;
28332  DBUG_ASSERT((yyvsp[(1) - (4)].simple_string) < (yyvsp[(3) - (4)].simple_string));
28333 
28334  if (add_item_to_list(thd, (yyvsp[(2) - (4)].item)))
28335  MYSQL_YYABORT;
28336  if ((yyvsp[(4) - (4)].lex_str).str)
28337  {
28338  if (Lex->sql_command == SQLCOM_CREATE_VIEW &&
28339  check_column_name((yyvsp[(4) - (4)].lex_str).str))
28340  {
28341  my_error(ER_WRONG_COLUMN_NAME, MYF(0), (yyvsp[(4) - (4)].lex_str).str);
28342  MYSQL_YYABORT;
28343  }
28344  (yyvsp[(2) - (4)].item)->item_name.copy((yyvsp[(4) - (4)].lex_str).str, (yyvsp[(4) - (4)].lex_str).length, system_charset_info, false);
28345  }
28346  else if (!(yyvsp[(2) - (4)].item)->item_name.is_set())
28347  {
28348  (yyvsp[(2) - (4)].item)->item_name.copy((yyvsp[(1) - (4)].simple_string), (uint) ((yyvsp[(3) - (4)].simple_string) - (yyvsp[(1) - (4)].simple_string)), thd->charset());
28349  }
28350  }
28351  break;
28352 
28353  case 1152:
28354 
28355 /* Line 1455 of yacc.c */
28356 #line 8827 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28357  {
28358  (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_start();
28359  }
28360  break;
28361 
28362  case 1153:
28363 
28364 /* Line 1455 of yacc.c */
28365 #line 8833 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28366  {
28367  (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_end();
28368  }
28369  break;
28370 
28371  case 1154:
28372 
28373 /* Line 1455 of yacc.c */
28374 #line 8839 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28375  { (yyval.lex_str)=null_lex_str;}
28376  break;
28377 
28378  case 1155:
28379 
28380 /* Line 1455 of yacc.c */
28381 #line 8840 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28382  { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str); }
28383  break;
28384 
28385  case 1156:
28386 
28387 /* Line 1455 of yacc.c */
28388 #line 8841 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28389  { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str); }
28390  break;
28391 
28392  case 1157:
28393 
28394 /* Line 1455 of yacc.c */
28395 #line 8842 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28396  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
28397  break;
28398 
28399  case 1158:
28400 
28401 /* Line 1455 of yacc.c */
28402 #line 8843 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28403  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
28404  break;
28405 
28406  case 1159:
28407 
28408 /* Line 1455 of yacc.c */
28409 #line 8847 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28410  {}
28411  break;
28412 
28413  case 1160:
28414 
28415 /* Line 1455 of yacc.c */
28416 #line 8848 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28417  {}
28418  break;
28419 
28420  case 1161:
28421 
28422 /* Line 1455 of yacc.c */
28423 #line 8854 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28424  {
28425  /*
28426  Design notes:
28427  Do not use a manually maintained stack like thd->lex->xxx_list,
28428  but use the internal bison stack ($$, $1 and $3) instead.
28429  Using the bison stack is:
28430  - more robust to changes in the grammar,
28431  - guaranteed to be in sync with the parser state,
28432  - better for performances (no memory allocation).
28433  */
28434  Item_cond_or *item1;
28435  Item_cond_or *item3;
28436  if (is_cond_or((yyvsp[(1) - (3)].item)))
28437  {
28438  item1= (Item_cond_or*) (yyvsp[(1) - (3)].item);
28439  if (is_cond_or((yyvsp[(3) - (3)].item)))
28440  {
28441  item3= (Item_cond_or*) (yyvsp[(3) - (3)].item);
28442  /*
28443  (X1 OR X2) OR (Y1 OR Y2) ==> OR (X1, X2, Y1, Y2)
28444  */
28445  item3->add_at_head(item1->argument_list());
28446  (yyval.item) = (yyvsp[(3) - (3)].item);
28447  }
28448  else
28449  {
28450  /*
28451  (X1 OR X2) OR Y ==> OR (X1, X2, Y)
28452  */
28453  item1->add((yyvsp[(3) - (3)].item));
28454  (yyval.item) = (yyvsp[(1) - (3)].item);
28455  }
28456  }
28457  else if (is_cond_or((yyvsp[(3) - (3)].item)))
28458  {
28459  item3= (Item_cond_or*) (yyvsp[(3) - (3)].item);
28460  /*
28461  X OR (Y1 OR Y2) ==> OR (X, Y1, Y2)
28462  */
28463  item3->add_at_head((yyvsp[(1) - (3)].item));
28464  (yyval.item) = (yyvsp[(3) - (3)].item);
28465  }
28466  else
28467  {
28468  /* X OR Y */
28469  (yyval.item) = new (YYTHD->mem_root) Item_cond_or((yyvsp[(1) - (3)].item), (yyvsp[(3) - (3)].item));
28470  if ((yyval.item) == NULL)
28471  MYSQL_YYABORT;
28472  }
28473  }
28474  break;
28475 
28476  case 1162:
28477 
28478 /* Line 1455 of yacc.c */
28479 #line 8905 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28480  {
28481  /* XOR is a proprietary extension */
28482  (yyval.item) = new (YYTHD->mem_root) Item_func_xor((yyvsp[(1) - (3)].item), (yyvsp[(3) - (3)].item));
28483  if ((yyval.item) == NULL)
28484  MYSQL_YYABORT;
28485  }
28486  break;
28487 
28488  case 1163:
28489 
28490 /* Line 1455 of yacc.c */
28491 #line 8912 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28492  {
28493  /* See comments in rule expr: expr or expr */
28494  Item_cond_and *item1;
28495  Item_cond_and *item3;
28496  if (is_cond_and((yyvsp[(1) - (3)].item)))
28497  {
28498  item1= (Item_cond_and*) (yyvsp[(1) - (3)].item);
28499  if (is_cond_and((yyvsp[(3) - (3)].item)))
28500  {
28501  item3= (Item_cond_and*) (yyvsp[(3) - (3)].item);
28502  /*
28503  (X1 AND X2) AND (Y1 AND Y2) ==> AND (X1, X2, Y1, Y2)
28504  */
28505  item3->add_at_head(item1->argument_list());
28506  (yyval.item) = (yyvsp[(3) - (3)].item);
28507  }
28508  else
28509  {
28510  /*
28511  (X1 AND X2) AND Y ==> AND (X1, X2, Y)
28512  */
28513  item1->add((yyvsp[(3) - (3)].item));
28514  (yyval.item) = (yyvsp[(1) - (3)].item);
28515  }
28516  }
28517  else if (is_cond_and((yyvsp[(3) - (3)].item)))
28518  {
28519  item3= (Item_cond_and*) (yyvsp[(3) - (3)].item);
28520  /*
28521  X AND (Y1 AND Y2) ==> AND (X, Y1, Y2)
28522  */
28523  item3->add_at_head((yyvsp[(1) - (3)].item));
28524  (yyval.item) = (yyvsp[(3) - (3)].item);
28525  }
28526  else
28527  {
28528  /* X AND Y */
28529  (yyval.item) = new (YYTHD->mem_root) Item_cond_and((yyvsp[(1) - (3)].item), (yyvsp[(3) - (3)].item));
28530  if ((yyval.item) == NULL)
28531  MYSQL_YYABORT;
28532  }
28533  }
28534  break;
28535 
28536  case 1164:
28537 
28538 /* Line 1455 of yacc.c */
28539 #line 8955 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28540  {
28541  (yyval.item)= negate_expression(YYTHD, (yyvsp[(2) - (2)].item));
28542  if ((yyval.item) == NULL)
28543  MYSQL_YYABORT;
28544  }
28545  break;
28546 
28547  case 1165:
28548 
28549 /* Line 1455 of yacc.c */
28550 #line 8961 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28551  {
28552  (yyval.item)= new (YYTHD->mem_root) Item_func_istrue((yyvsp[(1) - (3)].item));
28553  if ((yyval.item) == NULL)
28554  MYSQL_YYABORT;
28555  }
28556  break;
28557 
28558  case 1166:
28559 
28560 /* Line 1455 of yacc.c */
28561 #line 8967 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28562  {
28563  (yyval.item)= new (YYTHD->mem_root) Item_func_isnottrue((yyvsp[(1) - (4)].item));
28564  if ((yyval.item) == NULL)
28565  MYSQL_YYABORT;
28566  }
28567  break;
28568 
28569  case 1167:
28570 
28571 /* Line 1455 of yacc.c */
28572 #line 8973 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28573  {
28574  (yyval.item)= new (YYTHD->mem_root) Item_func_isfalse((yyvsp[(1) - (3)].item));
28575  if ((yyval.item) == NULL)
28576  MYSQL_YYABORT;
28577  }
28578  break;
28579 
28580  case 1168:
28581 
28582 /* Line 1455 of yacc.c */
28583 #line 8979 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28584  {
28585  (yyval.item)= new (YYTHD->mem_root) Item_func_isnotfalse((yyvsp[(1) - (4)].item));
28586  if ((yyval.item) == NULL)
28587  MYSQL_YYABORT;
28588  }
28589  break;
28590 
28591  case 1169:
28592 
28593 /* Line 1455 of yacc.c */
28594 #line 8985 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28595  {
28596  (yyval.item)= new (YYTHD->mem_root) Item_func_isnull((yyvsp[(1) - (3)].item));
28597  if ((yyval.item) == NULL)
28598  MYSQL_YYABORT;
28599  }
28600  break;
28601 
28602  case 1170:
28603 
28604 /* Line 1455 of yacc.c */
28605 #line 8991 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28606  {
28607  (yyval.item)= new (YYTHD->mem_root) Item_func_isnotnull((yyvsp[(1) - (4)].item));
28608  if ((yyval.item) == NULL)
28609  MYSQL_YYABORT;
28610  }
28611  break;
28612 
28613  case 1172:
28614 
28615 /* Line 1455 of yacc.c */
28616 #line 9001 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28617  {
28618  (yyval.item)= new (YYTHD->mem_root) Item_func_isnull((yyvsp[(1) - (3)].item));
28619  if ((yyval.item) == NULL)
28620  MYSQL_YYABORT;
28621  }
28622  break;
28623 
28624  case 1173:
28625 
28626 /* Line 1455 of yacc.c */
28627 #line 9007 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28628  {
28629  (yyval.item)= new (YYTHD->mem_root) Item_func_isnotnull((yyvsp[(1) - (4)].item));
28630  if ((yyval.item) == NULL)
28631  MYSQL_YYABORT;
28632  }
28633  break;
28634 
28635  case 1174:
28636 
28637 /* Line 1455 of yacc.c */
28638 #line 9013 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28639  {
28640  (yyval.item)= new (YYTHD->mem_root) Item_func_equal((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28641  if ((yyval.item) == NULL)
28642  MYSQL_YYABORT;
28643  }
28644  break;
28645 
28646  case 1175:
28647 
28648 /* Line 1455 of yacc.c */
28649 #line 9019 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28650  {
28651  (yyval.item)= (*(yyvsp[(2) - (3)].boolfunc2creator))(0)->create((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28652  if ((yyval.item) == NULL)
28653  MYSQL_YYABORT;
28654  }
28655  break;
28656 
28657  case 1176:
28658 
28659 /* Line 1455 of yacc.c */
28660 #line 9025 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28661  {
28662  (yyval.item)= all_any_subquery_creator((yyvsp[(1) - (6)].item), (yyvsp[(2) - (6)].boolfunc2creator), (yyvsp[(3) - (6)].num), (yyvsp[(5) - (6)].select_lex));
28663  if ((yyval.item) == NULL)
28664  MYSQL_YYABORT;
28665  }
28666  break;
28667 
28668  case 1178:
28669 
28670 /* Line 1455 of yacc.c */
28671 #line 9035 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28672  {
28673  (yyval.item)= new (YYTHD->mem_root) Item_in_subselect((yyvsp[(1) - (5)].item), (yyvsp[(4) - (5)].select_lex));
28674  if ((yyval.item) == NULL)
28675  MYSQL_YYABORT;
28676  }
28677  break;
28678 
28679  case 1179:
28680 
28681 /* Line 1455 of yacc.c */
28682 #line 9041 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28683  {
28684  THD *thd= YYTHD;
28685  Item *item= new (thd->mem_root) Item_in_subselect((yyvsp[(1) - (6)].item), (yyvsp[(5) - (6)].select_lex));
28686  if (item == NULL)
28687  MYSQL_YYABORT;
28688  (yyval.item)= negate_expression(thd, item);
28689  if ((yyval.item) == NULL)
28690  MYSQL_YYABORT;
28691  }
28692  break;
28693 
28694  case 1180:
28695 
28696 /* Line 1455 of yacc.c */
28697 #line 9051 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28698  {
28699  (yyval.item)= handle_sql2003_note184_exception(YYTHD, (yyvsp[(1) - (5)].item), true, (yyvsp[(4) - (5)].item));
28700  if ((yyval.item) == NULL)
28701  MYSQL_YYABORT;
28702  }
28703  break;
28704 
28705  case 1181:
28706 
28707 /* Line 1455 of yacc.c */
28708 #line 9057 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28709  {
28710  (yyvsp[(6) - (7)].item_list)->push_front((yyvsp[(4) - (7)].item));
28711  (yyvsp[(6) - (7)].item_list)->push_front((yyvsp[(1) - (7)].item));
28712  (yyval.item)= new (YYTHD->mem_root) Item_func_in(*(yyvsp[(6) - (7)].item_list));
28713  if ((yyval.item) == NULL)
28714  MYSQL_YYABORT;
28715  }
28716  break;
28717 
28718  case 1182:
28719 
28720 /* Line 1455 of yacc.c */
28721 #line 9065 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28722  {
28723  (yyval.item)= handle_sql2003_note184_exception(YYTHD, (yyvsp[(1) - (6)].item), false, (yyvsp[(5) - (6)].item));
28724  if ((yyval.item) == NULL)
28725  MYSQL_YYABORT;
28726  }
28727  break;
28728 
28729  case 1183:
28730 
28731 /* Line 1455 of yacc.c */
28732 #line 9071 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28733  {
28734  (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(5) - (8)].item));
28735  (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(1) - (8)].item));
28736  Item_func_in *item = new (YYTHD->mem_root) Item_func_in(*(yyvsp[(7) - (8)].item_list));
28737  if (item == NULL)
28738  MYSQL_YYABORT;
28739  item->negate();
28740  (yyval.item)= item;
28741  }
28742  break;
28743 
28744  case 1184:
28745 
28746 /* Line 1455 of yacc.c */
28747 #line 9081 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28748  {
28749  (yyval.item)= new (YYTHD->mem_root) Item_func_between((yyvsp[(1) - (5)].item),(yyvsp[(3) - (5)].item),(yyvsp[(5) - (5)].item));
28750  if ((yyval.item) == NULL)
28751  MYSQL_YYABORT;
28752  }
28753  break;
28754 
28755  case 1185:
28756 
28757 /* Line 1455 of yacc.c */
28758 #line 9087 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28759  {
28760  Item_func_between *item;
28761  item= new (YYTHD->mem_root) Item_func_between((yyvsp[(1) - (6)].item),(yyvsp[(4) - (6)].item),(yyvsp[(6) - (6)].item));
28762  if (item == NULL)
28763  MYSQL_YYABORT;
28764  item->negate();
28765  (yyval.item)= item;
28766  }
28767  break;
28768 
28769  case 1186:
28770 
28771 /* Line 1455 of yacc.c */
28772 #line 9096 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28773  {
28774  Item *item1= new (YYTHD->mem_root) Item_func_soundex((yyvsp[(1) - (4)].item));
28775  Item *item4= new (YYTHD->mem_root) Item_func_soundex((yyvsp[(4) - (4)].item));
28776  if ((item1 == NULL) || (item4 == NULL))
28777  MYSQL_YYABORT;
28778  (yyval.item)= new (YYTHD->mem_root) Item_func_eq(item1, item4);
28779  if ((yyval.item) == NULL)
28780  MYSQL_YYABORT;
28781  }
28782  break;
28783 
28784  case 1187:
28785 
28786 /* Line 1455 of yacc.c */
28787 #line 9106 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28788  {
28789  (yyval.item)= new (YYTHD->mem_root) Item_func_like((yyvsp[(1) - (4)].item),(yyvsp[(3) - (4)].item),(yyvsp[(4) - (4)].item),Lex->escape_used);
28790  if ((yyval.item) == NULL)
28791  MYSQL_YYABORT;
28792  }
28793  break;
28794 
28795  case 1188:
28796 
28797 /* Line 1455 of yacc.c */
28798 #line 9112 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28799  {
28800  Item *item= new (YYTHD->mem_root) Item_func_like((yyvsp[(1) - (5)].item),(yyvsp[(4) - (5)].item),(yyvsp[(5) - (5)].item),
28801  Lex->escape_used);
28802  if (item == NULL)
28803  MYSQL_YYABORT;
28804  (yyval.item)= new (YYTHD->mem_root) Item_func_not(item);
28805  if ((yyval.item) == NULL)
28806  MYSQL_YYABORT;
28807  }
28808  break;
28809 
28810  case 1189:
28811 
28812 /* Line 1455 of yacc.c */
28813 #line 9122 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28814  {
28815  (yyval.item)= new (YYTHD->mem_root) Item_func_regex((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28816  if ((yyval.item) == NULL)
28817  MYSQL_YYABORT;
28818  }
28819  break;
28820 
28821  case 1190:
28822 
28823 /* Line 1455 of yacc.c */
28824 #line 9128 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28825  {
28826  Item *item= new (YYTHD->mem_root) Item_func_regex((yyvsp[(1) - (4)].item),(yyvsp[(4) - (4)].item));
28827  if (item == NULL)
28828  MYSQL_YYABORT;
28829  (yyval.item)= negate_expression(YYTHD, item);
28830  if ((yyval.item) == NULL)
28831  MYSQL_YYABORT;
28832  }
28833  break;
28834 
28835  case 1192:
28836 
28837 /* Line 1455 of yacc.c */
28838 #line 9141 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28839  {
28840  (yyval.item)= new (YYTHD->mem_root) Item_func_bit_or((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28841  if ((yyval.item) == NULL)
28842  MYSQL_YYABORT;
28843  }
28844  break;
28845 
28846  case 1193:
28847 
28848 /* Line 1455 of yacc.c */
28849 #line 9147 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28850  {
28851  (yyval.item)= new (YYTHD->mem_root) Item_func_bit_and((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28852  if ((yyval.item) == NULL)
28853  MYSQL_YYABORT;
28854  }
28855  break;
28856 
28857  case 1194:
28858 
28859 /* Line 1455 of yacc.c */
28860 #line 9153 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28861  {
28862  (yyval.item)= new (YYTHD->mem_root) Item_func_shift_left((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28863  if ((yyval.item) == NULL)
28864  MYSQL_YYABORT;
28865  }
28866  break;
28867 
28868  case 1195:
28869 
28870 /* Line 1455 of yacc.c */
28871 #line 9159 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28872  {
28873  (yyval.item)= new (YYTHD->mem_root) Item_func_shift_right((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28874  if ((yyval.item) == NULL)
28875  MYSQL_YYABORT;
28876  }
28877  break;
28878 
28879  case 1196:
28880 
28881 /* Line 1455 of yacc.c */
28882 #line 9165 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28883  {
28884  (yyval.item)= new (YYTHD->mem_root) Item_func_plus((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28885  if ((yyval.item) == NULL)
28886  MYSQL_YYABORT;
28887  }
28888  break;
28889 
28890  case 1197:
28891 
28892 /* Line 1455 of yacc.c */
28893 #line 9171 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28894  {
28895  (yyval.item)= new (YYTHD->mem_root) Item_func_minus((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28896  if ((yyval.item) == NULL)
28897  MYSQL_YYABORT;
28898  }
28899  break;
28900 
28901  case 1198:
28902 
28903 /* Line 1455 of yacc.c */
28904 #line 9177 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28905  {
28906  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(1) - (5)].item),(yyvsp[(4) - (5)].item),(yyvsp[(5) - (5)].interval),0);
28907  if ((yyval.item) == NULL)
28908  MYSQL_YYABORT;
28909  }
28910  break;
28911 
28912  case 1199:
28913 
28914 /* Line 1455 of yacc.c */
28915 #line 9183 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28916  {
28917  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(1) - (5)].item),(yyvsp[(4) - (5)].item),(yyvsp[(5) - (5)].interval),1);
28918  if ((yyval.item) == NULL)
28919  MYSQL_YYABORT;
28920  }
28921  break;
28922 
28923  case 1200:
28924 
28925 /* Line 1455 of yacc.c */
28926 #line 9189 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28927  {
28928  (yyval.item)= new (YYTHD->mem_root) Item_func_mul((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28929  if ((yyval.item) == NULL)
28930  MYSQL_YYABORT;
28931  }
28932  break;
28933 
28934  case 1201:
28935 
28936 /* Line 1455 of yacc.c */
28937 #line 9195 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28938  {
28939  (yyval.item)= new (YYTHD->mem_root) Item_func_div((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28940  if ((yyval.item) == NULL)
28941  MYSQL_YYABORT;
28942  }
28943  break;
28944 
28945  case 1202:
28946 
28947 /* Line 1455 of yacc.c */
28948 #line 9201 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28949  {
28950  (yyval.item)= new (YYTHD->mem_root) Item_func_mod((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28951  if ((yyval.item) == NULL)
28952  MYSQL_YYABORT;
28953  }
28954  break;
28955 
28956  case 1203:
28957 
28958 /* Line 1455 of yacc.c */
28959 #line 9207 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28960  {
28961  (yyval.item)= new (YYTHD->mem_root) Item_func_int_div((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28962  if ((yyval.item) == NULL)
28963  MYSQL_YYABORT;
28964  }
28965  break;
28966 
28967  case 1204:
28968 
28969 /* Line 1455 of yacc.c */
28970 #line 9213 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28971  {
28972  (yyval.item)= new (YYTHD->mem_root) Item_func_mod((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28973  if ((yyval.item) == NULL)
28974  MYSQL_YYABORT;
28975  }
28976  break;
28977 
28978  case 1205:
28979 
28980 /* Line 1455 of yacc.c */
28981 #line 9219 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28982  {
28983  (yyval.item)= new (YYTHD->mem_root) Item_func_bit_xor((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
28984  if ((yyval.item) == NULL)
28985  MYSQL_YYABORT;
28986  }
28987  break;
28988 
28989  case 1215:
28990 
28991 /* Line 1455 of yacc.c */
28992 #line 9248 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
28993  { (yyval.boolfunc2creator) = &comp_eq_creator; }
28994  break;
28995 
28996  case 1216:
28997 
28998 /* Line 1455 of yacc.c */
28999 #line 9249 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29000  { (yyval.boolfunc2creator) = &comp_ge_creator; }
29001  break;
29002 
29003  case 1217:
29004 
29005 /* Line 1455 of yacc.c */
29006 #line 9250 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29007  { (yyval.boolfunc2creator) = &comp_gt_creator; }
29008  break;
29009 
29010  case 1218:
29011 
29012 /* Line 1455 of yacc.c */
29013 #line 9251 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29014  { (yyval.boolfunc2creator) = &comp_le_creator; }
29015  break;
29016 
29017  case 1219:
29018 
29019 /* Line 1455 of yacc.c */
29020 #line 9252 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29021  { (yyval.boolfunc2creator) = &comp_lt_creator; }
29022  break;
29023 
29024  case 1220:
29025 
29026 /* Line 1455 of yacc.c */
29027 #line 9253 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29028  { (yyval.boolfunc2creator) = &comp_ne_creator; }
29029  break;
29030 
29031  case 1221:
29032 
29033 /* Line 1455 of yacc.c */
29034 #line 9257 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29035  { (yyval.num) = 1; }
29036  break;
29037 
29038  case 1222:
29039 
29040 /* Line 1455 of yacc.c */
29041 #line 9258 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29042  { (yyval.num) = 0; }
29043  break;
29044 
29045  case 1228:
29046 
29047 /* Line 1455 of yacc.c */
29048 #line 9268 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29049  {
29050  THD *thd= YYTHD;
29051  Item *i1= new (thd->mem_root) Item_string((yyvsp[(3) - (3)].lex_str).str,
29052  (yyvsp[(3) - (3)].lex_str).length,
29053  thd->charset());
29054  if (i1 == NULL)
29055  MYSQL_YYABORT;
29056  (yyval.item)= new (thd->mem_root) Item_func_set_collation((yyvsp[(1) - (3)].item), i1);
29057  if ((yyval.item) == NULL)
29058  MYSQL_YYABORT;
29059  }
29060  break;
29061 
29062  case 1233:
29063 
29064 /* Line 1455 of yacc.c */
29065 #line 9284 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29066  {
29067  (yyval.item)= new (YYTHD->mem_root) Item_func_concat((yyvsp[(1) - (3)].item), (yyvsp[(3) - (3)].item));
29068  if ((yyval.item) == NULL)
29069  MYSQL_YYABORT;
29070  }
29071  break;
29072 
29073  case 1234:
29074 
29075 /* Line 1455 of yacc.c */
29076 #line 9290 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29077  {
29078  (yyval.item)= (yyvsp[(2) - (2)].item);
29079  }
29080  break;
29081 
29082  case 1235:
29083 
29084 /* Line 1455 of yacc.c */
29085 #line 9294 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29086  {
29087  (yyval.item)= new (YYTHD->mem_root) Item_func_neg((yyvsp[(2) - (2)].item));
29088  if ((yyval.item) == NULL)
29089  MYSQL_YYABORT;
29090  }
29091  break;
29092 
29093  case 1236:
29094 
29095 /* Line 1455 of yacc.c */
29096 #line 9300 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29097  {
29098  (yyval.item)= new (YYTHD->mem_root) Item_func_bit_neg((yyvsp[(2) - (2)].item));
29099  if ((yyval.item) == NULL)
29100  MYSQL_YYABORT;
29101  }
29102  break;
29103 
29104  case 1237:
29105 
29106 /* Line 1455 of yacc.c */
29107 #line 9306 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29108  {
29109  (yyval.item)= negate_expression(YYTHD, (yyvsp[(2) - (2)].item));
29110  if ((yyval.item) == NULL)
29111  MYSQL_YYABORT;
29112  }
29113  break;
29114 
29115  case 1238:
29116 
29117 /* Line 1455 of yacc.c */
29118 #line 9312 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29119  {
29120  (yyval.item)= new (YYTHD->mem_root) Item_singlerow_subselect((yyvsp[(2) - (3)].select_lex));
29121  if ((yyval.item) == NULL)
29122  MYSQL_YYABORT;
29123  }
29124  break;
29125 
29126  case 1239:
29127 
29128 /* Line 1455 of yacc.c */
29129 #line 9318 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29130  { (yyval.item)= (yyvsp[(2) - (3)].item); }
29131  break;
29132 
29133  case 1240:
29134 
29135 /* Line 1455 of yacc.c */
29136 #line 9320 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29137  {
29138  (yyvsp[(4) - (5)].item_list)->push_front((yyvsp[(2) - (5)].item));
29139  (yyval.item)= new (YYTHD->mem_root) Item_row(*(yyvsp[(4) - (5)].item_list));
29140  if ((yyval.item) == NULL)
29141  MYSQL_YYABORT;
29142  }
29143  break;
29144 
29145  case 1241:
29146 
29147 /* Line 1455 of yacc.c */
29148 #line 9327 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29149  {
29150  (yyvsp[(5) - (6)].item_list)->push_front((yyvsp[(3) - (6)].item));
29151  (yyval.item)= new (YYTHD->mem_root) Item_row(*(yyvsp[(5) - (6)].item_list));
29152  if ((yyval.item) == NULL)
29153  MYSQL_YYABORT;
29154  }
29155  break;
29156 
29157  case 1242:
29158 
29159 /* Line 1455 of yacc.c */
29160 #line 9334 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29161  {
29162  (yyval.item)= new (YYTHD->mem_root) Item_exists_subselect((yyvsp[(3) - (4)].select_lex));
29163  if ((yyval.item) == NULL)
29164  MYSQL_YYABORT;
29165  }
29166  break;
29167 
29168  case 1243:
29169 
29170 /* Line 1455 of yacc.c */
29171 #line 9340 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29172  {
29173  Item_string *item;
29174  (yyval.item)= NULL;
29175  /*
29176  If "expr" is reasonably short pure ASCII string literal,
29177  try to parse known ODBC style date, time or timestamp literals,
29178  e.g:
29179  SELECT {d'2001-01-01'};
29180  SELECT {t'10:20:30'};
29181  SELECT {ts'2001-01-01 10:20:30'};
29182  */
29183  if ((yyvsp[(3) - (4)].item)->type() == Item::STRING_ITEM &&
29184  (item= (Item_string *) (yyvsp[(3) - (4)].item)) &&
29185  item->collation.repertoire == MY_REPERTOIRE_ASCII &&
29186  item->str_value.length() < MAX_DATE_STRING_REP_LENGTH * 4)
29187  {
29188  enum_field_types type= MYSQL_TYPE_STRING;
29189  ErrConvString str(&item->str_value);
29190  LEX_STRING *ls= &(yyvsp[(2) - (4)].lex_str);
29191  if (ls->length == 1)
29192  {
29193  if (ls->str[0] == 'd') /* {d'2001-01-01'} */
29194  type= MYSQL_TYPE_DATE;
29195  else if (ls->str[0] == 't') /* {t'10:20:30'} */
29196  type= MYSQL_TYPE_TIME;
29197  }
29198  else if (ls->length == 2) /* {ts'2001-01-01 10:20:30'} */
29199  {
29200  if (ls->str[0] == 't' && ls->str[1] == 's')
29201  type= MYSQL_TYPE_DATETIME;
29202  }
29203  if (type != MYSQL_TYPE_STRING)
29204  (yyval.item)= create_temporal_literal(YYTHD,
29205  str.ptr(), str.length(),
29206  system_charset_info,
29207  type, false);
29208  }
29209  if ((yyval.item) == NULL)
29210  (yyval.item)= (yyvsp[(3) - (4)].item);
29211  }
29212  break;
29213 
29214  case 1244:
29215 
29216 /* Line 1455 of yacc.c */
29217 #line 9381 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29218  {
29219  (yyvsp[(2) - (7)].item_list)->push_front((yyvsp[(5) - (7)].item));
29220  Item_func_match *i1= new (YYTHD->mem_root) Item_func_match(*(yyvsp[(2) - (7)].item_list), (yyvsp[(6) - (7)].num));
29221  if (i1 == NULL)
29222  MYSQL_YYABORT;
29223  Select->add_ftfunc_to_list(i1);
29224  (yyval.item)= i1;
29225  }
29226  break;
29227 
29228  case 1245:
29229 
29230 /* Line 1455 of yacc.c */
29231 #line 9390 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29232  {
29233  (yyval.item)= create_func_cast(YYTHD, (yyvsp[(2) - (2)].item), ITEM_CAST_CHAR, NULL, NULL,
29234  &my_charset_bin);
29235  if ((yyval.item) == NULL)
29236  MYSQL_YYABORT;
29237  }
29238  break;
29239 
29240  case 1246:
29241 
29242 /* Line 1455 of yacc.c */
29243 #line 9397 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29244  {
29245  LEX *lex= Lex;
29246  (yyval.item)= create_func_cast(YYTHD, (yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].cast_type), lex->length, lex->dec,
29247  lex->charset);
29248  if ((yyval.item) == NULL)
29249  MYSQL_YYABORT;
29250  }
29251  break;
29252 
29253  case 1247:
29254 
29255 /* Line 1455 of yacc.c */
29256 #line 9405 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29257  {
29258  (yyval.item)= new (YYTHD->mem_root) Item_func_case(* (yyvsp[(3) - (5)].item_list), (yyvsp[(2) - (5)].item), (yyvsp[(4) - (5)].item) );
29259  if ((yyval.item) == NULL)
29260  MYSQL_YYABORT;
29261  }
29262  break;
29263 
29264  case 1248:
29265 
29266 /* Line 1455 of yacc.c */
29267 #line 9411 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29268  {
29269  (yyval.item)= create_func_cast(YYTHD, (yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].cast_type), Lex->length, Lex->dec,
29270  Lex->charset);
29271  if ((yyval.item) == NULL)
29272  MYSQL_YYABORT;
29273  }
29274  break;
29275 
29276  case 1249:
29277 
29278 /* Line 1455 of yacc.c */
29279 #line 9418 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29280  {
29281  (yyval.item)= new (YYTHD->mem_root) Item_func_conv_charset((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].charset));
29282  if ((yyval.item) == NULL)
29283  MYSQL_YYABORT;
29284  }
29285  break;
29286 
29287  case 1250:
29288 
29289 /* Line 1455 of yacc.c */
29290 #line 9424 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29291  {
29292  if ((yyvsp[(3) - (4)].item)->is_splocal())
29293  {
29294  Item_splocal *il= static_cast<Item_splocal *>((yyvsp[(3) - (4)].item));
29295 
29296  my_error(ER_WRONG_COLUMN_NAME, MYF(0), il->m_name.ptr());
29297  MYSQL_YYABORT;
29298  }
29299  (yyval.item)= new (YYTHD->mem_root) Item_default_value(Lex->current_context(),
29300  (yyvsp[(3) - (4)].item));
29301  if ((yyval.item) == NULL)
29302  MYSQL_YYABORT;
29303  }
29304  break;
29305 
29306  case 1251:
29307 
29308 /* Line 1455 of yacc.c */
29309 #line 9438 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29310  {
29311  (yyval.item)= new (YYTHD->mem_root) Item_insert_value(Lex->current_context(),
29312  (yyvsp[(3) - (4)].item));
29313  if ((yyval.item) == NULL)
29314  MYSQL_YYABORT;
29315  }
29316  break;
29317 
29318  case 1252:
29319 
29320 /* Line 1455 of yacc.c */
29321 #line 9446 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29322  {
29323  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(5) - (5)].item),(yyvsp[(2) - (5)].item),(yyvsp[(3) - (5)].interval),0);
29324  if ((yyval.item) == NULL)
29325  MYSQL_YYABORT;
29326  }
29327  break;
29328 
29329  case 1253:
29330 
29331 /* Line 1455 of yacc.c */
29332 #line 9461 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29333  {
29334  (yyval.item)= new (YYTHD->mem_root) Item_func_char(*(yyvsp[(3) - (4)].item_list));
29335  if ((yyval.item) == NULL)
29336  MYSQL_YYABORT;
29337  }
29338  break;
29339 
29340  case 1254:
29341 
29342 /* Line 1455 of yacc.c */
29343 #line 9467 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29344  {
29345  (yyval.item)= new (YYTHD->mem_root) Item_func_char(*(yyvsp[(3) - (6)].item_list), (yyvsp[(5) - (6)].charset));
29346  if ((yyval.item) == NULL)
29347  MYSQL_YYABORT;
29348  }
29349  break;
29350 
29351  case 1255:
29352 
29353 /* Line 1455 of yacc.c */
29354 #line 9473 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29355  {
29356  (yyval.item)= new (YYTHD->mem_root) Item_func_current_user(Lex->current_context());
29357  if ((yyval.item) == NULL)
29358  MYSQL_YYABORT;
29359  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
29360  Lex->safe_to_cache_query= 0;
29361  }
29362  break;
29363 
29364  case 1256:
29365 
29366 /* Line 1455 of yacc.c */
29367 #line 9481 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29368  {
29369  (yyval.item)= new (YYTHD->mem_root) Item_date_typecast((yyvsp[(3) - (4)].item));
29370  if ((yyval.item) == NULL)
29371  MYSQL_YYABORT;
29372  }
29373  break;
29374 
29375  case 1257:
29376 
29377 /* Line 1455 of yacc.c */
29378 #line 9487 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29379  {
29380  (yyval.item)= new (YYTHD->mem_root) Item_func_dayofmonth((yyvsp[(3) - (4)].item));
29381  if ((yyval.item) == NULL)
29382  MYSQL_YYABORT;
29383  }
29384  break;
29385 
29386  case 1258:
29387 
29388 /* Line 1455 of yacc.c */
29389 #line 9493 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29390  {
29391  (yyval.item)= new (YYTHD->mem_root) Item_func_hour((yyvsp[(3) - (4)].item));
29392  if ((yyval.item) == NULL)
29393  MYSQL_YYABORT;
29394  }
29395  break;
29396 
29397  case 1259:
29398 
29399 /* Line 1455 of yacc.c */
29400 #line 9499 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29401  {
29402  (yyval.item)= new (YYTHD->mem_root) Item_func_insert((yyvsp[(3) - (10)].item),(yyvsp[(5) - (10)].item),(yyvsp[(7) - (10)].item),(yyvsp[(9) - (10)].item));
29403  if ((yyval.item) == NULL)
29404  MYSQL_YYABORT;
29405  }
29406  break;
29407 
29408  case 1260:
29409 
29410 /* Line 1455 of yacc.c */
29411 #line 9505 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29412  {
29413  THD *thd= YYTHD;
29414  List<Item> *list= new (thd->mem_root) List<Item>;
29415  if (list == NULL)
29416  MYSQL_YYABORT;
29417  list->push_front((yyvsp[(5) - (6)].item));
29418  list->push_front((yyvsp[(3) - (6)].item));
29419  Item_row *item= new (thd->mem_root) Item_row(*list);
29420  if (item == NULL)
29421  MYSQL_YYABORT;
29422  (yyval.item)= new (thd->mem_root) Item_func_interval(item);
29423  if ((yyval.item) == NULL)
29424  MYSQL_YYABORT;
29425  }
29426  break;
29427 
29428  case 1261:
29429 
29430 /* Line 1455 of yacc.c */
29431 #line 9520 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29432  {
29433  THD *thd= YYTHD;
29434  (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(5) - (8)].item));
29435  (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(3) - (8)].item));
29436  Item_row *item= new (thd->mem_root) Item_row(*(yyvsp[(7) - (8)].item_list));
29437  if (item == NULL)
29438  MYSQL_YYABORT;
29439  (yyval.item)= new (thd->mem_root) Item_func_interval(item);
29440  if ((yyval.item) == NULL)
29441  MYSQL_YYABORT;
29442  }
29443  break;
29444 
29445  case 1262:
29446 
29447 /* Line 1455 of yacc.c */
29448 #line 9532 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29449  {
29450  (yyval.item)= new (YYTHD->mem_root) Item_func_left((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
29451  if ((yyval.item) == NULL)
29452  MYSQL_YYABORT;
29453  }
29454  break;
29455 
29456  case 1263:
29457 
29458 /* Line 1455 of yacc.c */
29459 #line 9538 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29460  {
29461  (yyval.item)= new (YYTHD->mem_root) Item_func_minute((yyvsp[(3) - (4)].item));
29462  if ((yyval.item) == NULL)
29463  MYSQL_YYABORT;
29464  }
29465  break;
29466 
29467  case 1264:
29468 
29469 /* Line 1455 of yacc.c */
29470 #line 9544 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29471  {
29472  (yyval.item)= new (YYTHD->mem_root) Item_func_month((yyvsp[(3) - (4)].item));
29473  if ((yyval.item) == NULL)
29474  MYSQL_YYABORT;
29475  }
29476  break;
29477 
29478  case 1265:
29479 
29480 /* Line 1455 of yacc.c */
29481 #line 9550 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29482  {
29483  (yyval.item)= new (YYTHD->mem_root) Item_func_right((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
29484  if ((yyval.item) == NULL)
29485  MYSQL_YYABORT;
29486  }
29487  break;
29488 
29489  case 1266:
29490 
29491 /* Line 1455 of yacc.c */
29492 #line 9556 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29493  {
29494  (yyval.item)= new (YYTHD->mem_root) Item_func_second((yyvsp[(3) - (4)].item));
29495  if ((yyval.item) == NULL)
29496  MYSQL_YYABORT;
29497  }
29498  break;
29499 
29500  case 1267:
29501 
29502 /* Line 1455 of yacc.c */
29503 #line 9562 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29504  {
29505  (yyval.item)= new (YYTHD->mem_root) Item_time_typecast((yyvsp[(3) - (4)].item));
29506  if ((yyval.item) == NULL)
29507  MYSQL_YYABORT;
29508  }
29509  break;
29510 
29511  case 1268:
29512 
29513 /* Line 1455 of yacc.c */
29514 #line 9568 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29515  {
29516  (yyval.item)= new (YYTHD->mem_root) Item_datetime_typecast((yyvsp[(3) - (4)].item));
29517  if ((yyval.item) == NULL)
29518  MYSQL_YYABORT;
29519  }
29520  break;
29521 
29522  case 1269:
29523 
29524 /* Line 1455 of yacc.c */
29525 #line 9574 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29526  {
29527  (yyval.item)= new (YYTHD->mem_root) Item_func_add_time((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item), 1, 0);
29528  if ((yyval.item) == NULL)
29529  MYSQL_YYABORT;
29530  }
29531  break;
29532 
29533  case 1270:
29534 
29535 /* Line 1455 of yacc.c */
29536 #line 9580 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29537  {
29538  (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(3) - (4)].item));
29539  if ((yyval.item) == NULL)
29540  MYSQL_YYABORT;
29541  }
29542  break;
29543 
29544  case 1271:
29545 
29546 /* Line 1455 of yacc.c */
29547 #line 9586 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29548  {
29549  (yyval.item)= new (YYTHD->mem_root) Item_func_ltrim((yyvsp[(6) - (7)].item),(yyvsp[(4) - (7)].item));
29550  if ((yyval.item) == NULL)
29551  MYSQL_YYABORT;
29552  }
29553  break;
29554 
29555  case 1272:
29556 
29557 /* Line 1455 of yacc.c */
29558 #line 9592 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29559  {
29560  (yyval.item)= new (YYTHD->mem_root) Item_func_rtrim((yyvsp[(6) - (7)].item),(yyvsp[(4) - (7)].item));
29561  if ((yyval.item) == NULL)
29562  MYSQL_YYABORT;
29563  }
29564  break;
29565 
29566  case 1273:
29567 
29568 /* Line 1455 of yacc.c */
29569 #line 9598 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29570  {
29571  (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(6) - (7)].item),(yyvsp[(4) - (7)].item));
29572  if ((yyval.item) == NULL)
29573  MYSQL_YYABORT;
29574  }
29575  break;
29576 
29577  case 1274:
29578 
29579 /* Line 1455 of yacc.c */
29580 #line 9604 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29581  {
29582  (yyval.item)= new (YYTHD->mem_root) Item_func_ltrim((yyvsp[(5) - (6)].item));
29583  if ((yyval.item) == NULL)
29584  MYSQL_YYABORT;
29585  }
29586  break;
29587 
29588  case 1275:
29589 
29590 /* Line 1455 of yacc.c */
29591 #line 9610 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29592  {
29593  (yyval.item)= new (YYTHD->mem_root) Item_func_rtrim((yyvsp[(5) - (6)].item));
29594  if ((yyval.item) == NULL)
29595  MYSQL_YYABORT;
29596  }
29597  break;
29598 
29599  case 1276:
29600 
29601 /* Line 1455 of yacc.c */
29602 #line 9616 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29603  {
29604  (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(5) - (6)].item));
29605  if ((yyval.item) == NULL)
29606  MYSQL_YYABORT;
29607  }
29608  break;
29609 
29610  case 1277:
29611 
29612 /* Line 1455 of yacc.c */
29613 #line 9622 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29614  {
29615  (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(5) - (6)].item),(yyvsp[(3) - (6)].item));
29616  if ((yyval.item) == NULL)
29617  MYSQL_YYABORT;
29618  }
29619  break;
29620 
29621  case 1278:
29622 
29623 /* Line 1455 of yacc.c */
29624 #line 9628 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29625  {
29626  (yyval.item)= new (YYTHD->mem_root) Item_func_user();
29627  if ((yyval.item) == NULL)
29628  MYSQL_YYABORT;
29629  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
29630  Lex->safe_to_cache_query=0;
29631  }
29632  break;
29633 
29634  case 1279:
29635 
29636 /* Line 1455 of yacc.c */
29637 #line 9636 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29638  {
29639  (yyval.item)= new (YYTHD->mem_root) Item_func_year((yyvsp[(3) - (4)].item));
29640  if ((yyval.item) == NULL)
29641  MYSQL_YYABORT;
29642  }
29643  break;
29644 
29645  case 1280:
29646 
29647 /* Line 1455 of yacc.c */
29648 #line 9657 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29649  {
29650  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item),
29651  INTERVAL_DAY, 0);
29652  if ((yyval.item) == NULL)
29653  MYSQL_YYABORT;
29654  }
29655  break;
29656 
29657  case 1281:
29658 
29659 /* Line 1455 of yacc.c */
29660 #line 9664 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29661  {
29662  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item), (yyvsp[(6) - (8)].item), (yyvsp[(7) - (8)].interval), 0);
29663  if ((yyval.item) == NULL)
29664  MYSQL_YYABORT;
29665  }
29666  break;
29667 
29668  case 1282:
29669 
29670 /* Line 1455 of yacc.c */
29671 #line 9670 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29672  {
29673  (yyval.item)= new (YYTHD->mem_root) Item_func_curdate_local();
29674  if ((yyval.item) == NULL)
29675  MYSQL_YYABORT;
29676  Lex->safe_to_cache_query=0;
29677  }
29678  break;
29679 
29680  case 1283:
29681 
29682 /* Line 1455 of yacc.c */
29683 #line 9677 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29684  {
29685  (yyval.item)= new (YYTHD->mem_root) Item_func_curtime_local((yyvsp[(2) - (2)].ulong_num));
29686  if ((yyval.item) == NULL)
29687  MYSQL_YYABORT;
29688  Lex->safe_to_cache_query=0;
29689  }
29690  break;
29691 
29692  case 1284:
29693 
29694 /* Line 1455 of yacc.c */
29695 #line 9685 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29696  {
29697  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item),(yyvsp[(6) - (8)].item),(yyvsp[(7) - (8)].interval),0);
29698  if ((yyval.item) == NULL)
29699  MYSQL_YYABORT;
29700  }
29701  break;
29702 
29703  case 1285:
29704 
29705 /* Line 1455 of yacc.c */
29706 #line 9692 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29707  {
29708  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item),(yyvsp[(6) - (8)].item),(yyvsp[(7) - (8)].interval),1);
29709  if ((yyval.item) == NULL)
29710  MYSQL_YYABORT;
29711  }
29712  break;
29713 
29714  case 1286:
29715 
29716 /* Line 1455 of yacc.c */
29717 #line 9698 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29718  {
29719  (yyval.item)=new (YYTHD->mem_root) Item_extract( (yyvsp[(3) - (6)].interval), (yyvsp[(5) - (6)].item));
29720  if ((yyval.item) == NULL)
29721  MYSQL_YYABORT;
29722  }
29723  break;
29724 
29725  case 1287:
29726 
29727 /* Line 1455 of yacc.c */
29728 #line 9704 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29729  {
29730  (yyval.item)= new (YYTHD->mem_root) Item_func_get_format((yyvsp[(3) - (6)].date_time_type), (yyvsp[(5) - (6)].item));
29731  if ((yyval.item) == NULL)
29732  MYSQL_YYABORT;
29733  }
29734  break;
29735 
29736  case 1288:
29737 
29738 /* Line 1455 of yacc.c */
29739 #line 9710 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29740  {
29741  (yyval.item)= (yyvsp[(1) - (1)].item);
29742  Lex->safe_to_cache_query= 0;
29743  }
29744  break;
29745 
29746  case 1289:
29747 
29748 /* Line 1455 of yacc.c */
29749 #line 9715 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29750  {
29751  (yyval.item) = new (YYTHD->mem_root) Item_func_locate((yyvsp[(5) - (6)].item),(yyvsp[(3) - (6)].item));
29752  if ((yyval.item) == NULL)
29753  MYSQL_YYABORT;
29754  }
29755  break;
29756 
29757  case 1290:
29758 
29759 /* Line 1455 of yacc.c */
29760 #line 9721 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29761  {
29762  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item),
29763  INTERVAL_DAY, 1);
29764  if ((yyval.item) == NULL)
29765  MYSQL_YYABORT;
29766  }
29767  break;
29768 
29769  case 1291:
29770 
29771 /* Line 1455 of yacc.c */
29772 #line 9728 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29773  {
29774  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item), (yyvsp[(6) - (8)].item), (yyvsp[(7) - (8)].interval), 1);
29775  if ((yyval.item) == NULL)
29776  MYSQL_YYABORT;
29777  }
29778  break;
29779 
29780  case 1292:
29781 
29782 /* Line 1455 of yacc.c */
29783 #line 9734 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29784  {
29785  (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
29786  if ((yyval.item) == NULL)
29787  MYSQL_YYABORT;
29788  }
29789  break;
29790 
29791  case 1293:
29792 
29793 /* Line 1455 of yacc.c */
29794 #line 9740 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29795  {
29796  (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
29797  if ((yyval.item) == NULL)
29798  MYSQL_YYABORT;
29799  }
29800  break;
29801 
29802  case 1294:
29803 
29804 /* Line 1455 of yacc.c */
29805 #line 9746 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29806  {
29807  (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
29808  if ((yyval.item) == NULL)
29809  MYSQL_YYABORT;
29810  }
29811  break;
29812 
29813  case 1295:
29814 
29815 /* Line 1455 of yacc.c */
29816 #line 9752 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29817  {
29818  (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
29819  if ((yyval.item) == NULL)
29820  MYSQL_YYABORT;
29821  }
29822  break;
29823 
29824  case 1296:
29825 
29826 /* Line 1455 of yacc.c */
29827 #line 9758 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29828  {
29829  /*
29830  Unlike other time-related functions, SYSDATE() is
29831  replication-unsafe because it is not affected by the
29832  TIMESTAMP variable. It is unsafe even if
29833  sysdate_is_now=1, because the slave may have
29834  sysdate_is_now=0.
29835  */
29836  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
29837  if (global_system_variables.sysdate_is_now == 0)
29838  (yyval.item)= new (YYTHD->mem_root) Item_func_sysdate_local((yyvsp[(2) - (2)].ulong_num));
29839  else
29840  (yyval.item)= new (YYTHD->mem_root) Item_func_now_local((yyvsp[(2) - (2)].ulong_num));
29841  if ((yyval.item) == NULL)
29842  MYSQL_YYABORT;
29843  Lex->safe_to_cache_query=0;
29844  }
29845  break;
29846 
29847  case 1297:
29848 
29849 /* Line 1455 of yacc.c */
29850 #line 9776 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29851  {
29852  (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(7) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(3) - (8)].interval_time_st),0);
29853  if ((yyval.item) == NULL)
29854  MYSQL_YYABORT;
29855  }
29856  break;
29857 
29858  case 1298:
29859 
29860 /* Line 1455 of yacc.c */
29861 #line 9782 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29862  {
29863  (yyval.item)= new (YYTHD->mem_root) Item_func_timestamp_diff((yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item),(yyvsp[(3) - (8)].interval_time_st));
29864  if ((yyval.item) == NULL)
29865  MYSQL_YYABORT;
29866  }
29867  break;
29868 
29869  case 1299:
29870 
29871 /* Line 1455 of yacc.c */
29872 #line 9788 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29873  {
29874  (yyval.item)= new (YYTHD->mem_root) Item_func_curdate_utc();
29875  if ((yyval.item) == NULL)
29876  MYSQL_YYABORT;
29877  Lex->safe_to_cache_query=0;
29878  }
29879  break;
29880 
29881  case 1300:
29882 
29883 /* Line 1455 of yacc.c */
29884 #line 9795 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29885  {
29886  (yyval.item)= new (YYTHD->mem_root) Item_func_curtime_utc((yyvsp[(2) - (2)].ulong_num));
29887  if ((yyval.item) == NULL)
29888  MYSQL_YYABORT;
29889  Lex->safe_to_cache_query=0;
29890  }
29891  break;
29892 
29893  case 1301:
29894 
29895 /* Line 1455 of yacc.c */
29896 #line 9802 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29897  {
29898  (yyval.item)= new (YYTHD->mem_root) Item_func_now_utc((yyvsp[(2) - (2)].ulong_num));
29899  if ((yyval.item) == NULL)
29900  MYSQL_YYABORT;
29901  Lex->safe_to_cache_query=0;
29902  }
29903  break;
29904 
29905  case 1302:
29906 
29907 /* Line 1455 of yacc.c */
29908 #line 9817 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29909  {
29910  (yyval.item)= new (YYTHD->mem_root) Item_func_ascii((yyvsp[(3) - (4)].item));
29911  if ((yyval.item) == NULL)
29912  MYSQL_YYABORT;
29913  }
29914  break;
29915 
29916  case 1303:
29917 
29918 /* Line 1455 of yacc.c */
29919 #line 9823 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29920  {
29921  (yyval.item)= new (YYTHD->mem_root) Item_func_charset((yyvsp[(3) - (4)].item));
29922  if ((yyval.item) == NULL)
29923  MYSQL_YYABORT;
29924  }
29925  break;
29926 
29927  case 1304:
29928 
29929 /* Line 1455 of yacc.c */
29930 #line 9829 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29931  {
29932  (yyval.item)= new (YYTHD->mem_root) Item_func_coalesce(* (yyvsp[(3) - (4)].item_list));
29933  if ((yyval.item) == NULL)
29934  MYSQL_YYABORT;
29935  }
29936  break;
29937 
29938  case 1305:
29939 
29940 /* Line 1455 of yacc.c */
29941 #line 9835 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29942  {
29943  (yyval.item)= new (YYTHD->mem_root) Item_func_collation((yyvsp[(3) - (4)].item));
29944  if ((yyval.item) == NULL)
29945  MYSQL_YYABORT;
29946  }
29947  break;
29948 
29949  case 1306:
29950 
29951 /* Line 1455 of yacc.c */
29952 #line 9841 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29953  {
29954  (yyval.item)= new (YYTHD->mem_root) Item_func_database();
29955  if ((yyval.item) == NULL)
29956  MYSQL_YYABORT;
29957  Lex->safe_to_cache_query=0;
29958  }
29959  break;
29960 
29961  case 1307:
29962 
29963 /* Line 1455 of yacc.c */
29964 #line 9848 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29965  {
29966  (yyval.item)= new (YYTHD->mem_root) Item_func_if((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
29967  if ((yyval.item) == NULL)
29968  MYSQL_YYABORT;
29969  }
29970  break;
29971 
29972  case 1308:
29973 
29974 /* Line 1455 of yacc.c */
29975 #line 9854 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29976  {
29977  (yyval.item)= new (YYTHD->mem_root) Item_func_format((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item));
29978  if ((yyval.item) == NULL)
29979  MYSQL_YYABORT;
29980  }
29981  break;
29982 
29983  case 1309:
29984 
29985 /* Line 1455 of yacc.c */
29986 #line 9860 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29987  {
29988  (yyval.item)= new (YYTHD->mem_root) Item_func_format((yyvsp[(3) - (8)].item), (yyvsp[(5) - (8)].item), (yyvsp[(7) - (8)].item));
29989  if ((yyval.item) == NULL)
29990  MYSQL_YYABORT;
29991  }
29992  break;
29993 
29994  case 1310:
29995 
29996 /* Line 1455 of yacc.c */
29997 #line 9866 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
29998  {
29999  (yyval.item)= new (YYTHD->mem_root) Item_func_microsecond((yyvsp[(3) - (4)].item));
30000  if ((yyval.item) == NULL)
30001  MYSQL_YYABORT;
30002  }
30003  break;
30004 
30005  case 1311:
30006 
30007 /* Line 1455 of yacc.c */
30008 #line 9872 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30009  {
30010  (yyval.item) = new (YYTHD->mem_root) Item_func_mod((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item));
30011  if ((yyval.item) == NULL)
30012  MYSQL_YYABORT;
30013  }
30014  break;
30015 
30016  case 1312:
30017 
30018 /* Line 1455 of yacc.c */
30019 #line 9878 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30020  {
30021  (yyval.item)= new (YYTHD->mem_root) Item_func_old_password((yyvsp[(3) - (4)].item));
30022  Lex->contains_plaintext_password= true;
30023  if ((yyval.item) == NULL)
30024  MYSQL_YYABORT;
30025  }
30026  break;
30027 
30028  case 1313:
30029 
30030 /* Line 1455 of yacc.c */
30031 #line 9885 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30032  {
30033  THD *thd= YYTHD;
30034  Item* i1;
30035  Lex->contains_plaintext_password= true;
30036  if (thd->variables.old_passwords == 1)
30037  i1= new (thd->mem_root) Item_func_old_password((yyvsp[(3) - (4)].item));
30038  else
30039  i1= new (thd->mem_root) Item_func_password((yyvsp[(3) - (4)].item));
30040  if (i1 == NULL)
30041  MYSQL_YYABORT;
30042  (yyval.item)= i1;
30043  }
30044  break;
30045 
30046  case 1314:
30047 
30048 /* Line 1455 of yacc.c */
30049 #line 9898 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30050  {
30051  (yyval.item) = new (YYTHD->mem_root) Item_func_quarter((yyvsp[(3) - (4)].item));
30052  if ((yyval.item) == NULL)
30053  MYSQL_YYABORT;
30054  }
30055  break;
30056 
30057  case 1315:
30058 
30059 /* Line 1455 of yacc.c */
30060 #line 9904 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30061  {
30062  (yyval.item)= new (YYTHD->mem_root) Item_func_repeat((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
30063  if ((yyval.item) == NULL)
30064  MYSQL_YYABORT;
30065  }
30066  break;
30067 
30068  case 1316:
30069 
30070 /* Line 1455 of yacc.c */
30071 #line 9910 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30072  {
30073  (yyval.item)= new (YYTHD->mem_root) Item_func_replace((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
30074  if ((yyval.item) == NULL)
30075  MYSQL_YYABORT;
30076  }
30077  break;
30078 
30079  case 1317:
30080 
30081 /* Line 1455 of yacc.c */
30082 #line 9916 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30083  {
30084  (yyval.item)= new (YYTHD->mem_root) Item_func_reverse((yyvsp[(3) - (4)].item));
30085  if ((yyval.item) == NULL)
30086  MYSQL_YYABORT;
30087  }
30088  break;
30089 
30090  case 1318:
30091 
30092 /* Line 1455 of yacc.c */
30093 #line 9922 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30094  {
30095  (yyval.item)= new (YYTHD->mem_root) Item_func_row_count();
30096  if ((yyval.item) == NULL)
30097  MYSQL_YYABORT;
30098  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
30099  Lex->safe_to_cache_query= 0;
30100  }
30101  break;
30102 
30103  case 1319:
30104 
30105 /* Line 1455 of yacc.c */
30106 #line 9930 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30107  {
30108  (yyval.item)= new (YYTHD->mem_root) Item_func_round((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item),1);
30109  if ((yyval.item) == NULL)
30110  MYSQL_YYABORT;
30111  }
30112  break;
30113 
30114  case 1320:
30115 
30116 /* Line 1455 of yacc.c */
30117 #line 9936 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30118  {
30119  THD *thd= YYTHD;
30120  Item *i1= new (thd->mem_root) Item_int(NAME_STRING("0"),
30121  thd->variables.default_week_format,
30122  1);
30123  if (i1 == NULL)
30124  MYSQL_YYABORT;
30125  (yyval.item)= new (thd->mem_root) Item_func_week((yyvsp[(3) - (4)].item), i1);
30126  if ((yyval.item) == NULL)
30127  MYSQL_YYABORT;
30128  }
30129  break;
30130 
30131  case 1321:
30132 
30133 /* Line 1455 of yacc.c */
30134 #line 9948 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30135  {
30136  (yyval.item)= new (YYTHD->mem_root) Item_func_week((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
30137  if ((yyval.item) == NULL)
30138  MYSQL_YYABORT;
30139  }
30140  break;
30141 
30142  case 1322:
30143 
30144 /* Line 1455 of yacc.c */
30145 #line 9954 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30146  {
30147  (yyval.item)= new (YYTHD->mem_root) Item_func_weight_string((yyvsp[(3) - (5)].item), 0, 0, (yyvsp[(4) - (5)].ulong_num));
30148  if ((yyval.item) == NULL)
30149  MYSQL_YYABORT;
30150  }
30151  break;
30152 
30153  case 1323:
30154 
30155 /* Line 1455 of yacc.c */
30156 #line 9960 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30157  {
30158  (yyval.item)= new (YYTHD->mem_root)
30159  Item_func_weight_string((yyvsp[(3) - (8)].item), 0, (yyvsp[(6) - (8)].ulong_num),
30160  (yyvsp[(7) - (8)].ulong_num) | MY_STRXFRM_PAD_WITH_SPACE);
30161  if ((yyval.item) == NULL)
30162  MYSQL_YYABORT;
30163  }
30164  break;
30165 
30166  case 1324:
30167 
30168 /* Line 1455 of yacc.c */
30169 #line 9968 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30170  {
30171  Item *item= new (YYTHD->mem_root) Item_char_typecast((yyvsp[(3) - (7)].item), (yyvsp[(6) - (7)].ulong_num), &my_charset_bin);
30172  if (item == NULL)
30173  MYSQL_YYABORT;
30174  (yyval.item)= new (YYTHD->mem_root)
30175  Item_func_weight_string(item, 0, (yyvsp[(6) - (7)].ulong_num), MY_STRXFRM_PAD_WITH_SPACE);
30176  if ((yyval.item) == NULL)
30177  MYSQL_YYABORT;
30178  }
30179  break;
30180 
30181  case 1325:
30182 
30183 /* Line 1455 of yacc.c */
30184 #line 9978 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30185  {
30186  (yyval.item)= new (YYTHD->mem_root) Item_func_weight_string((yyvsp[(3) - (10)].item), (yyvsp[(5) - (10)].ulong_num), (yyvsp[(7) - (10)].ulong_num), (yyvsp[(9) - (10)].ulong_num));
30187  if ((yyval.item) == NULL)
30188  MYSQL_YYABORT;
30189  }
30190  break;
30191 
30192  case 1326:
30193 
30194 /* Line 1455 of yacc.c */
30195 #line 9984 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30196  {
30197 #ifdef HAVE_SPATIAL
30198  (yyval.item)= (yyvsp[(1) - (1)].item);
30199  /* $1 may be NULL, GEOM_NEW not tested for out of memory */
30200  if ((yyval.item) == NULL)
30201  MYSQL_YYABORT;
30202 #else
30203  my_error(ER_FEATURE_DISABLED, MYF(0),
30204  sym_group_geom.name, sym_group_geom.needed_define);
30205  MYSQL_YYABORT;
30206 #endif
30207  }
30208  break;
30209 
30210  case 1327:
30211 
30212 /* Line 1455 of yacc.c */
30213 #line 10000 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30214  {
30215  (yyval.item)= GEOM_NEW(YYTHD,
30216  Item_func_spatial_mbr_rel((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item),
30217  Item_func::SP_CONTAINS_FUNC));
30218  }
30219  break;
30220 
30221  case 1328:
30222 
30223 /* Line 1455 of yacc.c */
30224 #line 10006 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30225  {
30226  (yyval.item)= GEOM_NEW(YYTHD,
30227  Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
30228  Geometry::wkb_geometrycollection,
30229  Geometry::wkb_point));
30230  }
30231  break;
30232 
30233  case 1329:
30234 
30235 /* Line 1455 of yacc.c */
30236 #line 10013 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30237  {
30238  (yyval.item)= GEOM_NEW(YYTHD,
30239  Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
30240  Geometry::wkb_linestring,
30241  Geometry::wkb_point));
30242  }
30243  break;
30244 
30245  case 1330:
30246 
30247 /* Line 1455 of yacc.c */
30248 #line 10020 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30249  {
30250  (yyval.item)= GEOM_NEW(YYTHD,
30251  Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
30252  Geometry::wkb_multilinestring,
30253  Geometry::wkb_linestring));
30254  }
30255  break;
30256 
30257  case 1331:
30258 
30259 /* Line 1455 of yacc.c */
30260 #line 10027 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30261  {
30262  (yyval.item)= GEOM_NEW(YYTHD,
30263  Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
30264  Geometry::wkb_multipoint,
30265  Geometry::wkb_point));
30266  }
30267  break;
30268 
30269  case 1332:
30270 
30271 /* Line 1455 of yacc.c */
30272 #line 10034 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30273  {
30274  (yyval.item)= GEOM_NEW(YYTHD,
30275  Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
30276  Geometry::wkb_multipolygon,
30277  Geometry::wkb_polygon));
30278  }
30279  break;
30280 
30281  case 1333:
30282 
30283 /* Line 1455 of yacc.c */
30284 #line 10041 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30285  {
30286  (yyval.item)= GEOM_NEW(YYTHD, Item_func_point((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item)));
30287  }
30288  break;
30289 
30290  case 1334:
30291 
30292 /* Line 1455 of yacc.c */
30293 #line 10045 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30294  {
30295  (yyval.item)= GEOM_NEW(YYTHD,
30296  Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
30297  Geometry::wkb_polygon,
30298  Geometry::wkb_linestring));
30299  }
30300  break;
30301 
30302  case 1335:
30303 
30304 /* Line 1455 of yacc.c */
30305 #line 10064 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30306  {
30307 #ifdef HAVE_DLOPEN
30308  udf_func *udf= 0;
30309  LEX *lex= Lex;
30310  if (using_udf_functions &&
30311  (udf= find_udf((yyvsp[(1) - (2)].lex_str).str, (yyvsp[(1) - (2)].lex_str).length)) &&
30312  udf->type == UDFTYPE_AGGREGATE)
30313  {
30314  if (lex->current_select->inc_in_sum_expr())
30315  {
30316  my_parse_error(ER(ER_SYNTAX_ERROR));
30317  MYSQL_YYABORT;
30318  }
30319  }
30320  /* Temporary placing the result of find_udf in $3 */
30321  (yyval.udf)= udf;
30322 #endif
30323  }
30324  break;
30325 
30326  case 1336:
30327 
30328 /* Line 1455 of yacc.c */
30329 #line 10083 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30330  {
30331  THD *thd= YYTHD;
30332  Create_func *builder;
30333  Item *item= NULL;
30334 
30335  if (sp_check_name(&(yyvsp[(1) - (5)].lex_str)))
30336  {
30337  MYSQL_YYABORT;
30338  }
30339 
30340  /*
30341  Implementation note:
30342  names are resolved with the following order:
30343  - MySQL native functions,
30344  - User Defined Functions,
30345  - Stored Functions (assuming the current <use> database)
30346 
30347  This will be revised with WL#2128 (SQL PATH)
30348  */
30349  builder= find_native_function_builder(thd, (yyvsp[(1) - (5)].lex_str));
30350  if (builder)
30351  {
30352  item= builder->create_func(thd, (yyvsp[(1) - (5)].lex_str), (yyvsp[(4) - (5)].item_list));
30353  }
30354  else
30355  {
30356 #ifdef HAVE_DLOPEN
30357  /* Retrieving the result of find_udf */
30358  udf_func *udf= (yyvsp[(3) - (5)].udf);
30359 
30360  if (udf)
30361  {
30362  if (udf->type == UDFTYPE_AGGREGATE)
30363  {
30364  Select->in_sum_expr--;
30365  }
30366 
30367  item= Create_udf_func::s_singleton.create(thd, udf, (yyvsp[(4) - (5)].item_list));
30368  }
30369  else
30370 #endif
30371  {
30372  builder= find_qualified_function_builder(thd);
30373  DBUG_ASSERT(builder);
30374  item= builder->create_func(thd, (yyvsp[(1) - (5)].lex_str), (yyvsp[(4) - (5)].item_list));
30375  }
30376  }
30377 
30378  if (! ((yyval.item)= item))
30379  {
30380  MYSQL_YYABORT;
30381  }
30382  }
30383  break;
30384 
30385  case 1337:
30386 
30387 /* Line 1455 of yacc.c */
30388 #line 10137 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30389  {
30390  THD *thd= YYTHD;
30391  Create_qfunc *builder;
30392  Item *item= NULL;
30393 
30394  /*
30395  The following in practice calls:
30396  <code>Create_sp_func::create()</code>
30397  and builds a stored function.
30398 
30399  However, it's important to maintain the interface between the
30400  parser and the implementation in item_create.cc clean,
30401  since this will change with WL#2128 (SQL PATH):
30402  - INFORMATION_SCHEMA.version() is the SQL 99 syntax for the native
30403  function version(),
30404  - MySQL.version() is the SQL 2003 syntax for the native function
30405  version() (a vendor can specify any schema).
30406  */
30407 
30408  if (!(yyvsp[(1) - (6)].lex_str).str ||
30409  (check_and_convert_db_name(&(yyvsp[(1) - (6)].lex_str), FALSE) != IDENT_NAME_OK))
30410  MYSQL_YYABORT;
30411  if (sp_check_name(&(yyvsp[(3) - (6)].lex_str)))
30412  {
30413  MYSQL_YYABORT;
30414  }
30415 
30416  builder= find_qualified_function_builder(thd);
30417  DBUG_ASSERT(builder);
30418  item= builder->create(thd, (yyvsp[(1) - (6)].lex_str), (yyvsp[(3) - (6)].lex_str), true, (yyvsp[(5) - (6)].item_list));
30419 
30420  if (! ((yyval.item)= item))
30421  {
30422  MYSQL_YYABORT;
30423  }
30424  }
30425  break;
30426 
30427  case 1338:
30428 
30429 /* Line 1455 of yacc.c */
30430 #line 10177 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30431  { (yyval.num)= (yyvsp[(1) - (2)].num) | (yyvsp[(2) - (2)].num); }
30432  break;
30433 
30434  case 1339:
30435 
30436 /* Line 1455 of yacc.c */
30437 #line 10179 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30438  { (yyval.num)= FT_BOOL; }
30439  break;
30440 
30441  case 1340:
30442 
30443 /* Line 1455 of yacc.c */
30444 #line 10183 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30445  { (yyval.num)= FT_NL; }
30446  break;
30447 
30448  case 1341:
30449 
30450 /* Line 1455 of yacc.c */
30451 #line 10184 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30452  { (yyval.num)= FT_NL; }
30453  break;
30454 
30455  case 1342:
30456 
30457 /* Line 1455 of yacc.c */
30458 #line 10188 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30459  { (yyval.num)= 0; }
30460  break;
30461 
30462  case 1343:
30463 
30464 /* Line 1455 of yacc.c */
30465 #line 10189 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30466  { (yyval.num)= FT_EXPAND; }
30467  break;
30468 
30469  case 1344:
30470 
30471 /* Line 1455 of yacc.c */
30472 #line 10193 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30473  { (yyval.item_list)= NULL; }
30474  break;
30475 
30476  case 1345:
30477 
30478 /* Line 1455 of yacc.c */
30479 #line 10194 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30480  { (yyval.item_list)= (yyvsp[(1) - (1)].item_list); }
30481  break;
30482 
30483  case 1346:
30484 
30485 /* Line 1455 of yacc.c */
30486 #line 10199 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30487  {
30488  (yyval.item_list)= new (YYTHD->mem_root) List<Item>;
30489  if ((yyval.item_list) == NULL)
30490  MYSQL_YYABORT;
30491  (yyval.item_list)->push_back((yyvsp[(1) - (1)].item));
30492  }
30493  break;
30494 
30495  case 1347:
30496 
30497 /* Line 1455 of yacc.c */
30498 #line 10206 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30499  {
30500  (yyvsp[(1) - (3)].item_list)->push_back((yyvsp[(3) - (3)].item));
30501  (yyval.item_list)= (yyvsp[(1) - (3)].item_list);
30502  }
30503  break;
30504 
30505  case 1348:
30506 
30507 /* Line 1455 of yacc.c */
30508 #line 10214 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30509  {
30510  /*
30511  Use Item::name as a storage for the attribute value of user
30512  defined function argument. It is safe to use Item::name
30513  because the syntax will not allow having an explicit name here.
30514  See WL#1017 re. udf attributes.
30515  */
30516  if ((yyvsp[(4) - (4)].lex_str).str)
30517  {
30518  (yyvsp[(2) - (4)].item)->item_name.copy((yyvsp[(4) - (4)].lex_str).str, (yyvsp[(4) - (4)].lex_str).length, system_charset_info, false);
30519  }
30520  /*
30521  A field has to have its proper name in order for name
30522  resolution to work, something we are only guaranteed if we
30523  parse it out. If we hijack the input stream with
30524  remember_name we may get quoted or escaped names.
30525  */
30526  else if ((yyvsp[(2) - (4)].item)->type() != Item::FIELD_ITEM &&
30527  (yyvsp[(2) - (4)].item)->type() != Item::REF_ITEM /* For HAVING */ )
30528  (yyvsp[(2) - (4)].item)->item_name.copy((yyvsp[(1) - (4)].simple_string), (uint) ((yyvsp[(3) - (4)].simple_string) - (yyvsp[(1) - (4)].simple_string)), YYTHD->charset());
30529  (yyval.item)= (yyvsp[(2) - (4)].item);
30530  }
30531  break;
30532 
30533  case 1349:
30534 
30535 /* Line 1455 of yacc.c */
30536 #line 10240 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30537  {
30538  (yyval.item)= new (YYTHD->mem_root) Item_sum_avg((yyvsp[(3) - (4)].item), FALSE);
30539  if ((yyval.item) == NULL)
30540  MYSQL_YYABORT;
30541  }
30542  break;
30543 
30544  case 1350:
30545 
30546 /* Line 1455 of yacc.c */
30547 #line 10246 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30548  {
30549  (yyval.item)= new (YYTHD->mem_root) Item_sum_avg((yyvsp[(4) - (5)].item), TRUE);
30550  if ((yyval.item) == NULL)
30551  MYSQL_YYABORT;
30552  }
30553  break;
30554 
30555  case 1351:
30556 
30557 /* Line 1455 of yacc.c */
30558 #line 10252 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30559  {
30560  (yyval.item)= new (YYTHD->mem_root) Item_sum_and((yyvsp[(3) - (4)].item));
30561  if ((yyval.item) == NULL)
30562  MYSQL_YYABORT;
30563  }
30564  break;
30565 
30566  case 1352:
30567 
30568 /* Line 1455 of yacc.c */
30569 #line 10258 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30570  {
30571  (yyval.item)= new (YYTHD->mem_root) Item_sum_or((yyvsp[(3) - (4)].item));
30572  if ((yyval.item) == NULL)
30573  MYSQL_YYABORT;
30574  }
30575  break;
30576 
30577  case 1353:
30578 
30579 /* Line 1455 of yacc.c */
30580 #line 10264 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30581  {
30582  (yyval.item)= new (YYTHD->mem_root) Item_sum_xor((yyvsp[(3) - (4)].item));
30583  if ((yyval.item) == NULL)
30584  MYSQL_YYABORT;
30585  }
30586  break;
30587 
30588  case 1354:
30589 
30590 /* Line 1455 of yacc.c */
30591 #line 10270 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30592  {
30593  Item *item= new (YYTHD->mem_root) Item_int((int32) 0L,1);
30594  if (item == NULL)
30595  MYSQL_YYABORT;
30596  (yyval.item)= new (YYTHD->mem_root) Item_sum_count(item);
30597  if ((yyval.item) == NULL)
30598  MYSQL_YYABORT;
30599  }
30600  break;
30601 
30602  case 1355:
30603 
30604 /* Line 1455 of yacc.c */
30605 #line 10279 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30606  {
30607  (yyval.item)= new (YYTHD->mem_root) Item_sum_count((yyvsp[(3) - (4)].item));
30608  if ((yyval.item) == NULL)
30609  MYSQL_YYABORT;
30610  }
30611  break;
30612 
30613  case 1356:
30614 
30615 /* Line 1455 of yacc.c */
30616 #line 10285 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30617  { Select->in_sum_expr++; }
30618  break;
30619 
30620  case 1357:
30621 
30622 /* Line 1455 of yacc.c */
30623 #line 10287 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30624  { Select->in_sum_expr--; }
30625  break;
30626 
30627  case 1358:
30628 
30629 /* Line 1455 of yacc.c */
30630 #line 10289 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30631  {
30632  (yyval.item)= new (YYTHD->mem_root) Item_sum_count(* (yyvsp[(5) - (7)].item_list));
30633  if ((yyval.item) == NULL)
30634  MYSQL_YYABORT;
30635  }
30636  break;
30637 
30638  case 1359:
30639 
30640 /* Line 1455 of yacc.c */
30641 #line 10295 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30642  {
30643  (yyval.item)= new (YYTHD->mem_root) Item_sum_min((yyvsp[(3) - (4)].item));
30644  if ((yyval.item) == NULL)
30645  MYSQL_YYABORT;
30646  }
30647  break;
30648 
30649  case 1360:
30650 
30651 /* Line 1455 of yacc.c */
30652 #line 10306 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30653  {
30654  (yyval.item)= new (YYTHD->mem_root) Item_sum_min((yyvsp[(4) - (5)].item));
30655  if ((yyval.item) == NULL)
30656  MYSQL_YYABORT;
30657  }
30658  break;
30659 
30660  case 1361:
30661 
30662 /* Line 1455 of yacc.c */
30663 #line 10312 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30664  {
30665  (yyval.item)= new (YYTHD->mem_root) Item_sum_max((yyvsp[(3) - (4)].item));
30666  if ((yyval.item) == NULL)
30667  MYSQL_YYABORT;
30668  }
30669  break;
30670 
30671  case 1362:
30672 
30673 /* Line 1455 of yacc.c */
30674 #line 10318 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30675  {
30676  (yyval.item)= new (YYTHD->mem_root) Item_sum_max((yyvsp[(4) - (5)].item));
30677  if ((yyval.item) == NULL)
30678  MYSQL_YYABORT;
30679  }
30680  break;
30681 
30682  case 1363:
30683 
30684 /* Line 1455 of yacc.c */
30685 #line 10324 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30686  {
30687  (yyval.item)= new (YYTHD->mem_root) Item_sum_std((yyvsp[(3) - (4)].item), 0);
30688  if ((yyval.item) == NULL)
30689  MYSQL_YYABORT;
30690  }
30691  break;
30692 
30693  case 1364:
30694 
30695 /* Line 1455 of yacc.c */
30696 #line 10330 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30697  {
30698  (yyval.item)= new (YYTHD->mem_root) Item_sum_variance((yyvsp[(3) - (4)].item), 0);
30699  if ((yyval.item) == NULL)
30700  MYSQL_YYABORT;
30701  }
30702  break;
30703 
30704  case 1365:
30705 
30706 /* Line 1455 of yacc.c */
30707 #line 10336 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30708  {
30709  (yyval.item)= new (YYTHD->mem_root) Item_sum_std((yyvsp[(3) - (4)].item), 1);
30710  if ((yyval.item) == NULL)
30711  MYSQL_YYABORT;
30712  }
30713  break;
30714 
30715  case 1366:
30716 
30717 /* Line 1455 of yacc.c */
30718 #line 10342 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30719  {
30720  (yyval.item)= new (YYTHD->mem_root) Item_sum_variance((yyvsp[(3) - (4)].item), 1);
30721  if ((yyval.item) == NULL)
30722  MYSQL_YYABORT;
30723  }
30724  break;
30725 
30726  case 1367:
30727 
30728 /* Line 1455 of yacc.c */
30729 #line 10348 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30730  {
30731  (yyval.item)= new (YYTHD->mem_root) Item_sum_sum((yyvsp[(3) - (4)].item), FALSE);
30732  if ((yyval.item) == NULL)
30733  MYSQL_YYABORT;
30734  }
30735  break;
30736 
30737  case 1368:
30738 
30739 /* Line 1455 of yacc.c */
30740 #line 10354 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30741  {
30742  (yyval.item)= new (YYTHD->mem_root) Item_sum_sum((yyvsp[(4) - (5)].item), TRUE);
30743  if ((yyval.item) == NULL)
30744  MYSQL_YYABORT;
30745  }
30746  break;
30747 
30748  case 1369:
30749 
30750 /* Line 1455 of yacc.c */
30751 #line 10360 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30752  { Select->in_sum_expr++; }
30753  break;
30754 
30755  case 1370:
30756 
30757 /* Line 1455 of yacc.c */
30758 #line 10364 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30759  {
30760  SELECT_LEX *sel= Select;
30761  sel->in_sum_expr--;
30762  (yyval.item)= new (YYTHD->mem_root)
30763  Item_func_group_concat(Lex->current_context(), (yyvsp[(3) - (8)].num), (yyvsp[(5) - (8)].item_list),
30764  sel->gorder_list, (yyvsp[(7) - (8)].string));
30765  if ((yyval.item) == NULL)
30766  MYSQL_YYABORT;
30767  (yyvsp[(5) - (8)].item_list)->empty();
30768  sel->gorder_list.empty();
30769  }
30770  break;
30771 
30772  case 1371:
30773 
30774 /* Line 1455 of yacc.c */
30775 #line 10379 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30776  {
30777  if (! Lex->parsing_options.allows_variable)
30778  {
30779  my_error(ER_VIEW_SELECT_VARIABLE, MYF(0));
30780  MYSQL_YYABORT;
30781  }
30782  }
30783  break;
30784 
30785  case 1372:
30786 
30787 /* Line 1455 of yacc.c */
30788 #line 10387 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30789  {
30790  (yyval.item)= (yyvsp[(3) - (3)].item);
30791  }
30792  break;
30793 
30794  case 1373:
30795 
30796 /* Line 1455 of yacc.c */
30797 #line 10394 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30798  {
30799  Item_func_set_user_var *item;
30800  (yyval.item)= item=
30801  new (YYTHD->mem_root) Item_func_set_user_var((yyvsp[(1) - (3)].lex_str), (yyvsp[(3) - (3)].item), false);
30802  if ((yyval.item) == NULL)
30803  MYSQL_YYABORT;
30804  LEX *lex= Lex;
30805  lex->uncacheable(UNCACHEABLE_RAND);
30806  lex->set_var_list.push_back(item);
30807  }
30808  break;
30809 
30810  case 1374:
30811 
30812 /* Line 1455 of yacc.c */
30813 #line 10405 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30814  {
30815  (yyval.item)= new (YYTHD->mem_root) Item_func_get_user_var((yyvsp[(1) - (1)].lex_str));
30816  if ((yyval.item) == NULL)
30817  MYSQL_YYABORT;
30818  LEX *lex= Lex;
30819  lex->uncacheable(UNCACHEABLE_RAND);
30820  }
30821  break;
30822 
30823  case 1375:
30824 
30825 /* Line 1455 of yacc.c */
30826 #line 10413 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30827  {
30828  /* disallow "SELECT @@global.global.variable" */
30829  if ((yyvsp[(3) - (4)].lex_str).str && (yyvsp[(4) - (4)].lex_str).str && check_reserved_words(&(yyvsp[(3) - (4)].lex_str)))
30830  {
30831  my_parse_error(ER(ER_SYNTAX_ERROR));
30832  MYSQL_YYABORT;
30833  }
30834  if (!((yyval.item)= get_system_var(YYTHD, (yyvsp[(2) - (4)].var_type), (yyvsp[(3) - (4)].lex_str), (yyvsp[(4) - (4)].lex_str))))
30835  MYSQL_YYABORT;
30836  if (!((Item_func_get_system_var*) (yyval.item))->is_written_to_binlog())
30837  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_VARIABLE);
30838  }
30839  break;
30840 
30841  case 1376:
30842 
30843 /* Line 1455 of yacc.c */
30844 #line 10428 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30845  { (yyval.num) = 0; }
30846  break;
30847 
30848  case 1377:
30849 
30850 /* Line 1455 of yacc.c */
30851 #line 10429 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30852  { (yyval.num) = 1; }
30853  break;
30854 
30855  case 1378:
30856 
30857 /* Line 1455 of yacc.c */
30858 #line 10434 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30859  {
30860  (yyval.string)= new (YYTHD->mem_root) String(",", 1, &my_charset_latin1);
30861  if ((yyval.string) == NULL)
30862  MYSQL_YYABORT;
30863  }
30864  break;
30865 
30866  case 1379:
30867 
30868 /* Line 1455 of yacc.c */
30869 #line 10439 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30870  { (yyval.string) = (yyvsp[(2) - (2)].string); }
30871  break;
30872 
30873  case 1381:
30874 
30875 /* Line 1455 of yacc.c */
30876 #line 10445 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30877  {
30878  LEX *lex= Lex;
30879  SELECT_LEX *sel= lex->current_select;
30880  if (sel->linkage != GLOBAL_OPTIONS_TYPE &&
30881  sel->olap != UNSPECIFIED_OLAP_TYPE &&
30882  (sel->linkage != UNION_TYPE || sel->braces))
30883  {
30884  my_error(ER_WRONG_USAGE, MYF(0),
30885  "CUBE/ROLLUP", "ORDER BY");
30886  MYSQL_YYABORT;
30887  }
30888  }
30889  break;
30890 
30891  case 1383:
30892 
30893 /* Line 1455 of yacc.c */
30894 #line 10462 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30895  { if (add_gorder_to_list(YYTHD, (yyvsp[(3) - (4)].item),(bool) (yyvsp[(4) - (4)].num))) MYSQL_YYABORT; }
30896  break;
30897 
30898  case 1384:
30899 
30900 /* Line 1455 of yacc.c */
30901 #line 10464 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30902  { if (add_gorder_to_list(YYTHD, (yyvsp[(1) - (2)].item),(bool) (yyvsp[(2) - (2)].num))) MYSQL_YYABORT; }
30903  break;
30904 
30905  case 1385:
30906 
30907 /* Line 1455 of yacc.c */
30908 #line 10469 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30909  {
30910  LEX *lex= Lex;
30911  if (lex->current_select->inc_in_sum_expr())
30912  {
30913  my_parse_error(ER(ER_SYNTAX_ERROR));
30914  MYSQL_YYABORT;
30915  }
30916  }
30917  break;
30918 
30919  case 1386:
30920 
30921 /* Line 1455 of yacc.c */
30922 #line 10478 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30923  {
30924  Select->in_sum_expr--;
30925  (yyval.item)= (yyvsp[(3) - (3)].item);
30926  }
30927  break;
30928 
30929  case 1387:
30930 
30931 /* Line 1455 of yacc.c */
30932 #line 10486 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30933  { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->charset= &my_charset_bin; Lex->dec= 0; }
30934  break;
30935 
30936  case 1388:
30937 
30938 /* Line 1455 of yacc.c */
30939 #line 10488 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30940  { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->dec= 0; }
30941  break;
30942 
30943  case 1389:
30944 
30945 /* Line 1455 of yacc.c */
30946 #line 10490 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30947  { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->charset= national_charset_info; Lex->dec=0; }
30948  break;
30949 
30950  case 1390:
30951 
30952 /* Line 1455 of yacc.c */
30953 #line 10492 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30954  { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
30955  break;
30956 
30957  case 1391:
30958 
30959 /* Line 1455 of yacc.c */
30960 #line 10494 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30961  { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
30962  break;
30963 
30964  case 1392:
30965 
30966 /* Line 1455 of yacc.c */
30967 #line 10496 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30968  { (yyval.cast_type)=ITEM_CAST_UNSIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
30969  break;
30970 
30971  case 1393:
30972 
30973 /* Line 1455 of yacc.c */
30974 #line 10498 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30975  { (yyval.cast_type)=ITEM_CAST_UNSIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
30976  break;
30977 
30978  case 1394:
30979 
30980 /* Line 1455 of yacc.c */
30981 #line 10500 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30982  { (yyval.cast_type)= ITEM_CAST_DATE; Lex->charset= NULL; Lex->dec= Lex->length= (char *) 0; }
30983  break;
30984 
30985  case 1395:
30986 
30987 /* Line 1455 of yacc.c */
30988 #line 10502 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30989  { (yyval.cast_type)= ITEM_CAST_TIME; Lex->charset= NULL; Lex->length= (char *) 0; }
30990  break;
30991 
30992  case 1396:
30993 
30994 /* Line 1455 of yacc.c */
30995 #line 10504 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
30996  { (yyval.cast_type)= ITEM_CAST_DATETIME; Lex->charset= NULL; Lex->length= (char *) 0; }
30997  break;
30998 
30999  case 1397:
31000 
31001 /* Line 1455 of yacc.c */
31002 #line 10506 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31003  { (yyval.cast_type)=ITEM_CAST_DECIMAL; Lex->charset= NULL; }
31004  break;
31005 
31006  case 1398:
31007 
31008 /* Line 1455 of yacc.c */
31009 #line 10510 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31010  { (yyval.item_list)= NULL; }
31011  break;
31012 
31013  case 1399:
31014 
31015 /* Line 1455 of yacc.c */
31016 #line 10511 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31017  { (yyval.item_list)= (yyvsp[(1) - (1)].item_list);}
31018  break;
31019 
31020  case 1400:
31021 
31022 /* Line 1455 of yacc.c */
31023 #line 10516 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31024  {
31025  (yyval.item_list)= new (YYTHD->mem_root) List<Item>;
31026  if ((yyval.item_list) == NULL)
31027  MYSQL_YYABORT;
31028  (yyval.item_list)->push_back((yyvsp[(1) - (1)].item));
31029  }
31030  break;
31031 
31032  case 1401:
31033 
31034 /* Line 1455 of yacc.c */
31035 #line 10523 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31036  {
31037  (yyvsp[(1) - (3)].item_list)->push_back((yyvsp[(3) - (3)].item));
31038  (yyval.item_list)= (yyvsp[(1) - (3)].item_list);
31039  }
31040  break;
31041 
31042  case 1402:
31043 
31044 /* Line 1455 of yacc.c */
31045 #line 10530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31046  { (yyval.item_list)= (yyvsp[(1) - (1)].item_list); }
31047  break;
31048 
31049  case 1403:
31050 
31051 /* Line 1455 of yacc.c */
31052 #line 10531 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31053  { (yyval.item_list)= (yyvsp[(2) - (3)].item_list); }
31054  break;
31055 
31056  case 1404:
31057 
31058 /* Line 1455 of yacc.c */
31059 #line 10536 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31060  {
31061  (yyval.item_list)= new (YYTHD->mem_root) List<Item>;
31062  if ((yyval.item_list) == NULL)
31063  MYSQL_YYABORT;
31064  (yyval.item_list)->push_back((yyvsp[(1) - (1)].item));
31065  }
31066  break;
31067 
31068  case 1405:
31069 
31070 /* Line 1455 of yacc.c */
31071 #line 10543 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31072  {
31073  (yyvsp[(1) - (3)].item_list)->push_back((yyvsp[(3) - (3)].item));
31074  (yyval.item_list)= (yyvsp[(1) - (3)].item_list);
31075  }
31076  break;
31077 
31078  case 1406:
31079 
31080 /* Line 1455 of yacc.c */
31081 #line 10550 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31082  { (yyval.item)= NULL; }
31083  break;
31084 
31085  case 1407:
31086 
31087 /* Line 1455 of yacc.c */
31088 #line 10551 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31089  { (yyval.item)= (yyvsp[(1) - (1)].item); }
31090  break;
31091 
31092  case 1408:
31093 
31094 /* Line 1455 of yacc.c */
31095 #line 10555 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31096  { (yyval.item)= NULL; }
31097  break;
31098 
31099  case 1409:
31100 
31101 /* Line 1455 of yacc.c */
31102 #line 10556 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31103  { (yyval.item)= (yyvsp[(2) - (2)].item); }
31104  break;
31105 
31106  case 1410:
31107 
31108 /* Line 1455 of yacc.c */
31109 #line 10561 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31110  {
31111  (yyval.item_list)= new List<Item>;
31112  if ((yyval.item_list) == NULL)
31113  MYSQL_YYABORT;
31114  (yyval.item_list)->push_back((yyvsp[(2) - (4)].item));
31115  (yyval.item_list)->push_back((yyvsp[(4) - (4)].item));
31116  }
31117  break;
31118 
31119  case 1411:
31120 
31121 /* Line 1455 of yacc.c */
31122 #line 10569 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31123  {
31124  (yyvsp[(1) - (5)].item_list)->push_back((yyvsp[(3) - (5)].item));
31125  (yyvsp[(1) - (5)].item_list)->push_back((yyvsp[(5) - (5)].item));
31126  (yyval.item_list)= (yyvsp[(1) - (5)].item_list);
31127  }
31128  break;
31129 
31130  case 1412:
31131 
31132 /* Line 1455 of yacc.c */
31133 #line 10579 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31134  { (yyval.table_list)=(yyvsp[(1) - (1)].table_list); }
31135  break;
31136 
31137  case 1413:
31138 
31139 /* Line 1455 of yacc.c */
31140 #line 10581 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31141  {
31142  LEX *lex= Lex;
31143  if (!((yyval.table_list)= lex->current_select->nest_last_join(lex->thd)))
31144  MYSQL_YYABORT;
31145  }
31146  break;
31147 
31148  case 1414:
31149 
31150 /* Line 1455 of yacc.c */
31151 #line 10589 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31152  { MYSQL_YYABORT_UNLESS((yyval.table_list)=(yyvsp[(1) - (1)].table_list)); }
31153  break;
31154 
31155  case 1415:
31156 
31157 /* Line 1455 of yacc.c */
31158 #line 10600 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31159  { (yyval.table_list)=(yyvsp[(1) - (1)].table_list); }
31160  break;
31161 
31162  case 1416:
31163 
31164 /* Line 1455 of yacc.c */
31165 #line 10601 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31166  { (yyval.table_list)=(yyvsp[(3) - (4)].table_list); }
31167  break;
31168 
31169  case 1417:
31170 
31171 /* Line 1455 of yacc.c */
31172 #line 10607 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31173  { (yyval.table_list)=(yyvsp[(1) - (1)].table_list); }
31174  break;
31175 
31176  case 1418:
31177 
31178 /* Line 1455 of yacc.c */
31179 #line 10609 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31180  {
31181  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].table_list) && ((yyval.table_list)=(yyvsp[(3) - (3)].table_list)));
31182  }
31183  break;
31184 
31185  case 1419:
31186 
31187 /* Line 1455 of yacc.c */
31188 #line 10629 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31189  { MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].table_list) && ((yyval.table_list)=(yyvsp[(3) - (3)].table_list))); }
31190  break;
31191 
31192  case 1420:
31193 
31194 /* Line 1455 of yacc.c */
31195 #line 10631 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31196  { MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].table_list) && ((yyval.table_list)=(yyvsp[(3) - (3)].table_list))); (yyvsp[(3) - (3)].table_list)->straight=1; }
31197  break;
31198 
31199  case 1421:
31200 
31201 /* Line 1455 of yacc.c */
31202 #line 10634 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31203  {
31204  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && (yyvsp[(3) - (4)].table_list));
31205  /* Change the current name resolution context to a local context. */
31206  if (push_new_name_resolution_context(YYTHD, (yyvsp[(1) - (4)].table_list), (yyvsp[(3) - (4)].table_list)))
31207  MYSQL_YYABORT;
31208  Select->parsing_place= IN_ON;
31209  }
31210  break;
31211 
31212  case 1422:
31213 
31214 /* Line 1455 of yacc.c */
31215 #line 10642 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31216  {
31217  add_join_on((yyvsp[(3) - (6)].table_list),(yyvsp[(6) - (6)].item));
31218  Lex->pop_context();
31219  Select->parsing_place= NO_MATTER;
31220  }
31221  break;
31222 
31223  case 1423:
31224 
31225 /* Line 1455 of yacc.c */
31226 #line 10649 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31227  {
31228  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && (yyvsp[(3) - (4)].table_list));
31229  /* Change the current name resolution context to a local context. */
31230  if (push_new_name_resolution_context(YYTHD, (yyvsp[(1) - (4)].table_list), (yyvsp[(3) - (4)].table_list)))
31231  MYSQL_YYABORT;
31232  Select->parsing_place= IN_ON;
31233  }
31234  break;
31235 
31236  case 1424:
31237 
31238 /* Line 1455 of yacc.c */
31239 #line 10657 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31240  {
31241  (yyvsp[(3) - (6)].table_list)->straight=1;
31242  add_join_on((yyvsp[(3) - (6)].table_list),(yyvsp[(6) - (6)].item));
31243  Lex->pop_context();
31244  Select->parsing_place= NO_MATTER;
31245  }
31246  break;
31247 
31248  case 1425:
31249 
31250 /* Line 1455 of yacc.c */
31251 #line 10665 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31252  {
31253  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && (yyvsp[(3) - (4)].table_list));
31254  }
31255  break;
31256 
31257  case 1426:
31258 
31259 /* Line 1455 of yacc.c */
31260 #line 10669 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31261  { add_join_natural((yyvsp[(1) - (8)].table_list),(yyvsp[(3) - (8)].table_list),(yyvsp[(7) - (8)].string_list),Select); (yyval.table_list)=(yyvsp[(3) - (8)].table_list); }
31262  break;
31263 
31264  case 1427:
31265 
31266 /* Line 1455 of yacc.c */
31267 #line 10671 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31268  {
31269  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && ((yyval.table_list)=(yyvsp[(4) - (4)].table_list)));
31270  add_join_natural((yyvsp[(1) - (4)].table_list),(yyvsp[(4) - (4)].table_list),NULL,Select);
31271  }
31272  break;
31273 
31274  case 1428:
31275 
31276 /* Line 1455 of yacc.c */
31277 #line 10679 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31278  {
31279  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(5) - (6)].table_list));
31280  /* Change the current name resolution context to a local context. */
31281  if (push_new_name_resolution_context(YYTHD, (yyvsp[(1) - (6)].table_list), (yyvsp[(5) - (6)].table_list)))
31282  MYSQL_YYABORT;
31283  Select->parsing_place= IN_ON;
31284  }
31285  break;
31286 
31287  case 1429:
31288 
31289 /* Line 1455 of yacc.c */
31290 #line 10687 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31291  {
31292  add_join_on((yyvsp[(5) - (8)].table_list),(yyvsp[(8) - (8)].item));
31293  Lex->pop_context();
31294  (yyvsp[(5) - (8)].table_list)->outer_join|=JOIN_TYPE_LEFT;
31295  (yyval.table_list)=(yyvsp[(5) - (8)].table_list);
31296  Select->parsing_place= NO_MATTER;
31297  }
31298  break;
31299 
31300  case 1430:
31301 
31302 /* Line 1455 of yacc.c */
31303 #line 10695 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31304  {
31305  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (5)].table_list) && (yyvsp[(5) - (5)].table_list));
31306  }
31307  break;
31308 
31309  case 1431:
31310 
31311 /* Line 1455 of yacc.c */
31312 #line 10699 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31313  {
31314  add_join_natural((yyvsp[(1) - (10)].table_list),(yyvsp[(5) - (10)].table_list),(yyvsp[(9) - (10)].string_list),Select);
31315  (yyvsp[(5) - (10)].table_list)->outer_join|=JOIN_TYPE_LEFT;
31316  (yyval.table_list)=(yyvsp[(5) - (10)].table_list);
31317  }
31318  break;
31319 
31320  case 1432:
31321 
31322 /* Line 1455 of yacc.c */
31323 #line 10705 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31324  {
31325  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(6) - (6)].table_list));
31326  add_join_natural((yyvsp[(1) - (6)].table_list),(yyvsp[(6) - (6)].table_list),NULL,Select);
31327  (yyvsp[(6) - (6)].table_list)->outer_join|=JOIN_TYPE_LEFT;
31328  (yyval.table_list)=(yyvsp[(6) - (6)].table_list);
31329  }
31330  break;
31331 
31332  case 1433:
31333 
31334 /* Line 1455 of yacc.c */
31335 #line 10715 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31336  {
31337  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(5) - (6)].table_list));
31338  /* Change the current name resolution context to a local context. */
31339  if (push_new_name_resolution_context(YYTHD, (yyvsp[(1) - (6)].table_list), (yyvsp[(5) - (6)].table_list)))
31340  MYSQL_YYABORT;
31341  Select->parsing_place= IN_ON;
31342  }
31343  break;
31344 
31345  case 1434:
31346 
31347 /* Line 1455 of yacc.c */
31348 #line 10723 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31349  {
31350  LEX *lex= Lex;
31351  if (!((yyval.table_list)= lex->current_select->convert_right_join()))
31352  MYSQL_YYABORT;
31353  add_join_on((yyval.table_list), (yyvsp[(8) - (8)].item));
31354  Lex->pop_context();
31355  Select->parsing_place= NO_MATTER;
31356  }
31357  break;
31358 
31359  case 1435:
31360 
31361 /* Line 1455 of yacc.c */
31362 #line 10732 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31363  {
31364  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (5)].table_list) && (yyvsp[(5) - (5)].table_list));
31365  }
31366  break;
31367 
31368  case 1436:
31369 
31370 /* Line 1455 of yacc.c */
31371 #line 10736 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31372  {
31373  LEX *lex= Lex;
31374  if (!((yyval.table_list)= lex->current_select->convert_right_join()))
31375  MYSQL_YYABORT;
31376  add_join_natural((yyval.table_list),(yyvsp[(5) - (10)].table_list),(yyvsp[(9) - (10)].string_list),Select);
31377  }
31378  break;
31379 
31380  case 1437:
31381 
31382 /* Line 1455 of yacc.c */
31383 #line 10743 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31384  {
31385  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(6) - (6)].table_list));
31386  add_join_natural((yyvsp[(6) - (6)].table_list),(yyvsp[(1) - (6)].table_list),NULL,Select);
31387  LEX *lex= Lex;
31388  if (!((yyval.table_list)= lex->current_select->convert_right_join()))
31389  MYSQL_YYABORT;
31390  }
31391  break;
31392 
31393  case 1438:
31394 
31395 /* Line 1455 of yacc.c */
31396 #line 10753 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31397  {}
31398  break;
31399 
31400  case 1439:
31401 
31402 /* Line 1455 of yacc.c */
31403 #line 10754 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31404  {}
31405  break;
31406 
31407  case 1440:
31408 
31409 /* Line 1455 of yacc.c */
31410 #line 10755 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31411  {}
31412  break;
31413 
31414  case 1441:
31415 
31416 /* Line 1455 of yacc.c */
31417 #line 10763 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31418  { (yyval.string_list)= 0;}
31419  break;
31420 
31421  case 1443:
31422 
31423 /* Line 1455 of yacc.c */
31424 #line 10769 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31425  {
31426  (yyval.string_list)= (yyvsp[(3) - (5)].string_list);
31427  }
31428  break;
31429 
31430  case 1444:
31431 
31432 /* Line 1455 of yacc.c */
31433 #line 10783 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31434  {
31435  SELECT_LEX *sel= Select;
31436  sel->table_join_options= 0;
31437  }
31438  break;
31439 
31440  case 1445:
31441 
31442 /* Line 1455 of yacc.c */
31443 #line 10788 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31444  {
31445  if (!((yyval.table_list)= Select->add_table_to_list(YYTHD, (yyvsp[(2) - (5)].table), (yyvsp[(4) - (5)].lex_str_ptr),
31446  Select->get_table_join_options(),
31447  YYPS->m_lock_type,
31448  YYPS->m_mdl_type,
31449  Select->pop_index_hints(),
31450  (yyvsp[(3) - (5)].string_list))))
31451  MYSQL_YYABORT;
31452  Select->add_joined_table((yyval.table_list));
31453  }
31454  break;
31455 
31456  case 1446:
31457 
31458 /* Line 1455 of yacc.c */
31459 #line 10799 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31460  {
31461  LEX *lex= Lex;
31462  SELECT_LEX *sel= lex->current_select;
31463  if ((yyvsp[(1) - (3)].num))
31464  {
31465  if (sel->set_braces(1))
31466  {
31467  my_parse_error(ER(ER_SYNTAX_ERROR));
31468  MYSQL_YYABORT;
31469  }
31470  /* select in braces, can't contain global parameters */
31471  if (sel->master_unit()->fake_select_lex)
31472  sel->master_unit()->global_parameters=
31473  sel->master_unit()->fake_select_lex;
31474  }
31475  if ((yyvsp[(2) - (3)].select_lex)->init_nested_join(lex->thd))
31476  MYSQL_YYABORT;
31477  (yyval.table_list)= 0;
31478  /* incomplete derived tables return NULL, we must be
31479  nested in select_derived rule to be here. */
31480  }
31481  break;
31482 
31483  case 1447:
31484 
31485 /* Line 1455 of yacc.c */
31486 #line 10839 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31487  {
31488  /* Use $2 instead of Lex->current_select as derived table will
31489  alter value of Lex->current_select. */
31490  if (!((yyvsp[(3) - (5)].table_list) || (yyvsp[(5) - (5)].lex_str_ptr)) && (yyvsp[(2) - (5)].select_lex)->embedding &&
31491  !(yyvsp[(2) - (5)].select_lex)->embedding->nested_join->join_list.elements)
31492  {
31493  /* we have a derived table ($3 == NULL) but no alias,
31494  Since we are nested in further parentheses so we
31495  can pass NULL to the outer level parentheses
31496  Permits parsing of "((((select ...))) as xyz)" */
31497  (yyval.table_list)= 0;
31498  }
31499  else if (!(yyvsp[(3) - (5)].table_list))
31500  {
31501  /* Handle case of derived table, alias may be NULL if there
31502  are no outer parentheses, add_table_to_list() will throw
31503  error in this case */
31504  LEX *lex=Lex;
31505  SELECT_LEX *sel= lex->current_select;
31506  SELECT_LEX_UNIT *unit= sel->master_unit();
31507  lex->current_select= sel= unit->outer_select();
31508  Table_ident *ti= new Table_ident(unit);
31509  if (ti == NULL)
31510  MYSQL_YYABORT;
31511  if (!((yyval.table_list)= sel->add_table_to_list(lex->thd,
31512  ti, (yyvsp[(5) - (5)].lex_str_ptr), 0,
31513  TL_READ, MDL_SHARED_READ)))
31514 
31515  MYSQL_YYABORT;
31516  sel->add_joined_table((yyval.table_list));
31517  lex->pop_context();
31518  lex->nest_level--;
31519  }
31520  else if ((yyvsp[(5) - (5)].lex_str_ptr) != NULL)
31521  {
31522  /*
31523  Tables with or without joins within parentheses cannot
31524  have aliases, and we ruled out derived tables above.
31525  */
31526  my_parse_error(ER(ER_SYNTAX_ERROR));
31527  MYSQL_YYABORT;
31528  }
31529  else
31530  {
31531  /* nested join: FROM (t1 JOIN t2 ...),
31532  nest_level is the same as in the outer query */
31533  (yyval.table_list)= (yyvsp[(3) - (5)].table_list);
31534  }
31535  }
31536  break;
31537 
31538  case 1448:
31539 
31540 /* Line 1455 of yacc.c */
31541 #line 10912 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31542  {
31543  if ((yyvsp[(1) - (2)].table_list) && (yyvsp[(2) - (2)].is_not_empty))
31544  {
31545  my_parse_error(ER(ER_SYNTAX_ERROR));
31546  MYSQL_YYABORT;
31547  }
31548  }
31549  break;
31550 
31551  case 1449:
31552 
31553 /* Line 1455 of yacc.c */
31554 #line 10922 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31555  {
31556  if (add_select_to_union_list(Lex, (bool)(yyvsp[(3) - (3)].num), FALSE))
31557  MYSQL_YYABORT;
31558  }
31559  break;
31560 
31561  case 1450:
31562 
31563 /* Line 1455 of yacc.c */
31564 #line 10927 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31565  {
31566  /*
31567  Remove from the name resolution context stack the context of the
31568  last select in the union.
31569  */
31570  Lex->pop_context();
31571  }
31572  break;
31573 
31574  case 1451:
31575 
31576 /* Line 1455 of yacc.c */
31577 #line 10935 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31578  {
31579  if ((yyvsp[(1) - (7)].table_list) != NULL)
31580  {
31581  my_parse_error(ER(ER_SYNTAX_ERROR));
31582  MYSQL_YYABORT;
31583  }
31584  }
31585  break;
31586 
31587  case 1452:
31588 
31589 /* Line 1455 of yacc.c */
31590 #line 10947 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31591  {
31592  LEX *lex= Lex;
31593  SELECT_LEX * sel= lex->current_select;
31594  if (lex->current_select->set_braces(0))
31595  {
31596  my_parse_error(ER(ER_SYNTAX_ERROR));
31597  MYSQL_YYABORT;
31598  }
31599  if (sel->linkage == UNION_TYPE &&
31600  sel->master_unit()->first_select()->braces)
31601  {
31602  my_parse_error(ER(ER_SYNTAX_ERROR));
31603  MYSQL_YYABORT;
31604  }
31605  }
31606  break;
31607 
31608  case 1453:
31609 
31610 /* Line 1455 of yacc.c */
31611 #line 10966 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31612  {
31613  LEX *lex= Lex;
31614  SELECT_LEX *sel= lex->current_select;
31615  if (sel->linkage != UNION_TYPE)
31616  mysql_init_select(lex);
31617  lex->current_select->parsing_place= SELECT_LIST;
31618  }
31619  break;
31620 
31621  case 1454:
31622 
31623 /* Line 1455 of yacc.c */
31624 #line 10974 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31625  {
31626  Select->parsing_place= NO_MATTER;
31627  }
31628  break;
31629 
31630  case 1456:
31631 
31632 /* Line 1455 of yacc.c */
31633 #line 10983 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31634  {
31635  LEX *lex= Lex;
31636  if ((yyvsp[(1) - (1)].select_lex)->init_nested_join(lex->thd))
31637  MYSQL_YYABORT;
31638  }
31639  break;
31640 
31641  case 1457:
31642 
31643 /* Line 1455 of yacc.c */
31644 #line 10989 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31645  {
31646  LEX *lex= Lex;
31647  /* for normal joins, $3 != NULL and end_nested_join() != NULL,
31648  for derived tables, both must equal NULL */
31649 
31650  if (!((yyval.table_list)= (yyvsp[(1) - (3)].select_lex)->end_nested_join(lex->thd)) && (yyvsp[(3) - (3)].table_list))
31651  MYSQL_YYABORT;
31652  if (!(yyvsp[(3) - (3)].table_list) && (yyval.table_list))
31653  {
31654  my_parse_error(ER(ER_SYNTAX_ERROR));
31655  MYSQL_YYABORT;
31656  }
31657  }
31658  break;
31659 
31660  case 1458:
31661 
31662 /* Line 1455 of yacc.c */
31663 #line 11005 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31664  {
31665  LEX *lex= Lex;
31666  lex->derived_tables|= DERIVED_SUBQUERY;
31667  if (!lex->expr_allows_subselect ||
31668  lex->sql_command == (int)SQLCOM_PURGE)
31669  {
31670  my_parse_error(ER(ER_SYNTAX_ERROR));
31671  MYSQL_YYABORT;
31672  }
31673  if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE ||
31674  mysql_new_select(lex, 1))
31675  MYSQL_YYABORT;
31676  mysql_init_select(lex);
31677  lex->current_select->linkage= DERIVED_TABLE_TYPE;
31678  lex->current_select->parsing_place= SELECT_LIST;
31679  }
31680  break;
31681 
31682  case 1459:
31683 
31684 /* Line 1455 of yacc.c */
31685 #line 11022 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31686  {
31687  Select->parsing_place= NO_MATTER;
31688  }
31689  break;
31690 
31691  case 1461:
31692 
31693 /* Line 1455 of yacc.c */
31694 #line 11029 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31695  { (yyval.select_lex)= Select; }
31696  break;
31697 
31698  case 1462:
31699 
31700 /* Line 1455 of yacc.c */
31701 #line 11034 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31702  {
31703  LEX *lex= Lex;
31704 
31705  if (! lex->parsing_options.allows_derived)
31706  {
31707  my_error(ER_VIEW_SELECT_DERIVED, MYF(0));
31708  MYSQL_YYABORT;
31709  }
31710 
31711  SELECT_LEX *sel= lex->current_select;
31712  TABLE_LIST *embedding;
31713  if (!sel->embedding || sel->end_nested_join(lex->thd))
31714  {
31715  /* we are not in parentheses */
31716  my_parse_error(ER(ER_SYNTAX_ERROR));
31717  MYSQL_YYABORT;
31718  }
31719  embedding= Select->embedding;
31720  (yyval.num)= embedding &&
31721  !embedding->nested_join->join_list.elements;
31722  /* return true if we are deeply nested */
31723  }
31724  break;
31725 
31726  case 1463:
31727 
31728 /* Line 1455 of yacc.c */
31729 #line 11059 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31730  {}
31731  break;
31732 
31733  case 1464:
31734 
31735 /* Line 1455 of yacc.c */
31736 #line 11060 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31737  {}
31738  break;
31739 
31740  case 1465:
31741 
31742 /* Line 1455 of yacc.c */
31743 #line 11065 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31744  {
31745  (yyval.num)= old_mode ? INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL;
31746  }
31747  break;
31748 
31749  case 1466:
31750 
31751 /* Line 1455 of yacc.c */
31752 #line 11068 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31753  { (yyval.num)= INDEX_HINT_MASK_JOIN; }
31754  break;
31755 
31756  case 1467:
31757 
31758 /* Line 1455 of yacc.c */
31759 #line 11069 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31760  { (yyval.num)= INDEX_HINT_MASK_ORDER; }
31761  break;
31762 
31763  case 1468:
31764 
31765 /* Line 1455 of yacc.c */
31766 #line 11070 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31767  { (yyval.num)= INDEX_HINT_MASK_GROUP; }
31768  break;
31769 
31770  case 1469:
31771 
31772 /* Line 1455 of yacc.c */
31773 #line 11074 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31774  { (yyval.index_hint)= INDEX_HINT_FORCE; }
31775  break;
31776 
31777  case 1470:
31778 
31779 /* Line 1455 of yacc.c */
31780 #line 11075 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31781  { (yyval.index_hint)= INDEX_HINT_IGNORE; }
31782  break;
31783 
31784  case 1471:
31785 
31786 /* Line 1455 of yacc.c */
31787 #line 11080 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31788  {
31789  Select->set_index_hint_type((yyvsp[(1) - (3)].index_hint), (yyvsp[(3) - (3)].num));
31790  }
31791  break;
31792 
31793  case 1473:
31794 
31795 /* Line 1455 of yacc.c */
31796 #line 11085 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31797  {
31798  Select->set_index_hint_type(INDEX_HINT_USE, (yyvsp[(3) - (3)].num));
31799  }
31800  break;
31801 
31802  case 1478:
31803 
31804 /* Line 1455 of yacc.c */
31805 #line 11098 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31806  { Select->alloc_index_hints(YYTHD); }
31807  break;
31808 
31809  case 1480:
31810 
31811 /* Line 1455 of yacc.c */
31812 #line 11102 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31813  { Select->clear_index_hints(); }
31814  break;
31815 
31816  case 1482:
31817 
31818 /* Line 1455 of yacc.c */
31819 #line 11107 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31820  { Select->add_index_hint(YYTHD, NULL, 0); }
31821  break;
31822 
31823  case 1483:
31824 
31825 /* Line 1455 of yacc.c */
31826 #line 11108 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31827  {}
31828  break;
31829 
31830  case 1484:
31831 
31832 /* Line 1455 of yacc.c */
31833 #line 11113 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31834  { Select->add_index_hint(YYTHD, (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length); }
31835  break;
31836 
31837  case 1485:
31838 
31839 /* Line 1455 of yacc.c */
31840 #line 11115 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31841  { Select->add_index_hint(YYTHD, (char *)"PRIMARY", 7); }
31842  break;
31843 
31844  case 1488:
31845 
31846 /* Line 1455 of yacc.c */
31847 #line 11125 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31848  {
31849  if (!((yyval.string_list)= new List<String>))
31850  MYSQL_YYABORT;
31851  String *s= new (YYTHD->mem_root) String((const char *) (yyvsp[(1) - (1)].lex_str).str,
31852  (yyvsp[(1) - (1)].lex_str).length,
31853  system_charset_info);
31854  if (s == NULL)
31855  MYSQL_YYABORT;
31856  (yyval.string_list)->push_back(s);
31857  }
31858  break;
31859 
31860  case 1489:
31861 
31862 /* Line 1455 of yacc.c */
31863 #line 11136 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31864  {
31865  String *s= new (YYTHD->mem_root) String((const char *) (yyvsp[(3) - (3)].lex_str).str,
31866  (yyvsp[(3) - (3)].lex_str).length,
31867  system_charset_info);
31868  if (s == NULL)
31869  MYSQL_YYABORT;
31870  (yyvsp[(1) - (3)].string_list)->push_back(s);
31871  (yyval.string_list)= (yyvsp[(1) - (3)].string_list);
31872  }
31873  break;
31874 
31875  case 1490:
31876 
31877 /* Line 1455 of yacc.c */
31878 #line 11148 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31879  {}
31880  break;
31881 
31882  case 1491:
31883 
31884 /* Line 1455 of yacc.c */
31885 #line 11149 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31886  { (yyval.interval)=INTERVAL_DAY_HOUR; }
31887  break;
31888 
31889  case 1492:
31890 
31891 /* Line 1455 of yacc.c */
31892 #line 11150 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31893  { (yyval.interval)=INTERVAL_DAY_MICROSECOND; }
31894  break;
31895 
31896  case 1493:
31897 
31898 /* Line 1455 of yacc.c */
31899 #line 11151 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31900  { (yyval.interval)=INTERVAL_DAY_MINUTE; }
31901  break;
31902 
31903  case 1494:
31904 
31905 /* Line 1455 of yacc.c */
31906 #line 11152 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31907  { (yyval.interval)=INTERVAL_DAY_SECOND; }
31908  break;
31909 
31910  case 1495:
31911 
31912 /* Line 1455 of yacc.c */
31913 #line 11153 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31914  { (yyval.interval)=INTERVAL_HOUR_MICROSECOND; }
31915  break;
31916 
31917  case 1496:
31918 
31919 /* Line 1455 of yacc.c */
31920 #line 11154 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31921  { (yyval.interval)=INTERVAL_HOUR_MINUTE; }
31922  break;
31923 
31924  case 1497:
31925 
31926 /* Line 1455 of yacc.c */
31927 #line 11155 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31928  { (yyval.interval)=INTERVAL_HOUR_SECOND; }
31929  break;
31930 
31931  case 1498:
31932 
31933 /* Line 1455 of yacc.c */
31934 #line 11156 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31935  { (yyval.interval)=INTERVAL_MINUTE_MICROSECOND; }
31936  break;
31937 
31938  case 1499:
31939 
31940 /* Line 1455 of yacc.c */
31941 #line 11157 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31942  { (yyval.interval)=INTERVAL_MINUTE_SECOND; }
31943  break;
31944 
31945  case 1500:
31946 
31947 /* Line 1455 of yacc.c */
31948 #line 11158 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31949  { (yyval.interval)=INTERVAL_SECOND_MICROSECOND; }
31950  break;
31951 
31952  case 1501:
31953 
31954 /* Line 1455 of yacc.c */
31955 #line 11159 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31956  { (yyval.interval)=INTERVAL_YEAR_MONTH; }
31957  break;
31958 
31959  case 1502:
31960 
31961 /* Line 1455 of yacc.c */
31962 #line 11163 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31963  { (yyval.interval_time_st)=INTERVAL_DAY; }
31964  break;
31965 
31966  case 1503:
31967 
31968 /* Line 1455 of yacc.c */
31969 #line 11164 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31970  { (yyval.interval_time_st)=INTERVAL_WEEK; }
31971  break;
31972 
31973  case 1504:
31974 
31975 /* Line 1455 of yacc.c */
31976 #line 11165 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31977  { (yyval.interval_time_st)=INTERVAL_HOUR; }
31978  break;
31979 
31980  case 1505:
31981 
31982 /* Line 1455 of yacc.c */
31983 #line 11166 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31984  { (yyval.interval_time_st)=INTERVAL_MINUTE; }
31985  break;
31986 
31987  case 1506:
31988 
31989 /* Line 1455 of yacc.c */
31990 #line 11167 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31991  { (yyval.interval_time_st)=INTERVAL_MONTH; }
31992  break;
31993 
31994  case 1507:
31995 
31996 /* Line 1455 of yacc.c */
31997 #line 11168 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
31998  { (yyval.interval_time_st)=INTERVAL_QUARTER; }
31999  break;
32000 
32001  case 1508:
32002 
32003 /* Line 1455 of yacc.c */
32004 #line 11169 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32005  { (yyval.interval_time_st)=INTERVAL_SECOND; }
32006  break;
32007 
32008  case 1509:
32009 
32010 /* Line 1455 of yacc.c */
32011 #line 11170 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32012  { (yyval.interval_time_st)=INTERVAL_MICROSECOND; }
32013  break;
32014 
32015  case 1510:
32016 
32017 /* Line 1455 of yacc.c */
32018 #line 11171 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32019  { (yyval.interval_time_st)=INTERVAL_YEAR; }
32020  break;
32021 
32022  case 1511:
32023 
32024 /* Line 1455 of yacc.c */
32025 #line 11175 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32026  {(yyval.date_time_type)= MYSQL_TIMESTAMP_DATE; }
32027  break;
32028 
32029  case 1512:
32030 
32031 /* Line 1455 of yacc.c */
32032 #line 11176 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32033  {(yyval.date_time_type)= MYSQL_TIMESTAMP_TIME; }
32034  break;
32035 
32036  case 1513:
32037 
32038 /* Line 1455 of yacc.c */
32039 #line 11177 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32040  {(yyval.date_time_type)= MYSQL_TIMESTAMP_DATETIME; }
32041  break;
32042 
32043  case 1514:
32044 
32045 /* Line 1455 of yacc.c */
32046 #line 11178 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32047  {(yyval.date_time_type)= MYSQL_TIMESTAMP_DATETIME; }
32048  break;
32049 
32050  case 1518:
32051 
32052 /* Line 1455 of yacc.c */
32053 #line 11188 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32054  { (yyval.lex_str_ptr)=0; }
32055  break;
32056 
32057  case 1519:
32058 
32059 /* Line 1455 of yacc.c */
32060 #line 11190 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32061  {
32062  (yyval.lex_str_ptr)= (LEX_STRING*) sql_memdup(&(yyvsp[(2) - (2)].lex_str),sizeof(LEX_STRING));
32063  if ((yyval.lex_str_ptr) == NULL)
32064  MYSQL_YYABORT;
32065  }
32066  break;
32067 
32068  case 1522:
32069 
32070 /* Line 1455 of yacc.c */
32071 #line 11203 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32072  { Select->where= 0; }
32073  break;
32074 
32075  case 1523:
32076 
32077 /* Line 1455 of yacc.c */
32078 #line 11205 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32079  {
32080  Select->parsing_place= IN_WHERE;
32081  }
32082  break;
32083 
32084  case 1524:
32085 
32086 /* Line 1455 of yacc.c */
32087 #line 11209 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32088  {
32089  SELECT_LEX *select= Select;
32090  select->where= (yyvsp[(3) - (3)].item);
32091  select->parsing_place= NO_MATTER;
32092  if ((yyvsp[(3) - (3)].item))
32093  (yyvsp[(3) - (3)].item)->top_level_item();
32094  }
32095  break;
32096 
32097  case 1526:
32098 
32099 /* Line 1455 of yacc.c */
32100 #line 11221 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32101  {
32102  Select->parsing_place= IN_HAVING;
32103  }
32104  break;
32105 
32106  case 1527:
32107 
32108 /* Line 1455 of yacc.c */
32109 #line 11225 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32110  {
32111  SELECT_LEX *sel= Select;
32112  sel->having= (yyvsp[(3) - (3)].item);
32113  sel->parsing_place= NO_MATTER;
32114  if ((yyvsp[(3) - (3)].item))
32115  (yyvsp[(3) - (3)].item)->top_level_item();
32116  }
32117  break;
32118 
32119  case 1528:
32120 
32121 /* Line 1455 of yacc.c */
32122 #line 11236 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32123  {
32124  Lex->escape_used= TRUE;
32125  (yyval.item)= (yyvsp[(2) - (2)].item);
32126  }
32127  break;
32128 
32129  case 1529:
32130 
32131 /* Line 1455 of yacc.c */
32132 #line 11241 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32133  {
32134  THD *thd= YYTHD;
32135  Lex->escape_used= FALSE;
32136  (yyval.item)= ((thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES) ?
32137  new (thd->mem_root) Item_string("", 0, &my_charset_latin1) :
32138  new (thd->mem_root) Item_string("\\", 1, &my_charset_latin1));
32139  if ((yyval.item) == NULL)
32140  MYSQL_YYABORT;
32141  }
32142  break;
32143 
32144  case 1532:
32145 
32146 /* Line 1455 of yacc.c */
32147 #line 11263 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32148  { if (add_group_to_list(YYTHD, (yyvsp[(3) - (4)].item),(bool) (yyvsp[(4) - (4)].num))) MYSQL_YYABORT; }
32149  break;
32150 
32151  case 1533:
32152 
32153 /* Line 1455 of yacc.c */
32154 #line 11265 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32155  { if (add_group_to_list(YYTHD, (yyvsp[(1) - (2)].item),(bool) (yyvsp[(2) - (2)].num))) MYSQL_YYABORT; }
32156  break;
32157 
32158  case 1534:
32159 
32160 /* Line 1455 of yacc.c */
32161 #line 11269 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32162  {}
32163  break;
32164 
32165  case 1535:
32166 
32167 /* Line 1455 of yacc.c */
32168 #line 11271 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32169  {
32170  /*
32171  'WITH CUBE' is reserved in the MySQL syntax, but not implemented,
32172  and cause LALR(2) conflicts.
32173  This syntax is not standard.
32174  MySQL syntax: GROUP BY col1, col2, col3 WITH CUBE
32175  SQL-2003: GROUP BY ... CUBE(col1, col2, col3)
32176  */
32177  LEX *lex=Lex;
32178  if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE)
32179  {
32180  my_error(ER_WRONG_USAGE, MYF(0), "WITH CUBE",
32181  "global union parameters");
32182  MYSQL_YYABORT;
32183  }
32184  lex->current_select->olap= CUBE_TYPE;
32185  my_error(ER_NOT_SUPPORTED_YET, MYF(0), "CUBE");
32186  MYSQL_YYABORT;
32187  }
32188  break;
32189 
32190  case 1536:
32191 
32192 /* Line 1455 of yacc.c */
32193 #line 11291 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32194  {
32195  /*
32196  'WITH ROLLUP' is needed for backward compatibility,
32197  and cause LALR(2) conflicts.
32198  This syntax is not standard.
32199  MySQL syntax: GROUP BY col1, col2, col3 WITH ROLLUP
32200  SQL-2003: GROUP BY ... ROLLUP(col1, col2, col3)
32201  */
32202  LEX *lex= Lex;
32203  if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE)
32204  {
32205  my_error(ER_WRONG_USAGE, MYF(0), "WITH ROLLUP",
32206  "global union parameters");
32207  MYSQL_YYABORT;
32208  }
32209  if (lex->current_select->options & SELECT_DISTINCT)
32210  {
32211  // DISTINCT+ROLLUP does not work
32212  my_error(ER_WRONG_USAGE, MYF(0), "WITH ROLLUP", "DISTINCT");
32213  MYSQL_YYABORT;
32214  }
32215  lex->current_select->olap= ROLLUP_TYPE;
32216  }
32217  break;
32218 
32219  case 1540:
32220 
32221 /* Line 1455 of yacc.c */
32222 #line 11331 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32223  {
32224  THD *thd= YYTHD;
32225  bool ascending= ((yyvsp[(2) - (2)].num) == 1) ? true : false;
32226  if (add_order_to_list(thd, (yyvsp[(1) - (2)].item), ascending))
32227  MYSQL_YYABORT;
32228  }
32229  break;
32230 
32231  case 1543:
32232 
32233 /* Line 1455 of yacc.c */
32234 #line 11350 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32235  {
32236  LEX *lex=Lex;
32237  SELECT_LEX *sel= lex->current_select;
32238  SELECT_LEX_UNIT *unit= sel-> master_unit();
32239  if (sel->linkage != GLOBAL_OPTIONS_TYPE &&
32240  sel->olap != UNSPECIFIED_OLAP_TYPE &&
32241  (sel->linkage != UNION_TYPE || sel->braces))
32242  {
32243  my_error(ER_WRONG_USAGE, MYF(0),
32244  "CUBE/ROLLUP", "ORDER BY");
32245  MYSQL_YYABORT;
32246  }
32247  if (lex->sql_command != SQLCOM_ALTER_TABLE && !unit->fake_select_lex)
32248  {
32249  /*
32250  A query of the of the form (SELECT ...) ORDER BY order_list is
32251  executed in the same way as the query
32252  SELECT ... ORDER BY order_list
32253  unless the SELECT construct contains ORDER BY or LIMIT clauses.
32254  Otherwise we create a fake SELECT_LEX if it has not been created
32255  yet.
32256  */
32257  SELECT_LEX *first_sl= unit->first_select();
32258  if (!unit->is_union() &&
32259  (first_sl->order_list.elements ||
32260  first_sl->select_limit) &&
32261  unit->add_fake_select_lex(lex->thd))
32262  MYSQL_YYABORT;
32263  }
32264  }
32265  break;
32266 
32267  case 1545:
32268 
32269 /* Line 1455 of yacc.c */
32270 #line 11385 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32271  { if (add_order_to_list(YYTHD, (yyvsp[(3) - (4)].item),(bool) (yyvsp[(4) - (4)].num))) MYSQL_YYABORT; }
32272  break;
32273 
32274  case 1546:
32275 
32276 /* Line 1455 of yacc.c */
32277 #line 11387 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32278  { if (add_order_to_list(YYTHD, (yyvsp[(1) - (2)].item),(bool) (yyvsp[(2) - (2)].num))) MYSQL_YYABORT; }
32279  break;
32280 
32281  case 1547:
32282 
32283 /* Line 1455 of yacc.c */
32284 #line 11391 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32285  { (yyval.num) = 1; }
32286  break;
32287 
32288  case 1548:
32289 
32290 /* Line 1455 of yacc.c */
32291 #line 11392 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32292  { (yyval.num) =1; }
32293  break;
32294 
32295  case 1549:
32296 
32297 /* Line 1455 of yacc.c */
32298 #line 11393 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32299  { (yyval.num) =0; }
32300  break;
32301 
32302  case 1550:
32303 
32304 /* Line 1455 of yacc.c */
32305 #line 11398 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32306  {
32307  LEX *lex= Lex;
32308  SELECT_LEX *sel= lex->current_select;
32309  sel->offset_limit= 0;
32310  sel->select_limit= 0;
32311  }
32312  break;
32313 
32314  case 1551:
32315 
32316 /* Line 1455 of yacc.c */
32317 #line 11404 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32318  {}
32319  break;
32320 
32321  case 1552:
32322 
32323 /* Line 1455 of yacc.c */
32324 #line 11408 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32325  {}
32326  break;
32327 
32328  case 1553:
32329 
32330 /* Line 1455 of yacc.c */
32331 #line 11409 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32332  {}
32333  break;
32334 
32335  case 1554:
32336 
32337 /* Line 1455 of yacc.c */
32338 #line 11414 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32339  {
32340  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
32341  }
32342  break;
32343 
32344  case 1555:
32345 
32346 /* Line 1455 of yacc.c */
32347 #line 11421 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32348  {
32349  SELECT_LEX *sel= Select;
32350  sel->select_limit= (yyvsp[(1) - (1)].item);
32351  sel->offset_limit= 0;
32352  sel->explicit_limit= 1;
32353  }
32354  break;
32355 
32356  case 1556:
32357 
32358 /* Line 1455 of yacc.c */
32359 #line 11428 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32360  {
32361  SELECT_LEX *sel= Select;
32362  sel->select_limit= (yyvsp[(3) - (3)].item);
32363  sel->offset_limit= (yyvsp[(1) - (3)].item);
32364  sel->explicit_limit= 1;
32365  }
32366  break;
32367 
32368  case 1557:
32369 
32370 /* Line 1455 of yacc.c */
32371 #line 11435 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32372  {
32373  SELECT_LEX *sel= Select;
32374  sel->select_limit= (yyvsp[(1) - (3)].item);
32375  sel->offset_limit= (yyvsp[(3) - (3)].item);
32376  sel->explicit_limit= 1;
32377  }
32378  break;
32379 
32380  case 1558:
32381 
32382 /* Line 1455 of yacc.c */
32383 #line 11445 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32384  {
32385  THD *thd= YYTHD;
32386  LEX *lex= Lex;
32387  Lex_input_stream *lip= YYLIP;
32388  sp_head *sp= lex->sphead;
32389  const char *query_start_ptr=
32390  sp ? sp->m_parser_data.get_current_stmt_start_ptr() : NULL;
32391 
32392  Item_splocal *v= create_item_for_sp_var(thd, (yyvsp[(1) - (1)].lex_str), NULL,
32393  query_start_ptr,
32394  lip->get_tok_start(),
32395  lip->get_ptr());
32396  if (!v)
32397  MYSQL_YYABORT;
32398 
32399  lex->safe_to_cache_query= false;
32400 
32401  if (v->type() != Item::INT_ITEM)
32402  {
32403  my_error(ER_WRONG_SPVAR_TYPE_IN_LIMIT, MYF(0));
32404  MYSQL_YYABORT;
32405  }
32406 
32407  v->limit_clause_param= true;
32408  (yyval.item)= v;
32409  }
32410  break;
32411 
32412  case 1559:
32413 
32414 /* Line 1455 of yacc.c */
32415 #line 11472 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32416  {
32417  ((Item_param *) (yyvsp[(1) - (1)].item))->limit_clause_param= TRUE;
32418  }
32419  break;
32420 
32421  case 1560:
32422 
32423 /* Line 1455 of yacc.c */
32424 #line 11476 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32425  {
32426  (yyval.item)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
32427  if ((yyval.item) == NULL)
32428  MYSQL_YYABORT;
32429  }
32430  break;
32431 
32432  case 1561:
32433 
32434 /* Line 1455 of yacc.c */
32435 #line 11482 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32436  {
32437  (yyval.item)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
32438  if ((yyval.item) == NULL)
32439  MYSQL_YYABORT;
32440  }
32441  break;
32442 
32443  case 1562:
32444 
32445 /* Line 1455 of yacc.c */
32446 #line 11488 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32447  {
32448  (yyval.item)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
32449  if ((yyval.item) == NULL)
32450  MYSQL_YYABORT;
32451  }
32452  break;
32453 
32454  case 1563:
32455 
32456 /* Line 1455 of yacc.c */
32457 #line 11497 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32458  {
32459  LEX *lex=Lex;
32460  lex->current_select->select_limit= 0;
32461  }
32462  break;
32463 
32464  case 1564:
32465 
32466 /* Line 1455 of yacc.c */
32467 #line 11502 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32468  {
32469  SELECT_LEX *sel= Select;
32470  sel->select_limit= (yyvsp[(2) - (2)].item);
32471  Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
32472  sel->explicit_limit= 1;
32473  }
32474  break;
32475 
32476  case 1565:
32477 
32478 /* Line 1455 of yacc.c */
32479 #line 11511 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32480  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32481  break;
32482 
32483  case 1566:
32484 
32485 /* Line 1455 of yacc.c */
32486 #line 11512 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32487  { (yyval.ulong_num)= (ulong) strtol((yyvsp[(1) - (1)].lex_str).str, (char**) 0, 16); }
32488  break;
32489 
32490  case 1567:
32491 
32492 /* Line 1455 of yacc.c */
32493 #line 11513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32494  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32495  break;
32496 
32497  case 1568:
32498 
32499 /* Line 1455 of yacc.c */
32500 #line 11514 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32501  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32502  break;
32503 
32504  case 1569:
32505 
32506 /* Line 1455 of yacc.c */
32507 #line 11515 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32508  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32509  break;
32510 
32511  case 1570:
32512 
32513 /* Line 1455 of yacc.c */
32514 #line 11516 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32515  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32516  break;
32517 
32518  case 1571:
32519 
32520 /* Line 1455 of yacc.c */
32521 #line 11520 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32522  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32523  break;
32524 
32525  case 1572:
32526 
32527 /* Line 1455 of yacc.c */
32528 #line 11521 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32529  { (yyval.ulong_num)= (ulong) strtol((yyvsp[(1) - (1)].lex_str).str, (char**) 0, 16); }
32530  break;
32531 
32532  case 1573:
32533 
32534 /* Line 1455 of yacc.c */
32535 #line 11522 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32536  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32537  break;
32538 
32539  case 1574:
32540 
32541 /* Line 1455 of yacc.c */
32542 #line 11523 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32543  { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32544  break;
32545 
32546  case 1575:
32547 
32548 /* Line 1455 of yacc.c */
32549 #line 11524 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32550  { MYSQL_YYABORT; }
32551  break;
32552 
32553  case 1576:
32554 
32555 /* Line 1455 of yacc.c */
32556 #line 11528 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32557  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32558  break;
32559 
32560  case 1577:
32561 
32562 /* Line 1455 of yacc.c */
32563 #line 11529 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32564  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32565  break;
32566 
32567  case 1578:
32568 
32569 /* Line 1455 of yacc.c */
32570 #line 11530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32571  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32572  break;
32573 
32574  case 1579:
32575 
32576 /* Line 1455 of yacc.c */
32577 #line 11531 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32578  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32579  break;
32580 
32581  case 1580:
32582 
32583 /* Line 1455 of yacc.c */
32584 #line 11532 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32585  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32586  break;
32587 
32588  case 1581:
32589 
32590 /* Line 1455 of yacc.c */
32591 #line 11536 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32592  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32593  break;
32594 
32595  case 1582:
32596 
32597 /* Line 1455 of yacc.c */
32598 #line 11537 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32599  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32600  break;
32601 
32602  case 1583:
32603 
32604 /* Line 1455 of yacc.c */
32605 #line 11538 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32606  { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
32607  break;
32608 
32609  case 1584:
32610 
32611 /* Line 1455 of yacc.c */
32612 #line 11539 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32613  { MYSQL_YYABORT; }
32614  break;
32615 
32616  case 1585:
32617 
32618 /* Line 1455 of yacc.c */
32619 #line 11544 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32620  { my_parse_error(ER(ER_ONLY_INTEGERS_ALLOWED)); }
32621  break;
32622 
32623  case 1589:
32624 
32625 /* Line 1455 of yacc.c */
32626 #line 11555 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32627  {
32628  LEX *lex= Lex;
32629 
32630  if (!lex->parsing_options.allows_select_procedure)
32631  {
32632  my_error(ER_VIEW_SELECT_CLAUSE, MYF(0), "PROCEDURE");
32633  MYSQL_YYABORT;
32634  }
32635 
32636  if (&lex->select_lex != lex->current_select)
32637  {
32638  my_error(ER_WRONG_USAGE, MYF(0), "PROCEDURE", "subquery");
32639  MYSQL_YYABORT;
32640  }
32641 
32642  if (lex->result != NULL)
32643  {
32644  my_error(ER_WRONG_USAGE, MYF(0), "PROCEDURE", "INTO");
32645  MYSQL_YYABORT;
32646  }
32647 
32648  if ((lex->proc_analyse= new Proc_analyse_params) == NULL)
32649  {
32650  my_error(ER_OUTOFMEMORY, MYF(ME_FATALERROR));
32651  MYSQL_YYABORT;
32652  }
32653 
32654  lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
32655  }
32656  break;
32657 
32658  case 1591:
32659 
32660 /* Line 1455 of yacc.c */
32661 #line 11588 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32662  {}
32663  break;
32664 
32665  case 1592:
32666 
32667 /* Line 1455 of yacc.c */
32668 #line 11590 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32669  {
32670  Lex->proc_analyse->max_tree_elements= (yyvsp[(1) - (1)].ulonglong_number);
32671  }
32672  break;
32673 
32674  case 1593:
32675 
32676 /* Line 1455 of yacc.c */
32677 #line 11594 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32678  {
32679  Lex->proc_analyse->max_tree_elements= (yyvsp[(1) - (3)].ulonglong_number);
32680  Lex->proc_analyse->max_treemem= (yyvsp[(3) - (3)].ulonglong_number);
32681  }
32682  break;
32683 
32684  case 1594:
32685 
32686 /* Line 1455 of yacc.c */
32687 #line 11602 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32688  {
32689  int error;
32690  (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error);
32691  if (error != 0)
32692  {
32693  my_error(ER_WRONG_PARAMETERS_TO_PROCEDURE, MYF(0), "ANALYSE");
32694  MYSQL_YYABORT;
32695  }
32696  }
32697  break;
32698 
32699  case 1595:
32700 
32701 /* Line 1455 of yacc.c */
32702 #line 11614 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32703  {
32704  LEX *lex=Lex;
32705  if (!lex->describe && (!(lex->result= new select_dumpvar())))
32706  MYSQL_YYABORT;
32707  }
32708  break;
32709 
32710  case 1596:
32711 
32712 /* Line 1455 of yacc.c */
32713 #line 11620 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32714  {}
32715  break;
32716 
32717  case 1598:
32718 
32719 /* Line 1455 of yacc.c */
32720 #line 11625 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32721  {}
32722  break;
32723 
32724  case 1599:
32725 
32726 /* Line 1455 of yacc.c */
32727 #line 11630 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32728  {
32729  LEX *lex=Lex;
32730  if (lex->result)
32731  {
32732  my_var *var= new my_var((yyvsp[(2) - (2)].lex_str),0,0,(enum_field_types)0);
32733  if (var == NULL)
32734  MYSQL_YYABORT;
32735  ((select_dumpvar *)lex->result)->var_list.push_back(var);
32736  }
32737  else
32738  {
32739  /*
32740  The parser won't create select_result instance only
32741  if it's an EXPLAIN.
32742  */
32743  DBUG_ASSERT(lex->describe);
32744  }
32745  }
32746  break;
32747 
32748  case 1600:
32749 
32750 /* Line 1455 of yacc.c */
32751 #line 11649 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32752  {
32753  LEX *lex= Lex;
32754 #ifndef DBUG_OFF
32755  sp_head *sp= lex->sphead;
32756 #endif
32757  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
32758  sp_variable *spv;
32759 
32760  if (!pctx || !(spv= pctx->find_variable((yyvsp[(1) - (1)].lex_str), false)))
32761  {
32762  my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[(1) - (1)].lex_str).str);
32763  MYSQL_YYABORT;
32764  }
32765  if (lex->result)
32766  {
32767  my_var *var= new my_var((yyvsp[(1) - (1)].lex_str), 1, spv->offset, spv->type);
32768 
32769  if (var == NULL)
32770  MYSQL_YYABORT;
32771 
32772  ((select_dumpvar *) lex->result)->var_list.push_back(var);
32773 
32774 #ifndef DBUG_OFF
32775  var->sp= sp;
32776 #endif
32777  }
32778  else
32779  {
32780  /*
32781  The parser won't create select_result instance only
32782  if it's an EXPLAIN.
32783  */
32784  DBUG_ASSERT(lex->describe);
32785  }
32786  }
32787  break;
32788 
32789  case 1601:
32790 
32791 /* Line 1455 of yacc.c */
32792 #line 11688 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32793  {
32794  if (! Lex->parsing_options.allows_select_into)
32795  {
32796  my_error(ER_VIEW_SELECT_CLAUSE, MYF(0), "INTO");
32797  MYSQL_YYABORT;
32798  }
32799  }
32800  break;
32801 
32802  case 1603:
32803 
32804 /* Line 1455 of yacc.c */
32805 #line 11700 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32806  {
32807  LEX *lex= Lex;
32808  lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
32809  if (!(lex->exchange= new sql_exchange((yyvsp[(2) - (2)].lex_str).str, 0)) ||
32810  !(lex->result= new select_export(lex->exchange)))
32811  MYSQL_YYABORT;
32812  }
32813  break;
32814 
32815  case 1604:
32816 
32817 /* Line 1455 of yacc.c */
32818 #line 11708 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32819  { Lex->exchange->cs= (yyvsp[(4) - (4)].charset); }
32820  break;
32821 
32822  case 1606:
32823 
32824 /* Line 1455 of yacc.c */
32825 #line 11711 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32826  {
32827  LEX *lex=Lex;
32828  if (!lex->describe)
32829  {
32830  lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
32831  if (!(lex->exchange= new sql_exchange((yyvsp[(2) - (2)].lex_str).str,1)))
32832  MYSQL_YYABORT;
32833  if (!(lex->result= new select_dump(lex->exchange)))
32834  MYSQL_YYABORT;
32835  }
32836  }
32837  break;
32838 
32839  case 1607:
32840 
32841 /* Line 1455 of yacc.c */
32842 #line 11723 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32843  {
32844  Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
32845  }
32846  break;
32847 
32848  case 1608:
32849 
32850 /* Line 1455 of yacc.c */
32851 #line 11734 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32852  {
32853  LEX *lex=Lex;
32854  lex->sql_command = SQLCOM_DO;
32855  mysql_init_select(lex);
32856  }
32857  break;
32858 
32859  case 1609:
32860 
32861 /* Line 1455 of yacc.c */
32862 #line 11740 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32863  {
32864  Lex->insert_list= (yyvsp[(3) - (3)].item_list);
32865  }
32866  break;
32867 
32868  case 1610:
32869 
32870 /* Line 1455 of yacc.c */
32871 #line 11751 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32872  {
32873  LEX *lex=Lex;
32874  lex->sql_command = SQLCOM_DROP_TABLE;
32875  lex->drop_temporary= (yyvsp[(2) - (4)].num);
32876  lex->drop_if_exists= (yyvsp[(4) - (4)].num);
32877  YYPS->m_lock_type= TL_UNLOCK;
32878  YYPS->m_mdl_type= MDL_EXCLUSIVE;
32879  }
32880  break;
32881 
32882  case 1611:
32883 
32884 /* Line 1455 of yacc.c */
32885 #line 11760 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32886  {}
32887  break;
32888 
32889  case 1612:
32890 
32891 /* Line 1455 of yacc.c */
32892 #line 11761 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32893  {}
32894  break;
32895 
32896  case 1613:
32897 
32898 /* Line 1455 of yacc.c */
32899 #line 11762 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32900  {
32901  LEX *lex=Lex;
32902  Alter_drop *ad= new Alter_drop(Alter_drop::KEY, (yyvsp[(3) - (6)].lex_str).str);
32903  if (ad == NULL)
32904  MYSQL_YYABORT;
32905  lex->sql_command= SQLCOM_DROP_INDEX;
32906  lex->alter_info.reset();
32907  lex->alter_info.flags= Alter_info::ALTER_DROP_INDEX;
32908  lex->alter_info.drop_list.push_back(ad);
32909  if (!lex->current_select->add_table_to_list(lex->thd, (yyvsp[(5) - (6)].table), NULL,
32910  TL_OPTION_UPDATING,
32911  TL_READ_NO_INSERT,
32912  MDL_SHARED_UPGRADABLE))
32913  MYSQL_YYABORT;
32914  }
32915  break;
32916 
32917  case 1614:
32918 
32919 /* Line 1455 of yacc.c */
32920 #line 11777 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32921  {}
32922  break;
32923 
32924  case 1615:
32925 
32926 /* Line 1455 of yacc.c */
32927 #line 11779 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32928  {
32929  LEX *lex=Lex;
32930  lex->sql_command= SQLCOM_DROP_DB;
32931  lex->drop_if_exists=(yyvsp[(3) - (4)].num);
32932  lex->name= (yyvsp[(4) - (4)].lex_str);
32933  }
32934  break;
32935 
32936  case 1616:
32937 
32938 /* Line 1455 of yacc.c */
32939 #line 11786 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32940  {
32941  THD *thd= YYTHD;
32942  LEX *lex= thd->lex;
32943  sp_name *spname;
32944  if ((yyvsp[(4) - (6)].lex_str).str &&
32945  (check_and_convert_db_name(&(yyvsp[(4) - (6)].lex_str), FALSE) != IDENT_NAME_OK))
32946  MYSQL_YYABORT;
32947  if (lex->sphead)
32948  {
32949  my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION");
32950  MYSQL_YYABORT;
32951  }
32952  lex->sql_command = SQLCOM_DROP_FUNCTION;
32953  lex->drop_if_exists= (yyvsp[(3) - (6)].num);
32954  spname= new sp_name((yyvsp[(4) - (6)].lex_str), (yyvsp[(6) - (6)].lex_str), true);
32955  if (spname == NULL)
32956  MYSQL_YYABORT;
32957  spname->init_qname(thd);
32958  lex->spname= spname;
32959  }
32960  break;
32961 
32962  case 1617:
32963 
32964 /* Line 1455 of yacc.c */
32965 #line 11807 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32966  {
32967  THD *thd= YYTHD;
32968  LEX *lex= thd->lex;
32969  LEX_STRING db= {0, 0};
32970  sp_name *spname;
32971  if (lex->sphead)
32972  {
32973  my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION");
32974  MYSQL_YYABORT;
32975  }
32976  if (thd->db && lex->copy_db_to(&db.str, &db.length))
32977  MYSQL_YYABORT;
32978  lex->sql_command = SQLCOM_DROP_FUNCTION;
32979  lex->drop_if_exists= (yyvsp[(3) - (4)].num);
32980  spname= new sp_name(db, (yyvsp[(4) - (4)].lex_str), false);
32981  if (spname == NULL)
32982  MYSQL_YYABORT;
32983  spname->init_qname(thd);
32984  lex->spname= spname;
32985  }
32986  break;
32987 
32988  case 1618:
32989 
32990 /* Line 1455 of yacc.c */
32991 #line 11828 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
32992  {
32993  LEX *lex=Lex;
32994  if (lex->sphead)
32995  {
32996  my_error(ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE");
32997  MYSQL_YYABORT;
32998  }
32999  lex->sql_command = SQLCOM_DROP_PROCEDURE;
33000  lex->drop_if_exists= (yyvsp[(3) - (4)].num);
33001  lex->spname= (yyvsp[(4) - (4)].spname);
33002  }
33003  break;
33004 
33005  case 1619:
33006 
33007 /* Line 1455 of yacc.c */
33008 #line 11840 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33009  {
33010  Lex->sql_command = SQLCOM_DROP_USER;
33011  }
33012  break;
33013 
33014  case 1620:
33015 
33016 /* Line 1455 of yacc.c */
33017 #line 11844 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33018  {
33019  LEX *lex= Lex;
33020  lex->sql_command= SQLCOM_DROP_VIEW;
33021  lex->drop_if_exists= (yyvsp[(3) - (3)].num);
33022  YYPS->m_lock_type= TL_UNLOCK;
33023  YYPS->m_mdl_type= MDL_EXCLUSIVE;
33024  }
33025  break;
33026 
33027  case 1621:
33028 
33029 /* Line 1455 of yacc.c */
33030 #line 11852 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33031  {}
33032  break;
33033 
33034  case 1622:
33035 
33036 /* Line 1455 of yacc.c */
33037 #line 11854 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33038  {
33039  Lex->drop_if_exists= (yyvsp[(3) - (4)].num);
33040  Lex->spname= (yyvsp[(4) - (4)].spname);
33041  Lex->sql_command = SQLCOM_DROP_EVENT;
33042  }
33043  break;
33044 
33045  case 1623:
33046 
33047 /* Line 1455 of yacc.c */
33048 #line 11860 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33049  {
33050  LEX *lex= Lex;
33051  lex->sql_command= SQLCOM_DROP_TRIGGER;
33052  lex->drop_if_exists= (yyvsp[(3) - (4)].num);
33053  lex->spname= (yyvsp[(4) - (4)].spname);
33054  }
33055  break;
33056 
33057  case 1624:
33058 
33059 /* Line 1455 of yacc.c */
33060 #line 11867 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33061  {
33062  LEX *lex= Lex;
33063  lex->alter_tablespace_info->ts_cmd_type= DROP_TABLESPACE;
33064  }
33065  break;
33066 
33067  case 1625:
33068 
33069 /* Line 1455 of yacc.c */
33070 #line 11872 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33071  {
33072  LEX *lex= Lex;
33073  lex->alter_tablespace_info->ts_cmd_type= DROP_LOGFILE_GROUP;
33074  }
33075  break;
33076 
33077  case 1626:
33078 
33079 /* Line 1455 of yacc.c */
33080 #line 11877 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33081  {
33082  Lex->sql_command = SQLCOM_DROP_SERVER;
33083  Lex->drop_if_exists= (yyvsp[(3) - (4)].num);
33084  Lex->server_options.server_name= (yyvsp[(4) - (4)].lex_str).str;
33085  Lex->server_options.server_name_length= (yyvsp[(4) - (4)].lex_str).length;
33086  }
33087  break;
33088 
33089  case 1629:
33090 
33091 /* Line 1455 of yacc.c */
33092 #line 11892 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33093  {
33094  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (1)].table), NULL,
33095  TL_OPTION_UPDATING,
33096  YYPS->m_lock_type,
33097  YYPS->m_mdl_type))
33098  MYSQL_YYABORT;
33099  }
33100  break;
33101 
33102  case 1630:
33103 
33104 /* Line 1455 of yacc.c */
33105 #line 11903 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33106  {
33107  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (2)].table), NULL,
33108  TL_OPTION_UPDATING,
33109  YYPS->m_lock_type,
33110  YYPS->m_mdl_type,
33111  NULL,
33112  (yyvsp[(2) - (2)].string_list)))
33113  MYSQL_YYABORT;
33114  }
33115  break;
33116 
33117  case 1633:
33118 
33119 /* Line 1455 of yacc.c */
33120 #line 11921 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33121  {
33122  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (1)].table), NULL,
33123  TL_OPTION_UPDATING | TL_OPTION_ALIAS,
33124  YYPS->m_lock_type,
33125  YYPS->m_mdl_type))
33126  MYSQL_YYABORT;
33127  }
33128  break;
33129 
33130  case 1634:
33131 
33132 /* Line 1455 of yacc.c */
33133 #line 11931 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33134  { (yyval.num)= 0; }
33135  break;
33136 
33137  case 1635:
33138 
33139 /* Line 1455 of yacc.c */
33140 #line 11932 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33141  { (yyval.num)= 1; }
33142  break;
33143 
33144  case 1636:
33145 
33146 /* Line 1455 of yacc.c */
33147 #line 11936 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33148  { (yyval.num)= 0; }
33149  break;
33150 
33151  case 1637:
33152 
33153 /* Line 1455 of yacc.c */
33154 #line 11937 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33155  { (yyval.num)= 1; }
33156  break;
33157 
33158  case 1645:
33159 
33160 /* Line 1455 of yacc.c */
33161 #line 11960 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33162  {
33163  LEX *lex= Lex;
33164  lex->sql_command= SQLCOM_INSERT;
33165  lex->duplicates= DUP_ERROR;
33166  mysql_init_select(lex);
33167  }
33168  break;
33169 
33170  case 1646:
33171 
33172 /* Line 1455 of yacc.c */
33173 #line 11968 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33174  {
33175  Select->set_lock_for_tables((yyvsp[(3) - (5)].lock_type));
33176  Lex->current_select= &Lex->select_lex;
33177  }
33178  break;
33179 
33180  case 1647:
33181 
33182 /* Line 1455 of yacc.c */
33183 #line 11973 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33184  {}
33185  break;
33186 
33187  case 1648:
33188 
33189 /* Line 1455 of yacc.c */
33190 #line 11978 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33191  {
33192  LEX *lex=Lex;
33193  lex->sql_command = SQLCOM_REPLACE;
33194  lex->duplicates= DUP_REPLACE;
33195  mysql_init_select(lex);
33196  }
33197  break;
33198 
33199  case 1649:
33200 
33201 /* Line 1455 of yacc.c */
33202 #line 11985 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33203  {
33204  Select->set_lock_for_tables((yyvsp[(3) - (4)].lock_type));
33205  Lex->current_select= &Lex->select_lex;
33206  }
33207  break;
33208 
33209  case 1650:
33210 
33211 /* Line 1455 of yacc.c */
33212 #line 11990 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33213  {}
33214  break;
33215 
33216  case 1651:
33217 
33218 /* Line 1455 of yacc.c */
33219 #line 11995 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33220  {
33221 #ifdef HAVE_QUERY_CACHE
33222  /*
33223  If it is SP we do not allow insert optimisation whan result of
33224  insert visible only after the table unlocking but everyone can
33225  read table.
33226  */
33227  (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
33228 #else
33229  (yyval.lock_type)= TL_WRITE_CONCURRENT_INSERT;
33230 #endif
33231  }
33232  break;
33233 
33234  case 1652:
33235 
33236 /* Line 1455 of yacc.c */
33237 #line 12007 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33238  { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
33239  break;
33240 
33241  case 1653:
33242 
33243 /* Line 1455 of yacc.c */
33244 #line 12009 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33245  {
33246  Lex->keyword_delayed_begin_offset= (uint)(YYLIP->get_tok_start() -
33247  YYTHD->query());
33248  Lex->keyword_delayed_end_offset= Lex->keyword_delayed_begin_offset +
33249  YYLIP->yyLength() + 1;
33250  (yyval.lock_type)= TL_WRITE_DELAYED;
33251 
33252  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
33253  ER_WARN_DEPRECATED_SYNTAX,
33254  ER(ER_WARN_DEPRECATED_SYNTAX),
33255  "INSERT DELAYED", "INSERT");
33256  }
33257  break;
33258 
33259  case 1654:
33260 
33261 /* Line 1455 of yacc.c */
33262 #line 12021 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33263  { (yyval.lock_type)= TL_WRITE; }
33264  break;
33265 
33266  case 1655:
33267 
33268 /* Line 1455 of yacc.c */
33269 #line 12025 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33270  { (yyval.lock_type)= (yyvsp[(1) - (1)].lock_type); }
33271  break;
33272 
33273  case 1656:
33274 
33275 /* Line 1455 of yacc.c */
33276 #line 12027 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33277  {
33278  Lex->keyword_delayed_begin_offset= (uint)(YYLIP->get_tok_start() -
33279  YYTHD->query());
33280  Lex->keyword_delayed_end_offset= Lex->keyword_delayed_begin_offset +
33281  YYLIP->yyLength() + 1;
33282  (yyval.lock_type)= TL_WRITE_DELAYED;
33283 
33284  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
33285  ER_WARN_DEPRECATED_SYNTAX,
33286  ER(ER_WARN_DEPRECATED_SYNTAX),
33287  "REPLACE DELAYED", "REPLACE");
33288  }
33289  break;
33290 
33291  case 1657:
33292 
33293 /* Line 1455 of yacc.c */
33294 #line 12042 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33295  {}
33296  break;
33297 
33298  case 1658:
33299 
33300 /* Line 1455 of yacc.c */
33301 #line 12043 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33302  {}
33303  break;
33304 
33305  case 1659:
33306 
33307 /* Line 1455 of yacc.c */
33308 #line 12048 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33309  {
33310  LEX *lex=Lex;
33311  lex->field_list.empty();
33312  lex->many_values.empty();
33313  lex->insert_list=0;
33314  }
33315  break;
33316 
33317  case 1660:
33318 
33319 /* Line 1455 of yacc.c */
33320 #line 12056 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33321  {}
33322  break;
33323 
33324  case 1661:
33325 
33326 /* Line 1455 of yacc.c */
33327 #line 12057 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33328  {}
33329  break;
33330 
33331  case 1662:
33332 
33333 /* Line 1455 of yacc.c */
33334 #line 12058 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33335  {}
33336  break;
33337 
33338  case 1663:
33339 
33340 /* Line 1455 of yacc.c */
33341 #line 12060 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33342  {
33343  LEX *lex=Lex;
33344  if (!(lex->insert_list = new List_item) ||
33345  lex->many_values.push_back(lex->insert_list))
33346  MYSQL_YYABORT;
33347  }
33348  break;
33349 
33350  case 1665:
33351 
33352 /* Line 1455 of yacc.c */
33353 #line 12070 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33354  { Lex->field_list.push_back((yyvsp[(3) - (3)].item)); }
33355  break;
33356 
33357  case 1666:
33358 
33359 /* Line 1455 of yacc.c */
33360 #line 12071 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33361  { Lex->field_list.push_back((yyvsp[(1) - (1)].item)); }
33362  break;
33363 
33364  case 1667:
33365 
33366 /* Line 1455 of yacc.c */
33367 #line 12075 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33368  {}
33369  break;
33370 
33371  case 1668:
33372 
33373 /* Line 1455 of yacc.c */
33374 #line 12076 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33375  {}
33376  break;
33377 
33378  case 1669:
33379 
33380 /* Line 1455 of yacc.c */
33381 #line 12078 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33382  { Select->set_braces(0);}
33383  break;
33384 
33385  case 1670:
33386 
33387 /* Line 1455 of yacc.c */
33388 #line 12079 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33389  {}
33390  break;
33391 
33392  case 1671:
33393 
33394 /* Line 1455 of yacc.c */
33395 #line 12081 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33396  { Select->set_braces(1);}
33397  break;
33398 
33399  case 1672:
33400 
33401 /* Line 1455 of yacc.c */
33402 #line 12082 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33403  {}
33404  break;
33405 
33406  case 1677:
33407 
33408 /* Line 1455 of yacc.c */
33409 #line 12097 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33410  {
33411  LEX *lex=Lex;
33412  if (lex->field_list.push_back((yyvsp[(1) - (3)].item)) ||
33413  lex->insert_list->push_back((yyvsp[(3) - (3)].item)))
33414  MYSQL_YYABORT;
33415  }
33416  break;
33417 
33418  case 1678:
33419 
33420 /* Line 1455 of yacc.c */
33421 #line 12106 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33422  {}
33423  break;
33424 
33425  case 1679:
33426 
33427 /* Line 1455 of yacc.c */
33428 #line 12107 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33429  {}
33430  break;
33431 
33432  case 1680:
33433 
33434 /* Line 1455 of yacc.c */
33435 #line 12111 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33436  {}
33437  break;
33438 
33439  case 1681:
33440 
33441 /* Line 1455 of yacc.c */
33442 #line 12112 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33443  {}
33444  break;
33445 
33446  case 1682:
33447 
33448 /* Line 1455 of yacc.c */
33449 #line 12117 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33450  {
33451  if (!(Lex->insert_list = new List_item))
33452  MYSQL_YYABORT;
33453  }
33454  break;
33455 
33456  case 1683:
33457 
33458 /* Line 1455 of yacc.c */
33459 #line 12122 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33460  {
33461  LEX *lex=Lex;
33462  if (lex->many_values.push_back(lex->insert_list))
33463  MYSQL_YYABORT;
33464  }
33465  break;
33466 
33467  case 1684:
33468 
33469 /* Line 1455 of yacc.c */
33470 #line 12130 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33471  {}
33472  break;
33473 
33474  case 1686:
33475 
33476 /* Line 1455 of yacc.c */
33477 #line 12136 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33478  {
33479  if (Lex->insert_list->push_back((yyvsp[(3) - (3)].item)))
33480  MYSQL_YYABORT;
33481  }
33482  break;
33483 
33484  case 1687:
33485 
33486 /* Line 1455 of yacc.c */
33487 #line 12141 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33488  {
33489  if (Lex->insert_list->push_back((yyvsp[(1) - (1)].item)))
33490  MYSQL_YYABORT;
33491  }
33492  break;
33493 
33494  case 1688:
33495 
33496 /* Line 1455 of yacc.c */
33497 #line 12148 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33498  { (yyval.item)= (yyvsp[(1) - (1)].item);}
33499  break;
33500 
33501  case 1689:
33502 
33503 /* Line 1455 of yacc.c */
33504 #line 12150 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33505  {
33506  (yyval.item)= new (YYTHD->mem_root) Item_default_value(Lex->current_context());
33507  if ((yyval.item) == NULL)
33508  MYSQL_YYABORT;
33509  }
33510  break;
33511 
33512  case 1691:
33513 
33514 /* Line 1455 of yacc.c */
33515 #line 12159 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33516  { Lex->duplicates= DUP_UPDATE; }
33517  break;
33518 
33519  case 1693:
33520 
33521 /* Line 1455 of yacc.c */
33522 #line 12167 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33523  {
33524  LEX *lex= Lex;
33525  mysql_init_select(lex);
33526  lex->sql_command= SQLCOM_UPDATE;
33527  lex->duplicates= DUP_ERROR;
33528  }
33529  break;
33530 
33531  case 1694:
33532 
33533 /* Line 1455 of yacc.c */
33534 #line 12175 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33535  {
33536  LEX *lex= Lex;
33537  if (lex->select_lex.table_list.elements > 1)
33538  lex->sql_command= SQLCOM_UPDATE_MULTI;
33539  else if (lex->select_lex.get_table_list()->derived)
33540  {
33541  /* it is single table update and it is update of derived table */
33542  my_error(ER_NON_UPDATABLE_TABLE, MYF(0),
33543  lex->select_lex.get_table_list()->alias, "UPDATE");
33544  MYSQL_YYABORT;
33545  }
33546  /*
33547  In case of multi-update setting write lock for all tables may
33548  be too pessimistic. We will decrease lock level if possible in
33549  mysql_multi_update().
33550  */
33551  Select->set_lock_for_tables((yyvsp[(3) - (7)].lock_type));
33552  }
33553  break;
33554 
33555  case 1695:
33556 
33557 /* Line 1455 of yacc.c */
33558 #line 12193 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33559  {}
33560  break;
33561 
33562  case 1698:
33563 
33564 /* Line 1455 of yacc.c */
33565 #line 12203 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33566  {
33567  if (add_item_to_list(YYTHD, (yyvsp[(1) - (3)].item)) || add_value_to_list(YYTHD, (yyvsp[(3) - (3)].item)))
33568  MYSQL_YYABORT;
33569  }
33570  break;
33571 
33572  case 1701:
33573 
33574 /* Line 1455 of yacc.c */
33575 #line 12216 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33576  {
33577  LEX *lex= Lex;
33578  if (lex->update_list.push_back((yyvsp[(1) - (3)].item)) ||
33579  lex->value_list.push_back((yyvsp[(3) - (3)].item)))
33580  MYSQL_YYABORT;
33581  }
33582  break;
33583 
33584  case 1702:
33585 
33586 /* Line 1455 of yacc.c */
33587 #line 12225 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33588  { (yyval.lock_type)= TL_WRITE_DEFAULT; }
33589  break;
33590 
33591  case 1703:
33592 
33593 /* Line 1455 of yacc.c */
33594 #line 12226 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33595  { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
33596  break;
33597 
33598  case 1704:
33599 
33600 /* Line 1455 of yacc.c */
33601 #line 12233 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33602  {
33603  LEX *lex= Lex;
33604  lex->sql_command= SQLCOM_DELETE;
33605  mysql_init_select(lex);
33606  YYPS->m_lock_type= TL_WRITE_DEFAULT;
33607  YYPS->m_mdl_type= MDL_SHARED_WRITE;
33608 
33609  lex->ignore= 0;
33610  lex->select_lex.init_order();
33611  }
33612  break;
33613 
33614  case 1706:
33615 
33616 /* Line 1455 of yacc.c */
33617 #line 12248 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33618  {
33619  if (!Select->add_table_to_list(YYTHD, (yyvsp[(2) - (3)].table), NULL, TL_OPTION_UPDATING,
33620  YYPS->m_lock_type,
33621  YYPS->m_mdl_type,
33622  NULL,
33623  (yyvsp[(3) - (3)].string_list)))
33624  MYSQL_YYABORT;
33625  YYPS->m_lock_type= TL_READ_DEFAULT;
33626  YYPS->m_mdl_type= MDL_SHARED_READ;
33627  }
33628  break;
33629 
33630  case 1707:
33631 
33632 /* Line 1455 of yacc.c */
33633 #line 12259 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33634  {}
33635  break;
33636 
33637  case 1708:
33638 
33639 /* Line 1455 of yacc.c */
33640 #line 12261 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33641  {
33642  mysql_init_multi_delete(Lex);
33643  YYPS->m_lock_type= TL_READ_DEFAULT;
33644  YYPS->m_mdl_type= MDL_SHARED_READ;
33645  }
33646  break;
33647 
33648  case 1709:
33649 
33650 /* Line 1455 of yacc.c */
33651 #line 12267 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33652  {
33654  MYSQL_YYABORT;
33655  }
33656  break;
33657 
33658  case 1710:
33659 
33660 /* Line 1455 of yacc.c */
33661 #line 12272 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33662  {
33663  mysql_init_multi_delete(Lex);
33664  YYPS->m_lock_type= TL_READ_DEFAULT;
33665  YYPS->m_mdl_type= MDL_SHARED_READ;
33666  }
33667  break;
33668 
33669  case 1711:
33670 
33671 /* Line 1455 of yacc.c */
33672 #line 12278 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33673  {
33675  MYSQL_YYABORT;
33676  }
33677  break;
33678 
33679  case 1714:
33680 
33681 /* Line 1455 of yacc.c */
33682 #line 12291 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33683  {
33684  Table_ident *ti= new Table_ident((yyvsp[(1) - (2)].lex_str));
33685  if (ti == NULL)
33686  MYSQL_YYABORT;
33687  if (!Select->add_table_to_list(YYTHD,
33688  ti,
33689  NULL,
33690  TL_OPTION_UPDATING | TL_OPTION_ALIAS,
33691  YYPS->m_lock_type,
33692  YYPS->m_mdl_type))
33693  MYSQL_YYABORT;
33694  }
33695  break;
33696 
33697  case 1715:
33698 
33699 /* Line 1455 of yacc.c */
33700 #line 12304 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33701  {
33702  Table_ident *ti= new Table_ident(YYTHD, (yyvsp[(1) - (4)].lex_str), (yyvsp[(3) - (4)].lex_str), 0);
33703  if (ti == NULL)
33704  MYSQL_YYABORT;
33705  if (!Select->add_table_to_list(YYTHD,
33706  ti,
33707  NULL,
33708  TL_OPTION_UPDATING | TL_OPTION_ALIAS,
33709  YYPS->m_lock_type,
33710  YYPS->m_mdl_type))
33711  MYSQL_YYABORT;
33712  }
33713  break;
33714 
33715  case 1716:
33716 
33717 /* Line 1455 of yacc.c */
33718 #line 12319 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33719  {}
33720  break;
33721 
33722  case 1717:
33723 
33724 /* Line 1455 of yacc.c */
33725 #line 12320 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33726  {}
33727  break;
33728 
33729  case 1718:
33730 
33731 /* Line 1455 of yacc.c */
33732 #line 12324 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33733  {}
33734  break;
33735 
33736  case 1719:
33737 
33738 /* Line 1455 of yacc.c */
33739 #line 12325 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33740  {}
33741  break;
33742 
33743  case 1720:
33744 
33745 /* Line 1455 of yacc.c */
33746 #line 12329 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33747  { Select->options|= OPTION_QUICK; }
33748  break;
33749 
33750  case 1721:
33751 
33752 /* Line 1455 of yacc.c */
33753 #line 12330 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33754  { YYPS->m_lock_type= TL_WRITE_LOW_PRIORITY; }
33755  break;
33756 
33757  case 1722:
33758 
33759 /* Line 1455 of yacc.c */
33760 #line 12331 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33761  { Lex->ignore= 1; }
33762  break;
33763 
33764  case 1723:
33765 
33766 /* Line 1455 of yacc.c */
33767 #line 12336 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33768  {
33769  LEX* lex= Lex;
33770  lex->sql_command= SQLCOM_TRUNCATE;
33771  lex->alter_info.reset();
33772  lex->select_lex.options= 0;
33773  lex->select_lex.sql_cache= SELECT_LEX::SQL_CACHE_UNSPECIFIED;
33774  lex->select_lex.init_order();
33775  YYPS->m_lock_type= TL_WRITE;
33776  YYPS->m_mdl_type= MDL_EXCLUSIVE;
33777  }
33778  break;
33779 
33780  case 1724:
33781 
33782 /* Line 1455 of yacc.c */
33783 #line 12347 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33784  {
33785  THD *thd= YYTHD;
33786  LEX* lex= thd->lex;
33787  DBUG_ASSERT(!lex->m_sql_cmd);
33788  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_truncate_table();
33789  if (lex->m_sql_cmd == NULL)
33790  MYSQL_YYABORT;
33791  }
33792  break;
33793 
33794  case 1731:
33795 
33796 /* Line 1455 of yacc.c */
33797 #line 12372 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33798  {
33799  Lex->profile_options|= PROFILE_CPU;
33800  }
33801  break;
33802 
33803  case 1732:
33804 
33805 /* Line 1455 of yacc.c */
33806 #line 12376 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33807  {
33808  Lex->profile_options|= PROFILE_MEMORY;
33809  }
33810  break;
33811 
33812  case 1733:
33813 
33814 /* Line 1455 of yacc.c */
33815 #line 12380 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33816  {
33817  Lex->profile_options|= PROFILE_BLOCK_IO;
33818  }
33819  break;
33820 
33821  case 1734:
33822 
33823 /* Line 1455 of yacc.c */
33824 #line 12384 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33825  {
33826  Lex->profile_options|= PROFILE_CONTEXT;
33827  }
33828  break;
33829 
33830  case 1735:
33831 
33832 /* Line 1455 of yacc.c */
33833 #line 12388 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33834  {
33835  Lex->profile_options|= PROFILE_PAGE_FAULTS;
33836  }
33837  break;
33838 
33839  case 1736:
33840 
33841 /* Line 1455 of yacc.c */
33842 #line 12392 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33843  {
33844  Lex->profile_options|= PROFILE_IPC;
33845  }
33846  break;
33847 
33848  case 1737:
33849 
33850 /* Line 1455 of yacc.c */
33851 #line 12396 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33852  {
33853  Lex->profile_options|= PROFILE_SWAPS;
33854  }
33855  break;
33856 
33857  case 1738:
33858 
33859 /* Line 1455 of yacc.c */
33860 #line 12400 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33861  {
33862  Lex->profile_options|= PROFILE_SOURCE;
33863  }
33864  break;
33865 
33866  case 1739:
33867 
33868 /* Line 1455 of yacc.c */
33869 #line 12404 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33870  {
33871  Lex->profile_options|= PROFILE_ALL;
33872  }
33873  break;
33874 
33875  case 1740:
33876 
33877 /* Line 1455 of yacc.c */
33878 #line 12411 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33879  {
33880  Lex->profile_query_id= 0;
33881  }
33882  break;
33883 
33884  case 1741:
33885 
33886 /* Line 1455 of yacc.c */
33887 #line 12415 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33888  {
33889  Lex->profile_query_id= atoi((yyvsp[(3) - (3)].lex_str).str);
33890  }
33891  break;
33892 
33893  case 1742:
33894 
33895 /* Line 1455 of yacc.c */
33896 #line 12424 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33897  {
33898  LEX *lex=Lex;
33899  lex->wild=0;
33900  mysql_init_select(lex);
33901  lex->current_select->parsing_place= SELECT_LIST;
33902  memset(&lex->create_info, 0, sizeof(lex->create_info));
33903  }
33904  break;
33905 
33906  case 1743:
33907 
33908 /* Line 1455 of yacc.c */
33909 #line 12432 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33910  {
33911  Select->parsing_place= NO_MATTER;
33912  }
33913  break;
33914 
33915  case 1744:
33916 
33917 /* Line 1455 of yacc.c */
33918 #line 12439 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33919  {
33920  LEX *lex= Lex;
33921  lex->sql_command= SQLCOM_SHOW_DATABASES;
33922  if (prepare_schema_table(YYTHD, lex, 0, SCH_SCHEMATA))
33923  MYSQL_YYABORT;
33924  }
33925  break;
33926 
33927  case 1745:
33928 
33929 /* Line 1455 of yacc.c */
33930 #line 12446 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33931  {
33932  LEX *lex= Lex;
33933  lex->sql_command= SQLCOM_SHOW_TABLES;
33934  lex->select_lex.db= (yyvsp[(3) - (4)].simple_string);
33935  if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLE_NAMES))
33936  MYSQL_YYABORT;
33937  }
33938  break;
33939 
33940  case 1746:
33941 
33942 /* Line 1455 of yacc.c */
33943 #line 12454 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33944  {
33945  LEX *lex= Lex;
33946  lex->sql_command= SQLCOM_SHOW_TRIGGERS;
33947  lex->select_lex.db= (yyvsp[(3) - (4)].simple_string);
33948  if (prepare_schema_table(YYTHD, lex, 0, SCH_TRIGGERS))
33949  MYSQL_YYABORT;
33950  }
33951  break;
33952 
33953  case 1747:
33954 
33955 /* Line 1455 of yacc.c */
33956 #line 12462 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33957  {
33958  LEX *lex= Lex;
33959  lex->sql_command= SQLCOM_SHOW_EVENTS;
33960  lex->select_lex.db= (yyvsp[(2) - (3)].simple_string);
33961  if (prepare_schema_table(YYTHD, lex, 0, SCH_EVENTS))
33962  MYSQL_YYABORT;
33963  }
33964  break;
33965 
33966  case 1748:
33967 
33968 /* Line 1455 of yacc.c */
33969 #line 12470 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33970  {
33971  LEX *lex= Lex;
33972  lex->sql_command= SQLCOM_SHOW_TABLE_STATUS;
33973  lex->select_lex.db= (yyvsp[(3) - (4)].simple_string);
33974  if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLES))
33975  MYSQL_YYABORT;
33976  }
33977  break;
33978 
33979  case 1749:
33980 
33981 /* Line 1455 of yacc.c */
33982 #line 12478 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33983  {
33984  LEX *lex= Lex;
33985  lex->sql_command= SQLCOM_SHOW_OPEN_TABLES;
33986  lex->select_lex.db= (yyvsp[(3) - (4)].simple_string);
33987  if (prepare_schema_table(YYTHD, lex, 0, SCH_OPEN_TABLES))
33988  MYSQL_YYABORT;
33989  }
33990  break;
33991 
33992  case 1750:
33993 
33994 /* Line 1455 of yacc.c */
33995 #line 12486 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
33996  {
33997  LEX *lex= Lex;
33998  lex->sql_command= SQLCOM_SHOW_PLUGINS;
33999  if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS))
34000  MYSQL_YYABORT;
34001  }
34002  break;
34003 
34004  case 1751:
34005 
34006 /* Line 1455 of yacc.c */
34007 #line 12493 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34008  { Lex->create_info.db_type= (yyvsp[(2) - (3)].db_type); }
34009  break;
34010 
34011  case 1752:
34012 
34013 /* Line 1455 of yacc.c */
34014 #line 12495 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34015  { Lex->create_info.db_type= NULL; }
34016  break;
34017 
34018  case 1753:
34019 
34020 /* Line 1455 of yacc.c */
34021 #line 12497 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34022  {
34023  LEX *lex= Lex;
34024  lex->sql_command= SQLCOM_SHOW_FIELDS;
34025  if ((yyvsp[(5) - (6)].simple_string))
34026  (yyvsp[(4) - (6)].table)->change_db((yyvsp[(5) - (6)].simple_string));
34027  if (prepare_schema_table(YYTHD, lex, (yyvsp[(4) - (6)].table), SCH_COLUMNS))
34028  MYSQL_YYABORT;
34029  }
34030  break;
34031 
34032  case 1754:
34033 
34034 /* Line 1455 of yacc.c */
34035 #line 12506 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34036  {
34037  Lex->sql_command = SQLCOM_SHOW_BINLOGS;
34038  }
34039  break;
34040 
34041  case 1755:
34042 
34043 /* Line 1455 of yacc.c */
34044 #line 12510 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34045  {
34046  Lex->sql_command = SQLCOM_SHOW_SLAVE_HOSTS;
34047  }
34048  break;
34049 
34050  case 1756:
34051 
34052 /* Line 1455 of yacc.c */
34053 #line 12514 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34054  {
34055  LEX *lex= Lex;
34056  lex->sql_command= SQLCOM_SHOW_BINLOG_EVENTS;
34057  }
34058  break;
34059 
34060  case 1758:
34061 
34062 /* Line 1455 of yacc.c */
34063 #line 12519 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34064  {
34065  LEX *lex= Lex;
34066  lex->sql_command= SQLCOM_SHOW_RELAYLOG_EVENTS;
34067  }
34068  break;
34069 
34070  case 1760:
34071 
34072 /* Line 1455 of yacc.c */
34073 #line 12524 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34074  {
34075  LEX *lex= Lex;
34076  lex->sql_command= SQLCOM_SHOW_KEYS;
34077  if ((yyvsp[(4) - (5)].simple_string))
34078  (yyvsp[(3) - (5)].table)->change_db((yyvsp[(4) - (5)].simple_string));
34079  if (prepare_schema_table(YYTHD, lex, (yyvsp[(3) - (5)].table), SCH_STATISTICS))
34080  MYSQL_YYABORT;
34081  }
34082  break;
34083 
34084  case 1761:
34085 
34086 /* Line 1455 of yacc.c */
34087 #line 12533 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34088  {
34089  LEX *lex=Lex;
34090  lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES;
34091  if (prepare_schema_table(YYTHD, lex, 0, SCH_ENGINES))
34092  MYSQL_YYABORT;
34093  }
34094  break;
34095 
34096  case 1762:
34097 
34098 /* Line 1455 of yacc.c */
34099 #line 12540 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34100  {
34101  LEX *lex=Lex;
34102  lex->sql_command= SQLCOM_SHOW_PRIVILEGES;
34103  }
34104  break;
34105 
34106  case 1763:
34107 
34108 /* Line 1455 of yacc.c */
34109 #line 12545 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34110  { (void) create_select_for_variable("warning_count"); }
34111  break;
34112 
34113  case 1764:
34114 
34115 /* Line 1455 of yacc.c */
34116 #line 12547 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34117  { (void) create_select_for_variable("error_count"); }
34118  break;
34119 
34120  case 1765:
34121 
34122 /* Line 1455 of yacc.c */
34123 #line 12549 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34124  { Lex->sql_command = SQLCOM_SHOW_WARNS;}
34125  break;
34126 
34127  case 1766:
34128 
34129 /* Line 1455 of yacc.c */
34130 #line 12551 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34131  { Lex->sql_command = SQLCOM_SHOW_ERRORS;}
34132  break;
34133 
34134  case 1767:
34135 
34136 /* Line 1455 of yacc.c */
34137 #line 12553 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34138  {
34139  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
34140  ER_WARN_DEPRECATED_SYNTAX,
34141  ER(ER_WARN_DEPRECATED_SYNTAX),
34142  "SHOW PROFILES", "Performance Schema");
34143  Lex->sql_command = SQLCOM_SHOW_PROFILES;
34144  }
34145  break;
34146 
34147  case 1768:
34148 
34149 /* Line 1455 of yacc.c */
34150 #line 12561 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34151  {
34152  push_warning_printf(YYTHD, Sql_condition::WARN_LEVEL_WARN,
34153  ER_WARN_DEPRECATED_SYNTAX,
34154  ER(ER_WARN_DEPRECATED_SYNTAX),
34155  "SHOW PROFILE", "Performance Schema");
34156  LEX *lex= Lex;
34157  lex->sql_command= SQLCOM_SHOW_PROFILE;
34158  if (prepare_schema_table(YYTHD, lex, NULL, SCH_PROFILES) != 0)
34159  YYABORT;
34160  }
34161  break;
34162 
34163  case 1769:
34164 
34165 /* Line 1455 of yacc.c */
34166 #line 12572 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34167  {
34168  LEX *lex= Lex;
34169  lex->sql_command= SQLCOM_SHOW_STATUS;
34170  lex->option_type= (yyvsp[(1) - (3)].var_type);
34171  if (prepare_schema_table(YYTHD, lex, 0, SCH_STATUS))
34172  MYSQL_YYABORT;
34173  }
34174  break;
34175 
34176  case 1770:
34177 
34178 /* Line 1455 of yacc.c */
34179 #line 12580 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34180  { Lex->sql_command= SQLCOM_SHOW_PROCESSLIST;}
34181  break;
34182 
34183  case 1771:
34184 
34185 /* Line 1455 of yacc.c */
34186 #line 12582 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34187  {
34188  LEX *lex= Lex;
34189  lex->sql_command= SQLCOM_SHOW_VARIABLES;
34190  lex->option_type= (yyvsp[(1) - (3)].var_type);
34191  if (prepare_schema_table(YYTHD, lex, 0, SCH_VARIABLES))
34192  MYSQL_YYABORT;
34193  }
34194  break;
34195 
34196  case 1772:
34197 
34198 /* Line 1455 of yacc.c */
34199 #line 12590 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34200  {
34201  LEX *lex= Lex;
34202  lex->sql_command= SQLCOM_SHOW_CHARSETS;
34203  if (prepare_schema_table(YYTHD, lex, 0, SCH_CHARSETS))
34204  MYSQL_YYABORT;
34205  }
34206  break;
34207 
34208  case 1773:
34209 
34210 /* Line 1455 of yacc.c */
34211 #line 12597 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34212  {
34213  LEX *lex= Lex;
34214  lex->sql_command= SQLCOM_SHOW_COLLATIONS;
34215  if (prepare_schema_table(YYTHD, lex, 0, SCH_COLLATIONS))
34216  MYSQL_YYABORT;
34217  }
34218  break;
34219 
34220  case 1774:
34221 
34222 /* Line 1455 of yacc.c */
34223 #line 12604 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34224  {
34225  LEX *lex=Lex;
34226  lex->sql_command= SQLCOM_SHOW_GRANTS;
34227  LEX_USER *curr_user;
34228  if (!(curr_user= (LEX_USER*) lex->thd->alloc(sizeof(st_lex_user))))
34229  MYSQL_YYABORT;
34230  memset(curr_user, 0, sizeof(st_lex_user));
34231  lex->grant_user= curr_user;
34232  }
34233  break;
34234 
34235  case 1775:
34236 
34237 /* Line 1455 of yacc.c */
34238 #line 12614 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34239  {
34240  LEX *lex=Lex;
34241  lex->sql_command= SQLCOM_SHOW_GRANTS;
34242  lex->grant_user=(yyvsp[(3) - (3)].lex_user);
34243  lex->grant_user->password=null_lex_str;
34244  }
34245  break;
34246 
34247  case 1776:
34248 
34249 /* Line 1455 of yacc.c */
34250 #line 12621 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34251  {
34252  Lex->sql_command=SQLCOM_SHOW_CREATE_DB;
34253  Lex->create_info.options=(yyvsp[(3) - (4)].num);
34254  Lex->name= (yyvsp[(4) - (4)].lex_str);
34255  }
34256  break;
34257 
34258  case 1777:
34259 
34260 /* Line 1455 of yacc.c */
34261 #line 12627 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34262  {
34263  LEX *lex= Lex;
34264  lex->sql_command = SQLCOM_SHOW_CREATE;
34265  if (!lex->select_lex.add_table_to_list(YYTHD, (yyvsp[(3) - (3)].table), NULL,0))
34266  MYSQL_YYABORT;
34267  lex->only_view= 0;
34268  lex->create_info.storage_media= HA_SM_DEFAULT;
34269  }
34270  break;
34271 
34272  case 1778:
34273 
34274 /* Line 1455 of yacc.c */
34275 #line 12636 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34276  {
34277  LEX *lex= Lex;
34278  lex->sql_command = SQLCOM_SHOW_CREATE;
34279  if (!lex->select_lex.add_table_to_list(YYTHD, (yyvsp[(3) - (3)].table), NULL, 0))
34280  MYSQL_YYABORT;
34281  lex->only_view= 1;
34282  }
34283  break;
34284 
34285  case 1779:
34286 
34287 /* Line 1455 of yacc.c */
34288 #line 12644 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34289  {
34290  Lex->sql_command = SQLCOM_SHOW_MASTER_STAT;
34291  }
34292  break;
34293 
34294  case 1780:
34295 
34296 /* Line 1455 of yacc.c */
34297 #line 12648 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34298  {
34299  Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
34300  }
34301  break;
34302 
34303  case 1781:
34304 
34305 /* Line 1455 of yacc.c */
34306 #line 12652 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34307  {
34308  LEX *lex= Lex;
34309 
34310  lex->sql_command = SQLCOM_SHOW_CREATE_PROC;
34311  lex->spname= (yyvsp[(3) - (3)].spname);
34312  }
34313  break;
34314 
34315  case 1782:
34316 
34317 /* Line 1455 of yacc.c */
34318 #line 12659 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34319  {
34320  LEX *lex= Lex;
34321 
34322  lex->sql_command = SQLCOM_SHOW_CREATE_FUNC;
34323  lex->spname= (yyvsp[(3) - (3)].spname);
34324  }
34325  break;
34326 
34327  case 1783:
34328 
34329 /* Line 1455 of yacc.c */
34330 #line 12666 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34331  {
34332  LEX *lex= Lex;
34333  lex->sql_command= SQLCOM_SHOW_CREATE_TRIGGER;
34334  lex->spname= (yyvsp[(3) - (3)].spname);
34335  }
34336  break;
34337 
34338  case 1784:
34339 
34340 /* Line 1455 of yacc.c */
34341 #line 12672 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34342  {
34343  LEX *lex= Lex;
34344  lex->sql_command= SQLCOM_SHOW_STATUS_PROC;
34345  if (prepare_schema_table(YYTHD, lex, 0, SCH_PROCEDURES))
34346  MYSQL_YYABORT;
34347  }
34348  break;
34349 
34350  case 1785:
34351 
34352 /* Line 1455 of yacc.c */
34353 #line 12679 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34354  {
34355  LEX *lex= Lex;
34356  lex->sql_command= SQLCOM_SHOW_STATUS_FUNC;
34357  if (prepare_schema_table(YYTHD, lex, 0, SCH_PROCEDURES))
34358  MYSQL_YYABORT;
34359  }
34360  break;
34361 
34362  case 1786:
34363 
34364 /* Line 1455 of yacc.c */
34365 #line 12686 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34366  {
34367  Lex->sql_command= SQLCOM_SHOW_PROC_CODE;
34368  Lex->spname= (yyvsp[(3) - (3)].spname);
34369  }
34370  break;
34371 
34372  case 1787:
34373 
34374 /* Line 1455 of yacc.c */
34375 #line 12691 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34376  {
34377  Lex->sql_command= SQLCOM_SHOW_FUNC_CODE;
34378  Lex->spname= (yyvsp[(3) - (3)].spname);
34379  }
34380  break;
34381 
34382  case 1788:
34383 
34384 /* Line 1455 of yacc.c */
34385 #line 12696 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34386  {
34387  Lex->spname= (yyvsp[(3) - (3)].spname);
34388  Lex->sql_command = SQLCOM_SHOW_CREATE_EVENT;
34389  }
34390  break;
34391 
34392  case 1789:
34393 
34394 /* Line 1455 of yacc.c */
34395 #line 12704 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34396  { Lex->sql_command= SQLCOM_SHOW_ENGINE_STATUS; }
34397  break;
34398 
34399  case 1790:
34400 
34401 /* Line 1455 of yacc.c */
34402 #line 12706 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34403  { Lex->sql_command= SQLCOM_SHOW_ENGINE_MUTEX; }
34404  break;
34405 
34406  case 1791:
34407 
34408 /* Line 1455 of yacc.c */
34409 #line 12708 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34410  { Lex->sql_command= SQLCOM_SHOW_ENGINE_LOGS; }
34411  break;
34412 
34413  case 1796:
34414 
34415 /* Line 1455 of yacc.c */
34416 #line 12722 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34417  { (yyval.simple_string)= 0; }
34418  break;
34419 
34420  case 1797:
34421 
34422 /* Line 1455 of yacc.c */
34423 #line 12723 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34424  { (yyval.simple_string)= (yyvsp[(2) - (2)].lex_str).str; }
34425  break;
34426 
34427  case 1798:
34428 
34429 /* Line 1455 of yacc.c */
34430 #line 12727 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34431  { Lex->verbose=0; }
34432  break;
34433 
34434  case 1799:
34435 
34436 /* Line 1455 of yacc.c */
34437 #line 12728 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34438  { Lex->verbose=1; }
34439  break;
34440 
34441  case 1802:
34442 
34443 /* Line 1455 of yacc.c */
34444 #line 12737 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34445  { Lex->mi.log_file_name = 0; }
34446  break;
34447 
34448  case 1803:
34449 
34450 /* Line 1455 of yacc.c */
34451 #line 12738 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34452  { Lex->mi.log_file_name = (yyvsp[(2) - (2)].lex_str).str; }
34453  break;
34454 
34455  case 1804:
34456 
34457 /* Line 1455 of yacc.c */
34458 #line 12742 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34459  { Lex->mi.pos = 4; /* skip magic number */ }
34460  break;
34461 
34462  case 1805:
34463 
34464 /* Line 1455 of yacc.c */
34465 #line 12743 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34466  { Lex->mi.pos = (yyvsp[(2) - (2)].ulonglong_number); }
34467  break;
34468 
34469  case 1807:
34470 
34471 /* Line 1455 of yacc.c */
34472 #line 12749 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34473  {
34474  Lex->wild= new (YYTHD->mem_root) String((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length,
34475  system_charset_info);
34476  if (Lex->wild == NULL)
34477  MYSQL_YYABORT;
34478  }
34479  break;
34480 
34481  case 1808:
34482 
34483 /* Line 1455 of yacc.c */
34484 #line 12756 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34485  {
34486  Select->where= (yyvsp[(2) - (2)].item);
34487  if ((yyvsp[(2) - (2)].item))
34488  (yyvsp[(2) - (2)].item)->top_level_item();
34489  }
34490  break;
34491 
34492  case 1809:
34493 
34494 /* Line 1455 of yacc.c */
34495 #line 12766 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34496  {
34497  LEX *lex= Lex;
34498  mysql_init_select(lex);
34499  lex->current_select->parsing_place= SELECT_LIST;
34500  lex->sql_command= SQLCOM_SHOW_FIELDS;
34501  lex->select_lex.db= 0;
34502  lex->verbose= 0;
34503  if (prepare_schema_table(YYTHD, lex, (yyvsp[(2) - (2)].table), SCH_COLUMNS))
34504  MYSQL_YYABORT;
34505  }
34506  break;
34507 
34508  case 1810:
34509 
34510 /* Line 1455 of yacc.c */
34511 #line 12777 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34512  {
34513  Select->parsing_place= NO_MATTER;
34514  }
34515  break;
34516 
34517  case 1811:
34518 
34519 /* Line 1455 of yacc.c */
34520 #line 12781 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34521  { Lex->describe|= DESCRIBE_NORMAL; }
34522  break;
34523 
34524  case 1812:
34525 
34526 /* Line 1455 of yacc.c */
34527 #line 12783 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34528  { Lex->select_lex.options|= SELECT_DESCRIBE; }
34529  break;
34530 
34531  case 1820:
34532 
34533 /* Line 1455 of yacc.c */
34534 #line 12801 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34535  {
34536  if ((Lex->explain_format= new Explain_format_traditional) == NULL)
34537  MYSQL_YYABORT;
34538  }
34539  break;
34540 
34541  case 1821:
34542 
34543 /* Line 1455 of yacc.c */
34544 #line 12806 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34545  {
34546  if ((Lex->explain_format= new Explain_format_traditional) == NULL)
34547  MYSQL_YYABORT;
34548  Lex->describe|= DESCRIBE_EXTENDED;
34549  }
34550  break;
34551 
34552  case 1822:
34553 
34554 /* Line 1455 of yacc.c */
34555 #line 12812 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34556  {
34557  if ((Lex->explain_format= new Explain_format_traditional) == NULL)
34558  MYSQL_YYABORT;
34559  Lex->describe|= DESCRIBE_PARTITIONS;
34560  }
34561  break;
34562 
34563  case 1823:
34564 
34565 /* Line 1455 of yacc.c */
34566 #line 12818 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34567  {
34568  if (!my_strcasecmp(system_charset_info, (yyvsp[(3) - (3)].lex_str).str, "JSON"))
34569  {
34570  if ((Lex->explain_format= new Explain_format_JSON) == NULL)
34571  MYSQL_YYABORT;
34572  Lex->describe|= DESCRIBE_EXTENDED | DESCRIBE_PARTITIONS;
34573  }
34574  else if (!my_strcasecmp(system_charset_info, (yyvsp[(3) - (3)].lex_str).str, "TRADITIONAL"))
34575  {
34576  if ((Lex->explain_format= new Explain_format_traditional) == NULL)
34577  MYSQL_YYABORT;
34578  }
34579  else
34580  {
34581  my_error(ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
34582  MYSQL_YYABORT;
34583  }
34584  }
34585  break;
34586 
34587  case 1824:
34588 
34589 /* Line 1455 of yacc.c */
34590 #line 12839 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34591  {}
34592  break;
34593 
34594  case 1825:
34595 
34596 /* Line 1455 of yacc.c */
34597 #line 12840 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34598  { Lex->wild= (yyvsp[(1) - (1)].string); }
34599  break;
34600 
34601  case 1826:
34602 
34603 /* Line 1455 of yacc.c */
34604 #line 12842 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34605  {
34606  Lex->wild= new (YYTHD->mem_root) String((const char*) (yyvsp[(1) - (1)].lex_str).str,
34607  (yyvsp[(1) - (1)].lex_str).length,
34608  system_charset_info);
34609  if (Lex->wild == NULL)
34610  MYSQL_YYABORT;
34611  }
34612  break;
34613 
34614  case 1827:
34615 
34616 /* Line 1455 of yacc.c */
34617 #line 12856 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34618  {
34619  LEX *lex=Lex;
34620  lex->sql_command= SQLCOM_FLUSH;
34621  lex->type= 0;
34622  lex->no_write_to_binlog= (yyvsp[(2) - (2)].num);
34623  }
34624  break;
34625 
34626  case 1828:
34627 
34628 /* Line 1455 of yacc.c */
34629 #line 12863 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34630  {}
34631  break;
34632 
34633  case 1829:
34634 
34635 /* Line 1455 of yacc.c */
34636 #line 12868 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34637  {
34638  Lex->type|= REFRESH_TABLES;
34639  /*
34640  Set type of metadata and table locks for
34641  FLUSH TABLES table_list [WITH READ LOCK].
34642  */
34643  YYPS->m_lock_type= TL_READ_NO_INSERT;
34644  YYPS->m_mdl_type= MDL_SHARED_HIGH_PRIO;
34645  }
34646  break;
34647 
34648  case 1830:
34649 
34650 /* Line 1455 of yacc.c */
34651 #line 12877 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34652  {}
34653  break;
34654 
34655  case 1831:
34656 
34657 /* Line 1455 of yacc.c */
34658 #line 12878 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34659  {}
34660  break;
34661 
34662  case 1833:
34663 
34664 /* Line 1455 of yacc.c */
34665 #line 12883 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34666  {}
34667  break;
34668 
34669  case 1834:
34670 
34671 /* Line 1455 of yacc.c */
34672 #line 12885 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34673  {
34674  TABLE_LIST *tables= Lex->query_tables;
34675  Lex->type|= REFRESH_READ_LOCK;
34676  for (; tables; tables= tables->next_global)
34677  {
34678  tables->mdl_request.set_type(MDL_SHARED_NO_WRITE);
34679  tables->required_type= FRMTYPE_TABLE; /* Don't try to flush views. */
34680  tables->open_type= OT_BASE_ONLY; /* Ignore temporary tables. */
34681  }
34682  }
34683  break;
34684 
34685  case 1835:
34686 
34687 /* Line 1455 of yacc.c */
34688 #line 12896 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34689  {
34690  if (Lex->query_tables == NULL) // Table list can't be empty
34691  {
34692  my_parse_error(ER(ER_NO_TABLES_USED));
34693  MYSQL_YYABORT;
34694  }
34695  }
34696  break;
34697 
34698  case 1836:
34699 
34700 /* Line 1455 of yacc.c */
34701 #line 12904 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34702  {
34703  TABLE_LIST *tables= Lex->query_tables;
34704  Lex->type|= REFRESH_FOR_EXPORT;
34705  for (; tables; tables= tables->next_global)
34706  {
34707  tables->mdl_request.set_type(MDL_SHARED_NO_WRITE);
34708  tables->required_type= FRMTYPE_TABLE; /* Don't try to flush views. */
34709  tables->open_type= OT_BASE_ONLY; /* Ignore temporary tables. */
34710  }
34711  }
34712  break;
34713 
34714  case 1838:
34715 
34716 /* Line 1455 of yacc.c */
34717 #line 12919 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34718  {}
34719  break;
34720 
34721  case 1839:
34722 
34723 /* Line 1455 of yacc.c */
34724 #line 12924 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34725  { Lex->type|= REFRESH_ERROR_LOG; }
34726  break;
34727 
34728  case 1840:
34729 
34730 /* Line 1455 of yacc.c */
34731 #line 12926 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34732  { Lex->type|= REFRESH_ENGINE_LOG; }
34733  break;
34734 
34735  case 1841:
34736 
34737 /* Line 1455 of yacc.c */
34738 #line 12928 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34739  { Lex->type|= REFRESH_GENERAL_LOG; }
34740  break;
34741 
34742  case 1842:
34743 
34744 /* Line 1455 of yacc.c */
34745 #line 12930 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34746  { Lex->type|= REFRESH_SLOW_LOG; }
34747  break;
34748 
34749  case 1843:
34750 
34751 /* Line 1455 of yacc.c */
34752 #line 12932 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34753  { Lex->type|= REFRESH_BINARY_LOG; }
34754  break;
34755 
34756  case 1844:
34757 
34758 /* Line 1455 of yacc.c */
34759 #line 12934 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34760  { Lex->type|= REFRESH_RELAY_LOG; }
34761  break;
34762 
34763  case 1845:
34764 
34765 /* Line 1455 of yacc.c */
34766 #line 12936 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34767  { Lex->type|= REFRESH_QUERY_CACHE_FREE; }
34768  break;
34769 
34770  case 1846:
34771 
34772 /* Line 1455 of yacc.c */
34773 #line 12938 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34774  { Lex->type|= REFRESH_HOSTS; }
34775  break;
34776 
34777  case 1847:
34778 
34779 /* Line 1455 of yacc.c */
34780 #line 12940 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34781  { Lex->type|= REFRESH_GRANT; }
34782  break;
34783 
34784  case 1848:
34785 
34786 /* Line 1455 of yacc.c */
34787 #line 12942 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34788  { Lex->type|= REFRESH_LOG; }
34789  break;
34790 
34791  case 1849:
34792 
34793 /* Line 1455 of yacc.c */
34794 #line 12944 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34795  { Lex->type|= REFRESH_STATUS; }
34796  break;
34797 
34798  case 1850:
34799 
34800 /* Line 1455 of yacc.c */
34801 #line 12946 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34802  { Lex->type|= REFRESH_DES_KEY_FILE; }
34803  break;
34804 
34805  case 1851:
34806 
34807 /* Line 1455 of yacc.c */
34808 #line 12948 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34809  { Lex->type|= REFRESH_USER_RESOURCES; }
34810  break;
34811 
34812  case 1852:
34813 
34814 /* Line 1455 of yacc.c */
34815 #line 12952 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34816  {}
34817  break;
34818 
34819  case 1853:
34820 
34821 /* Line 1455 of yacc.c */
34822 #line 12953 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34823  {}
34824  break;
34825 
34826  case 1854:
34827 
34828 /* Line 1455 of yacc.c */
34829 #line 12958 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34830  {
34831  LEX *lex=Lex;
34832  lex->sql_command= SQLCOM_RESET; lex->type=0;
34833  }
34834  break;
34835 
34836  case 1855:
34837 
34838 /* Line 1455 of yacc.c */
34839 #line 12963 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34840  {}
34841  break;
34842 
34843  case 1858:
34844 
34845 /* Line 1455 of yacc.c */
34846 #line 12972 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34847  { Lex->type|= REFRESH_SLAVE; }
34848  break;
34849 
34850  case 1859:
34851 
34852 /* Line 1455 of yacc.c */
34853 #line 12973 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34854  { }
34855  break;
34856 
34857  case 1860:
34858 
34859 /* Line 1455 of yacc.c */
34860 #line 12974 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34861  { Lex->type|= REFRESH_MASTER; }
34862  break;
34863 
34864  case 1861:
34865 
34866 /* Line 1455 of yacc.c */
34867 #line 12975 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34868  { Lex->type|= REFRESH_QUERY_CACHE;}
34869  break;
34870 
34871  case 1862:
34872 
34873 /* Line 1455 of yacc.c */
34874 #line 12979 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34875  { Lex->reset_slave_info.all= false; }
34876  break;
34877 
34878  case 1863:
34879 
34880 /* Line 1455 of yacc.c */
34881 #line 12980 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34882  { Lex->reset_slave_info.all= true; }
34883  break;
34884 
34885  case 1864:
34886 
34887 /* Line 1455 of yacc.c */
34888 #line 12985 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34889  {
34890  LEX *lex=Lex;
34891  lex->type=0;
34892  lex->sql_command = SQLCOM_PURGE;
34893  }
34894  break;
34895 
34896  case 1865:
34897 
34898 /* Line 1455 of yacc.c */
34899 #line 12991 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34900  {}
34901  break;
34902 
34903  case 1867:
34904 
34905 /* Line 1455 of yacc.c */
34906 #line 13000 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34907  {
34908  Lex->to_log = (yyvsp[(2) - (2)].lex_str).str;
34909  }
34910  break;
34911 
34912  case 1868:
34913 
34914 /* Line 1455 of yacc.c */
34915 #line 13004 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34916  {
34917  LEX *lex= Lex;
34918  lex->value_list.empty();
34919  lex->value_list.push_front((yyvsp[(2) - (2)].item));
34920  lex->sql_command= SQLCOM_PURGE_BEFORE;
34921  }
34922  break;
34923 
34924  case 1869:
34925 
34926 /* Line 1455 of yacc.c */
34927 #line 13016 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34928  {
34929  LEX *lex=Lex;
34930  lex->value_list.empty();
34931  lex->value_list.push_front((yyvsp[(3) - (3)].item));
34932  lex->sql_command= SQLCOM_KILL;
34933  }
34934  break;
34935 
34936  case 1870:
34937 
34938 /* Line 1455 of yacc.c */
34939 #line 13025 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34940  { Lex->type= 0; }
34941  break;
34942 
34943  case 1871:
34944 
34945 /* Line 1455 of yacc.c */
34946 #line 13026 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34947  { Lex->type= 0; }
34948  break;
34949 
34950  case 1872:
34951 
34952 /* Line 1455 of yacc.c */
34953 #line 13027 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34954  { Lex->type= ONLY_KILL_QUERY; }
34955  break;
34956 
34957  case 1873:
34958 
34959 /* Line 1455 of yacc.c */
34960 #line 13034 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34961  {
34962  LEX *lex=Lex;
34963  lex->sql_command=SQLCOM_CHANGE_DB;
34964  lex->select_lex.db= (yyvsp[(2) - (2)].lex_str).str;
34965  }
34966  break;
34967 
34968  case 1874:
34969 
34970 /* Line 1455 of yacc.c */
34971 #line 13045 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34972  {
34973  THD *thd= YYTHD;
34974  LEX *lex= thd->lex;
34975 
34976  if (lex->sphead)
34977  {
34978  my_error(ER_SP_BADSTATEMENT, MYF(0),
34979  (yyvsp[(2) - (2)].filetype) == FILETYPE_CSV ? "LOAD DATA" : "LOAD XML");
34980  MYSQL_YYABORT;
34981  }
34982  }
34983  break;
34984 
34985  case 1875:
34986 
34987 /* Line 1455 of yacc.c */
34988 #line 13057 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
34989  {
34990  LEX *lex=Lex;
34991  lex->sql_command= SQLCOM_LOAD;
34992  lex->local_file= (yyvsp[(5) - (7)].num);
34993  lex->duplicates= DUP_ERROR;
34994  lex->ignore= 0;
34995  if (!(lex->exchange= new sql_exchange((yyvsp[(7) - (7)].lex_str).str, 0, (yyvsp[(2) - (7)].filetype))))
34996  MYSQL_YYABORT;
34997  }
34998  break;
34999 
35000  case 1876:
35001 
35002 /* Line 1455 of yacc.c */
35003 #line 13067 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35004  {
35005  LEX *lex=Lex;
35006  if (!Select->add_table_to_list(YYTHD, (yyvsp[(12) - (13)].table), NULL, TL_OPTION_UPDATING,
35007  (yyvsp[(4) - (13)].lock_type), MDL_SHARED_WRITE, NULL, (yyvsp[(13) - (13)].string_list)))
35008  MYSQL_YYABORT;
35009  lex->field_list.empty();
35010  lex->update_list.empty();
35011  lex->value_list.empty();
35012  }
35013  break;
35014 
35015  case 1877:
35016 
35017 /* Line 1455 of yacc.c */
35018 #line 13077 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35019  { Lex->exchange->cs= (yyvsp[(15) - (15)].charset); }
35020  break;
35021 
35022  case 1878:
35023 
35024 /* Line 1455 of yacc.c */
35025 #line 13081 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35026  {}
35027  break;
35028 
35029  case 1879:
35030 
35031 /* Line 1455 of yacc.c */
35032 #line 13085 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35033  { (yyval.filetype)= FILETYPE_CSV; }
35034  break;
35035 
35036  case 1880:
35037 
35038 /* Line 1455 of yacc.c */
35039 #line 13086 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35040  { (yyval.filetype)= FILETYPE_XML; }
35041  break;
35042 
35043  case 1881:
35044 
35045 /* Line 1455 of yacc.c */
35046 #line 13090 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35047  { (yyval.num)=0;}
35048  break;
35049 
35050  case 1882:
35051 
35052 /* Line 1455 of yacc.c */
35053 #line 13091 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35054  { (yyval.num)=1;}
35055  break;
35056 
35057  case 1883:
35058 
35059 /* Line 1455 of yacc.c */
35060 #line 13095 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35061  { (yyval.lock_type)= TL_WRITE_DEFAULT; }
35062  break;
35063 
35064  case 1884:
35065 
35066 /* Line 1455 of yacc.c */
35067 #line 13097 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35068  {
35069 #ifdef HAVE_QUERY_CACHE
35070  /*
35071  Ignore this option in SP to avoid problem with query cache
35072  */
35073  if (Lex->sphead != 0)
35074  (yyval.lock_type)= TL_WRITE_DEFAULT;
35075  else
35076 #endif
35077  (yyval.lock_type)= TL_WRITE_CONCURRENT_INSERT;
35078  }
35079  break;
35080 
35081  case 1885:
35082 
35083 /* Line 1455 of yacc.c */
35084 #line 13108 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35085  { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
35086  break;
35087 
35088  case 1886:
35089 
35090 /* Line 1455 of yacc.c */
35091 #line 13112 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35092  { Lex->duplicates=DUP_ERROR; }
35093  break;
35094 
35095  case 1887:
35096 
35097 /* Line 1455 of yacc.c */
35098 #line 13113 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35099  { Lex->duplicates=DUP_REPLACE; }
35100  break;
35101 
35102  case 1888:
35103 
35104 /* Line 1455 of yacc.c */
35105 #line 13114 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35106  { Lex->ignore= 1; }
35107  break;
35108 
35109  case 1893:
35110 
35111 /* Line 1455 of yacc.c */
35112 #line 13129 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35113  {
35114  DBUG_ASSERT(Lex->exchange != 0);
35115  Lex->exchange->field_term= (yyvsp[(3) - (3)].string);
35116  }
35117  break;
35118 
35119  case 1894:
35120 
35121 /* Line 1455 of yacc.c */
35122 #line 13134 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35123  {
35124  LEX *lex= Lex;
35125  DBUG_ASSERT(lex->exchange != 0);
35126  lex->exchange->enclosed= (yyvsp[(4) - (4)].string);
35127  lex->exchange->opt_enclosed= 1;
35128  }
35129  break;
35130 
35131  case 1895:
35132 
35133 /* Line 1455 of yacc.c */
35134 #line 13141 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35135  {
35136  DBUG_ASSERT(Lex->exchange != 0);
35137  Lex->exchange->enclosed= (yyvsp[(3) - (3)].string);
35138  }
35139  break;
35140 
35141  case 1896:
35142 
35143 /* Line 1455 of yacc.c */
35144 #line 13146 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35145  {
35146  DBUG_ASSERT(Lex->exchange != 0);
35147  Lex->exchange->escaped= (yyvsp[(3) - (3)].string);
35148  }
35149  break;
35150 
35151  case 1901:
35152 
35153 /* Line 1455 of yacc.c */
35154 #line 13164 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35155  {
35156  DBUG_ASSERT(Lex->exchange != 0);
35157  Lex->exchange->line_term= (yyvsp[(3) - (3)].string);
35158  }
35159  break;
35160 
35161  case 1902:
35162 
35163 /* Line 1455 of yacc.c */
35164 #line 13169 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35165  {
35166  DBUG_ASSERT(Lex->exchange != 0);
35167  Lex->exchange->line_start= (yyvsp[(3) - (3)].string);
35168  }
35169  break;
35170 
35171  case 1903:
35172 
35173 /* Line 1455 of yacc.c */
35174 #line 13176 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35175  { }
35176  break;
35177 
35178  case 1904:
35179 
35180 /* Line 1455 of yacc.c */
35181 #line 13178 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35182  { Lex->exchange->line_term = (yyvsp[(4) - (4)].string); }
35183  break;
35184 
35185  case 1906:
35186 
35187 /* Line 1455 of yacc.c */
35188 #line 13183 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35189  {
35190  DBUG_ASSERT(Lex->exchange != 0);
35191  Lex->exchange->skip_lines= atol((yyvsp[(2) - (3)].lex_str).str);
35192  }
35193  break;
35194 
35195  case 1907:
35196 
35197 /* Line 1455 of yacc.c */
35198 #line 13190 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35199  { }
35200  break;
35201 
35202  case 1908:
35203 
35204 /* Line 1455 of yacc.c */
35205 #line 13192 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35206  { }
35207  break;
35208 
35209  case 1909:
35210 
35211 /* Line 1455 of yacc.c */
35212 #line 13196 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35213  {}
35214  break;
35215 
35216  case 1910:
35217 
35218 /* Line 1455 of yacc.c */
35219 #line 13197 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35220  {}
35221  break;
35222 
35223  case 1911:
35224 
35225 /* Line 1455 of yacc.c */
35226 #line 13198 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35227  {}
35228  break;
35229 
35230  case 1912:
35231 
35232 /* Line 1455 of yacc.c */
35233 #line 13203 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35234  { Lex->field_list.push_back((yyvsp[(3) - (3)].item)); }
35235  break;
35236 
35237  case 1913:
35238 
35239 /* Line 1455 of yacc.c */
35240 #line 13205 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35241  { Lex->field_list.push_back((yyvsp[(1) - (1)].item)); }
35242  break;
35243 
35244  case 1914:
35245 
35246 /* Line 1455 of yacc.c */
35247 #line 13209 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35248  {(yyval.item)= (yyvsp[(1) - (1)].item);}
35249  break;
35250 
35251  case 1915:
35252 
35253 /* Line 1455 of yacc.c */
35254 #line 13211 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35255  {
35256  (yyval.item)= new (YYTHD->mem_root) Item_user_var_as_out_param((yyvsp[(2) - (2)].lex_str));
35257  if ((yyval.item) == NULL)
35258  MYSQL_YYABORT;
35259  }
35260  break;
35261 
35262  case 1916:
35263 
35264 /* Line 1455 of yacc.c */
35265 #line 13219 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35266  {}
35267  break;
35268 
35269  case 1917:
35270 
35271 /* Line 1455 of yacc.c */
35272 #line 13220 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35273  {}
35274  break;
35275 
35276  case 1920:
35277 
35278 /* Line 1455 of yacc.c */
35279 #line 13230 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35280  {
35281  LEX *lex= Lex;
35282  uint length= (uint) ((yyvsp[(5) - (5)].simple_string) - (yyvsp[(3) - (5)].simple_string));
35283  String *val= new (YYTHD->mem_root) String((yyvsp[(3) - (5)].simple_string),
35284  length,
35285  YYTHD->charset());
35286  if (val == NULL)
35287  MYSQL_YYABORT;
35288  if (lex->update_list.push_back((yyvsp[(1) - (5)].item)) ||
35289  lex->value_list.push_back((yyvsp[(4) - (5)].item)) ||
35290  lex->load_set_str_list.push_back(val))
35291  MYSQL_YYABORT;
35292  (yyvsp[(4) - (5)].item)->item_name.copy((yyvsp[(3) - (5)].simple_string), length, YYTHD->charset());
35293  }
35294  break;
35295 
35296  case 1921:
35297 
35298 /* Line 1455 of yacc.c */
35299 #line 13250 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35300  {
35301  LEX_STRING tmp;
35302  THD *thd= YYTHD;
35303  const CHARSET_INFO *cs_con= thd->variables.collation_connection;
35304  const CHARSET_INFO *cs_cli= thd->variables.character_set_client;
35305  uint repertoire= thd->lex->text_string_is_7bit &&
35306  my_charset_is_ascii_based(cs_cli) ?
35307  MY_REPERTOIRE_ASCII : MY_REPERTOIRE_UNICODE30;
35308  if (thd->charset_is_collation_connection ||
35309  (repertoire == MY_REPERTOIRE_ASCII &&
35310  my_charset_is_ascii_based(cs_con)))
35311  tmp= (yyvsp[(1) - (1)].lex_str);
35312  else
35313  {
35314  if (thd->convert_string(&tmp, cs_con, (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length, cs_cli))
35315  MYSQL_YYABORT;
35316  }
35317  (yyval.item)= new (thd->mem_root) Item_string(tmp.str, tmp.length, cs_con,
35318  DERIVATION_COERCIBLE,
35319  repertoire);
35320  if ((yyval.item) == NULL)
35321  MYSQL_YYABORT;
35322  }
35323  break;
35324 
35325  case 1922:
35326 
35327 /* Line 1455 of yacc.c */
35328 #line 13274 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35329  {
35330  uint repertoire= Lex->text_string_is_7bit ?
35331  MY_REPERTOIRE_ASCII : MY_REPERTOIRE_UNICODE30;
35332  DBUG_ASSERT(my_charset_is_ascii_based(national_charset_info));
35333  (yyval.item)= new (YYTHD->mem_root) Item_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length,
35334  national_charset_info,
35335  DERIVATION_COERCIBLE,
35336  repertoire);
35337  if ((yyval.item) == NULL)
35338  MYSQL_YYABORT;
35339  }
35340  break;
35341 
35342  case 1923:
35343 
35344 /* Line 1455 of yacc.c */
35345 #line 13286 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35346  {
35347  Item_string *str= new (YYTHD->mem_root) Item_string((yyvsp[(2) - (2)].lex_str).str,
35348  (yyvsp[(2) - (2)].lex_str).length, (yyvsp[(1) - (2)].charset));
35349  if (str == NULL)
35350  MYSQL_YYABORT;
35351  str->set_repertoire_from_value();
35352  str->set_cs_specified(TRUE);
35353 
35354  (yyval.item)= str;
35355  }
35356  break;
35357 
35358  case 1924:
35359 
35360 /* Line 1455 of yacc.c */
35361 #line 13297 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35362  {
35363  Item_string* item= (Item_string*) (yyvsp[(1) - (2)].item);
35364  item->append((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length);
35365  if (!(item->collation.repertoire & MY_REPERTOIRE_EXTENDED))
35366  {
35367  /*
35368  If the string has been pure ASCII so far,
35369  check the new part.
35370  */
35371  const CHARSET_INFO *cs= YYTHD->variables.collation_connection;
35372  item->collation.repertoire|= my_string_repertoire(cs,
35373  (yyvsp[(2) - (2)].lex_str).str,
35374  (yyvsp[(2) - (2)].lex_str).length);
35375  }
35376  }
35377  break;
35378 
35379  case 1925:
35380 
35381 /* Line 1455 of yacc.c */
35382 #line 13316 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35383  {
35384  (yyval.string)= new (YYTHD->mem_root) String((yyvsp[(1) - (1)].lex_str).str,
35385  (yyvsp[(1) - (1)].lex_str).length,
35386  YYTHD->variables.collation_connection);
35387  if ((yyval.string) == NULL)
35388  MYSQL_YYABORT;
35389  }
35390  break;
35391 
35392  case 1926:
35393 
35394 /* Line 1455 of yacc.c */
35395 #line 13324 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35396  {
35397  Item *tmp= new (YYTHD->mem_root) Item_hex_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
35398  if (tmp == NULL)
35399  MYSQL_YYABORT;
35400  /*
35401  it is OK only emulate fix_fields, because we need only
35402  value of constant
35403  */
35404  tmp->quick_fix_field();
35405  (yyval.string)= tmp->val_str((String*) 0);
35406  }
35407  break;
35408 
35409  case 1927:
35410 
35411 /* Line 1455 of yacc.c */
35412 #line 13336 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35413  {
35414  Item *tmp= new (YYTHD->mem_root) Item_bin_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
35415  if (tmp == NULL)
35416  MYSQL_YYABORT;
35417  /*
35418  it is OK only emulate fix_fields, because we need only
35419  value of constant
35420  */
35421  tmp->quick_fix_field();
35422  (yyval.string)= tmp->val_str((String*) 0);
35423  }
35424  break;
35425 
35426  case 1928:
35427 
35428 /* Line 1455 of yacc.c */
35429 #line 13351 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35430  {
35431  THD *thd= YYTHD;
35432  LEX *lex= thd->lex;
35433  Lex_input_stream *lip= YYLIP;
35434  Item_param *item;
35435  if (! lex->parsing_options.allows_variable)
35436  {
35437  my_error(ER_VIEW_SELECT_VARIABLE, MYF(0));
35438  MYSQL_YYABORT;
35439  }
35440  item= new (thd->mem_root) Item_param((uint) (lip->get_tok_start() - thd->query()));
35441  if (!((yyval.item)= item) || lex->param_list.push_back(item))
35442  {
35443  my_message(ER_OUT_OF_RESOURCES, ER(ER_OUT_OF_RESOURCES), MYF(0));
35444  MYSQL_YYABORT;
35445  }
35446  }
35447  break;
35448 
35449  case 1929:
35450 
35451 /* Line 1455 of yacc.c */
35452 #line 13371 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35453  { (yyval.item) = (yyvsp[(1) - (1)].item); }
35454  break;
35455 
35456  case 1930:
35457 
35458 /* Line 1455 of yacc.c */
35459 #line 13372 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35460  { (yyval.item) = (yyvsp[(2) - (2)].item_num); }
35461  break;
35462 
35463  case 1931:
35464 
35465 /* Line 1455 of yacc.c */
35466 #line 13374 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35467  {
35468  (yyvsp[(2) - (2)].item_num)->max_length++;
35469  (yyval.item)= (yyvsp[(2) - (2)].item_num)->neg();
35470  }
35471  break;
35472 
35473  case 1932:
35474 
35475 /* Line 1455 of yacc.c */
35476 #line 13382 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35477  { (yyval.item) = (yyvsp[(1) - (1)].item); }
35478  break;
35479 
35480  case 1933:
35481 
35482 /* Line 1455 of yacc.c */
35483 #line 13383 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35484  { (yyval.item) = (yyvsp[(1) - (1)].item_num); }
35485  break;
35486 
35487  case 1934:
35488 
35489 /* Line 1455 of yacc.c */
35490 #line 13384 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35491  { (yyval.item)= (yyvsp[(1) - (1)].item); }
35492  break;
35493 
35494  case 1935:
35495 
35496 /* Line 1455 of yacc.c */
35497 #line 13386 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35498  {
35499  (yyval.item) = new (YYTHD->mem_root) Item_null();
35500  if ((yyval.item) == NULL)
35501  MYSQL_YYABORT;
35502  YYLIP->next_state= MY_LEX_OPERATOR_OR_IDENT;
35503  }
35504  break;
35505 
35506  case 1936:
35507 
35508 /* Line 1455 of yacc.c */
35509 #line 13393 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35510  {
35511  (yyval.item)= new (YYTHD->mem_root) Item_int(NAME_STRING("FALSE"), 0, 1);
35512  if ((yyval.item) == NULL)
35513  MYSQL_YYABORT;
35514  }
35515  break;
35516 
35517  case 1937:
35518 
35519 /* Line 1455 of yacc.c */
35520 #line 13399 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35521  {
35522  (yyval.item)= new (YYTHD->mem_root) Item_int(NAME_STRING("TRUE"), 1, 1);
35523  if ((yyval.item) == NULL)
35524  MYSQL_YYABORT;
35525  }
35526  break;
35527 
35528  case 1938:
35529 
35530 /* Line 1455 of yacc.c */
35531 #line 13405 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35532  {
35533  (yyval.item) = new (YYTHD->mem_root) Item_hex_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
35534  if ((yyval.item) == NULL)
35535  MYSQL_YYABORT;
35536  }
35537  break;
35538 
35539  case 1939:
35540 
35541 /* Line 1455 of yacc.c */
35542 #line 13411 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35543  {
35544  (yyval.item)= new (YYTHD->mem_root) Item_bin_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
35545  if ((yyval.item) == NULL)
35546  MYSQL_YYABORT;
35547  }
35548  break;
35549 
35550  case 1940:
35551 
35552 /* Line 1455 of yacc.c */
35553 #line 13417 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35554  {
35555  Item *tmp= new (YYTHD->mem_root) Item_hex_string((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length);
35556  if (tmp == NULL)
35557  MYSQL_YYABORT;
35558  /*
35559  it is OK only emulate fix_fieds, because we need only
35560  value of constant
35561  */
35562  tmp->quick_fix_field();
35563  String *str= tmp->val_str((String*) 0);
35564 
35565  Item_string *item_str;
35566  item_str= new (YYTHD->mem_root)
35567  Item_string(null_name_string, /* name will be set in select_item */
35568  str ? str->ptr() : "",
35569  str ? str->length() : 0,
35570  (yyvsp[(1) - (2)].charset));
35571  if (!item_str ||
35572  !item_str->check_well_formed_result(&item_str->str_value, TRUE))
35573  {
35574  MYSQL_YYABORT;
35575  }
35576 
35577  item_str->set_repertoire_from_value();
35578  item_str->set_cs_specified(TRUE);
35579 
35580  (yyval.item)= item_str;
35581  }
35582  break;
35583 
35584  case 1941:
35585 
35586 /* Line 1455 of yacc.c */
35587 #line 13446 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35588  {
35589  Item *tmp= new (YYTHD->mem_root) Item_bin_string((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length);
35590  if (tmp == NULL)
35591  MYSQL_YYABORT;
35592  /*
35593  it is OK only emulate fix_fieds, because we need only
35594  value of constant
35595  */
35596  tmp->quick_fix_field();
35597  String *str= tmp->val_str((String*) 0);
35598 
35599  Item_string *item_str;
35600  item_str= new (YYTHD->mem_root)
35601  Item_string(null_name_string, /* name will be set in select_item */
35602  str ? str->ptr() : "",
35603  str ? str->length() : 0,
35604  (yyvsp[(1) - (2)].charset));
35605  if (!item_str ||
35606  !item_str->check_well_formed_result(&item_str->str_value, TRUE))
35607  {
35608  MYSQL_YYABORT;
35609  }
35610 
35611  item_str->set_cs_specified(TRUE);
35612 
35613  (yyval.item)= item_str;
35614  }
35615  break;
35616 
35617  case 1942:
35618 
35619 /* Line 1455 of yacc.c */
35620 #line 13477 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35621  {
35622  int error;
35623  (yyval.item_num)= new (YYTHD->mem_root)
35624  Item_int((yyvsp[(1) - (1)].lex_str),
35625  (longlong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, NULL, &error),
35626  (yyvsp[(1) - (1)].lex_str).length);
35627  if ((yyval.item_num) == NULL)
35628  MYSQL_YYABORT;
35629  }
35630  break;
35631 
35632  case 1943:
35633 
35634 /* Line 1455 of yacc.c */
35635 #line 13487 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35636  {
35637  int error;
35638  (yyval.item_num)= new (YYTHD->mem_root)
35639  Item_int((yyvsp[(1) - (1)].lex_str),
35640  (longlong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, NULL, &error),
35641  (yyvsp[(1) - (1)].lex_str).length);
35642  if ((yyval.item_num) == NULL)
35643  MYSQL_YYABORT;
35644  }
35645  break;
35646 
35647  case 1944:
35648 
35649 /* Line 1455 of yacc.c */
35650 #line 13497 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35651  {
35652  (yyval.item_num)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
35653  if ((yyval.item_num) == NULL)
35654  MYSQL_YYABORT;
35655  }
35656  break;
35657 
35658  case 1945:
35659 
35660 /* Line 1455 of yacc.c */
35661 #line 13503 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35662  {
35663  (yyval.item_num)= new (YYTHD->mem_root) Item_decimal((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length,
35664  YYTHD->charset());
35665  if (((yyval.item_num) == NULL) || (YYTHD->is_error()))
35666  {
35667  MYSQL_YYABORT;
35668  }
35669  }
35670  break;
35671 
35672  case 1946:
35673 
35674 /* Line 1455 of yacc.c */
35675 #line 13512 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35676  {
35677  (yyval.item_num)= new (YYTHD->mem_root) Item_float((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
35678  if (((yyval.item_num) == NULL) || (YYTHD->is_error()))
35679  {
35680  MYSQL_YYABORT;
35681  }
35682  }
35683  break;
35684 
35685  case 1947:
35686 
35687 /* Line 1455 of yacc.c */
35688 #line 13524 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35689  {
35690  if (!((yyval.item)= create_temporal_literal(YYTHD, (yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length, YYCSCL,
35691  MYSQL_TYPE_DATE, true)))
35692  MYSQL_YYABORT;
35693  }
35694  break;
35695 
35696  case 1948:
35697 
35698 /* Line 1455 of yacc.c */
35699 #line 13530 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35700  {
35701  if (!((yyval.item)= create_temporal_literal(YYTHD, (yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length, YYCSCL,
35702  MYSQL_TYPE_TIME, true)))
35703  MYSQL_YYABORT;
35704  }
35705  break;
35706 
35707  case 1949:
35708 
35709 /* Line 1455 of yacc.c */
35710 #line 13536 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35711  {
35712  if (!((yyval.item)= create_temporal_literal(YYTHD, (yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length, YYCSCL,
35713  MYSQL_TYPE_DATETIME, true)))
35714  MYSQL_YYABORT;
35715  }
35716  break;
35717 
35718  case 1950:
35719 
35720 /* Line 1455 of yacc.c */
35721 #line 13551 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35722  { (yyval.item)=(yyvsp[(1) - (1)].item); }
35723  break;
35724 
35725  case 1951:
35726 
35727 /* Line 1455 of yacc.c */
35728 #line 13552 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35729  { (yyval.item)=(yyvsp[(1) - (1)].item); }
35730  break;
35731 
35732  case 1952:
35733 
35734 /* Line 1455 of yacc.c */
35735 #line 13557 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35736  {
35737  SELECT_LEX *sel= Select;
35738  (yyval.item)= new (YYTHD->mem_root) Item_field(Lex->current_context(),
35739  NullS, (yyvsp[(1) - (3)].lex_str).str, "*");
35740  if ((yyval.item) == NULL)
35741  MYSQL_YYABORT;
35742  sel->with_wild++;
35743  }
35744  break;
35745 
35746  case 1953:
35747 
35748 /* Line 1455 of yacc.c */
35749 #line 13566 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35750  {
35751  THD *thd= YYTHD;
35752  SELECT_LEX *sel= Select;
35753  const char* schema= thd->client_capabilities & CLIENT_NO_SCHEMA ?
35754  NullS : (yyvsp[(1) - (5)].lex_str).str;
35755  (yyval.item)= new (thd->mem_root) Item_field(Lex->current_context(),
35756  schema,
35757  (yyvsp[(3) - (5)].lex_str).str,"*");
35758  if ((yyval.item) == NULL)
35759  MYSQL_YYABORT;
35760  sel->with_wild++;
35761  }
35762  break;
35763 
35764  case 1954:
35765 
35766 /* Line 1455 of yacc.c */
35767 #line 13581 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35768  { (yyval.item)=(yyvsp[(1) - (1)].item); }
35769  break;
35770 
35771  case 1955:
35772 
35773 /* Line 1455 of yacc.c */
35774 #line 13586 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35775  {
35776  THD *thd= YYTHD;
35777  LEX *lex= thd->lex;
35778  sp_pcontext *pctx = lex->get_sp_current_parsing_ctx();
35779  sp_variable *spv;
35780 
35781  if (pctx && (spv= pctx->find_variable((yyvsp[(1) - (1)].lex_str), false)))
35782  {
35783  Lex_input_stream *lip= &thd->m_parser_state->m_lip;
35784  sp_head *sp= lex->sphead;
35785 
35786  DBUG_ASSERT(sp);
35787 
35788  /* We're compiling a stored procedure and found a variable */
35789  if (! lex->parsing_options.allows_variable)
35790  {
35791  my_error(ER_VIEW_SELECT_VARIABLE, MYF(0));
35792  MYSQL_YYABORT;
35793  }
35794 
35795  (yyval.item)=
35796  create_item_for_sp_var(
35797  thd, (yyvsp[(1) - (1)].lex_str), spv,
35798  sp->m_parser_data.get_current_stmt_start_ptr(),
35799  lip->get_tok_start_prev(),
35800  lip->get_tok_end());
35801 
35802  if ((yyval.item) == NULL)
35803  MYSQL_YYABORT;
35804 
35805  lex->safe_to_cache_query= false;
35806  }
35807  else
35808  {
35809  SELECT_LEX *sel=Select;
35810  if ((sel->parsing_place != IN_HAVING) ||
35811  (sel->get_in_sum_expr() > 0))
35812  {
35813  (yyval.item)= new (thd->mem_root) Item_field(Lex->current_context(),
35814  NullS, NullS, (yyvsp[(1) - (1)].lex_str).str);
35815  }
35816  else
35817  {
35818  (yyval.item)= new (thd->mem_root) Item_ref(Lex->current_context(),
35819  NullS, NullS, (yyvsp[(1) - (1)].lex_str).str);
35820  }
35821  if ((yyval.item) == NULL)
35822  MYSQL_YYABORT;
35823  }
35824  }
35825  break;
35826 
35827  case 1956:
35828 
35829 /* Line 1455 of yacc.c */
35830 #line 13636 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35831  { (yyval.item)= (yyvsp[(1) - (1)].item); }
35832  break;
35833 
35834  case 1957:
35835 
35836 /* Line 1455 of yacc.c */
35837 #line 13641 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35838  {
35839  THD *thd= YYTHD;
35840  SELECT_LEX *sel=Select;
35841  if ((sel->parsing_place != IN_HAVING) ||
35842  (sel->get_in_sum_expr() > 0))
35843  {
35844  (yyval.item)= new (thd->mem_root) Item_field(Lex->current_context(),
35845  NullS, NullS, (yyvsp[(1) - (1)].lex_str).str);
35846  }
35847  else
35848  {
35849  (yyval.item)= new (thd->mem_root) Item_ref(Lex->current_context(),
35850  NullS, NullS, (yyvsp[(1) - (1)].lex_str).str);
35851  }
35852  if ((yyval.item) == NULL)
35853  MYSQL_YYABORT;
35854  }
35855  break;
35856 
35857  case 1958:
35858 
35859 /* Line 1455 of yacc.c */
35860 #line 13658 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35861  { (yyval.item)= (yyvsp[(1) - (1)].item); }
35862  break;
35863 
35864  case 1959:
35865 
35866 /* Line 1455 of yacc.c */
35867 #line 13663 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35868  {
35869  THD *thd= YYTHD;
35870  LEX *lex= thd->lex;
35871  sp_head *sp= lex->sphead;
35872 
35873  /*
35874  FIXME This will work ok in simple_ident_nospvar case because
35875  we can't meet simple_ident_nospvar in trigger now. But it
35876  should be changed in future.
35877  */
35878  if (sp && sp->m_type == SP_TYPE_TRIGGER &&
35879  (!my_strcasecmp(system_charset_info, (yyvsp[(1) - (3)].lex_str).str, "NEW") ||
35880  !my_strcasecmp(system_charset_info, (yyvsp[(1) - (3)].lex_str).str, "OLD")))
35881  {
35882  Item_trigger_field *trg_fld;
35883  bool new_row= ((yyvsp[(1) - (3)].lex_str).str[0]=='N' || (yyvsp[(1) - (3)].lex_str).str[0]=='n');
35884 
35885  if (sp->m_trg_chistics.event == TRG_EVENT_INSERT &&
35886  !new_row)
35887  {
35888  my_error(ER_TRG_NO_SUCH_ROW_IN_TRG, MYF(0), "OLD", "on INSERT");
35889  MYSQL_YYABORT;
35890  }
35891 
35892  if (sp->m_trg_chistics.event == TRG_EVENT_DELETE &&
35893  new_row)
35894  {
35895  my_error(ER_TRG_NO_SUCH_ROW_IN_TRG, MYF(0), "NEW", "on DELETE");
35896  MYSQL_YYABORT;
35897  }
35898 
35899  DBUG_ASSERT(!new_row ||
35900  (sp->m_trg_chistics.event == TRG_EVENT_INSERT ||
35901  sp->m_trg_chistics.event == TRG_EVENT_UPDATE));
35902  const bool read_only=
35903  !(new_row && sp->m_trg_chistics.action_time == TRG_ACTION_BEFORE);
35904  trg_fld= new (thd->mem_root)
35905  Item_trigger_field(Lex->current_context(),
35906  new_row ?
35907  Item_trigger_field::NEW_ROW:
35908  Item_trigger_field::OLD_ROW,
35909  (yyvsp[(3) - (3)].lex_str).str,
35910  SELECT_ACL,
35911  read_only);
35912  if (trg_fld == NULL)
35913  MYSQL_YYABORT;
35914 
35915  /*
35916  Let us add this item to list of all Item_trigger_field objects
35917  in trigger.
35918  */
35919  lex->sphead->m_trg_table_fields.link_in_list(
35920  trg_fld, &trg_fld->next_trg_field);
35921 
35922  (yyval.item)= trg_fld;
35923  }
35924  else
35925  {
35926  SELECT_LEX *sel= lex->current_select;
35927  if (sel->no_table_names_allowed)
35928  {
35929  my_error(ER_TABLENAME_NOT_ALLOWED_HERE,
35930  MYF(0), (yyvsp[(1) - (3)].lex_str).str, thd->where);
35931  }
35932  if ((sel->parsing_place != IN_HAVING) ||
35933  (sel->get_in_sum_expr() > 0))
35934  {
35935  (yyval.item)= new (thd->mem_root) Item_field(Lex->current_context(),
35936  NullS, (yyvsp[(1) - (3)].lex_str).str, (yyvsp[(3) - (3)].lex_str).str);
35937  }
35938  else
35939  {
35940  (yyval.item)= new (thd->mem_root) Item_ref(Lex->current_context(),
35941  NullS, (yyvsp[(1) - (3)].lex_str).str, (yyvsp[(3) - (3)].lex_str).str);
35942  }
35943  if ((yyval.item) == NULL)
35944  MYSQL_YYABORT;
35945  }
35946  }
35947  break;
35948 
35949  case 1960:
35950 
35951 /* Line 1455 of yacc.c */
35952 #line 13743 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35953  {
35954  THD *thd= YYTHD;
35955  LEX *lex= thd->lex;
35956  SELECT_LEX *sel= lex->current_select;
35957  if (sel->no_table_names_allowed)
35958  {
35959  my_error(ER_TABLENAME_NOT_ALLOWED_HERE,
35960  MYF(0), (yyvsp[(2) - (4)].lex_str).str, thd->where);
35961  }
35962  if ((sel->parsing_place != IN_HAVING) ||
35963  (sel->get_in_sum_expr() > 0))
35964  {
35965  (yyval.item)= new (thd->mem_root) Item_field(Lex->current_context(),
35966  NullS, (yyvsp[(2) - (4)].lex_str).str, (yyvsp[(4) - (4)].lex_str).str);
35967 
35968  }
35969  else
35970  {
35971  (yyval.item)= new (thd->mem_root) Item_ref(Lex->current_context(),
35972  NullS, (yyvsp[(2) - (4)].lex_str).str, (yyvsp[(4) - (4)].lex_str).str);
35973  }
35974  if ((yyval.item) == NULL)
35975  MYSQL_YYABORT;
35976  }
35977  break;
35978 
35979  case 1961:
35980 
35981 /* Line 1455 of yacc.c */
35982 #line 13768 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
35983  {
35984  THD *thd= YYTHD;
35985  LEX *lex= thd->lex;
35986  SELECT_LEX *sel= lex->current_select;
35987  const char* schema= (thd->client_capabilities & CLIENT_NO_SCHEMA ?
35988  NullS : (yyvsp[(1) - (5)].lex_str).str);
35989  if (sel->no_table_names_allowed)
35990  {
35991  my_error(ER_TABLENAME_NOT_ALLOWED_HERE,
35992  MYF(0), (yyvsp[(3) - (5)].lex_str).str, thd->where);
35993  }
35994  if ((sel->parsing_place != IN_HAVING) ||
35995  (sel->get_in_sum_expr() > 0))
35996  {
35997  (yyval.item)= new (thd->mem_root) Item_field(Lex->current_context(),
35998  schema,
35999  (yyvsp[(3) - (5)].lex_str).str, (yyvsp[(5) - (5)].lex_str).str);
36000  }
36001  else
36002  {
36003  (yyval.item)= new (thd->mem_root) Item_ref(Lex->current_context(),
36004  schema,
36005  (yyvsp[(3) - (5)].lex_str).str, (yyvsp[(5) - (5)].lex_str).str);
36006  }
36007  if ((yyval.item) == NULL)
36008  MYSQL_YYABORT;
36009  }
36010  break;
36011 
36012  case 1962:
36013 
36014 /* Line 1455 of yacc.c */
36015 #line 13798 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36016  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
36017  break;
36018 
36019  case 1963:
36020 
36021 /* Line 1455 of yacc.c */
36022 #line 13800 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36023  {
36024  TABLE_LIST *table= Select->table_list.first;
36025  if (my_strcasecmp(table_alias_charset, (yyvsp[(1) - (5)].lex_str).str, table->db))
36026  {
36027  my_error(ER_WRONG_DB_NAME, MYF(0), (yyvsp[(1) - (5)].lex_str).str);
36028  MYSQL_YYABORT;
36029  }
36030  if (my_strcasecmp(table_alias_charset, (yyvsp[(3) - (5)].lex_str).str,
36031  table->table_name))
36032  {
36033  my_error(ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[(3) - (5)].lex_str).str);
36034  MYSQL_YYABORT;
36035  }
36036  (yyval.lex_str)=(yyvsp[(5) - (5)].lex_str);
36037  }
36038  break;
36039 
36040  case 1964:
36041 
36042 /* Line 1455 of yacc.c */
36043 #line 13816 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36044  {
36045  TABLE_LIST *table= Select->table_list.first;
36046  if (my_strcasecmp(table_alias_charset, (yyvsp[(1) - (3)].lex_str).str, table->alias))
36047  {
36048  my_error(ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[(1) - (3)].lex_str).str);
36049  MYSQL_YYABORT;
36050  }
36051  (yyval.lex_str)=(yyvsp[(3) - (3)].lex_str);
36052  }
36053  break;
36054 
36055  case 1965:
36056 
36057 /* Line 1455 of yacc.c */
36058 #line 13825 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36059  { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str);}
36060  break;
36061 
36062  case 1966:
36063 
36064 /* Line 1455 of yacc.c */
36065 #line 13830 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36066  {
36067  (yyval.table)= new Table_ident((yyvsp[(1) - (1)].lex_str));
36068  if ((yyval.table) == NULL)
36069  MYSQL_YYABORT;
36070  }
36071  break;
36072 
36073  case 1967:
36074 
36075 /* Line 1455 of yacc.c */
36076 #line 13836 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36077  {
36078  (yyval.table)= new Table_ident(YYTHD, (yyvsp[(1) - (3)].lex_str),(yyvsp[(3) - (3)].lex_str),0);
36079  if ((yyval.table) == NULL)
36080  MYSQL_YYABORT;
36081  }
36082  break;
36083 
36084  case 1968:
36085 
36086 /* Line 1455 of yacc.c */
36087 #line 13842 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36088  {
36089  /* For Delphi */
36090  (yyval.table)= new Table_ident((yyvsp[(2) - (2)].lex_str));
36091  if ((yyval.table) == NULL)
36092  MYSQL_YYABORT;
36093  }
36094  break;
36095 
36096  case 1969:
36097 
36098 /* Line 1455 of yacc.c */
36099 #line 13852 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36100  {
36101  (yyval.table)= new Table_ident((yyvsp[(1) - (2)].lex_str));
36102  if ((yyval.table) == NULL)
36103  MYSQL_YYABORT;
36104  }
36105  break;
36106 
36107  case 1970:
36108 
36109 /* Line 1455 of yacc.c */
36110 #line 13858 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36111  {
36112  (yyval.table)= new Table_ident(YYTHD, (yyvsp[(1) - (4)].lex_str),(yyvsp[(3) - (4)].lex_str),0);
36113  if ((yyval.table) == NULL)
36114  MYSQL_YYABORT;
36115  }
36116  break;
36117 
36118  case 1971:
36119 
36120 /* Line 1455 of yacc.c */
36121 #line 13867 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36122  {
36123  LEX_STRING db={(char*) any_db,3};
36124  (yyval.table)= new Table_ident(YYTHD, db,(yyvsp[(1) - (1)].lex_str),0);
36125  if ((yyval.table) == NULL)
36126  MYSQL_YYABORT;
36127  }
36128  break;
36129 
36130  case 1972:
36131 
36132 /* Line 1455 of yacc.c */
36133 #line 13876 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36134  { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
36135  break;
36136 
36137  case 1973:
36138 
36139 /* Line 1455 of yacc.c */
36140 #line 13878 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36141  {
36142  THD *thd= YYTHD;
36143 
36144  if (thd->charset_is_system_charset)
36145  {
36146  const CHARSET_INFO *cs= system_charset_info;
36147  int dummy_error;
36148  uint wlen= cs->cset->well_formed_len(cs, (yyvsp[(1) - (1)].lex_str).str,
36149  (yyvsp[(1) - (1)].lex_str).str+(yyvsp[(1) - (1)].lex_str).length,
36150  (yyvsp[(1) - (1)].lex_str).length, &dummy_error);
36151  if (wlen < (yyvsp[(1) - (1)].lex_str).length)
36152  {
36153  ErrConvString err((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length, &my_charset_bin);
36154  my_error(ER_INVALID_CHARACTER_STRING, MYF(0),
36155  cs->csname, err.ptr());
36156  MYSQL_YYABORT;
36157  }
36158  (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str);
36159  }
36160  else
36161  {
36162  if (thd->convert_string(&(yyval.lex_str), system_charset_info,
36163  (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length, thd->charset()))
36164  MYSQL_YYABORT;
36165  }
36166  }
36167  break;
36168 
36169  case 1974:
36170 
36171 /* Line 1455 of yacc.c */
36172 #line 13908 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36173  {
36174  if (!strcont((yyvsp[(1) - (1)].lex_str).str, "\n"))
36175  (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str);
36176  else
36177  {
36178  my_error(ER_WRONG_VALUE, MYF(0), "argument contains not-allowed LF", (yyvsp[(1) - (1)].lex_str).str);
36179  MYSQL_YYABORT;
36180  }
36181  }
36182  break;
36183 
36184  case 1975:
36185 
36186 /* Line 1455 of yacc.c */
36187 #line 13921 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36188  {
36189  THD *thd= YYTHD;
36190 
36191  if (thd->charset_is_system_charset)
36192  (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str);
36193  else
36194  {
36195  if (thd->convert_string(&(yyval.lex_str), system_charset_info,
36196  (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length, thd->charset()))
36197  MYSQL_YYABORT;
36198  }
36199  }
36200  break;
36201 
36202  case 1976:
36203 
36204 /* Line 1455 of yacc.c */
36205 #line 13937 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36206  {
36207  THD *thd= YYTHD;
36208 
36209  if (thd->charset_is_collation_connection)
36210  (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str);
36211  else
36212  {
36213  if (thd->convert_string(&(yyval.lex_str), thd->variables.collation_connection,
36214  (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length, thd->charset()))
36215  MYSQL_YYABORT;
36216  }
36217  }
36218  break;
36219 
36220  case 1977:
36221 
36222 /* Line 1455 of yacc.c */
36223 #line 13953 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36224  {
36225  THD *thd= YYTHD;
36226 
36227  if (thd->charset_is_character_set_filesystem)
36228  (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str);
36229  else
36230  {
36231  if (thd->convert_string(&(yyval.lex_str),
36232  thd->variables.character_set_filesystem,
36233  (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length, thd->charset()))
36234  MYSQL_YYABORT;
36235  }
36236  }
36237  break;
36238 
36239  case 1978:
36240 
36241 /* Line 1455 of yacc.c */
36242 #line 13969 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36243  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
36244  break;
36245 
36246  case 1979:
36247 
36248 /* Line 1455 of yacc.c */
36249 #line 13971 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36250  {
36251  THD *thd= YYTHD;
36252  (yyval.lex_str).str= thd->strmake((yyvsp[(1) - (1)].symbol).str, (yyvsp[(1) - (1)].symbol).length);
36253  if ((yyval.lex_str).str == NULL)
36254  MYSQL_YYABORT;
36255  (yyval.lex_str).length= (yyvsp[(1) - (1)].symbol).length;
36256  }
36257  break;
36258 
36259  case 1980:
36260 
36261 /* Line 1455 of yacc.c */
36262 #line 13981 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36263  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
36264  break;
36265 
36266  case 1981:
36267 
36268 /* Line 1455 of yacc.c */
36269 #line 13983 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36270  {
36271  THD *thd= YYTHD;
36272  (yyval.lex_str).str= thd->strmake((yyvsp[(1) - (1)].symbol).str, (yyvsp[(1) - (1)].symbol).length);
36273  if ((yyval.lex_str).str == NULL)
36274  MYSQL_YYABORT;
36275  (yyval.lex_str).length= (yyvsp[(1) - (1)].symbol).length;
36276  }
36277  break;
36278 
36279  case 1982:
36280 
36281 /* Line 1455 of yacc.c */
36282 #line 13993 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36283  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
36284  break;
36285 
36286  case 1983:
36287 
36288 /* Line 1455 of yacc.c */
36289 #line 13994 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36290  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
36291  break;
36292 
36293  case 1984:
36294 
36295 /* Line 1455 of yacc.c */
36296 #line 13995 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36297  { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
36298  break;
36299 
36300  case 1985:
36301 
36302 /* Line 1455 of yacc.c */
36303 #line 14000 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36304  {
36305  THD *thd= YYTHD;
36306  if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user))))
36307  MYSQL_YYABORT;
36308  (yyval.lex_user)->user= (yyvsp[(1) - (1)].lex_str);
36309  (yyval.lex_user)->host.str= (char *) "%";
36310  (yyval.lex_user)->host.length= 1;
36311  (yyval.lex_user)->password= null_lex_str;
36312  (yyval.lex_user)->plugin= empty_lex_str;
36313  (yyval.lex_user)->auth= empty_lex_str;
36314  (yyval.lex_user)->uses_identified_by_clause= false;
36315  (yyval.lex_user)->uses_identified_with_clause= false;
36316  (yyval.lex_user)->uses_identified_by_password_clause= false;
36317  (yyval.lex_user)->uses_authentication_string_clause= false;
36318 
36319  /*
36320  Trim whitespace as the values will go to a CHAR field
36321  when stored.
36322  */
36323  trim_whitespace(system_charset_info, &(yyval.lex_user)->user);
36324 
36325  if (check_string_char_length(&(yyval.lex_user)->user, ER(ER_USERNAME),
36326  USERNAME_CHAR_LENGTH,
36327  system_charset_info, 0))
36328  MYSQL_YYABORT;
36329  }
36330  break;
36331 
36332  case 1986:
36333 
36334 /* Line 1455 of yacc.c */
36335 #line 14027 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36336  {
36337  THD *thd= YYTHD;
36338  if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user))))
36339  MYSQL_YYABORT;
36340  (yyval.lex_user)->user= (yyvsp[(1) - (3)].lex_str);
36341  (yyval.lex_user)->host= (yyvsp[(3) - (3)].lex_str);
36342  (yyval.lex_user)->password= null_lex_str;
36343  (yyval.lex_user)->plugin= empty_lex_str;
36344  (yyval.lex_user)->auth= empty_lex_str;
36345  (yyval.lex_user)->uses_identified_by_clause= false;
36346  (yyval.lex_user)->uses_identified_with_clause= false;
36347  (yyval.lex_user)->uses_identified_by_password_clause= false;
36348  (yyval.lex_user)->uses_authentication_string_clause= false;
36349 
36350  if (check_string_char_length(&(yyval.lex_user)->user, ER(ER_USERNAME),
36351  USERNAME_CHAR_LENGTH,
36352  system_charset_info, 0) ||
36353  check_host_name(&(yyval.lex_user)->host))
36354  MYSQL_YYABORT;
36355  /*
36356  Convert hostname part of username to lowercase.
36357  It's OK to use in-place lowercase as long as
36358  the character set is utf8.
36359  */
36360  my_casedn_str(system_charset_info, (yyval.lex_user)->host.str);
36361  /*
36362  Trim whitespace as the values will go to a CHAR field
36363  when stored.
36364  */
36365  trim_whitespace(system_charset_info, &(yyval.lex_user)->user);
36366  trim_whitespace(system_charset_info, &(yyval.lex_user)->host);
36367  }
36368  break;
36369 
36370  case 1987:
36371 
36372 /* Line 1455 of yacc.c */
36373 #line 14060 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36374  {
36375  if (!((yyval.lex_user)=(LEX_USER*) YYTHD->alloc(sizeof(st_lex_user))))
36376  MYSQL_YYABORT;
36377  /*
36378  empty LEX_USER means current_user and
36379  will be handled in the get_current_user() function
36380  later
36381  */
36382  memset((yyval.lex_user), 0, sizeof(LEX_USER));
36383  }
36384  break;
36385 
36386  case 1988:
36387 
36388 /* Line 1455 of yacc.c */
36389 #line 14074 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36390  {}
36391  break;
36392 
36393  case 1989:
36394 
36395 /* Line 1455 of yacc.c */
36396 #line 14075 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36397  {}
36398  break;
36399 
36400  case 1990:
36401 
36402 /* Line 1455 of yacc.c */
36403 #line 14076 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36404  {}
36405  break;
36406 
36407  case 1991:
36408 
36409 /* Line 1455 of yacc.c */
36410 #line 14077 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36411  {}
36412  break;
36413 
36414  case 1992:
36415 
36416 /* Line 1455 of yacc.c */
36417 #line 14078 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36418  {}
36419  break;
36420 
36421  case 1993:
36422 
36423 /* Line 1455 of yacc.c */
36424 #line 14079 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36425  {}
36426  break;
36427 
36428  case 1994:
36429 
36430 /* Line 1455 of yacc.c */
36431 #line 14080 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36432  {}
36433  break;
36434 
36435  case 1995:
36436 
36437 /* Line 1455 of yacc.c */
36438 #line 14081 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36439  {}
36440  break;
36441 
36442  case 1996:
36443 
36444 /* Line 1455 of yacc.c */
36445 #line 14082 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36446  {}
36447  break;
36448 
36449  case 1997:
36450 
36451 /* Line 1455 of yacc.c */
36452 #line 14083 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36453  {}
36454  break;
36455 
36456  case 1998:
36457 
36458 /* Line 1455 of yacc.c */
36459 #line 14084 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36460  {}
36461  break;
36462 
36463  case 1999:
36464 
36465 /* Line 1455 of yacc.c */
36466 #line 14085 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36467  {}
36468  break;
36469 
36470  case 2000:
36471 
36472 /* Line 1455 of yacc.c */
36473 #line 14086 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36474  {}
36475  break;
36476 
36477  case 2001:
36478 
36479 /* Line 1455 of yacc.c */
36480 #line 14087 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36481  {}
36482  break;
36483 
36484  case 2002:
36485 
36486 /* Line 1455 of yacc.c */
36487 #line 14088 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36488  {}
36489  break;
36490 
36491  case 2003:
36492 
36493 /* Line 1455 of yacc.c */
36494 #line 14089 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36495  {}
36496  break;
36497 
36498  case 2004:
36499 
36500 /* Line 1455 of yacc.c */
36501 #line 14090 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36502  {}
36503  break;
36504 
36505  case 2005:
36506 
36507 /* Line 1455 of yacc.c */
36508 #line 14091 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36509  {}
36510  break;
36511 
36512  case 2006:
36513 
36514 /* Line 1455 of yacc.c */
36515 #line 14092 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36516  {}
36517  break;
36518 
36519  case 2007:
36520 
36521 /* Line 1455 of yacc.c */
36522 #line 14093 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36523  {}
36524  break;
36525 
36526  case 2008:
36527 
36528 /* Line 1455 of yacc.c */
36529 #line 14094 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36530  {}
36531  break;
36532 
36533  case 2009:
36534 
36535 /* Line 1455 of yacc.c */
36536 #line 14095 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36537  {}
36538  break;
36539 
36540  case 2010:
36541 
36542 /* Line 1455 of yacc.c */
36543 #line 14096 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36544  {}
36545  break;
36546 
36547  case 2011:
36548 
36549 /* Line 1455 of yacc.c */
36550 #line 14097 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36551  {}
36552  break;
36553 
36554  case 2012:
36555 
36556 /* Line 1455 of yacc.c */
36557 #line 14098 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36558  {}
36559  break;
36560 
36561  case 2013:
36562 
36563 /* Line 1455 of yacc.c */
36564 #line 14099 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36565  {}
36566  break;
36567 
36568  case 2014:
36569 
36570 /* Line 1455 of yacc.c */
36571 #line 14100 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36572  {}
36573  break;
36574 
36575  case 2015:
36576 
36577 /* Line 1455 of yacc.c */
36578 #line 14101 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36579  {}
36580  break;
36581 
36582  case 2016:
36583 
36584 /* Line 1455 of yacc.c */
36585 #line 14102 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36586  {}
36587  break;
36588 
36589  case 2017:
36590 
36591 /* Line 1455 of yacc.c */
36592 #line 14103 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36593  {}
36594  break;
36595 
36596  case 2018:
36597 
36598 /* Line 1455 of yacc.c */
36599 #line 14104 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36600  {}
36601  break;
36602 
36603  case 2019:
36604 
36605 /* Line 1455 of yacc.c */
36606 #line 14105 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36607  {}
36608  break;
36609 
36610  case 2020:
36611 
36612 /* Line 1455 of yacc.c */
36613 #line 14106 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36614  {}
36615  break;
36616 
36617  case 2021:
36618 
36619 /* Line 1455 of yacc.c */
36620 #line 14107 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36621  {}
36622  break;
36623 
36624  case 2022:
36625 
36626 /* Line 1455 of yacc.c */
36627 #line 14108 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36628  {}
36629  break;
36630 
36631  case 2023:
36632 
36633 /* Line 1455 of yacc.c */
36634 #line 14109 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36635  {}
36636  break;
36637 
36638  case 2024:
36639 
36640 /* Line 1455 of yacc.c */
36641 #line 14110 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36642  {}
36643  break;
36644 
36645  case 2025:
36646 
36647 /* Line 1455 of yacc.c */
36648 #line 14111 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36649  {}
36650  break;
36651 
36652  case 2026:
36653 
36654 /* Line 1455 of yacc.c */
36655 #line 14112 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36656  {}
36657  break;
36658 
36659  case 2027:
36660 
36661 /* Line 1455 of yacc.c */
36662 #line 14113 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36663  {}
36664  break;
36665 
36666  case 2028:
36667 
36668 /* Line 1455 of yacc.c */
36669 #line 14114 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36670  {}
36671  break;
36672 
36673  case 2029:
36674 
36675 /* Line 1455 of yacc.c */
36676 #line 14115 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36677  {}
36678  break;
36679 
36680  case 2030:
36681 
36682 /* Line 1455 of yacc.c */
36683 #line 14116 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36684  {}
36685  break;
36686 
36687  case 2031:
36688 
36689 /* Line 1455 of yacc.c */
36690 #line 14117 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36691  {}
36692  break;
36693 
36694  case 2032:
36695 
36696 /* Line 1455 of yacc.c */
36697 #line 14118 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36698  {}
36699  break;
36700 
36701  case 2033:
36702 
36703 /* Line 1455 of yacc.c */
36704 #line 14119 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36705  {}
36706  break;
36707 
36708  case 2034:
36709 
36710 /* Line 1455 of yacc.c */
36711 #line 14120 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36712  {}
36713  break;
36714 
36715  case 2035:
36716 
36717 /* Line 1455 of yacc.c */
36718 #line 14121 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36719  {}
36720  break;
36721 
36722  case 2036:
36723 
36724 /* Line 1455 of yacc.c */
36725 #line 14122 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36726  {}
36727  break;
36728 
36729  case 2037:
36730 
36731 /* Line 1455 of yacc.c */
36732 #line 14123 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36733  {}
36734  break;
36735 
36736  case 2038:
36737 
36738 /* Line 1455 of yacc.c */
36739 #line 14133 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36740  {}
36741  break;
36742 
36743  case 2039:
36744 
36745 /* Line 1455 of yacc.c */
36746 #line 14134 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36747  {}
36748  break;
36749 
36750  case 2040:
36751 
36752 /* Line 1455 of yacc.c */
36753 #line 14135 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36754  {}
36755  break;
36756 
36757  case 2041:
36758 
36759 /* Line 1455 of yacc.c */
36760 #line 14136 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36761  {}
36762  break;
36763 
36764  case 2042:
36765 
36766 /* Line 1455 of yacc.c */
36767 #line 14137 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36768  {}
36769  break;
36770 
36771  case 2043:
36772 
36773 /* Line 1455 of yacc.c */
36774 #line 14138 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36775  {}
36776  break;
36777 
36778  case 2044:
36779 
36780 /* Line 1455 of yacc.c */
36781 #line 14139 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36782  {}
36783  break;
36784 
36785  case 2045:
36786 
36787 /* Line 1455 of yacc.c */
36788 #line 14140 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36789  {}
36790  break;
36791 
36792  case 2046:
36793 
36794 /* Line 1455 of yacc.c */
36795 #line 14141 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36796  {}
36797  break;
36798 
36799  case 2047:
36800 
36801 /* Line 1455 of yacc.c */
36802 #line 14142 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36803  {}
36804  break;
36805 
36806  case 2048:
36807 
36808 /* Line 1455 of yacc.c */
36809 #line 14143 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36810  {}
36811  break;
36812 
36813  case 2049:
36814 
36815 /* Line 1455 of yacc.c */
36816 #line 14144 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36817  {}
36818  break;
36819 
36820  case 2050:
36821 
36822 /* Line 1455 of yacc.c */
36823 #line 14145 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36824  {}
36825  break;
36826 
36827  case 2051:
36828 
36829 /* Line 1455 of yacc.c */
36830 #line 14146 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36831  {}
36832  break;
36833 
36834  case 2052:
36835 
36836 /* Line 1455 of yacc.c */
36837 #line 14147 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36838  {}
36839  break;
36840 
36841  case 2053:
36842 
36843 /* Line 1455 of yacc.c */
36844 #line 14148 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36845  {}
36846  break;
36847 
36848  case 2054:
36849 
36850 /* Line 1455 of yacc.c */
36851 #line 14149 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36852  {}
36853  break;
36854 
36855  case 2055:
36856 
36857 /* Line 1455 of yacc.c */
36858 #line 14150 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36859  {}
36860  break;
36861 
36862  case 2056:
36863 
36864 /* Line 1455 of yacc.c */
36865 #line 14151 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36866  {}
36867  break;
36868 
36869  case 2057:
36870 
36871 /* Line 1455 of yacc.c */
36872 #line 14152 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36873  {}
36874  break;
36875 
36876  case 2058:
36877 
36878 /* Line 1455 of yacc.c */
36879 #line 14153 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36880  {}
36881  break;
36882 
36883  case 2059:
36884 
36885 /* Line 1455 of yacc.c */
36886 #line 14154 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36887  {}
36888  break;
36889 
36890  case 2060:
36891 
36892 /* Line 1455 of yacc.c */
36893 #line 14155 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36894  {}
36895  break;
36896 
36897  case 2061:
36898 
36899 /* Line 1455 of yacc.c */
36900 #line 14156 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36901  {}
36902  break;
36903 
36904  case 2062:
36905 
36906 /* Line 1455 of yacc.c */
36907 #line 14157 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36908  {}
36909  break;
36910 
36911  case 2063:
36912 
36913 /* Line 1455 of yacc.c */
36914 #line 14158 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36915  {}
36916  break;
36917 
36918  case 2064:
36919 
36920 /* Line 1455 of yacc.c */
36921 #line 14159 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36922  {}
36923  break;
36924 
36925  case 2065:
36926 
36927 /* Line 1455 of yacc.c */
36928 #line 14160 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36929  {}
36930  break;
36931 
36932  case 2066:
36933 
36934 /* Line 1455 of yacc.c */
36935 #line 14161 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36936  {}
36937  break;
36938 
36939  case 2067:
36940 
36941 /* Line 1455 of yacc.c */
36942 #line 14162 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36943  {}
36944  break;
36945 
36946  case 2068:
36947 
36948 /* Line 1455 of yacc.c */
36949 #line 14163 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36950  {}
36951  break;
36952 
36953  case 2069:
36954 
36955 /* Line 1455 of yacc.c */
36956 #line 14164 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36957  {}
36958  break;
36959 
36960  case 2070:
36961 
36962 /* Line 1455 of yacc.c */
36963 #line 14165 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36964  {}
36965  break;
36966 
36967  case 2071:
36968 
36969 /* Line 1455 of yacc.c */
36970 #line 14166 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36971  {}
36972  break;
36973 
36974  case 2072:
36975 
36976 /* Line 1455 of yacc.c */
36977 #line 14167 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36978  {}
36979  break;
36980 
36981  case 2073:
36982 
36983 /* Line 1455 of yacc.c */
36984 #line 14168 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36985  {}
36986  break;
36987 
36988  case 2074:
36989 
36990 /* Line 1455 of yacc.c */
36991 #line 14169 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36992  {}
36993  break;
36994 
36995  case 2075:
36996 
36997 /* Line 1455 of yacc.c */
36998 #line 14170 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
36999  {}
37000  break;
37001 
37002  case 2076:
37003 
37004 /* Line 1455 of yacc.c */
37005 #line 14171 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37006  {}
37007  break;
37008 
37009  case 2077:
37010 
37011 /* Line 1455 of yacc.c */
37012 #line 14172 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37013  {}
37014  break;
37015 
37016  case 2078:
37017 
37018 /* Line 1455 of yacc.c */
37019 #line 14173 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37020  {}
37021  break;
37022 
37023  case 2079:
37024 
37025 /* Line 1455 of yacc.c */
37026 #line 14174 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37027  {}
37028  break;
37029 
37030  case 2080:
37031 
37032 /* Line 1455 of yacc.c */
37033 #line 14175 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37034  {}
37035  break;
37036 
37037  case 2081:
37038 
37039 /* Line 1455 of yacc.c */
37040 #line 14176 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37041  {}
37042  break;
37043 
37044  case 2082:
37045 
37046 /* Line 1455 of yacc.c */
37047 #line 14177 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37048  {}
37049  break;
37050 
37051  case 2083:
37052 
37053 /* Line 1455 of yacc.c */
37054 #line 14182 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37055  {}
37056  break;
37057 
37058  case 2084:
37059 
37060 /* Line 1455 of yacc.c */
37061 #line 14183 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37062  {}
37063  break;
37064 
37065  case 2085:
37066 
37067 /* Line 1455 of yacc.c */
37068 #line 14184 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37069  {}
37070  break;
37071 
37072  case 2086:
37073 
37074 /* Line 1455 of yacc.c */
37075 #line 14185 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37076  {}
37077  break;
37078 
37079  case 2087:
37080 
37081 /* Line 1455 of yacc.c */
37082 #line 14186 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37083  {}
37084  break;
37085 
37086  case 2088:
37087 
37088 /* Line 1455 of yacc.c */
37089 #line 14187 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37090  {}
37091  break;
37092 
37093  case 2089:
37094 
37095 /* Line 1455 of yacc.c */
37096 #line 14188 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37097  {}
37098  break;
37099 
37100  case 2090:
37101 
37102 /* Line 1455 of yacc.c */
37103 #line 14189 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37104  {}
37105  break;
37106 
37107  case 2091:
37108 
37109 /* Line 1455 of yacc.c */
37110 #line 14190 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37111  {}
37112  break;
37113 
37114  case 2092:
37115 
37116 /* Line 1455 of yacc.c */
37117 #line 14191 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37118  {}
37119  break;
37120 
37121  case 2093:
37122 
37123 /* Line 1455 of yacc.c */
37124 #line 14192 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37125  {}
37126  break;
37127 
37128  case 2094:
37129 
37130 /* Line 1455 of yacc.c */
37131 #line 14193 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37132  {}
37133  break;
37134 
37135  case 2095:
37136 
37137 /* Line 1455 of yacc.c */
37138 #line 14194 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37139  {}
37140  break;
37141 
37142  case 2096:
37143 
37144 /* Line 1455 of yacc.c */
37145 #line 14195 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37146  {}
37147  break;
37148 
37149  case 2097:
37150 
37151 /* Line 1455 of yacc.c */
37152 #line 14196 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37153  {}
37154  break;
37155 
37156  case 2098:
37157 
37158 /* Line 1455 of yacc.c */
37159 #line 14197 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37160  {}
37161  break;
37162 
37163  case 2099:
37164 
37165 /* Line 1455 of yacc.c */
37166 #line 14198 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37167  {}
37168  break;
37169 
37170  case 2100:
37171 
37172 /* Line 1455 of yacc.c */
37173 #line 14199 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37174  {}
37175  break;
37176 
37177  case 2101:
37178 
37179 /* Line 1455 of yacc.c */
37180 #line 14200 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37181  {}
37182  break;
37183 
37184  case 2102:
37185 
37186 /* Line 1455 of yacc.c */
37187 #line 14201 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37188  {}
37189  break;
37190 
37191  case 2103:
37192 
37193 /* Line 1455 of yacc.c */
37194 #line 14202 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37195  {}
37196  break;
37197 
37198  case 2104:
37199 
37200 /* Line 1455 of yacc.c */
37201 #line 14203 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37202  {}
37203  break;
37204 
37205  case 2105:
37206 
37207 /* Line 1455 of yacc.c */
37208 #line 14204 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37209  {}
37210  break;
37211 
37212  case 2106:
37213 
37214 /* Line 1455 of yacc.c */
37215 #line 14205 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37216  {}
37217  break;
37218 
37219  case 2107:
37220 
37221 /* Line 1455 of yacc.c */
37222 #line 14206 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37223  {}
37224  break;
37225 
37226  case 2108:
37227 
37228 /* Line 1455 of yacc.c */
37229 #line 14207 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37230  {}
37231  break;
37232 
37233  case 2109:
37234 
37235 /* Line 1455 of yacc.c */
37236 #line 14208 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37237  {}
37238  break;
37239 
37240  case 2110:
37241 
37242 /* Line 1455 of yacc.c */
37243 #line 14209 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37244  {}
37245  break;
37246 
37247  case 2111:
37248 
37249 /* Line 1455 of yacc.c */
37250 #line 14210 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37251  {}
37252  break;
37253 
37254  case 2112:
37255 
37256 /* Line 1455 of yacc.c */
37257 #line 14211 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37258  {}
37259  break;
37260 
37261  case 2113:
37262 
37263 /* Line 1455 of yacc.c */
37264 #line 14212 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37265  {}
37266  break;
37267 
37268  case 2114:
37269 
37270 /* Line 1455 of yacc.c */
37271 #line 14213 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37272  {}
37273  break;
37274 
37275  case 2115:
37276 
37277 /* Line 1455 of yacc.c */
37278 #line 14214 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37279  {}
37280  break;
37281 
37282  case 2116:
37283 
37284 /* Line 1455 of yacc.c */
37285 #line 14215 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37286  {}
37287  break;
37288 
37289  case 2117:
37290 
37291 /* Line 1455 of yacc.c */
37292 #line 14216 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37293  {}
37294  break;
37295 
37296  case 2118:
37297 
37298 /* Line 1455 of yacc.c */
37299 #line 14217 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37300  {}
37301  break;
37302 
37303  case 2119:
37304 
37305 /* Line 1455 of yacc.c */
37306 #line 14218 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37307  {}
37308  break;
37309 
37310  case 2120:
37311 
37312 /* Line 1455 of yacc.c */
37313 #line 14219 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37314  {}
37315  break;
37316 
37317  case 2121:
37318 
37319 /* Line 1455 of yacc.c */
37320 #line 14220 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37321  {}
37322  break;
37323 
37324  case 2122:
37325 
37326 /* Line 1455 of yacc.c */
37327 #line 14221 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37328  {}
37329  break;
37330 
37331  case 2123:
37332 
37333 /* Line 1455 of yacc.c */
37334 #line 14222 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37335  {}
37336  break;
37337 
37338  case 2124:
37339 
37340 /* Line 1455 of yacc.c */
37341 #line 14223 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37342  {}
37343  break;
37344 
37345  case 2125:
37346 
37347 /* Line 1455 of yacc.c */
37348 #line 14224 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37349  {}
37350  break;
37351 
37352  case 2126:
37353 
37354 /* Line 1455 of yacc.c */
37355 #line 14225 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37356  {}
37357  break;
37358 
37359  case 2127:
37360 
37361 /* Line 1455 of yacc.c */
37362 #line 14226 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37363  {}
37364  break;
37365 
37366  case 2128:
37367 
37368 /* Line 1455 of yacc.c */
37369 #line 14227 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37370  {}
37371  break;
37372 
37373  case 2129:
37374 
37375 /* Line 1455 of yacc.c */
37376 #line 14228 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37377  {}
37378  break;
37379 
37380  case 2130:
37381 
37382 /* Line 1455 of yacc.c */
37383 #line 14229 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37384  {}
37385  break;
37386 
37387  case 2131:
37388 
37389 /* Line 1455 of yacc.c */
37390 #line 14230 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37391  {}
37392  break;
37393 
37394  case 2132:
37395 
37396 /* Line 1455 of yacc.c */
37397 #line 14231 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37398  {}
37399  break;
37400 
37401  case 2133:
37402 
37403 /* Line 1455 of yacc.c */
37404 #line 14232 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37405  {}
37406  break;
37407 
37408  case 2134:
37409 
37410 /* Line 1455 of yacc.c */
37411 #line 14233 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37412  {}
37413  break;
37414 
37415  case 2135:
37416 
37417 /* Line 1455 of yacc.c */
37418 #line 14234 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37419  {}
37420  break;
37421 
37422  case 2136:
37423 
37424 /* Line 1455 of yacc.c */
37425 #line 14235 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37426  {}
37427  break;
37428 
37429  case 2137:
37430 
37431 /* Line 1455 of yacc.c */
37432 #line 14236 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37433  {}
37434  break;
37435 
37436  case 2138:
37437 
37438 /* Line 1455 of yacc.c */
37439 #line 14237 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37440  {}
37441  break;
37442 
37443  case 2139:
37444 
37445 /* Line 1455 of yacc.c */
37446 #line 14238 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37447  {}
37448  break;
37449 
37450  case 2140:
37451 
37452 /* Line 1455 of yacc.c */
37453 #line 14239 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37454  {}
37455  break;
37456 
37457  case 2141:
37458 
37459 /* Line 1455 of yacc.c */
37460 #line 14240 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37461  {}
37462  break;
37463 
37464  case 2142:
37465 
37466 /* Line 1455 of yacc.c */
37467 #line 14241 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37468  {}
37469  break;
37470 
37471  case 2143:
37472 
37473 /* Line 1455 of yacc.c */
37474 #line 14242 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37475  {}
37476  break;
37477 
37478  case 2144:
37479 
37480 /* Line 1455 of yacc.c */
37481 #line 14243 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37482  {}
37483  break;
37484 
37485  case 2145:
37486 
37487 /* Line 1455 of yacc.c */
37488 #line 14244 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37489  {}
37490  break;
37491 
37492  case 2146:
37493 
37494 /* Line 1455 of yacc.c */
37495 #line 14245 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37496  {}
37497  break;
37498 
37499  case 2147:
37500 
37501 /* Line 1455 of yacc.c */
37502 #line 14246 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37503  {}
37504  break;
37505 
37506  case 2148:
37507 
37508 /* Line 1455 of yacc.c */
37509 #line 14247 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37510  {}
37511  break;
37512 
37513  case 2149:
37514 
37515 /* Line 1455 of yacc.c */
37516 #line 14248 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37517  {}
37518  break;
37519 
37520  case 2150:
37521 
37522 /* Line 1455 of yacc.c */
37523 #line 14249 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37524  {}
37525  break;
37526 
37527  case 2151:
37528 
37529 /* Line 1455 of yacc.c */
37530 #line 14250 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37531  {}
37532  break;
37533 
37534  case 2152:
37535 
37536 /* Line 1455 of yacc.c */
37537 #line 14251 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37538  {}
37539  break;
37540 
37541  case 2153:
37542 
37543 /* Line 1455 of yacc.c */
37544 #line 14252 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37545  {}
37546  break;
37547 
37548  case 2154:
37549 
37550 /* Line 1455 of yacc.c */
37551 #line 14253 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37552  {}
37553  break;
37554 
37555  case 2155:
37556 
37557 /* Line 1455 of yacc.c */
37558 #line 14254 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37559  {}
37560  break;
37561 
37562  case 2156:
37563 
37564 /* Line 1455 of yacc.c */
37565 #line 14255 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37566  {}
37567  break;
37568 
37569  case 2157:
37570 
37571 /* Line 1455 of yacc.c */
37572 #line 14256 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37573  {}
37574  break;
37575 
37576  case 2158:
37577 
37578 /* Line 1455 of yacc.c */
37579 #line 14257 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37580  {}
37581  break;
37582 
37583  case 2159:
37584 
37585 /* Line 1455 of yacc.c */
37586 #line 14258 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37587  {}
37588  break;
37589 
37590  case 2160:
37591 
37592 /* Line 1455 of yacc.c */
37593 #line 14259 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37594  {}
37595  break;
37596 
37597  case 2161:
37598 
37599 /* Line 1455 of yacc.c */
37600 #line 14260 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37601  {}
37602  break;
37603 
37604  case 2162:
37605 
37606 /* Line 1455 of yacc.c */
37607 #line 14261 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37608  {}
37609  break;
37610 
37611  case 2163:
37612 
37613 /* Line 1455 of yacc.c */
37614 #line 14262 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37615  {}
37616  break;
37617 
37618  case 2164:
37619 
37620 /* Line 1455 of yacc.c */
37621 #line 14263 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37622  {}
37623  break;
37624 
37625  case 2165:
37626 
37627 /* Line 1455 of yacc.c */
37628 #line 14264 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37629  {}
37630  break;
37631 
37632  case 2166:
37633 
37634 /* Line 1455 of yacc.c */
37635 #line 14265 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37636  {}
37637  break;
37638 
37639  case 2167:
37640 
37641 /* Line 1455 of yacc.c */
37642 #line 14266 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37643  {}
37644  break;
37645 
37646  case 2168:
37647 
37648 /* Line 1455 of yacc.c */
37649 #line 14267 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37650  {}
37651  break;
37652 
37653  case 2169:
37654 
37655 /* Line 1455 of yacc.c */
37656 #line 14268 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37657  {}
37658  break;
37659 
37660  case 2170:
37661 
37662 /* Line 1455 of yacc.c */
37663 #line 14269 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37664  {}
37665  break;
37666 
37667  case 2171:
37668 
37669 /* Line 1455 of yacc.c */
37670 #line 14270 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37671  {}
37672  break;
37673 
37674  case 2172:
37675 
37676 /* Line 1455 of yacc.c */
37677 #line 14271 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37678  {}
37679  break;
37680 
37681  case 2173:
37682 
37683 /* Line 1455 of yacc.c */
37684 #line 14272 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37685  {}
37686  break;
37687 
37688  case 2174:
37689 
37690 /* Line 1455 of yacc.c */
37691 #line 14273 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37692  {}
37693  break;
37694 
37695  case 2175:
37696 
37697 /* Line 1455 of yacc.c */
37698 #line 14274 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37699  {}
37700  break;
37701 
37702  case 2176:
37703 
37704 /* Line 1455 of yacc.c */
37705 #line 14275 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37706  {}
37707  break;
37708 
37709  case 2177:
37710 
37711 /* Line 1455 of yacc.c */
37712 #line 14276 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37713  {}
37714  break;
37715 
37716  case 2178:
37717 
37718 /* Line 1455 of yacc.c */
37719 #line 14277 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37720  {}
37721  break;
37722 
37723  case 2179:
37724 
37725 /* Line 1455 of yacc.c */
37726 #line 14278 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37727  {}
37728  break;
37729 
37730  case 2180:
37731 
37732 /* Line 1455 of yacc.c */
37733 #line 14279 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37734  {}
37735  break;
37736 
37737  case 2181:
37738 
37739 /* Line 1455 of yacc.c */
37740 #line 14280 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37741  {}
37742  break;
37743 
37744  case 2182:
37745 
37746 /* Line 1455 of yacc.c */
37747 #line 14281 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37748  {}
37749  break;
37750 
37751  case 2183:
37752 
37753 /* Line 1455 of yacc.c */
37754 #line 14282 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37755  {}
37756  break;
37757 
37758  case 2184:
37759 
37760 /* Line 1455 of yacc.c */
37761 #line 14283 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37762  {}
37763  break;
37764 
37765  case 2185:
37766 
37767 /* Line 1455 of yacc.c */
37768 #line 14284 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37769  {}
37770  break;
37771 
37772  case 2186:
37773 
37774 /* Line 1455 of yacc.c */
37775 #line 14285 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37776  {}
37777  break;
37778 
37779  case 2187:
37780 
37781 /* Line 1455 of yacc.c */
37782 #line 14286 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37783  {}
37784  break;
37785 
37786  case 2188:
37787 
37788 /* Line 1455 of yacc.c */
37789 #line 14287 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37790  {}
37791  break;
37792 
37793  case 2189:
37794 
37795 /* Line 1455 of yacc.c */
37796 #line 14288 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37797  {}
37798  break;
37799 
37800  case 2190:
37801 
37802 /* Line 1455 of yacc.c */
37803 #line 14289 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37804  {}
37805  break;
37806 
37807  case 2191:
37808 
37809 /* Line 1455 of yacc.c */
37810 #line 14290 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37811  {}
37812  break;
37813 
37814  case 2192:
37815 
37816 /* Line 1455 of yacc.c */
37817 #line 14291 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37818  {}
37819  break;
37820 
37821  case 2193:
37822 
37823 /* Line 1455 of yacc.c */
37824 #line 14292 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37825  {}
37826  break;
37827 
37828  case 2194:
37829 
37830 /* Line 1455 of yacc.c */
37831 #line 14293 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37832  {}
37833  break;
37834 
37835  case 2195:
37836 
37837 /* Line 1455 of yacc.c */
37838 #line 14294 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37839  {}
37840  break;
37841 
37842  case 2196:
37843 
37844 /* Line 1455 of yacc.c */
37845 #line 14295 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37846  {}
37847  break;
37848 
37849  case 2197:
37850 
37851 /* Line 1455 of yacc.c */
37852 #line 14296 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37853  {}
37854  break;
37855 
37856  case 2198:
37857 
37858 /* Line 1455 of yacc.c */
37859 #line 14297 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37860  {}
37861  break;
37862 
37863  case 2199:
37864 
37865 /* Line 1455 of yacc.c */
37866 #line 14298 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37867  {}
37868  break;
37869 
37870  case 2200:
37871 
37872 /* Line 1455 of yacc.c */
37873 #line 14299 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37874  {}
37875  break;
37876 
37877  case 2201:
37878 
37879 /* Line 1455 of yacc.c */
37880 #line 14300 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37881  {}
37882  break;
37883 
37884  case 2202:
37885 
37886 /* Line 1455 of yacc.c */
37887 #line 14301 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37888  {}
37889  break;
37890 
37891  case 2203:
37892 
37893 /* Line 1455 of yacc.c */
37894 #line 14302 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37895  {}
37896  break;
37897 
37898  case 2204:
37899 
37900 /* Line 1455 of yacc.c */
37901 #line 14303 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37902  {}
37903  break;
37904 
37905  case 2205:
37906 
37907 /* Line 1455 of yacc.c */
37908 #line 14304 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37909  {}
37910  break;
37911 
37912  case 2206:
37913 
37914 /* Line 1455 of yacc.c */
37915 #line 14305 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37916  {}
37917  break;
37918 
37919  case 2207:
37920 
37921 /* Line 1455 of yacc.c */
37922 #line 14306 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37923  {}
37924  break;
37925 
37926  case 2208:
37927 
37928 /* Line 1455 of yacc.c */
37929 #line 14307 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37930  {}
37931  break;
37932 
37933  case 2209:
37934 
37935 /* Line 1455 of yacc.c */
37936 #line 14308 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37937  {}
37938  break;
37939 
37940  case 2210:
37941 
37942 /* Line 1455 of yacc.c */
37943 #line 14309 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37944  {}
37945  break;
37946 
37947  case 2211:
37948 
37949 /* Line 1455 of yacc.c */
37950 #line 14310 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37951  {}
37952  break;
37953 
37954  case 2212:
37955 
37956 /* Line 1455 of yacc.c */
37957 #line 14311 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37958  {}
37959  break;
37960 
37961  case 2213:
37962 
37963 /* Line 1455 of yacc.c */
37964 #line 14312 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37965  {}
37966  break;
37967 
37968  case 2214:
37969 
37970 /* Line 1455 of yacc.c */
37971 #line 14313 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37972  {}
37973  break;
37974 
37975  case 2215:
37976 
37977 /* Line 1455 of yacc.c */
37978 #line 14314 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37979  {}
37980  break;
37981 
37982  case 2216:
37983 
37984 /* Line 1455 of yacc.c */
37985 #line 14315 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37986  {}
37987  break;
37988 
37989  case 2217:
37990 
37991 /* Line 1455 of yacc.c */
37992 #line 14316 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
37993  {}
37994  break;
37995 
37996  case 2218:
37997 
37998 /* Line 1455 of yacc.c */
37999 #line 14317 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38000  {}
38001  break;
38002 
38003  case 2219:
38004 
38005 /* Line 1455 of yacc.c */
38006 #line 14318 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38007  {}
38008  break;
38009 
38010  case 2220:
38011 
38012 /* Line 1455 of yacc.c */
38013 #line 14319 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38014  {}
38015  break;
38016 
38017  case 2221:
38018 
38019 /* Line 1455 of yacc.c */
38020 #line 14320 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38021  {}
38022  break;
38023 
38024  case 2222:
38025 
38026 /* Line 1455 of yacc.c */
38027 #line 14321 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38028  {}
38029  break;
38030 
38031  case 2223:
38032 
38033 /* Line 1455 of yacc.c */
38034 #line 14322 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38035  {}
38036  break;
38037 
38038  case 2224:
38039 
38040 /* Line 1455 of yacc.c */
38041 #line 14323 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38042  {}
38043  break;
38044 
38045  case 2225:
38046 
38047 /* Line 1455 of yacc.c */
38048 #line 14324 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38049  {}
38050  break;
38051 
38052  case 2226:
38053 
38054 /* Line 1455 of yacc.c */
38055 #line 14325 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38056  {}
38057  break;
38058 
38059  case 2227:
38060 
38061 /* Line 1455 of yacc.c */
38062 #line 14326 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38063  {}
38064  break;
38065 
38066  case 2228:
38067 
38068 /* Line 1455 of yacc.c */
38069 #line 14327 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38070  {}
38071  break;
38072 
38073  case 2229:
38074 
38075 /* Line 1455 of yacc.c */
38076 #line 14328 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38077  {}
38078  break;
38079 
38080  case 2230:
38081 
38082 /* Line 1455 of yacc.c */
38083 #line 14329 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38084  {}
38085  break;
38086 
38087  case 2231:
38088 
38089 /* Line 1455 of yacc.c */
38090 #line 14330 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38091  {}
38092  break;
38093 
38094  case 2232:
38095 
38096 /* Line 1455 of yacc.c */
38097 #line 14331 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38098  {}
38099  break;
38100 
38101  case 2233:
38102 
38103 /* Line 1455 of yacc.c */
38104 #line 14332 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38105  {}
38106  break;
38107 
38108  case 2234:
38109 
38110 /* Line 1455 of yacc.c */
38111 #line 14333 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38112  {}
38113  break;
38114 
38115  case 2235:
38116 
38117 /* Line 1455 of yacc.c */
38118 #line 14334 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38119  {}
38120  break;
38121 
38122  case 2236:
38123 
38124 /* Line 1455 of yacc.c */
38125 #line 14335 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38126  {}
38127  break;
38128 
38129  case 2237:
38130 
38131 /* Line 1455 of yacc.c */
38132 #line 14336 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38133  {}
38134  break;
38135 
38136  case 2238:
38137 
38138 /* Line 1455 of yacc.c */
38139 #line 14337 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38140  {}
38141  break;
38142 
38143  case 2239:
38144 
38145 /* Line 1455 of yacc.c */
38146 #line 14338 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38147  {}
38148  break;
38149 
38150  case 2240:
38151 
38152 /* Line 1455 of yacc.c */
38153 #line 14339 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38154  {}
38155  break;
38156 
38157  case 2241:
38158 
38159 /* Line 1455 of yacc.c */
38160 #line 14340 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38161  {}
38162  break;
38163 
38164  case 2242:
38165 
38166 /* Line 1455 of yacc.c */
38167 #line 14341 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38168  {}
38169  break;
38170 
38171  case 2243:
38172 
38173 /* Line 1455 of yacc.c */
38174 #line 14342 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38175  {}
38176  break;
38177 
38178  case 2244:
38179 
38180 /* Line 1455 of yacc.c */
38181 #line 14343 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38182  {}
38183  break;
38184 
38185  case 2245:
38186 
38187 /* Line 1455 of yacc.c */
38188 #line 14344 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38189  {}
38190  break;
38191 
38192  case 2246:
38193 
38194 /* Line 1455 of yacc.c */
38195 #line 14345 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38196  {}
38197  break;
38198 
38199  case 2247:
38200 
38201 /* Line 1455 of yacc.c */
38202 #line 14346 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38203  {}
38204  break;
38205 
38206  case 2248:
38207 
38208 /* Line 1455 of yacc.c */
38209 #line 14347 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38210  {}
38211  break;
38212 
38213  case 2249:
38214 
38215 /* Line 1455 of yacc.c */
38216 #line 14348 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38217  {}
38218  break;
38219 
38220  case 2250:
38221 
38222 /* Line 1455 of yacc.c */
38223 #line 14349 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38224  {}
38225  break;
38226 
38227  case 2251:
38228 
38229 /* Line 1455 of yacc.c */
38230 #line 14350 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38231  {}
38232  break;
38233 
38234  case 2252:
38235 
38236 /* Line 1455 of yacc.c */
38237 #line 14351 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38238  {}
38239  break;
38240 
38241  case 2253:
38242 
38243 /* Line 1455 of yacc.c */
38244 #line 14352 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38245  {}
38246  break;
38247 
38248  case 2254:
38249 
38250 /* Line 1455 of yacc.c */
38251 #line 14353 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38252  {}
38253  break;
38254 
38255  case 2255:
38256 
38257 /* Line 1455 of yacc.c */
38258 #line 14354 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38259  {}
38260  break;
38261 
38262  case 2256:
38263 
38264 /* Line 1455 of yacc.c */
38265 #line 14355 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38266  {}
38267  break;
38268 
38269  case 2257:
38270 
38271 /* Line 1455 of yacc.c */
38272 #line 14356 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38273  {}
38274  break;
38275 
38276  case 2258:
38277 
38278 /* Line 1455 of yacc.c */
38279 #line 14357 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38280  {}
38281  break;
38282 
38283  case 2259:
38284 
38285 /* Line 1455 of yacc.c */
38286 #line 14358 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38287  {}
38288  break;
38289 
38290  case 2260:
38291 
38292 /* Line 1455 of yacc.c */
38293 #line 14359 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38294  {}
38295  break;
38296 
38297  case 2261:
38298 
38299 /* Line 1455 of yacc.c */
38300 #line 14360 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38301  {}
38302  break;
38303 
38304  case 2262:
38305 
38306 /* Line 1455 of yacc.c */
38307 #line 14361 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38308  {}
38309  break;
38310 
38311  case 2263:
38312 
38313 /* Line 1455 of yacc.c */
38314 #line 14362 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38315  {}
38316  break;
38317 
38318  case 2264:
38319 
38320 /* Line 1455 of yacc.c */
38321 #line 14363 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38322  {}
38323  break;
38324 
38325  case 2265:
38326 
38327 /* Line 1455 of yacc.c */
38328 #line 14364 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38329  {}
38330  break;
38331 
38332  case 2266:
38333 
38334 /* Line 1455 of yacc.c */
38335 #line 14365 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38336  {}
38337  break;
38338 
38339  case 2267:
38340 
38341 /* Line 1455 of yacc.c */
38342 #line 14366 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38343  {}
38344  break;
38345 
38346  case 2268:
38347 
38348 /* Line 1455 of yacc.c */
38349 #line 14367 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38350  {}
38351  break;
38352 
38353  case 2269:
38354 
38355 /* Line 1455 of yacc.c */
38356 #line 14368 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38357  {}
38358  break;
38359 
38360  case 2270:
38361 
38362 /* Line 1455 of yacc.c */
38363 #line 14369 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38364  {}
38365  break;
38366 
38367  case 2271:
38368 
38369 /* Line 1455 of yacc.c */
38370 #line 14370 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38371  {}
38372  break;
38373 
38374  case 2272:
38375 
38376 /* Line 1455 of yacc.c */
38377 #line 14371 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38378  {}
38379  break;
38380 
38381  case 2273:
38382 
38383 /* Line 1455 of yacc.c */
38384 #line 14372 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38385  {}
38386  break;
38387 
38388  case 2274:
38389 
38390 /* Line 1455 of yacc.c */
38391 #line 14373 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38392  {}
38393  break;
38394 
38395  case 2275:
38396 
38397 /* Line 1455 of yacc.c */
38398 #line 14374 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38399  {}
38400  break;
38401 
38402  case 2276:
38403 
38404 /* Line 1455 of yacc.c */
38405 #line 14375 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38406  {}
38407  break;
38408 
38409  case 2277:
38410 
38411 /* Line 1455 of yacc.c */
38412 #line 14376 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38413  {}
38414  break;
38415 
38416  case 2278:
38417 
38418 /* Line 1455 of yacc.c */
38419 #line 14377 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38420  {}
38421  break;
38422 
38423  case 2279:
38424 
38425 /* Line 1455 of yacc.c */
38426 #line 14378 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38427  {}
38428  break;
38429 
38430  case 2280:
38431 
38432 /* Line 1455 of yacc.c */
38433 #line 14379 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38434  {}
38435  break;
38436 
38437  case 2281:
38438 
38439 /* Line 1455 of yacc.c */
38440 #line 14380 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38441  {}
38442  break;
38443 
38444  case 2282:
38445 
38446 /* Line 1455 of yacc.c */
38447 #line 14381 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38448  {}
38449  break;
38450 
38451  case 2283:
38452 
38453 /* Line 1455 of yacc.c */
38454 #line 14382 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38455  {}
38456  break;
38457 
38458  case 2284:
38459 
38460 /* Line 1455 of yacc.c */
38461 #line 14383 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38462  {}
38463  break;
38464 
38465  case 2285:
38466 
38467 /* Line 1455 of yacc.c */
38468 #line 14384 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38469  {}
38470  break;
38471 
38472  case 2286:
38473 
38474 /* Line 1455 of yacc.c */
38475 #line 14385 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38476  {}
38477  break;
38478 
38479  case 2287:
38480 
38481 /* Line 1455 of yacc.c */
38482 #line 14386 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38483  {}
38484  break;
38485 
38486  case 2288:
38487 
38488 /* Line 1455 of yacc.c */
38489 #line 14387 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38490  {}
38491  break;
38492 
38493  case 2289:
38494 
38495 /* Line 1455 of yacc.c */
38496 #line 14388 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38497  {}
38498  break;
38499 
38500  case 2290:
38501 
38502 /* Line 1455 of yacc.c */
38503 #line 14389 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38504  {}
38505  break;
38506 
38507  case 2291:
38508 
38509 /* Line 1455 of yacc.c */
38510 #line 14390 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38511  {}
38512  break;
38513 
38514  case 2292:
38515 
38516 /* Line 1455 of yacc.c */
38517 #line 14391 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38518  {}
38519  break;
38520 
38521  case 2293:
38522 
38523 /* Line 1455 of yacc.c */
38524 #line 14392 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38525  {}
38526  break;
38527 
38528  case 2294:
38529 
38530 /* Line 1455 of yacc.c */
38531 #line 14393 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38532  {}
38533  break;
38534 
38535  case 2295:
38536 
38537 /* Line 1455 of yacc.c */
38538 #line 14394 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38539  {}
38540  break;
38541 
38542  case 2296:
38543 
38544 /* Line 1455 of yacc.c */
38545 #line 14395 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38546  {}
38547  break;
38548 
38549  case 2297:
38550 
38551 /* Line 1455 of yacc.c */
38552 #line 14396 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38553  {}
38554  break;
38555 
38556  case 2298:
38557 
38558 /* Line 1455 of yacc.c */
38559 #line 14397 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38560  {}
38561  break;
38562 
38563  case 2299:
38564 
38565 /* Line 1455 of yacc.c */
38566 #line 14398 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38567  {}
38568  break;
38569 
38570  case 2300:
38571 
38572 /* Line 1455 of yacc.c */
38573 #line 14399 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38574  {}
38575  break;
38576 
38577  case 2301:
38578 
38579 /* Line 1455 of yacc.c */
38580 #line 14400 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38581  {}
38582  break;
38583 
38584  case 2302:
38585 
38586 /* Line 1455 of yacc.c */
38587 #line 14401 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38588  {}
38589  break;
38590 
38591  case 2303:
38592 
38593 /* Line 1455 of yacc.c */
38594 #line 14402 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38595  {}
38596  break;
38597 
38598  case 2304:
38599 
38600 /* Line 1455 of yacc.c */
38601 #line 14403 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38602  {}
38603  break;
38604 
38605  case 2305:
38606 
38607 /* Line 1455 of yacc.c */
38608 #line 14404 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38609  {}
38610  break;
38611 
38612  case 2306:
38613 
38614 /* Line 1455 of yacc.c */
38615 #line 14405 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38616  {}
38617  break;
38618 
38619  case 2307:
38620 
38621 /* Line 1455 of yacc.c */
38622 #line 14406 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38623  {}
38624  break;
38625 
38626  case 2308:
38627 
38628 /* Line 1455 of yacc.c */
38629 #line 14407 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38630  {}
38631  break;
38632 
38633  case 2309:
38634 
38635 /* Line 1455 of yacc.c */
38636 #line 14408 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38637  {}
38638  break;
38639 
38640  case 2310:
38641 
38642 /* Line 1455 of yacc.c */
38643 #line 14409 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38644  {}
38645  break;
38646 
38647  case 2311:
38648 
38649 /* Line 1455 of yacc.c */
38650 #line 14410 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38651  {}
38652  break;
38653 
38654  case 2312:
38655 
38656 /* Line 1455 of yacc.c */
38657 #line 14411 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38658  {}
38659  break;
38660 
38661  case 2313:
38662 
38663 /* Line 1455 of yacc.c */
38664 #line 14412 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38665  {}
38666  break;
38667 
38668  case 2314:
38669 
38670 /* Line 1455 of yacc.c */
38671 #line 14413 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38672  {}
38673  break;
38674 
38675  case 2315:
38676 
38677 /* Line 1455 of yacc.c */
38678 #line 14414 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38679  {}
38680  break;
38681 
38682  case 2316:
38683 
38684 /* Line 1455 of yacc.c */
38685 #line 14415 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38686  {}
38687  break;
38688 
38689  case 2317:
38690 
38691 /* Line 1455 of yacc.c */
38692 #line 14416 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38693  {}
38694  break;
38695 
38696  case 2318:
38697 
38698 /* Line 1455 of yacc.c */
38699 #line 14417 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38700  {}
38701  break;
38702 
38703  case 2319:
38704 
38705 /* Line 1455 of yacc.c */
38706 #line 14418 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38707  {}
38708  break;
38709 
38710  case 2320:
38711 
38712 /* Line 1455 of yacc.c */
38713 #line 14419 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38714  {}
38715  break;
38716 
38717  case 2321:
38718 
38719 /* Line 1455 of yacc.c */
38720 #line 14420 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38721  {}
38722  break;
38723 
38724  case 2322:
38725 
38726 /* Line 1455 of yacc.c */
38727 #line 14421 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38728  {}
38729  break;
38730 
38731  case 2323:
38732 
38733 /* Line 1455 of yacc.c */
38734 #line 14422 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38735  {}
38736  break;
38737 
38738  case 2324:
38739 
38740 /* Line 1455 of yacc.c */
38741 #line 14423 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38742  {}
38743  break;
38744 
38745  case 2325:
38746 
38747 /* Line 1455 of yacc.c */
38748 #line 14424 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38749  {}
38750  break;
38751 
38752  case 2326:
38753 
38754 /* Line 1455 of yacc.c */
38755 #line 14425 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38756  {}
38757  break;
38758 
38759  case 2327:
38760 
38761 /* Line 1455 of yacc.c */
38762 #line 14426 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38763  {}
38764  break;
38765 
38766  case 2328:
38767 
38768 /* Line 1455 of yacc.c */
38769 #line 14427 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38770  {}
38771  break;
38772 
38773  case 2329:
38774 
38775 /* Line 1455 of yacc.c */
38776 #line 14428 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38777  {}
38778  break;
38779 
38780  case 2330:
38781 
38782 /* Line 1455 of yacc.c */
38783 #line 14429 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38784  {}
38785  break;
38786 
38787  case 2331:
38788 
38789 /* Line 1455 of yacc.c */
38790 #line 14430 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38791  {}
38792  break;
38793 
38794  case 2332:
38795 
38796 /* Line 1455 of yacc.c */
38797 #line 14431 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38798  {}
38799  break;
38800 
38801  case 2333:
38802 
38803 /* Line 1455 of yacc.c */
38804 #line 14432 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38805  {}
38806  break;
38807 
38808  case 2334:
38809 
38810 /* Line 1455 of yacc.c */
38811 #line 14433 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38812  {}
38813  break;
38814 
38815  case 2335:
38816 
38817 /* Line 1455 of yacc.c */
38818 #line 14434 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38819  {}
38820  break;
38821 
38822  case 2336:
38823 
38824 /* Line 1455 of yacc.c */
38825 #line 14435 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38826  {}
38827  break;
38828 
38829  case 2337:
38830 
38831 /* Line 1455 of yacc.c */
38832 #line 14436 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38833  {}
38834  break;
38835 
38836  case 2338:
38837 
38838 /* Line 1455 of yacc.c */
38839 #line 14437 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38840  {}
38841  break;
38842 
38843  case 2339:
38844 
38845 /* Line 1455 of yacc.c */
38846 #line 14449 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38847  {
38848  LEX *lex= Lex;
38849  mysql_init_select(lex);
38850  lex->sql_command= SQLCOM_SET_OPTION;
38851  lex->option_type= OPT_SESSION;
38852  lex->var_list.empty();
38853  lex->one_shot_set= 0;
38854  lex->autocommit= 0;
38855 
38856  sp_create_assignment_lex(YYTHD, YY_TOKEN_END);
38857  }
38858  break;
38859 
38860  case 2340:
38861 
38862 /* Line 1455 of yacc.c */
38863 #line 14461 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38864  {}
38865  break;
38866 
38867  case 2341:
38868 
38869 /* Line 1455 of yacc.c */
38870 #line 14468 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38871  {
38872  if (sp_create_assignment_instr(YYTHD, YY_TOKEN_END))
38873  MYSQL_YYABORT;
38874  }
38875  break;
38876 
38877  case 2343:
38878 
38879 /* Line 1455 of yacc.c */
38880 #line 14474 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38881  {
38882  Lex->option_type= OPT_DEFAULT;
38883  }
38884  break;
38885 
38886  case 2344:
38887 
38888 /* Line 1455 of yacc.c */
38889 #line 14478 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38890  {
38891  if (sp_create_assignment_instr(YYTHD, YY_TOKEN_END))
38892  MYSQL_YYABORT;
38893  }
38894  break;
38895 
38896  case 2345:
38897 
38898 /* Line 1455 of yacc.c */
38899 #line 14483 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38900  {
38901  Lex->option_type= (yyvsp[(1) - (1)].var_type);
38902  }
38903  break;
38904 
38905  case 2347:
38906 
38907 /* Line 1455 of yacc.c */
38908 #line 14493 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38909  {
38910  if (sp_create_assignment_instr(YYTHD, YY_TOKEN_END))
38911  MYSQL_YYABORT;
38912  }
38913  break;
38914 
38915  case 2349:
38916 
38917 /* Line 1455 of yacc.c */
38918 #line 14499 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38919  {
38920  if (sp_create_assignment_instr(YYTHD, YY_TOKEN_END))
38921  MYSQL_YYABORT;
38922  }
38923  break;
38924 
38925  case 2352:
38926 
38927 /* Line 1455 of yacc.c */
38928 #line 14513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38929  {
38930  sp_create_assignment_lex(YYTHD, YY_TOKEN_START);
38931  }
38932  break;
38933 
38934  case 2353:
38935 
38936 /* Line 1455 of yacc.c */
38937 #line 14517 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38938  {
38939  if (sp_create_assignment_instr(YYTHD, YY_TOKEN_END))
38940  MYSQL_YYABORT;
38941  }
38942  break;
38943 
38944  case 2354:
38945 
38946 /* Line 1455 of yacc.c */
38947 #line 14522 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38948  {
38949  sp_create_assignment_lex(YYTHD, YY_TOKEN_START);
38950  }
38951  break;
38952 
38953  case 2355:
38954 
38955 /* Line 1455 of yacc.c */
38956 #line 14526 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38957  {
38958  if (sp_create_assignment_instr(YYTHD, YY_TOKEN_END))
38959  MYSQL_YYABORT;
38960  }
38961  break;
38962 
38963  case 2356:
38964 
38965 /* Line 1455 of yacc.c */
38966 #line 14535 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38967  {
38968  Lex->option_type= (yyvsp[(1) - (1)].var_type);
38969  }
38970  break;
38971 
38972  case 2359:
38973 
38974 /* Line 1455 of yacc.c */
38975 #line 14543 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38976  { (yyval.var_type)=OPT_GLOBAL; }
38977  break;
38978 
38979  case 2360:
38980 
38981 /* Line 1455 of yacc.c */
38982 #line 14544 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38983  { (yyval.var_type)=OPT_SESSION; }
38984  break;
38985 
38986  case 2361:
38987 
38988 /* Line 1455 of yacc.c */
38989 #line 14545 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38990  { (yyval.var_type)=OPT_SESSION; }
38991  break;
38992 
38993  case 2362:
38994 
38995 /* Line 1455 of yacc.c */
38996 #line 14549 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
38997  { (yyval.var_type)=OPT_SESSION; }
38998  break;
38999 
39000  case 2363:
39001 
39002 /* Line 1455 of yacc.c */
39003 #line 14550 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39004  { (yyval.var_type)=OPT_GLOBAL; }
39005  break;
39006 
39007  case 2364:
39008 
39009 /* Line 1455 of yacc.c */
39010 #line 14551 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39011  { (yyval.var_type)=OPT_SESSION; }
39012  break;
39013 
39014  case 2365:
39015 
39016 /* Line 1455 of yacc.c */
39017 #line 14552 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39018  { (yyval.var_type)=OPT_SESSION; }
39019  break;
39020 
39021  case 2366:
39022 
39023 /* Line 1455 of yacc.c */
39024 #line 14556 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39025  { (yyval.var_type)=OPT_DEFAULT; }
39026  break;
39027 
39028  case 2367:
39029 
39030 /* Line 1455 of yacc.c */
39031 #line 14557 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39032  { (yyval.var_type)=OPT_GLOBAL; }
39033  break;
39034 
39035  case 2368:
39036 
39037 /* Line 1455 of yacc.c */
39038 #line 14558 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39039  { (yyval.var_type)=OPT_SESSION; }
39040  break;
39041 
39042  case 2369:
39043 
39044 /* Line 1455 of yacc.c */
39045 #line 14559 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39046  { (yyval.var_type)=OPT_SESSION; }
39047  break;
39048 
39049  case 2370:
39050 
39051 /* Line 1455 of yacc.c */
39052 #line 14565 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39053  {
39054  THD *thd= YYTHD;
39055  LEX *lex= Lex;
39056 
39057  if ((yyvsp[(1) - (3)].variable).var && (yyvsp[(1) - (3)].variable).var != trg_new_row_fake_var)
39058  {
39059  /* It is a system variable. */
39060  if (set_system_variable(thd, &(yyvsp[(1) - (3)].variable), lex->option_type, (yyvsp[(3) - (3)].item)))
39061  MYSQL_YYABORT;
39062  }
39063  else
39064  {
39065  /*
39066  Not in trigger assigning value to new row,
39067  and option_type preceeding local variable is illegal.
39068  */
39069  my_parse_error(ER(ER_SYNTAX_ERROR));
39070  MYSQL_YYABORT;
39071  }
39072  }
39073  break;
39074 
39075  case 2371:
39076 
39077 /* Line 1455 of yacc.c */
39078 #line 14590 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39079  {
39080  sp_head *sp= Lex->sphead;
39081 
39082  if (sp)
39083  sp->m_parser_data.push_expr_start_ptr(YY_TOKEN_START);
39084  }
39085  break;
39086 
39087  case 2372:
39088 
39089 /* Line 1455 of yacc.c */
39090 #line 14597 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39091  {
39092  THD *thd= YYTHD;
39093  LEX *lex= Lex;
39094  sp_head *sp= lex->sphead;
39095  const char *expr_start_ptr= NULL;
39096 
39097  if (sp)
39098  expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr();
39099 
39100  if ((yyvsp[(1) - (4)].variable).var == trg_new_row_fake_var)
39101  {
39102  DBUG_ASSERT(sp);
39103  DBUG_ASSERT(expr_start_ptr);
39104 
39105  /* We are parsing trigger and this is a trigger NEW-field. */
39106 
39107  LEX_STRING expr_query= EMPTY_STR;
39108 
39109  if (!(yyvsp[(4) - (4)].item))
39110  {
39111  // This is: SET NEW.x = DEFAULT
39112  // DEFAULT clause is not supported in triggers.
39113 
39114  my_parse_error(ER(ER_SYNTAX_ERROR));
39115  MYSQL_YYABORT;
39116  }
39117  else if (lex->is_metadata_used())
39118  {
39119  expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
39120 
39121  if (!expr_query.str)
39122  MYSQL_YYABORT;
39123  }
39124 
39125  if (set_trigger_new_row(thd, (yyvsp[(1) - (4)].variable).base_name, (yyvsp[(4) - (4)].item), expr_query))
39126  MYSQL_YYABORT;
39127  }
39128  else if ((yyvsp[(1) - (4)].variable).var)
39129  {
39130  /* We're not parsing SP and this is a system variable. */
39131 
39132  if (set_system_variable(thd, &(yyvsp[(1) - (4)].variable), lex->option_type, (yyvsp[(4) - (4)].item)))
39133  MYSQL_YYABORT;
39134  }
39135  else
39136  {
39137  DBUG_ASSERT(sp);
39138  DBUG_ASSERT(expr_start_ptr);
39139 
39140  /* We're parsing SP and this is an SP-variable. */
39141 
39142  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
39143  sp_variable *spv= pctx->find_variable((yyvsp[(1) - (4)].variable).base_name, false);
39144 
39145  LEX_STRING expr_query= EMPTY_STR;
39146 
39147  if (!(yyvsp[(4) - (4)].item))
39148  {
39149  // This is: SET x = DEFAULT, where x is a SP-variable.
39150  // This is not supported.
39151 
39152  my_parse_error(ER(ER_SYNTAX_ERROR));
39153  MYSQL_YYABORT;
39154  }
39155  else if (lex->is_metadata_used())
39156  {
39157  expr_query= make_string(thd, expr_start_ptr, YY_TOKEN_END);
39158 
39159  if (!expr_query.str)
39160  MYSQL_YYABORT;
39161  }
39162 
39163  /*
39164  NOTE: every SET-expression has its own LEX-object, even if it is
39165  a multiple SET-statement, like:
39166 
39167  SET spv1 = expr1, spv2 = expr2, ...
39168 
39169  Every SET-expression has its own sp_instr_set. Thus, the
39170  instruction owns the LEX-object, i.e. the instruction is
39171  responsible for destruction of the LEX-object.
39172  */
39173 
39174  sp_instr_set *i=
39175  new sp_instr_set(sp->instructions(), lex,
39176  spv->offset, (yyvsp[(4) - (4)].item), expr_query,
39177  true); // The instruction owns its lex.
39178 
39179  if (!i || sp->add_instr(thd, i))
39180  MYSQL_YYABORT;
39181  }
39182  }
39183  break;
39184 
39185  case 2373:
39186 
39187 /* Line 1455 of yacc.c */
39188 #line 14690 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39189  {
39190  Item_func_set_user_var *item;
39191  item= new (YYTHD->mem_root) Item_func_set_user_var((yyvsp[(2) - (4)].lex_str), (yyvsp[(4) - (4)].item), false);
39192  if (item == NULL)
39193  MYSQL_YYABORT;
39194  set_var_user *var= new set_var_user(item);
39195  if (var == NULL)
39196  MYSQL_YYABORT;
39197  Lex->var_list.push_back(var);
39198  }
39199  break;
39200 
39201  case 2374:
39202 
39203 /* Line 1455 of yacc.c */
39204 #line 14701 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39205  {
39206  THD *thd= YYTHD;
39207  struct sys_var_with_base tmp= (yyvsp[(4) - (6)].variable);
39208  /* Lookup if necessary: must be a system variable. */
39209  if (tmp.var == NULL)
39210  {
39211  if (find_sys_var_null_base(thd, &tmp))
39212  MYSQL_YYABORT;
39213  }
39214  if (set_system_variable(thd, &tmp, (yyvsp[(3) - (6)].var_type), (yyvsp[(6) - (6)].item)))
39215  MYSQL_YYABORT;
39216  }
39217  break;
39218 
39219  case 2375:
39220 
39221 /* Line 1455 of yacc.c */
39222 #line 14714 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39223  {
39224  THD *thd= YYTHD;
39225  LEX *lex= thd->lex;
39226  int flags= (yyvsp[(2) - (2)].charset) ? 0 : set_var_collation_client::SET_CS_DEFAULT;
39227  const CHARSET_INFO *cs2;
39228  cs2= (yyvsp[(2) - (2)].charset) ? (yyvsp[(2) - (2)].charset): global_system_variables.character_set_client;
39230  var= new set_var_collation_client(flags,
39231  cs2,
39232  thd->variables.collation_database,
39233  cs2);
39234  if (var == NULL)
39235  MYSQL_YYABORT;
39236  lex->var_list.push_back(var);
39237  }
39238  break;
39239 
39240  case 2376:
39241 
39242 /* Line 1455 of yacc.c */
39243 #line 14730 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39244  {
39245  LEX *lex= Lex;
39246  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
39247  LEX_STRING names= { C_STRING_WITH_LEN("names") };
39248 
39249  if (pctx && pctx->find_variable(names, false))
39250  my_error(ER_SP_BAD_VAR_SHADOW, MYF(0), names.str);
39251  else
39252  my_parse_error(ER(ER_SYNTAX_ERROR));
39253 
39254  MYSQL_YYABORT;
39255  }
39256  break;
39257 
39258  case 2377:
39259 
39260 /* Line 1455 of yacc.c */
39261 #line 14743 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39262  {
39263  LEX *lex= Lex;
39264  const CHARSET_INFO *cs2;
39265  const CHARSET_INFO *cs3;
39266  int flags= set_var_collation_client::SET_CS_NAMES
39267  | ((yyvsp[(2) - (3)].charset) ? 0 : set_var_collation_client::SET_CS_DEFAULT)
39268  | ((yyvsp[(3) - (3)].charset) ? set_var_collation_client::SET_CS_COLLATE : 0);
39269  cs2= (yyvsp[(2) - (3)].charset) ? (yyvsp[(2) - (3)].charset) : global_system_variables.character_set_client;
39270  cs3= (yyvsp[(3) - (3)].charset) ? (yyvsp[(3) - (3)].charset) : cs2;
39271  if (!my_charset_same(cs2, cs3))
39272  {
39273  my_error(ER_COLLATION_CHARSET_MISMATCH, MYF(0),
39274  cs3->name, cs2->csname);
39275  MYSQL_YYABORT;
39276  }
39278  var= new set_var_collation_client(flags, cs3, cs3, cs3);
39279  if (var == NULL)
39280  MYSQL_YYABORT;
39281  lex->var_list.push_back(var);
39282  }
39283  break;
39284 
39285  case 2378:
39286 
39287 /* Line 1455 of yacc.c */
39288 #line 14765 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39289  {
39290  THD *thd= YYTHD;
39291  LEX *lex= thd->lex;
39292  sp_head *sp= lex->sphead;
39293  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
39294  LEX_STRING pw= { C_STRING_WITH_LEN("password") };
39295 
39296  if (pctx && pctx->find_variable(pw, false))
39297  {
39298  my_error(ER_SP_BAD_VAR_SHADOW, MYF(0), pw.str);
39299  MYSQL_YYABORT;
39300  }
39301 
39302  LEX_USER *user= (LEX_USER*) thd->alloc(sizeof(LEX_USER));
39303 
39304  if (!user)
39305  MYSQL_YYABORT;
39306 
39307  user->host=null_lex_str;
39308  user->user.str=thd->security_ctx->user;
39309  user->user.length= strlen(thd->security_ctx->user);
39310 
39311  set_var_password *var= new set_var_password(user, (yyvsp[(3) - (3)].simple_string));
39312  if (var == NULL)
39313  MYSQL_YYABORT;
39314 
39315  lex->var_list.push_back(var);
39316  lex->autocommit= TRUE;
39317  lex->is_set_password_sql= true;
39318  lex->is_change_password= TRUE;
39319 
39320  if (sp)
39321  sp->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
39322  }
39323  break;
39324 
39325  case 2379:
39326 
39327 /* Line 1455 of yacc.c */
39328 #line 14800 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39329  {
39330  LEX_USER *user= (yyvsp[(3) - (5)].lex_user);
39331  LEX *lex= Lex;
39332  set_var_password *var;
39333 
39334  var= new set_var_password(user,(yyvsp[(5) - (5)].simple_string));
39335  if (var == NULL)
39336  MYSQL_YYABORT;
39337  lex->var_list.push_back(var);
39338  lex->autocommit= TRUE;
39339  lex->is_set_password_sql= true;
39340  if (lex->sphead)
39341  lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
39342  /*
39343  'is_change_password' should be set if the user is setting his
39344  own password. This is later used to determine if the password
39345  expiration flag should be reset.
39346  Either the user exactly matches the currently authroized user or
39347  the CURRENT_USER keyword was used.
39348 
39349  If CURRENT_USER was used for the <user> rule then
39350  user->user.str=0. See rule below:
39351 
39352  user:
39353  [..]
39354  | CURRENT_USER optional_braces
39355  {
39356  [..]
39357  memset($$, 0, sizeof(LEX_USER));
39358  }
39359  */
39360  if (user->user.str ||
39361  match_authorized_user(&current_thd->main_security_ctx,
39362  user))
39363  lex->is_change_password= TRUE;
39364  else
39365  lex->is_change_password= FALSE;
39366  }
39367  break;
39368 
39369  case 2380:
39370 
39371 /* Line 1455 of yacc.c */
39372 #line 14842 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39373  {
39374  THD *thd= YYTHD;
39375  LEX *lex= thd->lex;
39376  sp_pcontext *pctx= lex->get_sp_current_parsing_ctx();
39377  sp_variable *spv;
39378 
39379  /* Best effort lookup for system variable. */
39380  if (!pctx || !(spv= pctx->find_variable((yyvsp[(1) - (1)].lex_str), false)))
39381  {
39382  struct sys_var_with_base tmp= {NULL, (yyvsp[(1) - (1)].lex_str)};
39383 
39384  /* Not an SP local variable */
39385  if (find_sys_var_null_base(thd, &tmp))
39386  MYSQL_YYABORT;
39387 
39388  (yyval.variable)= tmp;
39389  }
39390  else
39391  {
39392  /*
39393  Possibly an SP local variable (or a shadowed sysvar).
39394  Will depend on the context of the SET statement.
39395  */
39396  (yyval.variable).var= NULL;
39397  (yyval.variable).base_name= (yyvsp[(1) - (1)].lex_str);
39398  }
39399  }
39400  break;
39401 
39402  case 2381:
39403 
39404 /* Line 1455 of yacc.c */
39405 #line 14870 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39406  {
39407  LEX *lex= Lex;
39408  sp_head *sp= lex->sphead;
39409 
39410  if (check_reserved_words(&(yyvsp[(1) - (3)].lex_str)))
39411  {
39412  my_parse_error(ER(ER_SYNTAX_ERROR));
39413  MYSQL_YYABORT;
39414  }
39415 
39416  if (sp && sp->m_type == SP_TYPE_TRIGGER &&
39417  (!my_strcasecmp(system_charset_info, (yyvsp[(1) - (3)].lex_str).str, "NEW") ||
39418  !my_strcasecmp(system_charset_info, (yyvsp[(1) - (3)].lex_str).str, "OLD")))
39419  {
39420  if ((yyvsp[(1) - (3)].lex_str).str[0]=='O' || (yyvsp[(1) - (3)].lex_str).str[0]=='o')
39421  {
39422  my_error(ER_TRG_CANT_CHANGE_ROW, MYF(0), "OLD", "");
39423  MYSQL_YYABORT;
39424  }
39425  if (sp->m_trg_chistics.event == TRG_EVENT_DELETE)
39426  {
39427  my_error(ER_TRG_NO_SUCH_ROW_IN_TRG, MYF(0),
39428  "NEW", "on DELETE");
39429  MYSQL_YYABORT;
39430  }
39431  if (sp->m_trg_chistics.action_time == TRG_ACTION_AFTER)
39432  {
39433  my_error(ER_TRG_CANT_CHANGE_ROW, MYF(0), "NEW", "after ");
39434  MYSQL_YYABORT;
39435  }
39436  /* This special combination will denote field of NEW row */
39437  (yyval.variable).var= trg_new_row_fake_var;
39438  (yyval.variable).base_name= (yyvsp[(3) - (3)].lex_str);
39439  }
39440  else
39441  {
39442  sys_var *tmp=find_sys_var(YYTHD, (yyvsp[(3) - (3)].lex_str).str, (yyvsp[(3) - (3)].lex_str).length);
39443  if (!tmp)
39444  MYSQL_YYABORT;
39445  if (!tmp->is_struct())
39446  my_error(ER_VARIABLE_IS_NOT_STRUCT, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
39447  (yyval.variable).var= tmp;
39448  (yyval.variable).base_name= (yyvsp[(1) - (3)].lex_str);
39449  }
39450  }
39451  break;
39452 
39453  case 2382:
39454 
39455 /* Line 1455 of yacc.c */
39456 #line 14916 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39457  {
39458  sys_var *tmp=find_sys_var(YYTHD, (yyvsp[(3) - (3)].lex_str).str, (yyvsp[(3) - (3)].lex_str).length);
39459  if (!tmp)
39460  MYSQL_YYABORT;
39461  if (!tmp->is_struct())
39462  my_error(ER_VARIABLE_IS_NOT_STRUCT, MYF(0), (yyvsp[(3) - (3)].lex_str).str);
39463  (yyval.variable).var= tmp;
39464  (yyval.variable).base_name.str= (char*) "default";
39465  (yyval.variable).base_name.length= 7;
39466  }
39467  break;
39468 
39469  case 2387:
39470 
39471 /* Line 1455 of yacc.c */
39472 #line 14937 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39473  {
39474  THD *thd= YYTHD;
39475  LEX *lex=Lex;
39476  Item *item= new (thd->mem_root) Item_int((int32) (yyvsp[(1) - (1)].num));
39477  if (item == NULL)
39478  MYSQL_YYABORT;
39479  set_var *var= new set_var(lex->option_type,
39480  find_sys_var(thd, "tx_read_only"),
39481  &null_lex_str,
39482  item);
39483  if (var == NULL)
39484  MYSQL_YYABORT;
39485  lex->var_list.push_back(var);
39486  }
39487  break;
39488 
39489  case 2388:
39490 
39491 /* Line 1455 of yacc.c */
39492 #line 14955 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39493  {
39494  THD *thd= YYTHD;
39495  LEX *lex=Lex;
39496  Item *item= new (thd->mem_root) Item_int((int32) (yyvsp[(3) - (3)].tx_isolation));
39497  if (item == NULL)
39498  MYSQL_YYABORT;
39499  set_var *var= new set_var(lex->option_type,
39500  find_sys_var(thd, "tx_isolation"),
39501  &null_lex_str,
39502  item);
39503  if (var == NULL)
39504  MYSQL_YYABORT;
39505  lex->var_list.push_back(var);
39506  }
39507  break;
39508 
39509  case 2389:
39510 
39511 /* Line 1455 of yacc.c */
39512 #line 14972 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39513  { (yyval.num)= true; }
39514  break;
39515 
39516  case 2390:
39517 
39518 /* Line 1455 of yacc.c */
39519 #line 14973 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39520  { (yyval.num)= false; }
39521  break;
39522 
39523  case 2391:
39524 
39525 /* Line 1455 of yacc.c */
39526 #line 14977 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39527  { (yyval.tx_isolation)= ISO_READ_UNCOMMITTED; }
39528  break;
39529 
39530  case 2392:
39531 
39532 /* Line 1455 of yacc.c */
39533 #line 14978 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39534  { (yyval.tx_isolation)= ISO_READ_COMMITTED; }
39535  break;
39536 
39537  case 2393:
39538 
39539 /* Line 1455 of yacc.c */
39540 #line 14979 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39541  { (yyval.tx_isolation)= ISO_REPEATABLE_READ; }
39542  break;
39543 
39544  case 2394:
39545 
39546 /* Line 1455 of yacc.c */
39547 #line 14980 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39548  { (yyval.tx_isolation)= ISO_SERIALIZABLE; }
39549  break;
39550 
39551  case 2395:
39552 
39553 /* Line 1455 of yacc.c */
39554 #line 14984 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39555  { (yyval.simple_string)=(yyvsp[(1) - (1)].lex_str).str;}
39556  break;
39557 
39558  case 2396:
39559 
39560 /* Line 1455 of yacc.c */
39561 #line 14986 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39562  {
39563  if ((yyvsp[(3) - (4)].lex_str).length == 0)
39564  (yyval.simple_string)= (yyvsp[(3) - (4)].lex_str).str;
39565  else
39566  switch (YYTHD->variables.old_passwords) {
39567  case 1: (yyval.simple_string)= Item_func_old_password::
39568  alloc(YYTHD, (yyvsp[(3) - (4)].lex_str).str, (yyvsp[(3) - (4)].lex_str).length);
39569  break;
39570  case 0:
39571  case 2: (yyval.simple_string)= Item_func_password::
39572  create_password_hash_buffer(YYTHD, (yyvsp[(3) - (4)].lex_str).str, (yyvsp[(3) - (4)].lex_str).length);
39573  break;
39574  }
39575  if ((yyval.simple_string) == NULL)
39576  MYSQL_YYABORT;
39577  Lex->contains_plaintext_password= true;
39578  }
39579  break;
39580 
39581  case 2397:
39582 
39583 /* Line 1455 of yacc.c */
39584 #line 15004 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39585  {
39586  (yyval.simple_string)= (yyvsp[(3) - (4)].lex_str).length ? Item_func_old_password::
39587  alloc(YYTHD, (yyvsp[(3) - (4)].lex_str).str, (yyvsp[(3) - (4)].lex_str).length) :
39588  (yyvsp[(3) - (4)].lex_str).str;
39589  if ((yyval.simple_string) == NULL)
39590  MYSQL_YYABORT;
39591  Lex->contains_plaintext_password= true;
39592  }
39593  break;
39594 
39595  case 2398:
39596 
39597 /* Line 1455 of yacc.c */
39598 #line 15016 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39599  { (yyval.item)=(yyvsp[(1) - (1)].item); }
39600  break;
39601 
39602  case 2399:
39603 
39604 /* Line 1455 of yacc.c */
39605 #line 15017 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39606  { (yyval.item)=0; }
39607  break;
39608 
39609  case 2400:
39610 
39611 /* Line 1455 of yacc.c */
39612 #line 15019 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39613  {
39614  (yyval.item)=new (YYTHD->mem_root) Item_string("ON", 2, system_charset_info);
39615  if ((yyval.item) == NULL)
39616  MYSQL_YYABORT;
39617  }
39618  break;
39619 
39620  case 2401:
39621 
39622 /* Line 1455 of yacc.c */
39623 #line 15025 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39624  {
39625  (yyval.item)=new (YYTHD->mem_root) Item_string("ALL", 3, system_charset_info);
39626  if ((yyval.item) == NULL)
39627  MYSQL_YYABORT;
39628  }
39629  break;
39630 
39631  case 2402:
39632 
39633 /* Line 1455 of yacc.c */
39634 #line 15031 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39635  {
39636  (yyval.item)=new (YYTHD->mem_root) Item_string("binary", 6, system_charset_info);
39637  if ((yyval.item) == NULL)
39638  MYSQL_YYABORT;
39639  }
39640  break;
39641 
39642  case 2403:
39643 
39644 /* Line 1455 of yacc.c */
39645 #line 15042 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39646  {
39647  LEX *lex= Lex;
39648 
39649  if (lex->sphead)
39650  {
39651  my_error(ER_SP_BADSTATEMENT, MYF(0), "LOCK");
39652  MYSQL_YYABORT;
39653  }
39654  lex->sql_command= SQLCOM_LOCK_TABLES;
39655  }
39656  break;
39657 
39658  case 2404:
39659 
39660 /* Line 1455 of yacc.c */
39661 #line 15053 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39662  {}
39663  break;
39664 
39665  case 2409:
39666 
39667 /* Line 1455 of yacc.c */
39668 #line 15068 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39669  {
39670  thr_lock_type lock_type= (thr_lock_type) (yyvsp[(3) - (3)].num);
39671  bool lock_for_write= (lock_type >= TL_WRITE_ALLOW_WRITE);
39672  if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (3)].table), (yyvsp[(2) - (3)].lex_str_ptr), 0, lock_type,
39673  (lock_for_write ?
39674  MDL_SHARED_NO_READ_WRITE :
39675  MDL_SHARED_READ)))
39676  MYSQL_YYABORT;
39677  }
39678  break;
39679 
39680  case 2410:
39681 
39682 /* Line 1455 of yacc.c */
39683 #line 15080 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39684  { (yyval.num)= TL_READ_NO_INSERT; }
39685  break;
39686 
39687  case 2411:
39688 
39689 /* Line 1455 of yacc.c */
39690 #line 15081 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39691  { (yyval.num)= TL_WRITE_DEFAULT; }
39692  break;
39693 
39694  case 2412:
39695 
39696 /* Line 1455 of yacc.c */
39697 #line 15083 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39698  {
39699  (yyval.num)= TL_WRITE_LOW_PRIORITY;
39700  WARN_DEPRECATED(YYTHD, "LOW_PRIORITY WRITE", "WRITE");
39701  }
39702  break;
39703 
39704  case 2413:
39705 
39706 /* Line 1455 of yacc.c */
39707 #line 15087 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39708  { (yyval.num)= TL_READ; }
39709  break;
39710 
39711  case 2414:
39712 
39713 /* Line 1455 of yacc.c */
39714 #line 15092 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39715  {
39716  LEX *lex= Lex;
39717 
39718  if (lex->sphead)
39719  {
39720  my_error(ER_SP_BADSTATEMENT, MYF(0), "UNLOCK");
39721  MYSQL_YYABORT;
39722  }
39723  lex->sql_command= SQLCOM_UNLOCK_TABLES;
39724  }
39725  break;
39726 
39727  case 2415:
39728 
39729 /* Line 1455 of yacc.c */
39730 #line 15103 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39731  {}
39732  break;
39733 
39734  case 2416:
39735 
39736 /* Line 1455 of yacc.c */
39737 #line 15112 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39738  {
39739  THD *thd= YYTHD;
39740  LEX *lex= Lex;
39741  if (lex->sphead)
39742  {
39743  my_error(ER_SP_BADSTATEMENT, MYF(0), "HANDLER");
39744  MYSQL_YYABORT;
39745  }
39746  lex->sql_command = SQLCOM_HA_OPEN;
39747  if (!lex->current_select->add_table_to_list(thd, (yyvsp[(2) - (4)].table), (yyvsp[(4) - (4)].lex_str_ptr), 0))
39748  MYSQL_YYABORT;
39749  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_handler_open();
39750  if (lex->m_sql_cmd == NULL)
39751  MYSQL_YYABORT;
39752  }
39753  break;
39754 
39755  case 2417:
39756 
39757 /* Line 1455 of yacc.c */
39758 #line 15128 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39759  {
39760  THD *thd= YYTHD;
39761  LEX *lex= Lex;
39762  if (lex->sphead)
39763  {
39764  my_error(ER_SP_BADSTATEMENT, MYF(0), "HANDLER");
39765  MYSQL_YYABORT;
39766  }
39767  lex->sql_command = SQLCOM_HA_CLOSE;
39768  if (!lex->current_select->add_table_to_list(thd, (yyvsp[(2) - (3)].table), 0, 0))
39769  MYSQL_YYABORT;
39770  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_handler_close();
39771  if (lex->m_sql_cmd == NULL)
39772  MYSQL_YYABORT;
39773  }
39774  break;
39775 
39776  case 2418:
39777 
39778 /* Line 1455 of yacc.c */
39779 #line 15144 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39780  {
39781  LEX *lex=Lex;
39782  if (lex->sphead)
39783  {
39784  my_error(ER_SP_BADSTATEMENT, MYF(0), "HANDLER");
39785  MYSQL_YYABORT;
39786  }
39787  lex->expr_allows_subselect= FALSE;
39788  lex->sql_command = SQLCOM_HA_READ;
39789  Item *one= new (YYTHD->mem_root) Item_int((int32) 1);
39790  if (one == NULL)
39791  MYSQL_YYABORT;
39792  lex->current_select->select_limit= one;
39793  lex->current_select->offset_limit= 0;
39794  if (!lex->current_select->add_table_to_list(lex->thd, (yyvsp[(2) - (3)].table), 0, 0))
39795  MYSQL_YYABORT;
39796  }
39797  break;
39798 
39799  case 2419:
39800 
39801 /* Line 1455 of yacc.c */
39802 #line 15162 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39803  {
39804  THD *thd= YYTHD;
39805  LEX *lex= Lex;
39806  Lex->expr_allows_subselect= TRUE;
39807  /* Stored functions are not supported for HANDLER READ. */
39808  if (lex->uses_stored_routines())
39809  {
39810  my_error(ER_NOT_SUPPORTED_YET, MYF(0),
39811  "stored functions in HANDLER ... READ");
39812  MYSQL_YYABORT;
39813  }
39814  lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_handler_read((yyvsp[(5) - (7)].ha_read_mode),
39815  lex->ident.str, lex->insert_list,
39816  thd->m_parser_state->m_yacc.m_ha_rkey_mode);
39817  if (lex->m_sql_cmd == NULL)
39818  MYSQL_YYABORT;
39819  }
39820  break;
39821 
39822  case 2420:
39823 
39824 /* Line 1455 of yacc.c */
39825 #line 15182 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39826  { Lex->ident= null_lex_str; (yyval.ha_read_mode)=(yyvsp[(1) - (1)].ha_read_mode); }
39827  break;
39828 
39829  case 2421:
39830 
39831 /* Line 1455 of yacc.c */
39832 #line 15183 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39833  { Lex->ident= (yyvsp[(1) - (2)].lex_str); (yyval.ha_read_mode)=(yyvsp[(2) - (2)].ha_read_mode); }
39834  break;
39835 
39836  case 2422:
39837 
39838 /* Line 1455 of yacc.c */
39839 #line 15187 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39840  { (yyval.ha_read_mode)= RFIRST; }
39841  break;
39842 
39843  case 2423:
39844 
39845 /* Line 1455 of yacc.c */
39846 #line 15188 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39847  { (yyval.ha_read_mode)= RNEXT; }
39848  break;
39849 
39850  case 2424:
39851 
39852 /* Line 1455 of yacc.c */
39853 #line 15192 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39854  { (yyval.ha_read_mode)= RFIRST; }
39855  break;
39856 
39857  case 2425:
39858 
39859 /* Line 1455 of yacc.c */
39860 #line 15193 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39861  { (yyval.ha_read_mode)= RNEXT; }
39862  break;
39863 
39864  case 2426:
39865 
39866 /* Line 1455 of yacc.c */
39867 #line 15194 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39868  { (yyval.ha_read_mode)= RPREV; }
39869  break;
39870 
39871  case 2427:
39872 
39873 /* Line 1455 of yacc.c */
39874 #line 15195 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39875  { (yyval.ha_read_mode)= RLAST; }
39876  break;
39877 
39878  case 2428:
39879 
39880 /* Line 1455 of yacc.c */
39881 #line 15197 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39882  {
39883  YYTHD->m_parser_state->m_yacc.m_ha_rkey_mode= (yyvsp[(1) - (1)].ha_rkey_mode);
39884  Lex->insert_list= new List_item;
39885  if (! Lex->insert_list)
39886  MYSQL_YYABORT;
39887  }
39888  break;
39889 
39890  case 2429:
39891 
39892 /* Line 1455 of yacc.c */
39893 #line 15204 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39894  {
39895  (yyval.ha_read_mode)= RKEY;
39896  }
39897  break;
39898 
39899  case 2430:
39900 
39901 /* Line 1455 of yacc.c */
39902 #line 15210 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39903  { (yyval.ha_rkey_mode)=HA_READ_KEY_EXACT; }
39904  break;
39905 
39906  case 2431:
39907 
39908 /* Line 1455 of yacc.c */
39909 #line 15211 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39910  { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_NEXT; }
39911  break;
39912 
39913  case 2432:
39914 
39915 /* Line 1455 of yacc.c */
39916 #line 15212 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39917  { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_PREV; }
39918  break;
39919 
39920  case 2433:
39921 
39922 /* Line 1455 of yacc.c */
39923 #line 15213 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39924  { (yyval.ha_rkey_mode)=HA_READ_AFTER_KEY; }
39925  break;
39926 
39927  case 2434:
39928 
39929 /* Line 1455 of yacc.c */
39930 #line 15214 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39931  { (yyval.ha_rkey_mode)=HA_READ_BEFORE_KEY; }
39932  break;
39933 
39934  case 2435:
39935 
39936 /* Line 1455 of yacc.c */
39937 #line 15220 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39938  { Lex->sql_command= SQLCOM_REVOKE; }
39939  break;
39940 
39941  case 2436:
39942 
39943 /* Line 1455 of yacc.c */
39944 #line 15221 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39945  {}
39946  break;
39947 
39948  case 2437:
39949 
39950 /* Line 1455 of yacc.c */
39951 #line 15226 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39952  {
39953  LEX *lex= Lex;
39954  lex->type= 0;
39955  }
39956  break;
39957 
39958  case 2438:
39959 
39960 /* Line 1455 of yacc.c */
39961 #line 15231 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39962  {
39963  LEX *lex= Lex;
39964  if (lex->columns.elements)
39965  {
39966  my_parse_error(ER(ER_SYNTAX_ERROR));
39967  MYSQL_YYABORT;
39968  }
39969  lex->type= TYPE_ENUM_FUNCTION;
39970  }
39971  break;
39972 
39973  case 2439:
39974 
39975 /* Line 1455 of yacc.c */
39976 #line 15241 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39977  {
39978  LEX *lex= Lex;
39979  if (lex->columns.elements)
39980  {
39981  my_parse_error(ER(ER_SYNTAX_ERROR));
39982  MYSQL_YYABORT;
39983  }
39984  lex->type= TYPE_ENUM_PROCEDURE;
39985  }
39986  break;
39987 
39988  case 2440:
39989 
39990 /* Line 1455 of yacc.c */
39991 #line 15251 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
39992  {
39993  Lex->sql_command = SQLCOM_REVOKE_ALL;
39994  }
39995  break;
39996 
39997  case 2441:
39998 
39999 /* Line 1455 of yacc.c */
40000 #line 15255 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40001  {
40002  LEX *lex= Lex;
40003  lex->users_list.push_front ((yyvsp[(3) - (5)].lex_user));
40004  lex->type= TYPE_ENUM_PROXY;
40005  }
40006  break;
40007 
40008  case 2442:
40009 
40010 /* Line 1455 of yacc.c */
40011 #line 15263 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40012  { Lex->sql_command= SQLCOM_GRANT; }
40013  break;
40014 
40015  case 2443:
40016 
40017 /* Line 1455 of yacc.c */
40018 #line 15264 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40019  {}
40020  break;
40021 
40022  case 2444:
40023 
40024 /* Line 1455 of yacc.c */
40025 #line 15270 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40026  {
40027  LEX *lex= Lex;
40028  lex->type= 0;
40029  }
40030  break;
40031 
40032  case 2445:
40033 
40034 /* Line 1455 of yacc.c */
40035 #line 15276 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40036  {
40037  LEX *lex= Lex;
40038  if (lex->columns.elements)
40039  {
40040  my_parse_error(ER(ER_SYNTAX_ERROR));
40041  MYSQL_YYABORT;
40042  }
40043  lex->type= TYPE_ENUM_FUNCTION;
40044  }
40045  break;
40046 
40047  case 2446:
40048 
40049 /* Line 1455 of yacc.c */
40050 #line 15287 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40051  {
40052  LEX *lex= Lex;
40053  if (lex->columns.elements)
40054  {
40055  my_parse_error(ER(ER_SYNTAX_ERROR));
40056  MYSQL_YYABORT;
40057  }
40058  lex->type= TYPE_ENUM_PROCEDURE;
40059  }
40060  break;
40061 
40062  case 2447:
40063 
40064 /* Line 1455 of yacc.c */
40065 #line 15297 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40066  {
40067  LEX *lex= Lex;
40068  lex->users_list.push_front ((yyvsp[(3) - (6)].lex_user));
40069  lex->type= TYPE_ENUM_PROXY;
40070  }
40071  break;
40072 
40073  case 2450:
40074 
40075 /* Line 1455 of yacc.c */
40076 #line 15311 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40077  {
40078  LEX *lex= Lex;
40079  if (lex->grant == GLOBAL_ACLS &&
40080  lex->sql_command == SQLCOM_REVOKE)
40081  lex->sql_command= SQLCOM_REVOKE_ALL;
40082  }
40083  break;
40084 
40085  case 2451:
40086 
40087 /* Line 1455 of yacc.c */
40088 #line 15318 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40089  {
40090  Lex->all_privileges= 1;
40091  Lex->grant= GLOBAL_ACLS;
40092  }
40093  break;
40094 
40095  case 2456:
40096 
40097 /* Line 1455 of yacc.c */
40098 #line 15336 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40099  { Lex->which_columns = SELECT_ACL;}
40100  break;
40101 
40102  case 2457:
40103 
40104 /* Line 1455 of yacc.c */
40105 #line 15337 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40106  {}
40107  break;
40108 
40109  case 2458:
40110 
40111 /* Line 1455 of yacc.c */
40112 #line 15339 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40113  { Lex->which_columns = INSERT_ACL;}
40114  break;
40115 
40116  case 2459:
40117 
40118 /* Line 1455 of yacc.c */
40119 #line 15340 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40120  {}
40121  break;
40122 
40123  case 2460:
40124 
40125 /* Line 1455 of yacc.c */
40126 #line 15342 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40127  { Lex->which_columns = UPDATE_ACL; }
40128  break;
40129 
40130  case 2461:
40131 
40132 /* Line 1455 of yacc.c */
40133 #line 15343 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40134  {}
40135  break;
40136 
40137  case 2462:
40138 
40139 /* Line 1455 of yacc.c */
40140 #line 15345 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40141  { Lex->which_columns = REFERENCES_ACL;}
40142  break;
40143 
40144  case 2463:
40145 
40146 /* Line 1455 of yacc.c */
40147 #line 15346 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40148  {}
40149  break;
40150 
40151  case 2464:
40152 
40153 /* Line 1455 of yacc.c */
40154 #line 15347 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40155  { Lex->grant |= DELETE_ACL;}
40156  break;
40157 
40158  case 2465:
40159 
40160 /* Line 1455 of yacc.c */
40161 #line 15348 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40162  {}
40163  break;
40164 
40165  case 2466:
40166 
40167 /* Line 1455 of yacc.c */
40168 #line 15349 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40169  { Lex->grant |= INDEX_ACL;}
40170  break;
40171 
40172  case 2467:
40173 
40174 /* Line 1455 of yacc.c */
40175 #line 15350 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40176  { Lex->grant |= ALTER_ACL;}
40177  break;
40178 
40179  case 2468:
40180 
40181 /* Line 1455 of yacc.c */
40182 #line 15351 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40183  { Lex->grant |= CREATE_ACL;}
40184  break;
40185 
40186  case 2469:
40187 
40188 /* Line 1455 of yacc.c */
40189 #line 15352 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40190  { Lex->grant |= DROP_ACL;}
40191  break;
40192 
40193  case 2470:
40194 
40195 /* Line 1455 of yacc.c */
40196 #line 15353 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40197  { Lex->grant |= EXECUTE_ACL;}
40198  break;
40199 
40200  case 2471:
40201 
40202 /* Line 1455 of yacc.c */
40203 #line 15354 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40204  { Lex->grant |= RELOAD_ACL;}
40205  break;
40206 
40207  case 2472:
40208 
40209 /* Line 1455 of yacc.c */
40210 #line 15355 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40211  { Lex->grant |= SHUTDOWN_ACL;}
40212  break;
40213 
40214  case 2473:
40215 
40216 /* Line 1455 of yacc.c */
40217 #line 15356 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40218  { Lex->grant |= PROCESS_ACL;}
40219  break;
40220 
40221  case 2474:
40222 
40223 /* Line 1455 of yacc.c */
40224 #line 15357 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40225  { Lex->grant |= FILE_ACL;}
40226  break;
40227 
40228  case 2475:
40229 
40230 /* Line 1455 of yacc.c */
40231 #line 15358 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40232  { Lex->grant |= GRANT_ACL;}
40233  break;
40234 
40235  case 2476:
40236 
40237 /* Line 1455 of yacc.c */
40238 #line 15359 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40239  { Lex->grant |= SHOW_DB_ACL;}
40240  break;
40241 
40242  case 2477:
40243 
40244 /* Line 1455 of yacc.c */
40245 #line 15360 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40246  { Lex->grant |= SUPER_ACL;}
40247  break;
40248 
40249  case 2478:
40250 
40251 /* Line 1455 of yacc.c */
40252 #line 15361 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40253  { Lex->grant |= CREATE_TMP_ACL;}
40254  break;
40255 
40256  case 2479:
40257 
40258 /* Line 1455 of yacc.c */
40259 #line 15362 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40260  { Lex->grant |= LOCK_TABLES_ACL; }
40261  break;
40262 
40263  case 2480:
40264 
40265 /* Line 1455 of yacc.c */
40266 #line 15363 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40267  { Lex->grant |= REPL_SLAVE_ACL; }
40268  break;
40269 
40270  case 2481:
40271 
40272 /* Line 1455 of yacc.c */
40273 #line 15364 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40274  { Lex->grant |= REPL_CLIENT_ACL; }
40275  break;
40276 
40277  case 2482:
40278 
40279 /* Line 1455 of yacc.c */
40280 #line 15365 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40281  { Lex->grant |= CREATE_VIEW_ACL; }
40282  break;
40283 
40284  case 2483:
40285 
40286 /* Line 1455 of yacc.c */
40287 #line 15366 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40288  { Lex->grant |= SHOW_VIEW_ACL; }
40289  break;
40290 
40291  case 2484:
40292 
40293 /* Line 1455 of yacc.c */
40294 #line 15367 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40295  { Lex->grant |= CREATE_PROC_ACL; }
40296  break;
40297 
40298  case 2485:
40299 
40300 /* Line 1455 of yacc.c */
40301 #line 15368 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40302  { Lex->grant |= ALTER_PROC_ACL; }
40303  break;
40304 
40305  case 2486:
40306 
40307 /* Line 1455 of yacc.c */
40308 #line 15369 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40309  { Lex->grant |= CREATE_USER_ACL; }
40310  break;
40311 
40312  case 2487:
40313 
40314 /* Line 1455 of yacc.c */
40315 #line 15370 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40316  { Lex->grant |= EVENT_ACL;}
40317  break;
40318 
40319  case 2488:
40320 
40321 /* Line 1455 of yacc.c */
40322 #line 15371 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40323  { Lex->grant |= TRIGGER_ACL; }
40324  break;
40325 
40326  case 2489:
40327 
40328 /* Line 1455 of yacc.c */
40329 #line 15372 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40330  { Lex->grant |= CREATE_TABLESPACE_ACL; }
40331  break;
40332 
40333  case 2490:
40334 
40335 /* Line 1455 of yacc.c */
40336 #line 15376 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40337  {}
40338  break;
40339 
40340  case 2491:
40341 
40342 /* Line 1455 of yacc.c */
40343 #line 15377 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40344  {}
40345  break;
40346 
40347  case 2494:
40348 
40349 /* Line 1455 of yacc.c */
40350 #line 15387 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40351  {
40352  LEX *lex=Lex;
40353  if (lex->x509_subject)
40354  {
40355  my_error(ER_DUP_ARGUMENT, MYF(0), "SUBJECT");
40356  MYSQL_YYABORT;
40357  }
40358  lex->x509_subject=(yyvsp[(2) - (2)].lex_str).str;
40359  }
40360  break;
40361 
40362  case 2495:
40363 
40364 /* Line 1455 of yacc.c */
40365 #line 15397 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40366  {
40367  LEX *lex=Lex;
40368  if (lex->x509_issuer)
40369  {
40370  my_error(ER_DUP_ARGUMENT, MYF(0), "ISSUER");
40371  MYSQL_YYABORT;
40372  }
40373  lex->x509_issuer=(yyvsp[(2) - (2)].lex_str).str;
40374  }
40375  break;
40376 
40377  case 2496:
40378 
40379 /* Line 1455 of yacc.c */
40380 #line 15407 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40381  {
40382  LEX *lex=Lex;
40383  if (lex->ssl_cipher)
40384  {
40385  my_error(ER_DUP_ARGUMENT, MYF(0), "CIPHER");
40386  MYSQL_YYABORT;
40387  }
40388  lex->ssl_cipher=(yyvsp[(2) - (2)].lex_str).str;
40389  }
40390  break;
40391 
40392  case 2497:
40393 
40394 /* Line 1455 of yacc.c */
40395 #line 15420 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40396  {
40397  LEX *lex= Lex;
40398  size_t dummy;
40399  if (lex->copy_db_to(&lex->current_select->db, &dummy))
40400  MYSQL_YYABORT;
40401  if (lex->grant == GLOBAL_ACLS)
40402  lex->grant = DB_ACLS & ~GRANT_ACL;
40403  else if (lex->columns.elements)
40404  {
40405  my_message(ER_ILLEGAL_GRANT_FOR_TABLE,
40406  ER(ER_ILLEGAL_GRANT_FOR_TABLE), MYF(0));
40407  MYSQL_YYABORT;
40408  }
40409  }
40410  break;
40411 
40412  case 2498:
40413 
40414 /* Line 1455 of yacc.c */
40415 #line 15435 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40416  {
40417  LEX *lex= Lex;
40418  lex->current_select->db = (yyvsp[(1) - (3)].lex_str).str;
40419  if (lex->grant == GLOBAL_ACLS)
40420  lex->grant = DB_ACLS & ~GRANT_ACL;
40421  else if (lex->columns.elements)
40422  {
40423  my_message(ER_ILLEGAL_GRANT_FOR_TABLE,
40424  ER(ER_ILLEGAL_GRANT_FOR_TABLE), MYF(0));
40425  MYSQL_YYABORT;
40426  }
40427  }
40428  break;
40429 
40430  case 2499:
40431 
40432 /* Line 1455 of yacc.c */
40433 #line 15448 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40434  {
40435  LEX *lex= Lex;
40436  lex->current_select->db = NULL;
40437  if (lex->grant == GLOBAL_ACLS)
40438  lex->grant= GLOBAL_ACLS & ~GRANT_ACL;
40439  else if (lex->columns.elements)
40440  {
40441  my_message(ER_ILLEGAL_GRANT_FOR_TABLE,
40442  ER(ER_ILLEGAL_GRANT_FOR_TABLE), MYF(0));
40443  MYSQL_YYABORT;
40444  }
40445  }
40446  break;
40447 
40448  case 2500:
40449 
40450 /* Line 1455 of yacc.c */
40451 #line 15461 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40452  {
40453  LEX *lex=Lex;
40454  if (!lex->current_select->add_table_to_list(lex->thd, (yyvsp[(1) - (1)].table),NULL,
40455  TL_OPTION_UPDATING))
40456  MYSQL_YYABORT;
40457  if (lex->grant == GLOBAL_ACLS)
40458  lex->grant = TABLE_ACLS & ~GRANT_ACL;
40459  }
40460  break;
40461 
40462  case 2501:
40463 
40464 /* Line 1455 of yacc.c */
40465 #line 15473 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40466  {
40467  if (Lex->users_list.push_back((yyvsp[(1) - (1)].lex_user)))
40468  MYSQL_YYABORT;
40469  }
40470  break;
40471 
40472  case 2502:
40473 
40474 /* Line 1455 of yacc.c */
40475 #line 15478 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40476  {
40477  if (Lex->users_list.push_back((yyvsp[(3) - (3)].lex_user)))
40478  MYSQL_YYABORT;
40479  }
40480  break;
40481 
40482  case 2503:
40483 
40484 /* Line 1455 of yacc.c */
40485 #line 15486 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40486  {
40487  if (Lex->users_list.push_back((yyvsp[(1) - (1)].lex_user)))
40488  MYSQL_YYABORT;
40489  }
40490  break;
40491 
40492  case 2504:
40493 
40494 /* Line 1455 of yacc.c */
40495 #line 15491 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40496  {
40497  if (Lex->users_list.push_back((yyvsp[(3) - (3)].lex_user)))
40498  MYSQL_YYABORT;
40499  }
40500  break;
40501 
40502  case 2505:
40503 
40504 /* Line 1455 of yacc.c */
40505 #line 15499 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40506  {
40507  (yyval.lex_user)=(yyvsp[(1) - (4)].lex_user); (yyvsp[(1) - (4)].lex_user)->password=(yyvsp[(4) - (4)].lex_str);
40508  if (Lex->sql_command == SQLCOM_REVOKE)
40509  {
40510  my_parse_error(ER(ER_SYNTAX_ERROR));
40511  MYSQL_YYABORT;
40512  }
40513  String *password = new (YYTHD->mem_root) String((const char*)(yyvsp[(4) - (4)].lex_str).str,
40514  YYTHD->variables.character_set_client);
40515  check_password_policy(password);
40516  /*
40517  1. Plugin must be resolved
40518  2. Password must be digested
40519  */
40520  (yyvsp[(1) - (4)].lex_user)->uses_identified_by_clause= true;
40521  Lex->contains_plaintext_password= true;
40522  }
40523  break;
40524 
40525  case 2506:
40526 
40527 /* Line 1455 of yacc.c */
40528 #line 15517 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40529  {
40530  if (Lex->sql_command == SQLCOM_REVOKE)
40531  {
40532  my_parse_error(ER(ER_SYNTAX_ERROR));
40533  MYSQL_YYABORT;
40534  }
40535  (yyval.lex_user)= (yyvsp[(1) - (5)].lex_user);
40536  (yyvsp[(1) - (5)].lex_user)->password= (yyvsp[(5) - (5)].lex_str);
40537  if (!strcmp((yyvsp[(5) - (5)].lex_str).str, ""))
40538  {
40539  String *password= new (YYTHD->mem_root) String ((const char *)"",
40540  YYTHD->variables.character_set_client);
40541  check_password_policy(password);
40542  }
40543  /*
40544  1. Plugin must be resolved
40545  */
40546  (yyvsp[(1) - (5)].lex_user)->uses_identified_by_password_clause= true;
40547  }
40548  break;
40549 
40550  case 2507:
40551 
40552 /* Line 1455 of yacc.c */
40553 #line 15537 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40554  {
40555  if (Lex->sql_command == SQLCOM_REVOKE)
40556  {
40557  my_parse_error(ER(ER_SYNTAX_ERROR));
40558  MYSQL_YYABORT;
40559  }
40560  (yyval.lex_user)= (yyvsp[(1) - (4)].lex_user);
40561  (yyvsp[(1) - (4)].lex_user)->plugin= (yyvsp[(4) - (4)].lex_str);
40562  (yyvsp[(1) - (4)].lex_user)->auth= empty_lex_str;
40563  (yyvsp[(1) - (4)].lex_user)->uses_identified_with_clause= true;
40564  }
40565  break;
40566 
40567  case 2508:
40568 
40569 /* Line 1455 of yacc.c */
40570 #line 15549 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40571  {
40572  if (Lex->sql_command == SQLCOM_REVOKE)
40573  {
40574  my_parse_error(ER(ER_SYNTAX_ERROR));
40575  MYSQL_YYABORT;
40576  }
40577  (yyval.lex_user)= (yyvsp[(1) - (6)].lex_user);
40578  (yyvsp[(1) - (6)].lex_user)->plugin= (yyvsp[(4) - (6)].lex_str);
40579  (yyvsp[(1) - (6)].lex_user)->auth= (yyvsp[(6) - (6)].lex_str);
40580  (yyvsp[(1) - (6)].lex_user)->uses_identified_with_clause= true;
40581  (yyvsp[(1) - (6)].lex_user)->uses_authentication_string_clause= true;
40582  }
40583  break;
40584 
40585  case 2509:
40586 
40587 /* Line 1455 of yacc.c */
40588 #line 15562 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40589  {
40590  (yyval.lex_user)= (yyvsp[(1) - (1)].lex_user);
40591  (yyvsp[(1) - (1)].lex_user)->password= null_lex_str;
40592  check_password_policy(NULL);
40593  }
40594  break;
40595 
40596  case 2510:
40597 
40598 /* Line 1455 of yacc.c */
40599 #line 15571 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40600  {
40601  LEX *lex=Lex;
40602  lex->grant |= lex->which_columns;
40603  }
40604  break;
40605 
40606  case 2514:
40607 
40608 /* Line 1455 of yacc.c */
40609 #line 15585 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40610  {
40611  String *new_str = new (YYTHD->mem_root) String((const char*) (yyvsp[(1) - (1)].lex_str).str,(yyvsp[(1) - (1)].lex_str).length,system_charset_info);
40612  if (new_str == NULL)
40613  MYSQL_YYABORT;
40614  List_iterator <LEX_COLUMN> iter(Lex->columns);
40615  class LEX_COLUMN *point;
40616  LEX *lex=Lex;
40617  while ((point=iter++))
40618  {
40619  if (!my_strcasecmp(system_charset_info,
40620  point->column.ptr(), new_str->ptr()))
40621  break;
40622  }
40623  lex->grant_tot_col|= lex->which_columns;
40624  if (point)
40625  point->rights |= lex->which_columns;
40626  else
40627  {
40628  LEX_COLUMN *col= new LEX_COLUMN (*new_str,lex->which_columns);
40629  if (col == NULL)
40630  MYSQL_YYABORT;
40631  lex->columns.push_back(col);
40632  }
40633  }
40634  break;
40635 
40636  case 2516:
40637 
40638 /* Line 1455 of yacc.c */
40639 #line 15614 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40640  {
40641  Lex->ssl_type=SSL_TYPE_SPECIFIED;
40642  }
40643  break;
40644 
40645  case 2517:
40646 
40647 /* Line 1455 of yacc.c */
40648 #line 15618 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40649  {
40650  Lex->ssl_type=SSL_TYPE_ANY;
40651  }
40652  break;
40653 
40654  case 2518:
40655 
40656 /* Line 1455 of yacc.c */
40657 #line 15622 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40658  {
40659  Lex->ssl_type=SSL_TYPE_X509;
40660  }
40661  break;
40662 
40663  case 2519:
40664 
40665 /* Line 1455 of yacc.c */
40666 #line 15626 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40667  {
40668  Lex->ssl_type=SSL_TYPE_NONE;
40669  }
40670  break;
40671 
40672  case 2520:
40673 
40674 /* Line 1455 of yacc.c */
40675 #line 15632 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40676  {}
40677  break;
40678 
40679  case 2522:
40680 
40681 /* Line 1455 of yacc.c */
40682 #line 15637 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40683  {}
40684  break;
40685 
40686  case 2523:
40687 
40688 /* Line 1455 of yacc.c */
40689 #line 15638 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40690  { Lex->grant |= GRANT_ACL;}
40691  break;
40692 
40693  case 2524:
40694 
40695 /* Line 1455 of yacc.c */
40696 #line 15642 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40697  {}
40698  break;
40699 
40700  case 2525:
40701 
40702 /* Line 1455 of yacc.c */
40703 #line 15643 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40704  {}
40705  break;
40706 
40707  case 2526:
40708 
40709 /* Line 1455 of yacc.c */
40710 #line 15647 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40711  { Lex->grant |= GRANT_ACL;}
40712  break;
40713 
40714  case 2527:
40715 
40716 /* Line 1455 of yacc.c */
40717 #line 15649 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40718  {
40719  LEX *lex=Lex;
40720  lex->mqh.questions=(yyvsp[(2) - (2)].ulong_num);
40721  lex->mqh.specified_limits|= USER_RESOURCES::QUERIES_PER_HOUR;
40722  }
40723  break;
40724 
40725  case 2528:
40726 
40727 /* Line 1455 of yacc.c */
40728 #line 15655 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40729  {
40730  LEX *lex=Lex;
40731  lex->mqh.updates=(yyvsp[(2) - (2)].ulong_num);
40732  lex->mqh.specified_limits|= USER_RESOURCES::UPDATES_PER_HOUR;
40733  }
40734  break;
40735 
40736  case 2529:
40737 
40738 /* Line 1455 of yacc.c */
40739 #line 15661 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40740  {
40741  LEX *lex=Lex;
40742  lex->mqh.conn_per_hour= (yyvsp[(2) - (2)].ulong_num);
40743  lex->mqh.specified_limits|= USER_RESOURCES::CONNECTIONS_PER_HOUR;
40744  }
40745  break;
40746 
40747  case 2530:
40748 
40749 /* Line 1455 of yacc.c */
40750 #line 15667 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40751  {
40752  LEX *lex=Lex;
40753  lex->mqh.user_conn= (yyvsp[(2) - (2)].ulong_num);
40754  lex->mqh.specified_limits|= USER_RESOURCES::USER_CONNECTIONS;
40755  }
40756  break;
40757 
40758  case 2531:
40759 
40760 /* Line 1455 of yacc.c */
40761 #line 15676 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40762  {
40763  LEX *lex=Lex;
40764  lex->sql_command = SQLCOM_BEGIN;
40765  lex->start_transaction_opt= 0;
40766  }
40767  break;
40768 
40769  case 2532:
40770 
40771 /* Line 1455 of yacc.c */
40772 #line 15681 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40773  {}
40774  break;
40775 
40776  case 2533:
40777 
40778 /* Line 1455 of yacc.c */
40779 #line 15685 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40780  {}
40781  break;
40782 
40783  case 2534:
40784 
40785 /* Line 1455 of yacc.c */
40786 #line 15686 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40787  {}
40788  break;
40789 
40790  case 2535:
40791 
40792 /* Line 1455 of yacc.c */
40793 #line 15691 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40794  { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
40795  break;
40796 
40797  case 2536:
40798 
40799 /* Line 1455 of yacc.c */
40800 #line 15692 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40801  { (yyval.m_yes_no_unk)= TVL_NO; }
40802  break;
40803 
40804  case 2537:
40805 
40806 /* Line 1455 of yacc.c */
40807 #line 15693 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40808  { (yyval.m_yes_no_unk)= TVL_YES; }
40809  break;
40810 
40811  case 2538:
40812 
40813 /* Line 1455 of yacc.c */
40814 #line 15698 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40815  { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
40816  break;
40817 
40818  case 2539:
40819 
40820 /* Line 1455 of yacc.c */
40821 #line 15699 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40822  { (yyval.m_yes_no_unk)= TVL_YES; }
40823  break;
40824 
40825  case 2540:
40826 
40827 /* Line 1455 of yacc.c */
40828 #line 15700 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40829  { (yyval.m_yes_no_unk)= TVL_NO; }
40830  break;
40831 
40832  case 2541:
40833 
40834 /* Line 1455 of yacc.c */
40835 #line 15704 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40836  {}
40837  break;
40838 
40839  case 2542:
40840 
40841 /* Line 1455 of yacc.c */
40842 #line 15705 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40843  {}
40844  break;
40845 
40846  case 2543:
40847 
40848 /* Line 1455 of yacc.c */
40849 #line 15710 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40850  {
40851  LEX *lex=Lex;
40852  lex->sql_command= SQLCOM_COMMIT;
40853  /* Don't allow AND CHAIN RELEASE. */
40854  MYSQL_YYABORT_UNLESS((yyvsp[(3) - (4)].m_yes_no_unk) != TVL_YES || (yyvsp[(4) - (4)].m_yes_no_unk) != TVL_YES);
40855  lex->tx_chain= (yyvsp[(3) - (4)].m_yes_no_unk);
40856  lex->tx_release= (yyvsp[(4) - (4)].m_yes_no_unk);
40857  }
40858  break;
40859 
40860  case 2544:
40861 
40862 /* Line 1455 of yacc.c */
40863 #line 15722 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40864  {
40865  LEX *lex=Lex;
40866  lex->sql_command= SQLCOM_ROLLBACK;
40867  /* Don't allow AND CHAIN RELEASE. */
40868  MYSQL_YYABORT_UNLESS((yyvsp[(3) - (4)].m_yes_no_unk) != TVL_YES || (yyvsp[(4) - (4)].m_yes_no_unk) != TVL_YES);
40869  lex->tx_chain= (yyvsp[(3) - (4)].m_yes_no_unk);
40870  lex->tx_release= (yyvsp[(4) - (4)].m_yes_no_unk);
40871  }
40872  break;
40873 
40874  case 2545:
40875 
40876 /* Line 1455 of yacc.c */
40877 #line 15732 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40878  {
40879  LEX *lex=Lex;
40880  lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
40881  lex->ident= (yyvsp[(5) - (5)].lex_str);
40882  }
40883  break;
40884 
40885  case 2546:
40886 
40887 /* Line 1455 of yacc.c */
40888 #line 15741 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40889  {
40890  LEX *lex=Lex;
40891  lex->sql_command= SQLCOM_SAVEPOINT;
40892  lex->ident= (yyvsp[(2) - (2)].lex_str);
40893  }
40894  break;
40895 
40896  case 2547:
40897 
40898 /* Line 1455 of yacc.c */
40899 #line 15750 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40900  {
40901  LEX *lex=Lex;
40902  lex->sql_command= SQLCOM_RELEASE_SAVEPOINT;
40903  lex->ident= (yyvsp[(3) - (3)].lex_str);
40904  }
40905  break;
40906 
40907  case 2548:
40908 
40909 /* Line 1455 of yacc.c */
40910 #line 15763 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40911  {}
40912  break;
40913 
40914  case 2550:
40915 
40916 /* Line 1455 of yacc.c */
40917 #line 15769 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40918  {
40919  if (add_select_to_union_list(Lex, (bool)(yyvsp[(2) - (2)].num), TRUE))
40920  MYSQL_YYABORT;
40921  }
40922  break;
40923 
40924  case 2551:
40925 
40926 /* Line 1455 of yacc.c */
40927 #line 15774 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40928  {
40929  /*
40930  Remove from the name resolution context stack the context of the
40931  last select in the union.
40932  */
40933  Lex->pop_context();
40934  }
40935  break;
40936 
40937  case 2552:
40938 
40939 /* Line 1455 of yacc.c */
40940 #line 15784 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40941  { (yyval.num)= 0; }
40942  break;
40943 
40944  case 2553:
40945 
40946 /* Line 1455 of yacc.c */
40947 #line 15785 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40948  { (yyval.num)= 1; }
40949  break;
40950 
40951  case 2554:
40952 
40953 /* Line 1455 of yacc.c */
40954 #line 15786 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40955  { (yyval.num)= 1; }
40956  break;
40957 
40958  case 2555:
40959 
40960 /* Line 1455 of yacc.c */
40961 #line 15790 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40962  { (yyval.is_not_empty)= false; }
40963  break;
40964 
40965  case 2556:
40966 
40967 /* Line 1455 of yacc.c */
40968 #line 15791 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40969  { (yyval.is_not_empty)= true; }
40970  break;
40971 
40972  case 2557:
40973 
40974 /* Line 1455 of yacc.c */
40975 #line 15795 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40976  {
40977  THD *thd= YYTHD;
40978  LEX *lex= thd->lex;
40979  DBUG_ASSERT(lex->current_select->linkage != GLOBAL_OPTIONS_TYPE);
40980  SELECT_LEX *sel= lex->current_select;
40981  SELECT_LEX_UNIT *unit= sel->master_unit();
40982  SELECT_LEX *fake= unit->fake_select_lex;
40983  if (fake)
40984  {
40985  unit->global_parameters= fake;
40986  fake->no_table_names_allowed= 1;
40987  lex->current_select= fake;
40988  }
40989  thd->where= "global ORDER clause";
40990  }
40991  break;
40992 
40993  case 2558:
40994 
40995 /* Line 1455 of yacc.c */
40996 #line 15811 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
40997  {
40998  THD *thd= YYTHD;
40999  thd->lex->current_select->no_table_names_allowed= 0;
41000  thd->where= "";
41001  }
41002  break;
41003 
41004  case 2561:
41005 
41006 /* Line 1455 of yacc.c */
41007 #line 15824 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41008  { (yyval.num)=1; }
41009  break;
41010 
41011  case 2562:
41012 
41013 /* Line 1455 of yacc.c */
41014 #line 15825 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41015  { (yyval.num)=1; }
41016  break;
41017 
41018  case 2563:
41019 
41020 /* Line 1455 of yacc.c */
41021 #line 15826 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41022  { (yyval.num)=0; }
41023  break;
41024 
41025  case 2564:
41026 
41027 /* Line 1455 of yacc.c */
41028 #line 15831 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41029  {
41030  (yyval.select_lex)= Lex->current_select->master_unit()->first_select();
41031  }
41032  break;
41033 
41034  case 2565:
41035 
41036 /* Line 1455 of yacc.c */
41037 #line 15835 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41038  {
41039  (yyval.select_lex)= Lex->current_select->master_unit()->first_select();
41040  }
41041  break;
41042 
41043  case 2567:
41044 
41045 /* Line 1455 of yacc.c */
41046 #line 15844 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41047  {
41048  if (add_select_to_union_list(Lex, (bool)(yyvsp[(3) - (3)].num), FALSE))
41049  MYSQL_YYABORT;
41050  }
41051  break;
41052 
41053  case 2568:
41054 
41055 /* Line 1455 of yacc.c */
41056 #line 15850 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41057  {
41058  Lex->pop_context();
41059  (yyval.select_lex)= (yyvsp[(1) - (6)].select_lex);
41060  }
41061  break;
41062 
41063  case 2569:
41064 
41065 /* Line 1455 of yacc.c */
41066 #line 15859 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41067  {
41068  (yyval.select_lex)= (yyvsp[(2) - (3)].select_lex);
41069  }
41070  break;
41071 
41072  case 2570:
41073 
41074 /* Line 1455 of yacc.c */
41075 #line 15865 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41076  {
41077  LEX *lex=Lex;
41078  if (!lex->expr_allows_subselect ||
41079  lex->sql_command == (int)SQLCOM_PURGE)
41080  {
41081  my_parse_error(ER(ER_SYNTAX_ERROR));
41082  MYSQL_YYABORT;
41083  }
41084  /*
41085  we are making a "derived table" for the parenthesis
41086  as we need to have a lex level to fit the union
41087  after the parenthesis, e.g.
41088  (SELECT .. ) UNION ... becomes
41089  SELECT * FROM ((SELECT ...) UNION ...)
41090  */
41091  if (mysql_new_select(Lex, 1))
41092  MYSQL_YYABORT;
41093  }
41094  break;
41095 
41096  case 2571:
41097 
41098 /* Line 1455 of yacc.c */
41099 #line 15886 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41100  {
41101  LEX *lex=Lex;
41102 
41103  lex->pop_context();
41104  SELECT_LEX *child= lex->current_select;
41105  lex->current_select = lex->current_select->outer_select();
41106  lex->nest_level--;
41107  lex->current_select->n_child_sum_items += child->n_sum_items;
41108  /*
41109  A subselect can add fields to an outer select. Reserve space for
41110  them.
41111  */
41112  lex->current_select->select_n_where_fields+=
41113  child->select_n_where_fields;
41114  }
41115  break;
41116 
41117  case 2576:
41118 
41119 /* Line 1455 of yacc.c */
41120 #line 15914 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41121  { Select->options|= SELECT_STRAIGHT_JOIN; }
41122  break;
41123 
41124  case 2577:
41125 
41126 /* Line 1455 of yacc.c */
41127 #line 15916 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41128  {
41129  if (check_simple_select())
41130  MYSQL_YYABORT;
41131  YYPS->m_lock_type= TL_READ_HIGH_PRIORITY;
41132  YYPS->m_mdl_type= MDL_SHARED_READ;
41133  Select->options|= SELECT_HIGH_PRIORITY;
41134  }
41135  break;
41136 
41137  case 2578:
41138 
41139 /* Line 1455 of yacc.c */
41140 #line 15923 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41141  { Select->options|= SELECT_DISTINCT; }
41142  break;
41143 
41144  case 2579:
41145 
41146 /* Line 1455 of yacc.c */
41147 #line 15924 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41148  { Select->options|= SELECT_SMALL_RESULT; }
41149  break;
41150 
41151  case 2580:
41152 
41153 /* Line 1455 of yacc.c */
41154 #line 15925 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41155  { Select->options|= SELECT_BIG_RESULT; }
41156  break;
41157 
41158  case 2581:
41159 
41160 /* Line 1455 of yacc.c */
41161 #line 15927 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41162  {
41163  if (check_simple_select())
41164  MYSQL_YYABORT;
41165  Select->options|= OPTION_BUFFER_RESULT;
41166  }
41167  break;
41168 
41169  case 2582:
41170 
41171 /* Line 1455 of yacc.c */
41172 #line 15933 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41173  {
41174  if (check_simple_select())
41175  MYSQL_YYABORT;
41176  Select->options|= OPTION_FOUND_ROWS;
41177  }
41178  break;
41179 
41180  case 2583:
41181 
41182 /* Line 1455 of yacc.c */
41183 #line 15938 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41184  { Select->options|= SELECT_ALL; }
41185  break;
41186 
41187  case 2584:
41188 
41189 /* Line 1455 of yacc.c */
41190 #line 15949 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41191  {}
41192  break;
41193 
41194  case 2585:
41195 
41196 /* Line 1455 of yacc.c */
41197 #line 15951 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41198  {}
41199  break;
41200 
41201  case 2586:
41202 
41203 /* Line 1455 of yacc.c */
41204 #line 15953 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41205  {}
41206  break;
41207 
41208  case 2600:
41209 
41210 /* Line 1455 of yacc.c */
41211 #line 15986 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41212  {
41213  /*
41214  We have to distinguish missing DEFINER-clause from case when
41215  CURRENT_USER specified as definer explicitly in order to properly
41216  handle CREATE TRIGGER statements which come to replication thread
41217  from older master servers (i.e. to create non-suid trigger in this
41218  case).
41219  */
41220  YYTHD->lex->definer= 0;
41221  }
41222  break;
41223 
41224  case 2601:
41225 
41226 /* Line 1455 of yacc.c */
41227 #line 16000 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41228  {
41229  YYTHD->lex->definer= get_current_user(YYTHD, (yyvsp[(3) - (3)].lex_user));
41230  }
41231  break;
41232 
41233  case 2602:
41234 
41235 /* Line 1455 of yacc.c */
41236 #line 16013 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41237  {}
41238  break;
41239 
41240  case 2603:
41241 
41242 /* Line 1455 of yacc.c */
41243 #line 16015 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41244  {}
41245  break;
41246 
41247  case 2604:
41248 
41249 /* Line 1455 of yacc.c */
41250 #line 16017 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41251  {}
41252  break;
41253 
41254  case 2605:
41255 
41256 /* Line 1455 of yacc.c */
41257 #line 16022 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41258  { Lex->create_view_mode= VIEW_CREATE_OR_REPLACE; }
41259  break;
41260 
41261  case 2606:
41262 
41263 /* Line 1455 of yacc.c */
41264 #line 16027 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41265  { Lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED; }
41266  break;
41267 
41268  case 2607:
41269 
41270 /* Line 1455 of yacc.c */
41271 #line 16029 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41272  { Lex->create_view_algorithm= VIEW_ALGORITHM_MERGE; }
41273  break;
41274 
41275  case 2608:
41276 
41277 /* Line 1455 of yacc.c */
41278 #line 16031 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41279  { Lex->create_view_algorithm= VIEW_ALGORITHM_TMPTABLE; }
41280  break;
41281 
41282  case 2609:
41283 
41284 /* Line 1455 of yacc.c */
41285 #line 16036 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41286  { Lex->create_view_suid= VIEW_SUID_DEFAULT; }
41287  break;
41288 
41289  case 2610:
41290 
41291 /* Line 1455 of yacc.c */
41292 #line 16038 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41293  { Lex->create_view_suid= VIEW_SUID_DEFINER; }
41294  break;
41295 
41296  case 2611:
41297 
41298 /* Line 1455 of yacc.c */
41299 #line 16040 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41300  { Lex->create_view_suid= VIEW_SUID_INVOKER; }
41301  break;
41302 
41303  case 2612:
41304 
41305 /* Line 1455 of yacc.c */
41306 #line 16045 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41307  {
41308  THD *thd= YYTHD;
41309  LEX *lex= thd->lex;
41310  lex->sql_command= SQLCOM_CREATE_VIEW;
41311  /* first table in list is target VIEW name */
41312  if (!lex->select_lex.add_table_to_list(thd, (yyvsp[(3) - (3)].table), NULL,
41313  TL_OPTION_UPDATING,
41314  TL_IGNORE,
41315  MDL_EXCLUSIVE))
41316  MYSQL_YYABORT;
41317  lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB;
41318  }
41319  break;
41320 
41321  case 2614:
41322 
41323 /* Line 1455 of yacc.c */
41324 #line 16062 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41325  {}
41326  break;
41327 
41328  case 2616:
41329 
41330 /* Line 1455 of yacc.c */
41331 #line 16068 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41332  {
41333  Lex->view_list.push_back((LEX_STRING*)
41334  sql_memdup(&(yyvsp[(1) - (1)].lex_str), sizeof(LEX_STRING)));
41335  }
41336  break;
41337 
41338  case 2617:
41339 
41340 /* Line 1455 of yacc.c */
41341 #line 16073 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41342  {
41343  Lex->view_list.push_back((LEX_STRING*)
41344  sql_memdup(&(yyvsp[(3) - (3)].lex_str), sizeof(LEX_STRING)));
41345  }
41346  break;
41347 
41348  case 2618:
41349 
41350 /* Line 1455 of yacc.c */
41351 #line 16080 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41352  {
41353  LEX *lex= Lex;
41354  lex->parsing_options.allows_variable= FALSE;
41355  lex->parsing_options.allows_select_into= FALSE;
41356  lex->parsing_options.allows_select_procedure= FALSE;
41357  lex->parsing_options.allows_derived= FALSE;
41358  lex->create_view_select.str= (char *) YYLIP->get_cpp_ptr();
41359  }
41360  break;
41361 
41362  case 2619:
41363 
41364 /* Line 1455 of yacc.c */
41365 #line 16089 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41366  {
41367  THD *thd= YYTHD;
41368  LEX *lex= Lex;
41369  uint len= YYLIP->get_cpp_ptr() - lex->create_view_select.str;
41370  void *create_view_select= thd->memdup(lex->create_view_select.str, len);
41371  lex->create_view_select.length= len;
41372  lex->create_view_select.str= (char *) create_view_select;
41373  trim_whitespace(thd->charset(), &lex->create_view_select);
41374  lex->parsing_options.allows_variable= TRUE;
41375  lex->parsing_options.allows_select_into= TRUE;
41376  lex->parsing_options.allows_select_procedure= TRUE;
41377  lex->parsing_options.allows_derived= TRUE;
41378  }
41379  break;
41380 
41381  case 2620:
41382 
41383 /* Line 1455 of yacc.c */
41384 #line 16106 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41385  {
41386  if (Lex->current_select->set_braces(0))
41387  {
41388  my_parse_error(ER(ER_SYNTAX_ERROR));
41389  MYSQL_YYABORT;
41390  }
41391  /*
41392  For statment as "CREATE VIEW v1 AS SELECT1 UNION SELECT2",
41393  parsing of Select query (SELECT1) is completed and UNION_CLAUSE
41394  is not yet parsed. So check for
41395  Lex->current_select->master_unit()->first_select()->braces
41396  (as its done in "select_init2" for "select_part2" rule) is not
41397  done here.
41398  */
41399  }
41400  break;
41401 
41402  case 2623:
41403 
41404 /* Line 1455 of yacc.c */
41405 #line 16127 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41406  {
41407  if (setup_select_in_parentheses(Lex))
41408  MYSQL_YYABORT;
41409  }
41410  break;
41411 
41412  case 2625:
41413 
41414 /* Line 1455 of yacc.c */
41415 #line 16136 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41416  {
41417  Lex->current_select->table_list.save_and_clear(&Lex->save_list);
41418  }
41419  break;
41420 
41421  case 2626:
41422 
41423 /* Line 1455 of yacc.c */
41424 #line 16140 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41425  {
41426  Lex->current_select->table_list.push_front(&Lex->save_list);
41427  }
41428  break;
41429 
41430  case 2627:
41431 
41432 /* Line 1455 of yacc.c */
41433 #line 16147 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41434  { Lex->create_view_check= VIEW_CHECK_NONE; }
41435  break;
41436 
41437  case 2628:
41438 
41439 /* Line 1455 of yacc.c */
41440 #line 16149 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41441  { Lex->create_view_check= VIEW_CHECK_CASCADED; }
41442  break;
41443 
41444  case 2629:
41445 
41446 /* Line 1455 of yacc.c */
41447 #line 16151 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41448  { Lex->create_view_check= VIEW_CHECK_CASCADED; }
41449  break;
41450 
41451  case 2630:
41452 
41453 /* Line 1455 of yacc.c */
41454 #line 16153 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41455  { Lex->create_view_check= VIEW_CHECK_LOCAL; }
41456  break;
41457 
41458  case 2631:
41459 
41460 /* Line 1455 of yacc.c */
41461 #line 16170 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41462  { /* $8 */
41463  Lex->raw_trg_on_table_name_begin= YYLIP->get_tok_start();
41464  }
41465  break;
41466 
41467  case 2632:
41468 
41469 /* Line 1455 of yacc.c */
41470 #line 16176 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41471  { /* $12 */
41472  Lex->raw_trg_on_table_name_end= YYLIP->get_tok_start();
41473  }
41474  break;
41475 
41476  case 2633:
41477 
41478 /* Line 1455 of yacc.c */
41479 #line 16181 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41480  { /* $15 */
41481  THD *thd= YYTHD;
41482  LEX *lex= thd->lex;
41483  Lex_input_stream *lip= YYLIP;
41484 
41485  if (lex->sphead)
41486  {
41487  my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "TRIGGER");
41488  MYSQL_YYABORT;
41489  }
41490 
41491  sp_head *sp= sp_start_parsing(thd, SP_TYPE_TRIGGER, (yyvsp[(3) - (14)].spname));
41492 
41493  if (!sp)
41494  MYSQL_YYABORT;
41495 
41496  sp->m_trg_chistics.action_time= (enum trg_action_time_type) (yyvsp[(4) - (14)].num);
41497  sp->m_trg_chistics.event= (enum trg_event_type) (yyvsp[(5) - (14)].num);
41498  lex->stmt_definition_begin= (yyvsp[(2) - (14)].simple_string);
41499  lex->ident.str= (yyvsp[(7) - (14)].simple_string);
41500  lex->ident.length= (yyvsp[(11) - (14)].simple_string) - (yyvsp[(7) - (14)].simple_string);
41501 
41502  lex->sphead= sp;
41503  lex->spname= (yyvsp[(3) - (14)].spname);
41504 
41505  memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics));
41506  sp->m_chistics= &lex->sp_chistics;
41507  sp->set_body_start(thd, lip->get_cpp_ptr());
41508  }
41509  break;
41510 
41511  case 2634:
41512 
41513 /* Line 1455 of yacc.c */
41514 #line 16211 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41515  { /* $17 */
41516  THD *thd= YYTHD;
41517  LEX *lex= Lex;
41518  sp_head *sp= lex->sphead;
41519 
41520  sp_finish_parsing(thd);
41521 
41522  lex->sql_command= SQLCOM_CREATE_TRIGGER;
41523 
41524  if (sp->is_not_allowed_in_function("trigger"))
41525  MYSQL_YYABORT;
41526 
41527  /*
41528  We have to do it after parsing trigger body, because some of
41529  sp_proc_stmt alternatives are not saving/restoring LEX, so
41530  lex->query_tables can be wiped out.
41531  */
41532  if (!lex->select_lex.add_table_to_list(thd, (yyvsp[(9) - (16)].table),
41533  (LEX_STRING*) 0,
41534  TL_OPTION_UPDATING,
41535  TL_READ_NO_INSERT,
41536  MDL_SHARED_NO_WRITE))
41537  MYSQL_YYABORT;
41538  }
41539  break;
41540 
41541  case 2635:
41542 
41543 /* Line 1455 of yacc.c */
41544 #line 16246 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41545  {
41546  THD *thd= YYTHD;
41547  LEX *lex= thd->lex;
41548  if (is_native_function(thd, & (yyvsp[(4) - (8)].lex_str)))
41549  {
41550  my_error(ER_NATIVE_FCT_NAME_COLLISION, MYF(0),
41551  (yyvsp[(4) - (8)].lex_str).str);
41552  MYSQL_YYABORT;
41553  }
41554  lex->sql_command = SQLCOM_CREATE_FUNCTION;
41555  lex->udf.type= UDFTYPE_AGGREGATE;
41556  lex->stmt_definition_begin= (yyvsp[(2) - (8)].simple_string);
41557  lex->udf.name = (yyvsp[(4) - (8)].lex_str);
41558  lex->udf.returns=(Item_result) (yyvsp[(6) - (8)].num);
41559  lex->udf.dl=(yyvsp[(8) - (8)].lex_str).str;
41560  }
41561  break;
41562 
41563  case 2636:
41564 
41565 /* Line 1455 of yacc.c */
41566 #line 16264 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41567  {
41568  THD *thd= YYTHD;
41569  LEX *lex= thd->lex;
41570  if (is_native_function(thd, & (yyvsp[(3) - (7)].lex_str)))
41571  {
41572  my_error(ER_NATIVE_FCT_NAME_COLLISION, MYF(0),
41573  (yyvsp[(3) - (7)].lex_str).str);
41574  MYSQL_YYABORT;
41575  }
41576  lex->sql_command = SQLCOM_CREATE_FUNCTION;
41577  lex->udf.type= UDFTYPE_FUNCTION;
41578  lex->stmt_definition_begin= (yyvsp[(1) - (7)].simple_string);
41579  lex->udf.name = (yyvsp[(3) - (7)].lex_str);
41580  lex->udf.returns=(Item_result) (yyvsp[(5) - (7)].num);
41581  lex->udf.dl=(yyvsp[(7) - (7)].lex_str).str;
41582  }
41583  break;
41584 
41585  case 2637:
41586 
41587 /* Line 1455 of yacc.c */
41588 #line 16287 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41589  { /* $5 */
41590  THD *thd= YYTHD;
41591  LEX *lex= thd->lex;
41592 
41593  lex->stmt_definition_begin= (yyvsp[(1) - (4)].simple_string);
41594  lex->spname= (yyvsp[(3) - (4)].spname);
41595 
41596  if (lex->sphead)
41597  {
41598  my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "FUNCTION");
41599  MYSQL_YYABORT;
41600  }
41601 
41602  sp_head *sp= sp_start_parsing(thd, SP_TYPE_FUNCTION, lex->spname);
41603 
41604  if (!sp)
41605  MYSQL_YYABORT;
41606 
41607  lex->sphead= sp;
41608 
41609  /*
41610  NOTE: the start of the parameters in the query string is
41611  YYLIP->get_cpp_tok_start() + 1. 1 is the length of '(', which the
41612  tokenizer has just passed (just YYLIP->get_cpp_tok_start() points
41613  to the '(').
41614  */
41615 
41616  sp->m_parser_data.set_parameter_start_ptr(
41617  YYLIP->get_cpp_tok_start() + 1);
41618  }
41619  break;
41620 
41621  case 2638:
41622 
41623 /* Line 1455 of yacc.c */
41624 #line 16319 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41625  { /* $8 */
41626  Lex->sphead->m_parser_data.set_parameter_end_ptr(
41627  YYLIP->get_cpp_tok_start());
41628  }
41629  break;
41630 
41631  case 2639:
41632 
41633 /* Line 1455 of yacc.c */
41634 #line 16324 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41635  { /* $10 */
41636  LEX *lex= Lex;
41637  lex->charset= NULL;
41638  lex->length= lex->dec= NULL;
41639  lex->interval_list.empty();
41640  lex->type= 0;
41641  }
41642  break;
41643 
41644  case 2640:
41645 
41646 /* Line 1455 of yacc.c */
41647 #line 16332 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41648  { /* $12 */
41649  LEX *lex= Lex;
41650  sp_head *sp= lex->sphead;
41651  /*
41652  This was disabled in 5.1.12. See bug #20701
41653  When collation support in SP is implemented, then this test
41654  should be removed.
41655  */
41656  if (((yyvsp[(11) - (11)].num) == MYSQL_TYPE_STRING || (yyvsp[(11) - (11)].num) == MYSQL_TYPE_VARCHAR)
41657  && (lex->type & BINCMP_FLAG))
41658  {
41659  my_error(ER_NOT_SUPPORTED_YET, MYF(0), "return value collation");
41660  MYSQL_YYABORT;
41661  }
41662 
41663  if (fill_field_definition(YYTHD, sp,
41664  (enum enum_field_types) (yyvsp[(11) - (11)].num),
41665  &sp->m_return_field_def))
41666  MYSQL_YYABORT;
41667 
41668  memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics));
41669  }
41670  break;
41671 
41672  case 2641:
41673 
41674 /* Line 1455 of yacc.c */
41675 #line 16355 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41676  { /* $14 */
41677  THD *thd= YYTHD;
41678  LEX *lex= thd->lex;
41679 
41680  lex->sphead->m_chistics= &lex->sp_chistics;
41681  lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
41682  }
41683  break;
41684 
41685  case 2642:
41686 
41687 /* Line 1455 of yacc.c */
41688 #line 16363 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41689  {
41690  THD *thd= YYTHD;
41691  LEX *lex= thd->lex;
41692  sp_head *sp= lex->sphead;
41693 
41694  if (sp->is_not_allowed_in_function("function"))
41695  MYSQL_YYABORT;
41696 
41697  sp_finish_parsing(thd);
41698 
41699  lex->sql_command= SQLCOM_CREATE_SPFUNCTION;
41700 
41701  if (!(sp->m_flags & sp_head::HAS_RETURN))
41702  {
41703  my_error(ER_SP_NORETURN, MYF(0), sp->m_qname.str);
41704  MYSQL_YYABORT;
41705  }
41706 
41707  if (is_native_function(thd, & sp->m_name))
41708  {
41709  /*
41710  This warning will be printed when
41711  [1] A client query is parsed,
41712  [2] A stored function is loaded by db_load_routine.
41713  Printing the warning for [2] is intentional, to cover the
41714  following scenario:
41715  - A user define a SF 'foo' using MySQL 5.N
41716  - An application uses select foo(), and works.
41717  - MySQL 5.{N+1} defines a new native function 'foo', as
41718  part of a new feature.
41719  - MySQL 5.{N+1} documentation is updated, and should mention
41720  that there is a potential incompatible change in case of
41721  existing stored function named 'foo'.
41722  - The user deploys 5.{N+1}. At this point, 'select foo()'
41723  means something different, and the user code is most likely
41724  broken (it's only safe if the code is 'select db.foo()').
41725  With a warning printed when the SF is loaded (which has to occur
41726  before the call), the warning will provide a hint explaining
41727  the root cause of a later failure of 'select foo()'.
41728  With no warning printed, the user code will fail with no
41729  apparent reason.
41730  Printing a warning each time db_load_routine is executed for
41731  an ambiguous function is annoying, since that can happen a lot,
41732  but in practice should not happen unless there *are* name
41733  collisions.
41734  If a collision exists, it should not be silenced but fixed.
41735  */
41736  push_warning_printf(thd,
41737  Sql_condition::WARN_LEVEL_NOTE,
41738  ER_NATIVE_FCT_NAME_COLLISION,
41739  ER(ER_NATIVE_FCT_NAME_COLLISION),
41740  sp->m_name.str);
41741  }
41742  }
41743  break;
41744 
41745  case 2643:
41746 
41747 /* Line 1455 of yacc.c */
41748 #line 16421 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41749  {
41750  THD *thd= YYTHD;
41751  LEX *lex= Lex;
41752 
41753  if (lex->sphead)
41754  {
41755  my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "PROCEDURE");
41756  MYSQL_YYABORT;
41757  }
41758 
41759  lex->stmt_definition_begin= (yyvsp[(2) - (3)].simple_string);
41760 
41761  sp_head *sp= sp_start_parsing(thd, SP_TYPE_PROCEDURE, (yyvsp[(3) - (3)].spname));
41762 
41763  if (!sp)
41764  MYSQL_YYABORT;
41765 
41766  lex->sphead= sp;
41767  }
41768  break;
41769 
41770  case 2644:
41771 
41772 /* Line 1455 of yacc.c */
41773 #line 16441 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41774  {
41775  /*
41776  NOTE: the start of the parameters in the query string is
41777  YYLIP->get_cpp_tok_start() + 1. 1 is the length of '(', which the
41778  tokenizer has just passed (just YYLIP->get_cpp_tok_start() points
41779  to the '(').
41780  */
41781 
41782  Lex->sphead->m_parser_data.set_parameter_start_ptr(
41783  YYLIP->get_cpp_tok_start() + 1);
41784  }
41785  break;
41786 
41787  case 2645:
41788 
41789 /* Line 1455 of yacc.c */
41790 #line 16454 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41791  {
41792  THD *thd= YYTHD;
41793  LEX *lex= thd->lex;
41794 
41795  Lex->sphead->m_parser_data.set_parameter_end_ptr(
41796  YYLIP->get_cpp_tok_start());
41797 
41798  memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics));
41799  }
41800  break;
41801 
41802  case 2646:
41803 
41804 /* Line 1455 of yacc.c */
41805 #line 16464 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41806  {
41807  THD *thd= YYTHD;
41808  LEX *lex= thd->lex;
41809 
41810  lex->sphead->m_chistics= &lex->sp_chistics;
41811  lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
41812  }
41813  break;
41814 
41815  case 2647:
41816 
41817 /* Line 1455 of yacc.c */
41818 #line 16472 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41819  {
41820  THD *thd= YYTHD;
41821  LEX *lex= Lex;
41822 
41823  sp_finish_parsing(thd);
41824 
41825  lex->sql_command= SQLCOM_CREATE_PROCEDURE;
41826  }
41827  break;
41828 
41829  case 2648:
41830 
41831 /* Line 1455 of yacc.c */
41832 #line 16486 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41833  {
41834  Lex->sql_command = SQLCOM_XA_START;
41835  }
41836  break;
41837 
41838  case 2649:
41839 
41840 /* Line 1455 of yacc.c */
41841 #line 16490 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41842  {
41843  Lex->sql_command = SQLCOM_XA_END;
41844  }
41845  break;
41846 
41847  case 2650:
41848 
41849 /* Line 1455 of yacc.c */
41850 #line 16494 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41851  {
41852  Lex->sql_command = SQLCOM_XA_PREPARE;
41853  }
41854  break;
41855 
41856  case 2651:
41857 
41858 /* Line 1455 of yacc.c */
41859 #line 16498 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41860  {
41861  Lex->sql_command = SQLCOM_XA_COMMIT;
41862  }
41863  break;
41864 
41865  case 2652:
41866 
41867 /* Line 1455 of yacc.c */
41868 #line 16502 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41869  {
41870  Lex->sql_command = SQLCOM_XA_ROLLBACK;
41871  }
41872  break;
41873 
41874  case 2653:
41875 
41876 /* Line 1455 of yacc.c */
41877 #line 16506 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41878  {
41879  Lex->sql_command = SQLCOM_XA_RECOVER;
41880  }
41881  break;
41882 
41883  case 2654:
41884 
41885 /* Line 1455 of yacc.c */
41886 #line 16513 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41887  {
41888  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (1)].string)->length() <= MAXGTRIDSIZE);
41889  if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID))))
41890  MYSQL_YYABORT;
41891  Lex->xid->set(1L, (yyvsp[(1) - (1)].string)->ptr(), (yyvsp[(1) - (1)].string)->length(), 0, 0);
41892  }
41893  break;
41894 
41895  case 2655:
41896 
41897 /* Line 1455 of yacc.c */
41898 #line 16520 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41899  {
41900  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].string)->length() <= MAXGTRIDSIZE && (yyvsp[(3) - (3)].string)->length() <= MAXBQUALSIZE);
41901  if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID))))
41902  MYSQL_YYABORT;
41903  Lex->xid->set(1L, (yyvsp[(1) - (3)].string)->ptr(), (yyvsp[(1) - (3)].string)->length(), (yyvsp[(3) - (3)].string)->ptr(), (yyvsp[(3) - (3)].string)->length());
41904  }
41905  break;
41906 
41907  case 2656:
41908 
41909 /* Line 1455 of yacc.c */
41910 #line 16527 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41911  {
41912  MYSQL_YYABORT_UNLESS((yyvsp[(1) - (5)].string)->length() <= MAXGTRIDSIZE && (yyvsp[(3) - (5)].string)->length() <= MAXBQUALSIZE);
41913  if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID))))
41914  MYSQL_YYABORT;
41915  Lex->xid->set((yyvsp[(5) - (5)].ulong_num), (yyvsp[(1) - (5)].string)->ptr(), (yyvsp[(1) - (5)].string)->length(), (yyvsp[(3) - (5)].string)->ptr(), (yyvsp[(3) - (5)].string)->length());
41916  }
41917  break;
41918 
41919  case 2657:
41920 
41921 /* Line 1455 of yacc.c */
41922 #line 16536 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41923  {}
41924  break;
41925 
41926  case 2658:
41927 
41928 /* Line 1455 of yacc.c */
41929 #line 16537 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41930  {}
41931  break;
41932 
41933  case 2659:
41934 
41935 /* Line 1455 of yacc.c */
41936 #line 16541 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41937  { Lex->xa_opt=XA_NONE; }
41938  break;
41939 
41940  case 2660:
41941 
41942 /* Line 1455 of yacc.c */
41943 #line 16542 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41944  { Lex->xa_opt=XA_JOIN; }
41945  break;
41946 
41947  case 2661:
41948 
41949 /* Line 1455 of yacc.c */
41950 #line 16543 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41951  { Lex->xa_opt=XA_RESUME; }
41952  break;
41953 
41954  case 2662:
41955 
41956 /* Line 1455 of yacc.c */
41957 #line 16547 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41958  { Lex->xa_opt=XA_NONE; }
41959  break;
41960 
41961  case 2663:
41962 
41963 /* Line 1455 of yacc.c */
41964 #line 16548 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41965  { Lex->xa_opt=XA_ONE_PHASE; }
41966  break;
41967 
41968  case 2664:
41969 
41970 /* Line 1455 of yacc.c */
41971 #line 16553 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41972  { Lex->xa_opt=XA_NONE; }
41973  break;
41974 
41975  case 2665:
41976 
41977 /* Line 1455 of yacc.c */
41978 #line 16555 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41979  { Lex->xa_opt=XA_SUSPEND; }
41980  break;
41981 
41982  case 2667:
41983 
41984 /* Line 1455 of yacc.c */
41985 #line 16560 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41986  {}
41987  break;
41988 
41989  case 2668:
41990 
41991 /* Line 1455 of yacc.c */
41992 #line 16561 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
41993  { Lex->xa_opt=XA_FOR_MIGRATE; }
41994  break;
41995 
41996  case 2669:
41997 
41998 /* Line 1455 of yacc.c */
41999 #line 16566 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
42000  {
42001  LEX *lex= Lex;
42002  lex->sql_command= SQLCOM_INSTALL_PLUGIN;
42003  lex->comment= (yyvsp[(3) - (5)].lex_str);
42004  lex->ident= (yyvsp[(5) - (5)].lex_str);
42005  }
42006  break;
42007 
42008  case 2670:
42009 
42010 /* Line 1455 of yacc.c */
42011 #line 16576 "/export/home/pb2/build/sb_0-10188203-1378798362.68/mysql-5.6.14-release-export-5685011_gpl/sql/sql_yacc.yy"
42012  {
42013  LEX *lex= Lex;
42014  lex->sql_command= SQLCOM_UNINSTALL_PLUGIN;
42015  lex->comment= (yyvsp[(3) - (3)].lex_str);
42016  }
42017  break;
42018 
42019 
42020 
42021 /* Line 1455 of yacc.c */
42022 #line 42023 "/export/home/pb2/build/sb_0-10188203-1378798362.68/dist_GPL/sql/sql_yacc.cc"
42023  default: break;
42024  }
42025  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
42026 
42027  YYPOPSTACK (yylen);
42028  yylen = 0;
42029  YY_STACK_PRINT (yyss, yyssp);
42030 
42031  *++yyvsp = yyval;
42032 
42033  /* Now `shift' the result of the reduction. Determine what state
42034  that goes to, based on the state we popped back to and the rule
42035  number reduced by. */
42036 
42037  yyn = yyr1[yyn];
42038 
42039  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
42040  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
42041  yystate = yytable[yystate];
42042  else
42043  yystate = yydefgoto[yyn - YYNTOKENS];
42044 
42045  goto yynewstate;
42046 
42047 
42048 /*------------------------------------.
42049 | yyerrlab -- here on detecting error |
42050 `------------------------------------*/
42051 yyerrlab:
42052  /* If not already recovering from an error, report this error. */
42053  if (!yyerrstatus)
42054  {
42055  ++yynerrs;
42056 #if ! YYERROR_VERBOSE
42057  yyerror (YY_("syntax error"));
42058 #else
42059  {
42060  YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
42061  if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
42062  {
42063  YYSIZE_T yyalloc = 2 * yysize;
42064  if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
42065  yyalloc = YYSTACK_ALLOC_MAXIMUM;
42066  if (yymsg != yymsgbuf)
42067  YYSTACK_FREE (yymsg);
42068  yymsg = (char *) YYSTACK_ALLOC (yyalloc);
42069  if (yymsg)
42070  yymsg_alloc = yyalloc;
42071  else
42072  {
42073  yymsg = yymsgbuf;
42074  yymsg_alloc = sizeof yymsgbuf;
42075  }
42076  }
42077 
42078  if (0 < yysize && yysize <= yymsg_alloc)
42079  {
42080  (void) yysyntax_error (yymsg, yystate, yychar);
42081  yyerror (yymsg);
42082  }
42083  else
42084  {
42085  yyerror (YY_("syntax error"));
42086  if (yysize != 0)
42087  goto yyexhaustedlab;
42088  }
42089  }
42090 #endif
42091  }
42092 
42093 
42094 
42095  if (yyerrstatus == 3)
42096  {
42097  /* If just tried and failed to reuse lookahead token after an
42098  error, discard it. */
42099 
42100  if (yychar <= YYEOF)
42101  {
42102  /* Return failure if at end of input. */
42103  if (yychar == YYEOF)
42104  YYABORT;
42105  }
42106  else
42107  {
42108  yydestruct ("Error: discarding",
42109  yytoken, &yylval);
42110  yychar = YYEMPTY;
42111  }
42112  }
42113 
42114  /* Else will try to reuse lookahead token after shifting the error
42115  token. */
42116  goto yyerrlab1;
42117 
42118 
42119 /*---------------------------------------------------.
42120 | yyerrorlab -- error raised explicitly by YYERROR. |
42121 `---------------------------------------------------*/
42122 yyerrorlab:
42123 
42124  /* Pacify compilers like GCC when the user code never invokes
42125  YYERROR and the label yyerrorlab therefore never appears in user
42126  code. */
42127  if (/*CONSTCOND*/ 0)
42128  goto yyerrorlab;
42129 
42130  /* Do not reclaim the symbols of the rule which action triggered
42131  this YYERROR. */
42132  YYPOPSTACK (yylen);
42133  yylen = 0;
42134  YY_STACK_PRINT (yyss, yyssp);
42135  yystate = *yyssp;
42136  goto yyerrlab1;
42137 
42138 
42139 /*-------------------------------------------------------------.
42140 | yyerrlab1 -- common code for both syntax error and YYERROR. |
42141 `-------------------------------------------------------------*/
42142 yyerrlab1:
42143  yyerrstatus = 3; /* Each real token shifted decrements this. */
42144 
42145  for (;;)
42146  {
42147  yyn = yypact[yystate];
42148  if (yyn != YYPACT_NINF)
42149  {
42150  yyn += YYTERROR;
42151  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
42152  {
42153  yyn = yytable[yyn];
42154  if (0 < yyn)
42155  break;
42156  }
42157  }
42158 
42159  /* Pop the current state because it cannot handle the error token. */
42160  if (yyssp == yyss)
42161  YYABORT;
42162 
42163 
42164  yydestruct ("Error: popping",
42165  yystos[yystate], yyvsp);
42166  YYPOPSTACK (1);
42167  yystate = *yyssp;
42168  YY_STACK_PRINT (yyss, yyssp);
42169  }
42170 
42171  *++yyvsp = yylval;
42172 
42173 
42174  /* Shift the error token. */
42175  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
42176 
42177  yystate = yyn;
42178  goto yynewstate;
42179 
42180 
42181 /*-------------------------------------.
42182 | yyacceptlab -- YYACCEPT comes here. |
42183 `-------------------------------------*/
42184 yyacceptlab:
42185  yyresult = 0;
42186  goto yyreturn;
42187 
42188 /*-----------------------------------.
42189 | yyabortlab -- YYABORT comes here. |
42190 `-----------------------------------*/
42191 yyabortlab:
42192  yyresult = 1;
42193  goto yyreturn;
42194 
42195 #if !defined(yyoverflow) || YYERROR_VERBOSE
42196 /*-------------------------------------------------.
42197 | yyexhaustedlab -- memory exhaustion comes here. |
42198 `-------------------------------------------------*/
42199 yyexhaustedlab:
42200  yyerror (YY_("memory exhausted"));
42201  yyresult = 2;
42202  /* Fall through. */
42203 #endif
42204 
42205 yyreturn:
42206  if (yychar != YYEMPTY)
42207  yydestruct ("Cleanup: discarding lookahead",
42208  yytoken, &yylval);
42209  /* Do not reclaim the symbols of the rule which action triggered
42210  this YYABORT or YYACCEPT. */
42211  YYPOPSTACK (yylen);
42212  YY_STACK_PRINT (yyss, yyssp);
42213  while (yyssp != yyss)
42214  {
42215  yydestruct ("Cleanup: popping",
42216  yystos[*yyssp], yyvsp);
42217  YYPOPSTACK (1);
42218  }
42219 #ifndef yyoverflow
42220  if (yyss != yyssa)
42221  YYSTACK_FREE (yyss);
42222 #endif
42223 #if YYERROR_VERBOSE
42224  if (yymsg != yymsgbuf)
42225  YYSTACK_FREE (yymsg);
42226 #endif
42227  /* Make sure YYID is used. */
42228  return YYID (yyresult);
42229 }
42230 
42231 
42232