/* A Bison parser, made by GNU Bison 3.7.5. */
/* Bison implementation for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
under terms of your choice, so long as that work isn't itself a
parser generator using the skeleton or a modified version thereof
as a parser skeleton. Alternatively, if you modify or redistribute
the parser skeleton itself, you may (at your option) remove this
special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public
License without this special exception.
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
/* C LALR(1) parser skeleton written by Richard Stallman, by
simplifying the original so-called "semantic" parser. */
/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
especially those whose name start with YY_ or yy_. They are
private implementation details that can be changed or removed. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
variables, as they might otherwise be expanded by user macros.
There are some unavoidable exceptions within include files to
define necessary library symbols; they are noted "INFRINGES ON
USER NAME SPACE" below. */
/* Identify Bison output, and Bison version. */
#define YYBISON 30705
/* Bison version string. */
#define YYBISON_VERSION "3.7.5"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
/* Pure parsers. */
#define YYPURE 0
/* Push parsers. */
#define YYPUSH 0
/* Pull parsers. */
#define YYPULL 1
/* Substitute the variable and function names. */
#define yyparse base_yyparse
#define yylex base_yylex
#define yyerror base_yyerror
#define yydebug base_yydebug
#define yynerrs base_yynerrs
#define yylval base_yylval
#define yychar base_yychar
#define yylloc base_yylloc
/* First part of user prologue. */
#line 5 "preproc.y"
#include "postgres_fe.h"
#include "preproc_extern.h"
#include "ecpg_config.h"
#include
/* Location tracking support --- simpler than bison's default */
#define YYLLOC_DEFAULT(Current, Rhs, N) \
do { \
if (N) \
(Current) = (Rhs)[1]; \
else \
(Current) = (Rhs)[0]; \
} while (0)
/*
* The %name-prefix option below will make bison call base_yylex, but we
* really want it to call filtered_base_yylex (see parser.c).
*/
#define base_yylex filtered_base_yylex
/*
* This is only here so the string gets into the POT. Bison uses it
* internally.
*/
#define bison_gettext_dummy gettext_noop("syntax error")
/*
* Variables containing simple states.
*/
int struct_level = 0;
int braces_open; /* brace level counter */
char *current_function;
int ecpg_internal_var = 0;
char *connection = NULL;
char *input_filename = NULL;
static int FoundInto = 0;
static int initializer = 0;
static int pacounter = 1;
static char pacounter_buffer[sizeof(int) * CHAR_BIT * 10 / 3]; /* a rough guess at the size we need */
static struct this_type actual_type[STRUCT_DEPTH];
static char *actual_startline[STRUCT_DEPTH];
static int varchar_counter = 1;
static int bytea_counter = 1;
/* temporarily store struct members while creating the data structure */
struct ECPGstruct_member *struct_member_list[STRUCT_DEPTH] = { NULL };
/* also store struct type so we can do a sizeof() later */
static char *ECPGstruct_sizeof = NULL;
/* for forward declarations we have to store some data as well */
static char *forward_name = NULL;
struct ECPGtype ecpg_no_indicator = {ECPGt_NO_INDICATOR, NULL, NULL, NULL, {NULL}, 0};
struct variable no_indicator = {"no_indicator", &ecpg_no_indicator, 0, NULL};
static struct ECPGtype ecpg_query = {ECPGt_char_variable, NULL, NULL, NULL, {NULL}, 0};
static void vmmerror(int error_code, enum errortype type, const char *error, va_list ap) pg_attribute_printf(3, 0);
static bool check_declared_list(const char *name);
/*
* Handle parsing errors and warnings
*/
static void
vmmerror(int error_code, enum errortype type, const char *error, va_list ap)
{
/* localize the error message string */
error = _(error);
fprintf(stderr, "%s:%d: ", input_filename, base_yylineno);
switch(type)
{
case ET_WARNING:
fprintf(stderr, _("WARNING: "));
break;
case ET_ERROR:
fprintf(stderr, _("ERROR: "));
break;
}
vfprintf(stderr, error, ap);
fprintf(stderr, "\n");
switch(type)
{
case ET_WARNING:
break;
case ET_ERROR:
ret_value = error_code;
break;
}
}
void
mmerror(int error_code, enum errortype type, const char *error, ...)
{
va_list ap;
va_start(ap, error);
vmmerror(error_code, type, error, ap);
va_end(ap);
}
void
mmfatal(int error_code, const char *error, ...)
{
va_list ap;
va_start(ap, error);
vmmerror(error_code, ET_ERROR, error, ap);
va_end(ap);
if (base_yyin)
fclose(base_yyin);
if (base_yyout)
fclose(base_yyout);
if (strcmp(output_filename, "-") != 0 && unlink(output_filename) != 0)
fprintf(stderr, _("could not remove output file \"%s\"\n"), output_filename);
exit(error_code);
}
/*
* string concatenation
*/
static char *
cat2_str(char *str1, char *str2)
{
char * res_str = (char *)mm_alloc(strlen(str1) + strlen(str2) + 2);
strcpy(res_str, str1);
if (strlen(str1) != 0 && strlen(str2) != 0)
strcat(res_str, " ");
strcat(res_str, str2);
free(str1);
free(str2);
return res_str;
}
static char *
cat_str(int count, ...)
{
va_list args;
int i;
char *res_str;
va_start(args, count);
res_str = va_arg(args, char *);
/* now add all other strings */
for (i = 1; i < count; i++)
res_str = cat2_str(res_str, va_arg(args, char *));
va_end(args);
return res_str;
}
static char *
make2_str(char *str1, char *str2)
{
char * res_str = (char *)mm_alloc(strlen(str1) + strlen(str2) + 1);
strcpy(res_str, str1);
strcat(res_str, str2);
free(str1);
free(str2);
return res_str;
}
static char *
make3_str(char *str1, char *str2, char *str3)
{
char * res_str = (char *)mm_alloc(strlen(str1) + strlen(str2) +strlen(str3) + 1);
strcpy(res_str, str1);
strcat(res_str, str2);
strcat(res_str, str3);
free(str1);
free(str2);
free(str3);
return res_str;
}
/* and the rest */
static char *
make_name(void)
{
return mm_strdup(base_yytext);
}
static char *
create_questionmarks(char *name, bool array)
{
struct variable *p = find_variable(name);
int count;
char *result = EMPTY;
/* In case we have a struct, we have to print as many "?" as there are attributes in the struct
* An array is only allowed together with an element argument
* This is essentially only used for inserts, but using a struct as input parameter is an error anywhere else
* so we don't have to worry here. */
if (p->type->type == ECPGt_struct || (array && p->type->type == ECPGt_array && p->type->u.element->type == ECPGt_struct))
{
struct ECPGstruct_member *m;
if (p->type->type == ECPGt_struct)
m = p->type->u.members;
else
m = p->type->u.element->u.members;
for (count = 0; m != NULL; m=m->next, count++);
}
else
count = 1;
for (; count > 0; count --)
{
sprintf(pacounter_buffer, "$%d", pacounter++);
result = cat_str(3, result, mm_strdup(pacounter_buffer), mm_strdup(" , "));
}
/* removed the trailing " ," */
result[strlen(result)-3] = '\0';
return result;
}
static char *
adjust_outofscope_cursor_vars(struct cursor *cur)
{
/* Informix accepts DECLARE with variables that are out of scope when OPEN is called.
* For instance you can DECLARE a cursor in one function, and OPEN/FETCH/CLOSE
* it in another functions. This is very useful for e.g. event-driver programming,
* but may also lead to dangerous programming. The limitation when this is allowed
* and doesn't cause problems have to be documented, like the allocated variables
* must not be realloc()'ed.
*
* We have to change the variables to our own struct and just store the pointer
* instead of the variable. Do it only for local variables, not for globals.
*/
char *result = EMPTY;
int insert;
for (insert = 1; insert >= 0; insert--)
{
struct arguments *list;
struct arguments *ptr;
struct arguments *newlist = NULL;
struct variable *newvar, *newind;
list = (insert ? cur->argsinsert : cur->argsresult);
for (ptr = list; ptr != NULL; ptr = ptr->next)
{
char var_text[20];
char *original_var;
bool skip_set_var = false;
bool var_ptr = false;
/* change variable name to "ECPGget_var()" */
original_var = ptr->variable->name;
sprintf(var_text, "%d))", ecpg_internal_var);
/* Don't emit ECPGset_var() calls for global variables */
if (ptr->variable->brace_level == 0)
{
newvar = ptr->variable;
skip_set_var = true;
}
else if ((ptr->variable->type->type == ECPGt_char_variable)
&& (strncmp(ptr->variable->name, "ECPGprepared_statement", strlen("ECPGprepared_statement")) == 0))
{
newvar = ptr->variable;
skip_set_var = true;
}
else if ((ptr->variable->type->type != ECPGt_varchar
&& ptr->variable->type->type != ECPGt_char
&& ptr->variable->type->type != ECPGt_unsigned_char
&& ptr->variable->type->type != ECPGt_string
&& ptr->variable->type->type != ECPGt_bytea)
&& atoi(ptr->variable->type->size) > 1)
{
newvar = new_variable(cat_str(4, mm_strdup("("),
mm_strdup(ecpg_type_name(ptr->variable->type->u.element->type)),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text)),
ECPGmake_array_type(ECPGmake_simple_type(ptr->variable->type->u.element->type,
mm_strdup("1"),
ptr->variable->type->u.element->counter),
ptr->variable->type->size),
0);
}
else if ((ptr->variable->type->type == ECPGt_varchar
|| ptr->variable->type->type == ECPGt_char
|| ptr->variable->type->type == ECPGt_unsigned_char
|| ptr->variable->type->type == ECPGt_string
|| ptr->variable->type->type == ECPGt_bytea)
&& atoi(ptr->variable->type->size) > 1)
{
newvar = new_variable(cat_str(4, mm_strdup("("),
mm_strdup(ecpg_type_name(ptr->variable->type->type)),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text)),
ECPGmake_simple_type(ptr->variable->type->type,
ptr->variable->type->size,
ptr->variable->type->counter),
0);
if (ptr->variable->type->type == ECPGt_varchar ||
ptr->variable->type->type == ECPGt_bytea)
var_ptr = true;
}
else if (ptr->variable->type->type == ECPGt_struct
|| ptr->variable->type->type == ECPGt_union)
{
newvar = new_variable(cat_str(5, mm_strdup("(*("),
mm_strdup(ptr->variable->type->type_name),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text),
mm_strdup(")")),
ECPGmake_struct_type(ptr->variable->type->u.members,
ptr->variable->type->type,
ptr->variable->type->type_name,
ptr->variable->type->struct_sizeof),
0);
var_ptr = true;
}
else if (ptr->variable->type->type == ECPGt_array)
{
if (ptr->variable->type->u.element->type == ECPGt_struct
|| ptr->variable->type->u.element->type == ECPGt_union)
{
newvar = new_variable(cat_str(5, mm_strdup("(*("),
mm_strdup(ptr->variable->type->u.element->type_name),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text),
mm_strdup(")")),
ECPGmake_struct_type(ptr->variable->type->u.element->u.members,
ptr->variable->type->u.element->type,
ptr->variable->type->u.element->type_name,
ptr->variable->type->u.element->struct_sizeof),
0);
}
else
{
newvar = new_variable(cat_str(4, mm_strdup("("),
mm_strdup(ecpg_type_name(ptr->variable->type->u.element->type)),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text)),
ECPGmake_array_type(ECPGmake_simple_type(ptr->variable->type->u.element->type,
ptr->variable->type->u.element->size,
ptr->variable->type->u.element->counter),
ptr->variable->type->size),
0);
var_ptr = true;
}
}
else
{
newvar = new_variable(cat_str(4, mm_strdup("*("),
mm_strdup(ecpg_type_name(ptr->variable->type->type)),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text)),
ECPGmake_simple_type(ptr->variable->type->type,
ptr->variable->type->size,
ptr->variable->type->counter),
0);
var_ptr = true;
}
/* create call to "ECPGset_var(, , . )" */
if (!skip_set_var)
{
sprintf(var_text, "%d, %s", ecpg_internal_var++, var_ptr ? "&(" : "(");
result = cat_str(5, result, mm_strdup("ECPGset_var("),
mm_strdup(var_text), mm_strdup(original_var),
mm_strdup("), __LINE__);\n"));
}
/* now the indicator if there is one and it's not a global variable */
if ((ptr->indicator->type->type == ECPGt_NO_INDICATOR) || (ptr->indicator->brace_level == 0))
{
newind = ptr->indicator;
}
else
{
/* change variable name to "ECPGget_var()" */
original_var = ptr->indicator->name;
sprintf(var_text, "%d))", ecpg_internal_var);
var_ptr = false;
if (ptr->indicator->type->type == ECPGt_struct
|| ptr->indicator->type->type == ECPGt_union)
{
newind = new_variable(cat_str(5, mm_strdup("(*("),
mm_strdup(ptr->indicator->type->type_name),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text),
mm_strdup(")")),
ECPGmake_struct_type(ptr->indicator->type->u.members,
ptr->indicator->type->type,
ptr->indicator->type->type_name,
ptr->indicator->type->struct_sizeof),
0);
var_ptr = true;
}
else if (ptr->indicator->type->type == ECPGt_array)
{
if (ptr->indicator->type->u.element->type == ECPGt_struct
|| ptr->indicator->type->u.element->type == ECPGt_union)
{
newind = new_variable(cat_str(5, mm_strdup("(*("),
mm_strdup(ptr->indicator->type->u.element->type_name),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text),
mm_strdup(")")),
ECPGmake_struct_type(ptr->indicator->type->u.element->u.members,
ptr->indicator->type->u.element->type,
ptr->indicator->type->u.element->type_name,
ptr->indicator->type->u.element->struct_sizeof),
0);
}
else
{
newind = new_variable(cat_str(4, mm_strdup("("),
mm_strdup(ecpg_type_name(ptr->indicator->type->u.element->type)),
mm_strdup(" *)(ECPGget_var("), mm_strdup(var_text)),
ECPGmake_array_type(ECPGmake_simple_type(ptr->indicator->type->u.element->type,
ptr->indicator->type->u.element->size,
ptr->indicator->type->u.element->counter),
ptr->indicator->type->size),
0);
var_ptr = true;
}
}
else if (atoi(ptr->indicator->type->size) > 1)
{
newind = new_variable(cat_str(4, mm_strdup("("),
mm_strdup(ecpg_type_name(ptr->indicator->type->type)),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text)),
ECPGmake_simple_type(ptr->indicator->type->type,
ptr->indicator->type->size,
ptr->variable->type->counter),
0);
}
else
{
newind = new_variable(cat_str(4, mm_strdup("*("),
mm_strdup(ecpg_type_name(ptr->indicator->type->type)),
mm_strdup(" *)(ECPGget_var("),
mm_strdup(var_text)),
ECPGmake_simple_type(ptr->indicator->type->type,
ptr->indicator->type->size,
ptr->variable->type->counter),
0);
var_ptr = true;
}
/* create call to "ECPGset_var(, . )" */
sprintf(var_text, "%d, %s", ecpg_internal_var++, var_ptr ? "&(" : "(");
result = cat_str(5, result, mm_strdup("ECPGset_var("),
mm_strdup(var_text), mm_strdup(original_var),
mm_strdup("), __LINE__);\n"));
}
add_variable_to_tail(&newlist, newvar, newind);
}
if (insert)
cur->argsinsert_oos = newlist;
else
cur->argsresult_oos = newlist;
}
return result;
}
/* This tests whether the cursor was declared and opened in the same function. */
#define SAMEFUNC(cur) \
((cur->function == NULL) || \
(cur->function != NULL && strcmp(cur->function, current_function) == 0))
static struct cursor *
add_additional_variables(char *name, bool insert)
{
struct cursor *ptr;
struct arguments *p;
int (* strcmp_fn)(const char *, const char *) = ((name[0] == ':' || name[0] == '"') ? strcmp : pg_strcasecmp);
for (ptr = cur; ptr != NULL; ptr=ptr->next)
{
if (strcmp_fn(ptr->name, name) == 0)
break;
}
if (ptr == NULL)
{
mmerror(PARSE_ERROR, ET_ERROR, "cursor \"%s\" does not exist", name);
return NULL;
}
if (insert)
{
/* add all those input variables that were given earlier
* note that we have to append here but have to keep the existing order */
for (p = (SAMEFUNC(ptr) ? ptr->argsinsert : ptr->argsinsert_oos); p; p = p->next)
add_variable_to_tail(&argsinsert, p->variable, p->indicator);
}
/* add all those output variables that were given earlier */
for (p = (SAMEFUNC(ptr) ? ptr->argsresult : ptr->argsresult_oos); p; p = p->next)
add_variable_to_tail(&argsresult, p->variable, p->indicator);
return ptr;
}
static void
add_typedef(char *name, char *dimension, char *length, enum ECPGttype type_enum,
char *type_dimension, char *type_index, int initializer, int array)
{
/* add entry to list */
struct typedefs *ptr, *this;
if ((type_enum == ECPGt_struct ||
type_enum == ECPGt_union) &&
initializer == 1)
mmerror(PARSE_ERROR, ET_ERROR, "initializer not allowed in type definition");
else if (INFORMIX_MODE && strcmp(name, "string") == 0)
mmerror(PARSE_ERROR, ET_ERROR, "type name \"string\" is reserved in Informix mode");
else
{
for (ptr = types; ptr != NULL; ptr = ptr->next)
{
if (strcmp(name, ptr->name) == 0)
/* re-definition is a bug */
mmerror(PARSE_ERROR, ET_ERROR, "type \"%s\" is already defined", name);
}
adjust_array(type_enum, &dimension, &length, type_dimension, type_index, array, true);
this = (struct typedefs *) mm_alloc(sizeof(struct typedefs));
/* initial definition */
this->next = types;
this->name = name;
this->brace_level = braces_open;
this->type = (struct this_type *) mm_alloc(sizeof(struct this_type));
this->type->type_enum = type_enum;
this->type->type_str = mm_strdup(name);
this->type->type_dimension = dimension; /* dimension of array */
this->type->type_index = length; /* length of string */
this->type->type_sizeof = ECPGstruct_sizeof;
this->struct_member_list = (type_enum == ECPGt_struct || type_enum == ECPGt_union) ?
ECPGstruct_member_dup(struct_member_list[struct_level]) : NULL;
if (type_enum != ECPGt_varchar &&
type_enum != ECPGt_bytea &&
type_enum != ECPGt_char &&
type_enum != ECPGt_unsigned_char &&
type_enum != ECPGt_string &&
atoi(this->type->type_index) >= 0)
mmerror(PARSE_ERROR, ET_ERROR, "multidimensional arrays for simple data types are not supported");
types = this;
}
}
/*
* check an SQL identifier is declared or not.
* If it is already declared, the global variable
* connection will be changed to the related connection.
*/
static bool
check_declared_list(const char *name)
{
struct declared_list *ptr = NULL;
for (ptr = g_declared_list; ptr != NULL; ptr = ptr -> next)
{
if (!ptr->connection)
continue;
if (strcmp(name, ptr -> name) == 0)
{
if (connection && strcmp(ptr->connection, connection) != 0)
mmerror(PARSE_ERROR, ET_WARNING, "connection %s is overwritten with %s by DECLARE statement %s", connection, ptr->connection, name);
connection = mm_strdup(ptr -> connection);
return true;
}
}
return false;
}
#line 682 "preproc.c"
# ifndef YY_CAST
# ifdef __cplusplus
# define YY_CAST(Type, Val) static_cast (Val)
# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val)
# else
# define YY_CAST(Type, Val) ((Type) (Val))
# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
# endif
# endif
# ifndef YY_NULLPTR
# if defined __cplusplus
# if 201103L <= __cplusplus
# define YY_NULLPTR nullptr
# else
# define YY_NULLPTR 0
# endif
# else
# define YY_NULLPTR ((void*)0)
# endif
# endif
#include "preproc.h"
/* Symbol kind. */
enum yysymbol_kind_t
{
YYSYMBOL_YYEMPTY = -2,
YYSYMBOL_YYEOF = 0, /* "end of file" */
YYSYMBOL_YYerror = 1, /* error */
YYSYMBOL_YYUNDEF = 2, /* "invalid token" */
YYSYMBOL_SQL_ALLOCATE = 3, /* SQL_ALLOCATE */
YYSYMBOL_SQL_AUTOCOMMIT = 4, /* SQL_AUTOCOMMIT */
YYSYMBOL_SQL_BOOL = 5, /* SQL_BOOL */
YYSYMBOL_SQL_BREAK = 6, /* SQL_BREAK */
YYSYMBOL_SQL_CARDINALITY = 7, /* SQL_CARDINALITY */
YYSYMBOL_SQL_CONNECT = 8, /* SQL_CONNECT */
YYSYMBOL_SQL_COUNT = 9, /* SQL_COUNT */
YYSYMBOL_SQL_DATETIME_INTERVAL_CODE = 10, /* SQL_DATETIME_INTERVAL_CODE */
YYSYMBOL_SQL_DATETIME_INTERVAL_PRECISION = 11, /* SQL_DATETIME_INTERVAL_PRECISION */
YYSYMBOL_SQL_DESCRIBE = 12, /* SQL_DESCRIBE */
YYSYMBOL_SQL_DESCRIPTOR = 13, /* SQL_DESCRIPTOR */
YYSYMBOL_SQL_DISCONNECT = 14, /* SQL_DISCONNECT */
YYSYMBOL_SQL_FOUND = 15, /* SQL_FOUND */
YYSYMBOL_SQL_FREE = 16, /* SQL_FREE */
YYSYMBOL_SQL_GET = 17, /* SQL_GET */
YYSYMBOL_SQL_GO = 18, /* SQL_GO */
YYSYMBOL_SQL_GOTO = 19, /* SQL_GOTO */
YYSYMBOL_SQL_IDENTIFIED = 20, /* SQL_IDENTIFIED */
YYSYMBOL_SQL_INDICATOR = 21, /* SQL_INDICATOR */
YYSYMBOL_SQL_KEY_MEMBER = 22, /* SQL_KEY_MEMBER */
YYSYMBOL_SQL_LENGTH = 23, /* SQL_LENGTH */
YYSYMBOL_SQL_LONG = 24, /* SQL_LONG */
YYSYMBOL_SQL_NULLABLE = 25, /* SQL_NULLABLE */
YYSYMBOL_SQL_OCTET_LENGTH = 26, /* SQL_OCTET_LENGTH */
YYSYMBOL_SQL_OPEN = 27, /* SQL_OPEN */
YYSYMBOL_SQL_OUTPUT = 28, /* SQL_OUTPUT */
YYSYMBOL_SQL_REFERENCE = 29, /* SQL_REFERENCE */
YYSYMBOL_SQL_RETURNED_LENGTH = 30, /* SQL_RETURNED_LENGTH */
YYSYMBOL_SQL_RETURNED_OCTET_LENGTH = 31, /* SQL_RETURNED_OCTET_LENGTH */
YYSYMBOL_SQL_SCALE = 32, /* SQL_SCALE */
YYSYMBOL_SQL_SECTION = 33, /* SQL_SECTION */
YYSYMBOL_SQL_SHORT = 34, /* SQL_SHORT */
YYSYMBOL_SQL_SIGNED = 35, /* SQL_SIGNED */
YYSYMBOL_SQL_SQLERROR = 36, /* SQL_SQLERROR */
YYSYMBOL_SQL_SQLPRINT = 37, /* SQL_SQLPRINT */
YYSYMBOL_SQL_SQLWARNING = 38, /* SQL_SQLWARNING */
YYSYMBOL_SQL_START = 39, /* SQL_START */
YYSYMBOL_SQL_STOP = 40, /* SQL_STOP */
YYSYMBOL_SQL_STRUCT = 41, /* SQL_STRUCT */
YYSYMBOL_SQL_UNSIGNED = 42, /* SQL_UNSIGNED */
YYSYMBOL_SQL_VAR = 43, /* SQL_VAR */
YYSYMBOL_SQL_WHENEVER = 44, /* SQL_WHENEVER */
YYSYMBOL_S_ADD = 45, /* S_ADD */
YYSYMBOL_S_AND = 46, /* S_AND */
YYSYMBOL_S_ANYTHING = 47, /* S_ANYTHING */
YYSYMBOL_S_AUTO = 48, /* S_AUTO */
YYSYMBOL_S_CONST = 49, /* S_CONST */
YYSYMBOL_S_DEC = 50, /* S_DEC */
YYSYMBOL_S_DIV = 51, /* S_DIV */
YYSYMBOL_S_DOTPOINT = 52, /* S_DOTPOINT */
YYSYMBOL_S_EQUAL = 53, /* S_EQUAL */
YYSYMBOL_S_EXTERN = 54, /* S_EXTERN */
YYSYMBOL_S_INC = 55, /* S_INC */
YYSYMBOL_S_LSHIFT = 56, /* S_LSHIFT */
YYSYMBOL_S_MEMPOINT = 57, /* S_MEMPOINT */
YYSYMBOL_S_MEMBER = 58, /* S_MEMBER */
YYSYMBOL_S_MOD = 59, /* S_MOD */
YYSYMBOL_S_MUL = 60, /* S_MUL */
YYSYMBOL_S_NEQUAL = 61, /* S_NEQUAL */
YYSYMBOL_S_OR = 62, /* S_OR */
YYSYMBOL_S_REGISTER = 63, /* S_REGISTER */
YYSYMBOL_S_RSHIFT = 64, /* S_RSHIFT */
YYSYMBOL_S_STATIC = 65, /* S_STATIC */
YYSYMBOL_S_SUB = 66, /* S_SUB */
YYSYMBOL_S_VOLATILE = 67, /* S_VOLATILE */
YYSYMBOL_S_TYPEDEF = 68, /* S_TYPEDEF */
YYSYMBOL_CSTRING = 69, /* CSTRING */
YYSYMBOL_CVARIABLE = 70, /* CVARIABLE */
YYSYMBOL_CPP_LINE = 71, /* CPP_LINE */
YYSYMBOL_IP = 72, /* IP */
YYSYMBOL_IDENT = 73, /* IDENT */
YYSYMBOL_UIDENT = 74, /* UIDENT */
YYSYMBOL_FCONST = 75, /* FCONST */
YYSYMBOL_SCONST = 76, /* SCONST */
YYSYMBOL_USCONST = 77, /* USCONST */
YYSYMBOL_BCONST = 78, /* BCONST */
YYSYMBOL_XCONST = 79, /* XCONST */
YYSYMBOL_Op = 80, /* Op */
YYSYMBOL_ICONST = 81, /* ICONST */
YYSYMBOL_PARAM = 82, /* PARAM */
YYSYMBOL_TYPECAST = 83, /* TYPECAST */
YYSYMBOL_DOT_DOT = 84, /* DOT_DOT */
YYSYMBOL_COLON_EQUALS = 85, /* COLON_EQUALS */
YYSYMBOL_EQUALS_GREATER = 86, /* EQUALS_GREATER */
YYSYMBOL_LESS_EQUALS = 87, /* LESS_EQUALS */
YYSYMBOL_GREATER_EQUALS = 88, /* GREATER_EQUALS */
YYSYMBOL_NOT_EQUALS = 89, /* NOT_EQUALS */
YYSYMBOL_ABORT_P = 90, /* ABORT_P */
YYSYMBOL_ABSENT = 91, /* ABSENT */
YYSYMBOL_ABSOLUTE_P = 92, /* ABSOLUTE_P */
YYSYMBOL_ACCESS = 93, /* ACCESS */
YYSYMBOL_ACTION = 94, /* ACTION */
YYSYMBOL_ADD_P = 95, /* ADD_P */
YYSYMBOL_ADMIN = 96, /* ADMIN */
YYSYMBOL_AFTER = 97, /* AFTER */
YYSYMBOL_AGGREGATE = 98, /* AGGREGATE */
YYSYMBOL_ALL = 99, /* ALL */
YYSYMBOL_ALSO = 100, /* ALSO */
YYSYMBOL_ALTER = 101, /* ALTER */
YYSYMBOL_ALWAYS = 102, /* ALWAYS */
YYSYMBOL_ANALYSE = 103, /* ANALYSE */
YYSYMBOL_ANALYZE = 104, /* ANALYZE */
YYSYMBOL_AND = 105, /* AND */
YYSYMBOL_ANY = 106, /* ANY */
YYSYMBOL_ARRAY = 107, /* ARRAY */
YYSYMBOL_AS = 108, /* AS */
YYSYMBOL_ASC = 109, /* ASC */
YYSYMBOL_ASENSITIVE = 110, /* ASENSITIVE */
YYSYMBOL_ASSERTION = 111, /* ASSERTION */
YYSYMBOL_ASSIGNMENT = 112, /* ASSIGNMENT */
YYSYMBOL_ASYMMETRIC = 113, /* ASYMMETRIC */
YYSYMBOL_ATOMIC = 114, /* ATOMIC */
YYSYMBOL_AT = 115, /* AT */
YYSYMBOL_ATTACH = 116, /* ATTACH */
YYSYMBOL_ATTRIBUTE = 117, /* ATTRIBUTE */
YYSYMBOL_AUTHORIZATION = 118, /* AUTHORIZATION */
YYSYMBOL_BACKWARD = 119, /* BACKWARD */
YYSYMBOL_BEFORE = 120, /* BEFORE */
YYSYMBOL_BEGIN_P = 121, /* BEGIN_P */
YYSYMBOL_BETWEEN = 122, /* BETWEEN */
YYSYMBOL_BIGINT = 123, /* BIGINT */
YYSYMBOL_BINARY = 124, /* BINARY */
YYSYMBOL_BIT = 125, /* BIT */
YYSYMBOL_BOOLEAN_P = 126, /* BOOLEAN_P */
YYSYMBOL_BOTH = 127, /* BOTH */
YYSYMBOL_BREADTH = 128, /* BREADTH */
YYSYMBOL_BY = 129, /* BY */
YYSYMBOL_CACHE = 130, /* CACHE */
YYSYMBOL_CALL = 131, /* CALL */
YYSYMBOL_CALLED = 132, /* CALLED */
YYSYMBOL_CASCADE = 133, /* CASCADE */
YYSYMBOL_CASCADED = 134, /* CASCADED */
YYSYMBOL_CASE = 135, /* CASE */
YYSYMBOL_CAST = 136, /* CAST */
YYSYMBOL_CATALOG_P = 137, /* CATALOG_P */
YYSYMBOL_CHAIN = 138, /* CHAIN */
YYSYMBOL_CHAR_P = 139, /* CHAR_P */
YYSYMBOL_CHARACTER = 140, /* CHARACTER */
YYSYMBOL_CHARACTERISTICS = 141, /* CHARACTERISTICS */
YYSYMBOL_CHECK = 142, /* CHECK */
YYSYMBOL_CHECKPOINT = 143, /* CHECKPOINT */
YYSYMBOL_CLASS = 144, /* CLASS */
YYSYMBOL_CLOSE = 145, /* CLOSE */
YYSYMBOL_CLUSTER = 146, /* CLUSTER */
YYSYMBOL_COALESCE = 147, /* COALESCE */
YYSYMBOL_COLLATE = 148, /* COLLATE */
YYSYMBOL_COLLATION = 149, /* COLLATION */
YYSYMBOL_COLUMN = 150, /* COLUMN */
YYSYMBOL_COLUMNS = 151, /* COLUMNS */
YYSYMBOL_COMMENT = 152, /* COMMENT */
YYSYMBOL_COMMENTS = 153, /* COMMENTS */
YYSYMBOL_COMMIT = 154, /* COMMIT */
YYSYMBOL_COMMITTED = 155, /* COMMITTED */
YYSYMBOL_COMPRESSION = 156, /* COMPRESSION */
YYSYMBOL_CONCURRENTLY = 157, /* CONCURRENTLY */
YYSYMBOL_CONFIGURATION = 158, /* CONFIGURATION */
YYSYMBOL_CONFLICT = 159, /* CONFLICT */
YYSYMBOL_CONNECTION = 160, /* CONNECTION */
YYSYMBOL_CONSTRAINT = 161, /* CONSTRAINT */
YYSYMBOL_CONSTRAINTS = 162, /* CONSTRAINTS */
YYSYMBOL_CONTENT_P = 163, /* CONTENT_P */
YYSYMBOL_CONTINUE_P = 164, /* CONTINUE_P */
YYSYMBOL_CONVERSION_P = 165, /* CONVERSION_P */
YYSYMBOL_COPY = 166, /* COPY */
YYSYMBOL_COST = 167, /* COST */
YYSYMBOL_CREATE = 168, /* CREATE */
YYSYMBOL_CROSS = 169, /* CROSS */
YYSYMBOL_CSV = 170, /* CSV */
YYSYMBOL_CUBE = 171, /* CUBE */
YYSYMBOL_CURRENT_P = 172, /* CURRENT_P */
YYSYMBOL_CURRENT_CATALOG = 173, /* CURRENT_CATALOG */
YYSYMBOL_CURRENT_DATE = 174, /* CURRENT_DATE */
YYSYMBOL_CURRENT_ROLE = 175, /* CURRENT_ROLE */
YYSYMBOL_CURRENT_SCHEMA = 176, /* CURRENT_SCHEMA */
YYSYMBOL_CURRENT_TIME = 177, /* CURRENT_TIME */
YYSYMBOL_CURRENT_TIMESTAMP = 178, /* CURRENT_TIMESTAMP */
YYSYMBOL_CURRENT_USER = 179, /* CURRENT_USER */
YYSYMBOL_CURSOR = 180, /* CURSOR */
YYSYMBOL_CYCLE = 181, /* CYCLE */
YYSYMBOL_DATA_P = 182, /* DATA_P */
YYSYMBOL_DATABASE = 183, /* DATABASE */
YYSYMBOL_DAY_P = 184, /* DAY_P */
YYSYMBOL_DEALLOCATE = 185, /* DEALLOCATE */
YYSYMBOL_DEC = 186, /* DEC */
YYSYMBOL_DECIMAL_P = 187, /* DECIMAL_P */
YYSYMBOL_DECLARE = 188, /* DECLARE */
YYSYMBOL_DEFAULT = 189, /* DEFAULT */
YYSYMBOL_DEFAULTS = 190, /* DEFAULTS */
YYSYMBOL_DEFERRABLE = 191, /* DEFERRABLE */
YYSYMBOL_DEFERRED = 192, /* DEFERRED */
YYSYMBOL_DEFINER = 193, /* DEFINER */
YYSYMBOL_DELETE_P = 194, /* DELETE_P */
YYSYMBOL_DELIMITER = 195, /* DELIMITER */
YYSYMBOL_DELIMITERS = 196, /* DELIMITERS */
YYSYMBOL_DEPENDS = 197, /* DEPENDS */
YYSYMBOL_DEPTH = 198, /* DEPTH */
YYSYMBOL_DESC = 199, /* DESC */
YYSYMBOL_DETACH = 200, /* DETACH */
YYSYMBOL_DICTIONARY = 201, /* DICTIONARY */
YYSYMBOL_DISABLE_P = 202, /* DISABLE_P */
YYSYMBOL_DISCARD = 203, /* DISCARD */
YYSYMBOL_DISTINCT = 204, /* DISTINCT */
YYSYMBOL_DO = 205, /* DO */
YYSYMBOL_DOCUMENT_P = 206, /* DOCUMENT_P */
YYSYMBOL_DOMAIN_P = 207, /* DOMAIN_P */
YYSYMBOL_DOUBLE_P = 208, /* DOUBLE_P */
YYSYMBOL_DROP = 209, /* DROP */
YYSYMBOL_EACH = 210, /* EACH */
YYSYMBOL_ELSE = 211, /* ELSE */
YYSYMBOL_ENABLE_P = 212, /* ENABLE_P */
YYSYMBOL_ENCODING = 213, /* ENCODING */
YYSYMBOL_ENCRYPTED = 214, /* ENCRYPTED */
YYSYMBOL_END_P = 215, /* END_P */
YYSYMBOL_ENUM_P = 216, /* ENUM_P */
YYSYMBOL_ESCAPE = 217, /* ESCAPE */
YYSYMBOL_EVENT = 218, /* EVENT */
YYSYMBOL_EXCEPT = 219, /* EXCEPT */
YYSYMBOL_EXCLUDE = 220, /* EXCLUDE */
YYSYMBOL_EXCLUDING = 221, /* EXCLUDING */
YYSYMBOL_EXCLUSIVE = 222, /* EXCLUSIVE */
YYSYMBOL_EXECUTE = 223, /* EXECUTE */
YYSYMBOL_EXISTS = 224, /* EXISTS */
YYSYMBOL_EXPLAIN = 225, /* EXPLAIN */
YYSYMBOL_EXPRESSION = 226, /* EXPRESSION */
YYSYMBOL_EXTENSION = 227, /* EXTENSION */
YYSYMBOL_EXTERNAL = 228, /* EXTERNAL */
YYSYMBOL_EXTRACT = 229, /* EXTRACT */
YYSYMBOL_FALSE_P = 230, /* FALSE_P */
YYSYMBOL_FAMILY = 231, /* FAMILY */
YYSYMBOL_FETCH = 232, /* FETCH */
YYSYMBOL_FILTER = 233, /* FILTER */
YYSYMBOL_FINALIZE = 234, /* FINALIZE */
YYSYMBOL_FIRST_P = 235, /* FIRST_P */
YYSYMBOL_FLOAT_P = 236, /* FLOAT_P */
YYSYMBOL_FOLLOWING = 237, /* FOLLOWING */
YYSYMBOL_FOR = 238, /* FOR */
YYSYMBOL_FORCE = 239, /* FORCE */
YYSYMBOL_FOREIGN = 240, /* FOREIGN */
YYSYMBOL_FORMAT = 241, /* FORMAT */
YYSYMBOL_FORWARD = 242, /* FORWARD */
YYSYMBOL_FREEZE = 243, /* FREEZE */
YYSYMBOL_FROM = 244, /* FROM */
YYSYMBOL_FULL = 245, /* FULL */
YYSYMBOL_FUNCTION = 246, /* FUNCTION */
YYSYMBOL_FUNCTIONS = 247, /* FUNCTIONS */
YYSYMBOL_GENERATED = 248, /* GENERATED */
YYSYMBOL_GLOBAL = 249, /* GLOBAL */
YYSYMBOL_GRANT = 250, /* GRANT */
YYSYMBOL_GRANTED = 251, /* GRANTED */
YYSYMBOL_GREATEST = 252, /* GREATEST */
YYSYMBOL_GROUP_P = 253, /* GROUP_P */
YYSYMBOL_GROUPING = 254, /* GROUPING */
YYSYMBOL_GROUPS = 255, /* GROUPS */
YYSYMBOL_HANDLER = 256, /* HANDLER */
YYSYMBOL_HAVING = 257, /* HAVING */
YYSYMBOL_HEADER_P = 258, /* HEADER_P */
YYSYMBOL_HOLD = 259, /* HOLD */
YYSYMBOL_HOUR_P = 260, /* HOUR_P */
YYSYMBOL_IDENTITY_P = 261, /* IDENTITY_P */
YYSYMBOL_IF_P = 262, /* IF_P */
YYSYMBOL_ILIKE = 263, /* ILIKE */
YYSYMBOL_IMMEDIATE = 264, /* IMMEDIATE */
YYSYMBOL_IMMUTABLE = 265, /* IMMUTABLE */
YYSYMBOL_IMPLICIT_P = 266, /* IMPLICIT_P */
YYSYMBOL_IMPORT_P = 267, /* IMPORT_P */
YYSYMBOL_IN_P = 268, /* IN_P */
YYSYMBOL_INCLUDE = 269, /* INCLUDE */
YYSYMBOL_INCLUDING = 270, /* INCLUDING */
YYSYMBOL_INCREMENT = 271, /* INCREMENT */
YYSYMBOL_INDENT = 272, /* INDENT */
YYSYMBOL_INDEX = 273, /* INDEX */
YYSYMBOL_INDEXES = 274, /* INDEXES */
YYSYMBOL_INHERIT = 275, /* INHERIT */
YYSYMBOL_INHERITS = 276, /* INHERITS */
YYSYMBOL_INITIALLY = 277, /* INITIALLY */
YYSYMBOL_INLINE_P = 278, /* INLINE_P */
YYSYMBOL_INNER_P = 279, /* INNER_P */
YYSYMBOL_INOUT = 280, /* INOUT */
YYSYMBOL_INPUT_P = 281, /* INPUT_P */
YYSYMBOL_INSENSITIVE = 282, /* INSENSITIVE */
YYSYMBOL_INSERT = 283, /* INSERT */
YYSYMBOL_INSTEAD = 284, /* INSTEAD */
YYSYMBOL_INT_P = 285, /* INT_P */
YYSYMBOL_INTEGER = 286, /* INTEGER */
YYSYMBOL_INTERSECT = 287, /* INTERSECT */
YYSYMBOL_INTERVAL = 288, /* INTERVAL */
YYSYMBOL_INTO = 289, /* INTO */
YYSYMBOL_INVOKER = 290, /* INVOKER */
YYSYMBOL_IS = 291, /* IS */
YYSYMBOL_ISNULL = 292, /* ISNULL */
YYSYMBOL_ISOLATION = 293, /* ISOLATION */
YYSYMBOL_JOIN = 294, /* JOIN */
YYSYMBOL_JSON = 295, /* JSON */
YYSYMBOL_JSON_ARRAY = 296, /* JSON_ARRAY */
YYSYMBOL_JSON_ARRAYAGG = 297, /* JSON_ARRAYAGG */
YYSYMBOL_JSON_OBJECT = 298, /* JSON_OBJECT */
YYSYMBOL_JSON_OBJECTAGG = 299, /* JSON_OBJECTAGG */
YYSYMBOL_KEY = 300, /* KEY */
YYSYMBOL_KEYS = 301, /* KEYS */
YYSYMBOL_LABEL = 302, /* LABEL */
YYSYMBOL_LANGUAGE = 303, /* LANGUAGE */
YYSYMBOL_LARGE_P = 304, /* LARGE_P */
YYSYMBOL_LAST_P = 305, /* LAST_P */
YYSYMBOL_LATERAL_P = 306, /* LATERAL_P */
YYSYMBOL_LEADING = 307, /* LEADING */
YYSYMBOL_LEAKPROOF = 308, /* LEAKPROOF */
YYSYMBOL_LEAST = 309, /* LEAST */
YYSYMBOL_LEFT = 310, /* LEFT */
YYSYMBOL_LEVEL = 311, /* LEVEL */
YYSYMBOL_LIKE = 312, /* LIKE */
YYSYMBOL_LIMIT = 313, /* LIMIT */
YYSYMBOL_LISTEN = 314, /* LISTEN */
YYSYMBOL_LOAD = 315, /* LOAD */
YYSYMBOL_LOCAL = 316, /* LOCAL */
YYSYMBOL_LOCALTIME = 317, /* LOCALTIME */
YYSYMBOL_LOCALTIMESTAMP = 318, /* LOCALTIMESTAMP */
YYSYMBOL_LOCATION = 319, /* LOCATION */
YYSYMBOL_LOCK_P = 320, /* LOCK_P */
YYSYMBOL_LOCKED = 321, /* LOCKED */
YYSYMBOL_LOGGED = 322, /* LOGGED */
YYSYMBOL_MAPPING = 323, /* MAPPING */
YYSYMBOL_MATCH = 324, /* MATCH */
YYSYMBOL_MATCHED = 325, /* MATCHED */
YYSYMBOL_MATERIALIZED = 326, /* MATERIALIZED */
YYSYMBOL_MAXVALUE = 327, /* MAXVALUE */
YYSYMBOL_MERGE = 328, /* MERGE */
YYSYMBOL_METHOD = 329, /* METHOD */
YYSYMBOL_MINUTE_P = 330, /* MINUTE_P */
YYSYMBOL_MINVALUE = 331, /* MINVALUE */
YYSYMBOL_MODE = 332, /* MODE */
YYSYMBOL_MONTH_P = 333, /* MONTH_P */
YYSYMBOL_MOVE = 334, /* MOVE */
YYSYMBOL_NAME_P = 335, /* NAME_P */
YYSYMBOL_NAMES = 336, /* NAMES */
YYSYMBOL_NATIONAL = 337, /* NATIONAL */
YYSYMBOL_NATURAL = 338, /* NATURAL */
YYSYMBOL_NCHAR = 339, /* NCHAR */
YYSYMBOL_NEW = 340, /* NEW */
YYSYMBOL_NEXT = 341, /* NEXT */
YYSYMBOL_NFC = 342, /* NFC */
YYSYMBOL_NFD = 343, /* NFD */
YYSYMBOL_NFKC = 344, /* NFKC */
YYSYMBOL_NFKD = 345, /* NFKD */
YYSYMBOL_NO = 346, /* NO */
YYSYMBOL_NONE = 347, /* NONE */
YYSYMBOL_NORMALIZE = 348, /* NORMALIZE */
YYSYMBOL_NORMALIZED = 349, /* NORMALIZED */
YYSYMBOL_NOT = 350, /* NOT */
YYSYMBOL_NOTHING = 351, /* NOTHING */
YYSYMBOL_NOTIFY = 352, /* NOTIFY */
YYSYMBOL_NOTNULL = 353, /* NOTNULL */
YYSYMBOL_NOWAIT = 354, /* NOWAIT */
YYSYMBOL_NULL_P = 355, /* NULL_P */
YYSYMBOL_NULLIF = 356, /* NULLIF */
YYSYMBOL_NULLS_P = 357, /* NULLS_P */
YYSYMBOL_NUMERIC = 358, /* NUMERIC */
YYSYMBOL_OBJECT_P = 359, /* OBJECT_P */
YYSYMBOL_OF = 360, /* OF */
YYSYMBOL_OFF = 361, /* OFF */
YYSYMBOL_OFFSET = 362, /* OFFSET */
YYSYMBOL_OIDS = 363, /* OIDS */
YYSYMBOL_OLD = 364, /* OLD */
YYSYMBOL_ON = 365, /* ON */
YYSYMBOL_ONLY = 366, /* ONLY */
YYSYMBOL_OPERATOR = 367, /* OPERATOR */
YYSYMBOL_OPTION = 368, /* OPTION */
YYSYMBOL_OPTIONS = 369, /* OPTIONS */
YYSYMBOL_OR = 370, /* OR */
YYSYMBOL_ORDER = 371, /* ORDER */
YYSYMBOL_ORDINALITY = 372, /* ORDINALITY */
YYSYMBOL_OTHERS = 373, /* OTHERS */
YYSYMBOL_OUT_P = 374, /* OUT_P */
YYSYMBOL_OUTER_P = 375, /* OUTER_P */
YYSYMBOL_OVER = 376, /* OVER */
YYSYMBOL_OVERLAPS = 377, /* OVERLAPS */
YYSYMBOL_OVERLAY = 378, /* OVERLAY */
YYSYMBOL_OVERRIDING = 379, /* OVERRIDING */
YYSYMBOL_OWNED = 380, /* OWNED */
YYSYMBOL_OWNER = 381, /* OWNER */
YYSYMBOL_PARALLEL = 382, /* PARALLEL */
YYSYMBOL_PARAMETER = 383, /* PARAMETER */
YYSYMBOL_PARSER = 384, /* PARSER */
YYSYMBOL_PARTIAL = 385, /* PARTIAL */
YYSYMBOL_PARTITION = 386, /* PARTITION */
YYSYMBOL_PASSING = 387, /* PASSING */
YYSYMBOL_PASSWORD = 388, /* PASSWORD */
YYSYMBOL_PLACING = 389, /* PLACING */
YYSYMBOL_PLANS = 390, /* PLANS */
YYSYMBOL_POLICY = 391, /* POLICY */
YYSYMBOL_POSITION = 392, /* POSITION */
YYSYMBOL_PRECEDING = 393, /* PRECEDING */
YYSYMBOL_PRECISION = 394, /* PRECISION */
YYSYMBOL_PRESERVE = 395, /* PRESERVE */
YYSYMBOL_PREPARE = 396, /* PREPARE */
YYSYMBOL_PREPARED = 397, /* PREPARED */
YYSYMBOL_PRIMARY = 398, /* PRIMARY */
YYSYMBOL_PRIOR = 399, /* PRIOR */
YYSYMBOL_PRIVILEGES = 400, /* PRIVILEGES */
YYSYMBOL_PROCEDURAL = 401, /* PROCEDURAL */
YYSYMBOL_PROCEDURE = 402, /* PROCEDURE */
YYSYMBOL_PROCEDURES = 403, /* PROCEDURES */
YYSYMBOL_PROGRAM = 404, /* PROGRAM */
YYSYMBOL_PUBLICATION = 405, /* PUBLICATION */
YYSYMBOL_QUOTE = 406, /* QUOTE */
YYSYMBOL_RANGE = 407, /* RANGE */
YYSYMBOL_READ = 408, /* READ */
YYSYMBOL_REAL = 409, /* REAL */
YYSYMBOL_REASSIGN = 410, /* REASSIGN */
YYSYMBOL_RECHECK = 411, /* RECHECK */
YYSYMBOL_RECURSIVE = 412, /* RECURSIVE */
YYSYMBOL_REF_P = 413, /* REF_P */
YYSYMBOL_REFERENCES = 414, /* REFERENCES */
YYSYMBOL_REFERENCING = 415, /* REFERENCING */
YYSYMBOL_REFRESH = 416, /* REFRESH */
YYSYMBOL_REINDEX = 417, /* REINDEX */
YYSYMBOL_RELATIVE_P = 418, /* RELATIVE_P */
YYSYMBOL_RELEASE = 419, /* RELEASE */
YYSYMBOL_RENAME = 420, /* RENAME */
YYSYMBOL_REPEATABLE = 421, /* REPEATABLE */
YYSYMBOL_REPLACE = 422, /* REPLACE */
YYSYMBOL_REPLICA = 423, /* REPLICA */
YYSYMBOL_RESET = 424, /* RESET */
YYSYMBOL_RESTART = 425, /* RESTART */
YYSYMBOL_RESTRICT = 426, /* RESTRICT */
YYSYMBOL_RETURN = 427, /* RETURN */
YYSYMBOL_RETURNING = 428, /* RETURNING */
YYSYMBOL_RETURNS = 429, /* RETURNS */
YYSYMBOL_REVOKE = 430, /* REVOKE */
YYSYMBOL_RIGHT = 431, /* RIGHT */
YYSYMBOL_ROLE = 432, /* ROLE */
YYSYMBOL_ROLLBACK = 433, /* ROLLBACK */
YYSYMBOL_ROLLUP = 434, /* ROLLUP */
YYSYMBOL_ROUTINE = 435, /* ROUTINE */
YYSYMBOL_ROUTINES = 436, /* ROUTINES */
YYSYMBOL_ROW = 437, /* ROW */
YYSYMBOL_ROWS = 438, /* ROWS */
YYSYMBOL_RULE = 439, /* RULE */
YYSYMBOL_SAVEPOINT = 440, /* SAVEPOINT */
YYSYMBOL_SCALAR = 441, /* SCALAR */
YYSYMBOL_SCHEMA = 442, /* SCHEMA */
YYSYMBOL_SCHEMAS = 443, /* SCHEMAS */
YYSYMBOL_SCROLL = 444, /* SCROLL */
YYSYMBOL_SEARCH = 445, /* SEARCH */
YYSYMBOL_SECOND_P = 446, /* SECOND_P */
YYSYMBOL_SECURITY = 447, /* SECURITY */
YYSYMBOL_SELECT = 448, /* SELECT */
YYSYMBOL_SEQUENCE = 449, /* SEQUENCE */
YYSYMBOL_SEQUENCES = 450, /* SEQUENCES */
YYSYMBOL_SERIALIZABLE = 451, /* SERIALIZABLE */
YYSYMBOL_SERVER = 452, /* SERVER */
YYSYMBOL_SESSION = 453, /* SESSION */
YYSYMBOL_SESSION_USER = 454, /* SESSION_USER */
YYSYMBOL_SET = 455, /* SET */
YYSYMBOL_SETS = 456, /* SETS */
YYSYMBOL_SETOF = 457, /* SETOF */
YYSYMBOL_SHARE = 458, /* SHARE */
YYSYMBOL_SHOW = 459, /* SHOW */
YYSYMBOL_SIMILAR = 460, /* SIMILAR */
YYSYMBOL_SIMPLE = 461, /* SIMPLE */
YYSYMBOL_SKIP = 462, /* SKIP */
YYSYMBOL_SMALLINT = 463, /* SMALLINT */
YYSYMBOL_SNAPSHOT = 464, /* SNAPSHOT */
YYSYMBOL_SOME = 465, /* SOME */
YYSYMBOL_SQL_P = 466, /* SQL_P */
YYSYMBOL_STABLE = 467, /* STABLE */
YYSYMBOL_STANDALONE_P = 468, /* STANDALONE_P */
YYSYMBOL_START = 469, /* START */
YYSYMBOL_STATEMENT = 470, /* STATEMENT */
YYSYMBOL_STATISTICS = 471, /* STATISTICS */
YYSYMBOL_STDIN = 472, /* STDIN */
YYSYMBOL_STDOUT = 473, /* STDOUT */
YYSYMBOL_STORAGE = 474, /* STORAGE */
YYSYMBOL_STORED = 475, /* STORED */
YYSYMBOL_STRICT_P = 476, /* STRICT_P */
YYSYMBOL_STRIP_P = 477, /* STRIP_P */
YYSYMBOL_SUBSCRIPTION = 478, /* SUBSCRIPTION */
YYSYMBOL_SUBSTRING = 479, /* SUBSTRING */
YYSYMBOL_SUPPORT = 480, /* SUPPORT */
YYSYMBOL_SYMMETRIC = 481, /* SYMMETRIC */
YYSYMBOL_SYSID = 482, /* SYSID */
YYSYMBOL_SYSTEM_P = 483, /* SYSTEM_P */
YYSYMBOL_SYSTEM_USER = 484, /* SYSTEM_USER */
YYSYMBOL_TABLE = 485, /* TABLE */
YYSYMBOL_TABLES = 486, /* TABLES */
YYSYMBOL_TABLESAMPLE = 487, /* TABLESAMPLE */
YYSYMBOL_TABLESPACE = 488, /* TABLESPACE */
YYSYMBOL_TEMP = 489, /* TEMP */
YYSYMBOL_TEMPLATE = 490, /* TEMPLATE */
YYSYMBOL_TEMPORARY = 491, /* TEMPORARY */
YYSYMBOL_TEXT_P = 492, /* TEXT_P */
YYSYMBOL_THEN = 493, /* THEN */
YYSYMBOL_TIES = 494, /* TIES */
YYSYMBOL_TIME = 495, /* TIME */
YYSYMBOL_TIMESTAMP = 496, /* TIMESTAMP */
YYSYMBOL_TO = 497, /* TO */
YYSYMBOL_TRAILING = 498, /* TRAILING */
YYSYMBOL_TRANSACTION = 499, /* TRANSACTION */
YYSYMBOL_TRANSFORM = 500, /* TRANSFORM */
YYSYMBOL_TREAT = 501, /* TREAT */
YYSYMBOL_TRIGGER = 502, /* TRIGGER */
YYSYMBOL_TRIM = 503, /* TRIM */
YYSYMBOL_TRUE_P = 504, /* TRUE_P */
YYSYMBOL_TRUNCATE = 505, /* TRUNCATE */
YYSYMBOL_TRUSTED = 506, /* TRUSTED */
YYSYMBOL_TYPE_P = 507, /* TYPE_P */
YYSYMBOL_TYPES_P = 508, /* TYPES_P */
YYSYMBOL_UESCAPE = 509, /* UESCAPE */
YYSYMBOL_UNBOUNDED = 510, /* UNBOUNDED */
YYSYMBOL_UNCOMMITTED = 511, /* UNCOMMITTED */
YYSYMBOL_UNENCRYPTED = 512, /* UNENCRYPTED */
YYSYMBOL_UNION = 513, /* UNION */
YYSYMBOL_UNIQUE = 514, /* UNIQUE */
YYSYMBOL_UNKNOWN = 515, /* UNKNOWN */
YYSYMBOL_UNLISTEN = 516, /* UNLISTEN */
YYSYMBOL_UNLOGGED = 517, /* UNLOGGED */
YYSYMBOL_UNTIL = 518, /* UNTIL */
YYSYMBOL_UPDATE = 519, /* UPDATE */
YYSYMBOL_USER = 520, /* USER */
YYSYMBOL_USING = 521, /* USING */
YYSYMBOL_VACUUM = 522, /* VACUUM */
YYSYMBOL_VALID = 523, /* VALID */
YYSYMBOL_VALIDATE = 524, /* VALIDATE */
YYSYMBOL_VALIDATOR = 525, /* VALIDATOR */
YYSYMBOL_VALUE_P = 526, /* VALUE_P */
YYSYMBOL_VALUES = 527, /* VALUES */
YYSYMBOL_VARCHAR = 528, /* VARCHAR */
YYSYMBOL_VARIADIC = 529, /* VARIADIC */
YYSYMBOL_VARYING = 530, /* VARYING */
YYSYMBOL_VERBOSE = 531, /* VERBOSE */
YYSYMBOL_VERSION_P = 532, /* VERSION_P */
YYSYMBOL_VIEW = 533, /* VIEW */
YYSYMBOL_VIEWS = 534, /* VIEWS */
YYSYMBOL_VOLATILE = 535, /* VOLATILE */
YYSYMBOL_WHEN = 536, /* WHEN */
YYSYMBOL_WHERE = 537, /* WHERE */
YYSYMBOL_WHITESPACE_P = 538, /* WHITESPACE_P */
YYSYMBOL_WINDOW = 539, /* WINDOW */
YYSYMBOL_WITH = 540, /* WITH */
YYSYMBOL_WITHIN = 541, /* WITHIN */
YYSYMBOL_WITHOUT = 542, /* WITHOUT */
YYSYMBOL_WORK = 543, /* WORK */
YYSYMBOL_WRAPPER = 544, /* WRAPPER */
YYSYMBOL_WRITE = 545, /* WRITE */
YYSYMBOL_XML_P = 546, /* XML_P */
YYSYMBOL_XMLATTRIBUTES = 547, /* XMLATTRIBUTES */
YYSYMBOL_XMLCONCAT = 548, /* XMLCONCAT */
YYSYMBOL_XMLELEMENT = 549, /* XMLELEMENT */
YYSYMBOL_XMLEXISTS = 550, /* XMLEXISTS */
YYSYMBOL_XMLFOREST = 551, /* XMLFOREST */
YYSYMBOL_XMLNAMESPACES = 552, /* XMLNAMESPACES */
YYSYMBOL_XMLPARSE = 553, /* XMLPARSE */
YYSYMBOL_XMLPI = 554, /* XMLPI */
YYSYMBOL_XMLROOT = 555, /* XMLROOT */
YYSYMBOL_XMLSERIALIZE = 556, /* XMLSERIALIZE */
YYSYMBOL_XMLTABLE = 557, /* XMLTABLE */
YYSYMBOL_YEAR_P = 558, /* YEAR_P */
YYSYMBOL_YES_P = 559, /* YES_P */
YYSYMBOL_ZONE = 560, /* ZONE */
YYSYMBOL_FORMAT_LA = 561, /* FORMAT_LA */
YYSYMBOL_NOT_LA = 562, /* NOT_LA */
YYSYMBOL_NULLS_LA = 563, /* NULLS_LA */
YYSYMBOL_WITH_LA = 564, /* WITH_LA */
YYSYMBOL_WITHOUT_LA = 565, /* WITHOUT_LA */
YYSYMBOL_MODE_TYPE_NAME = 566, /* MODE_TYPE_NAME */
YYSYMBOL_MODE_PLPGSQL_EXPR = 567, /* MODE_PLPGSQL_EXPR */
YYSYMBOL_MODE_PLPGSQL_ASSIGN1 = 568, /* MODE_PLPGSQL_ASSIGN1 */
YYSYMBOL_MODE_PLPGSQL_ASSIGN2 = 569, /* MODE_PLPGSQL_ASSIGN2 */
YYSYMBOL_MODE_PLPGSQL_ASSIGN3 = 570, /* MODE_PLPGSQL_ASSIGN3 */
YYSYMBOL_571_ = 571, /* '<' */
YYSYMBOL_572_ = 572, /* '>' */
YYSYMBOL_573_ = 573, /* '=' */
YYSYMBOL_574_ = 574, /* '+' */
YYSYMBOL_575_ = 575, /* '-' */
YYSYMBOL_576_ = 576, /* '*' */
YYSYMBOL_577_ = 577, /* '/' */
YYSYMBOL_578_ = 578, /* '%' */
YYSYMBOL_579_ = 579, /* '^' */
YYSYMBOL_UMINUS = 580, /* UMINUS */
YYSYMBOL_581_ = 581, /* '[' */
YYSYMBOL_582_ = 582, /* ']' */
YYSYMBOL_583_ = 583, /* '(' */
YYSYMBOL_584_ = 584, /* ')' */
YYSYMBOL_585_ = 585, /* '.' */
YYSYMBOL_586_ = 586, /* ',' */
YYSYMBOL_587_ = 587, /* ';' */
YYSYMBOL_588_ = 588, /* ':' */
YYSYMBOL_589_ = 589, /* '{' */
YYSYMBOL_590_ = 590, /* '}' */
YYSYMBOL_YYACCEPT = 591, /* $accept */
YYSYMBOL_prog = 592, /* prog */
YYSYMBOL_toplevel_stmt = 593, /* toplevel_stmt */
YYSYMBOL_stmt = 594, /* stmt */
YYSYMBOL_opt_single_name = 595, /* opt_single_name */
YYSYMBOL_opt_qualified_name = 596, /* opt_qualified_name */
YYSYMBOL_opt_concurrently = 597, /* opt_concurrently */
YYSYMBOL_opt_drop_behavior = 598, /* opt_drop_behavior */
YYSYMBOL_CallStmt = 599, /* CallStmt */
YYSYMBOL_CreateRoleStmt = 600, /* CreateRoleStmt */
YYSYMBOL_opt_with = 601, /* opt_with */
YYSYMBOL_OptRoleList = 602, /* OptRoleList */
YYSYMBOL_AlterOptRoleList = 603, /* AlterOptRoleList */
YYSYMBOL_AlterOptRoleElem = 604, /* AlterOptRoleElem */
YYSYMBOL_CreateOptRoleElem = 605, /* CreateOptRoleElem */
YYSYMBOL_CreateUserStmt = 606, /* CreateUserStmt */
YYSYMBOL_AlterRoleStmt = 607, /* AlterRoleStmt */
YYSYMBOL_opt_in_database = 608, /* opt_in_database */
YYSYMBOL_AlterRoleSetStmt = 609, /* AlterRoleSetStmt */
YYSYMBOL_DropRoleStmt = 610, /* DropRoleStmt */
YYSYMBOL_CreateGroupStmt = 611, /* CreateGroupStmt */
YYSYMBOL_AlterGroupStmt = 612, /* AlterGroupStmt */
YYSYMBOL_add_drop = 613, /* add_drop */
YYSYMBOL_CreateSchemaStmt = 614, /* CreateSchemaStmt */
YYSYMBOL_OptSchemaEltList = 615, /* OptSchemaEltList */
YYSYMBOL_schema_stmt = 616, /* schema_stmt */
YYSYMBOL_VariableSetStmt = 617, /* VariableSetStmt */
YYSYMBOL_set_rest = 618, /* set_rest */
YYSYMBOL_generic_set = 619, /* generic_set */
YYSYMBOL_set_rest_more = 620, /* set_rest_more */
YYSYMBOL_var_name = 621, /* var_name */
YYSYMBOL_var_list = 622, /* var_list */
YYSYMBOL_var_value = 623, /* var_value */
YYSYMBOL_iso_level = 624, /* iso_level */
YYSYMBOL_opt_boolean_or_string = 625, /* opt_boolean_or_string */
YYSYMBOL_zone_value = 626, /* zone_value */
YYSYMBOL_opt_encoding = 627, /* opt_encoding */
YYSYMBOL_NonReservedWord_or_Sconst = 628, /* NonReservedWord_or_Sconst */
YYSYMBOL_VariableResetStmt = 629, /* VariableResetStmt */
YYSYMBOL_reset_rest = 630, /* reset_rest */
YYSYMBOL_generic_reset = 631, /* generic_reset */
YYSYMBOL_SetResetClause = 632, /* SetResetClause */
YYSYMBOL_FunctionSetResetClause = 633, /* FunctionSetResetClause */
YYSYMBOL_VariableShowStmt = 634, /* VariableShowStmt */
YYSYMBOL_ConstraintsSetStmt = 635, /* ConstraintsSetStmt */
YYSYMBOL_constraints_set_list = 636, /* constraints_set_list */
YYSYMBOL_constraints_set_mode = 637, /* constraints_set_mode */
YYSYMBOL_CheckPointStmt = 638, /* CheckPointStmt */
YYSYMBOL_DiscardStmt = 639, /* DiscardStmt */
YYSYMBOL_AlterTableStmt = 640, /* AlterTableStmt */
YYSYMBOL_alter_table_cmds = 641, /* alter_table_cmds */
YYSYMBOL_partition_cmd = 642, /* partition_cmd */
YYSYMBOL_index_partition_cmd = 643, /* index_partition_cmd */
YYSYMBOL_alter_table_cmd = 644, /* alter_table_cmd */
YYSYMBOL_alter_column_default = 645, /* alter_column_default */
YYSYMBOL_opt_collate_clause = 646, /* opt_collate_clause */
YYSYMBOL_alter_using = 647, /* alter_using */
YYSYMBOL_replica_identity = 648, /* replica_identity */
YYSYMBOL_reloptions = 649, /* reloptions */
YYSYMBOL_opt_reloptions = 650, /* opt_reloptions */
YYSYMBOL_reloption_list = 651, /* reloption_list */
YYSYMBOL_reloption_elem = 652, /* reloption_elem */
YYSYMBOL_alter_identity_column_option_list = 653, /* alter_identity_column_option_list */
YYSYMBOL_alter_identity_column_option = 654, /* alter_identity_column_option */
YYSYMBOL_PartitionBoundSpec = 655, /* PartitionBoundSpec */
YYSYMBOL_hash_partbound_elem = 656, /* hash_partbound_elem */
YYSYMBOL_hash_partbound = 657, /* hash_partbound */
YYSYMBOL_AlterCompositeTypeStmt = 658, /* AlterCompositeTypeStmt */
YYSYMBOL_alter_type_cmds = 659, /* alter_type_cmds */
YYSYMBOL_alter_type_cmd = 660, /* alter_type_cmd */
YYSYMBOL_ClosePortalStmt = 661, /* ClosePortalStmt */
YYSYMBOL_CopyStmt = 662, /* CopyStmt */
YYSYMBOL_copy_from = 663, /* copy_from */
YYSYMBOL_opt_program = 664, /* opt_program */
YYSYMBOL_copy_file_name = 665, /* copy_file_name */
YYSYMBOL_copy_options = 666, /* copy_options */
YYSYMBOL_copy_opt_list = 667, /* copy_opt_list */
YYSYMBOL_copy_opt_item = 668, /* copy_opt_item */
YYSYMBOL_opt_binary = 669, /* opt_binary */
YYSYMBOL_copy_delimiter = 670, /* copy_delimiter */
YYSYMBOL_opt_using = 671, /* opt_using */
YYSYMBOL_copy_generic_opt_list = 672, /* copy_generic_opt_list */
YYSYMBOL_copy_generic_opt_elem = 673, /* copy_generic_opt_elem */
YYSYMBOL_copy_generic_opt_arg = 674, /* copy_generic_opt_arg */
YYSYMBOL_copy_generic_opt_arg_list = 675, /* copy_generic_opt_arg_list */
YYSYMBOL_copy_generic_opt_arg_list_item = 676, /* copy_generic_opt_arg_list_item */
YYSYMBOL_CreateStmt = 677, /* CreateStmt */
YYSYMBOL_OptTemp = 678, /* OptTemp */
YYSYMBOL_OptTableElementList = 679, /* OptTableElementList */
YYSYMBOL_OptTypedTableElementList = 680, /* OptTypedTableElementList */
YYSYMBOL_TableElementList = 681, /* TableElementList */
YYSYMBOL_TypedTableElementList = 682, /* TypedTableElementList */
YYSYMBOL_TableElement = 683, /* TableElement */
YYSYMBOL_TypedTableElement = 684, /* TypedTableElement */
YYSYMBOL_columnDef = 685, /* columnDef */
YYSYMBOL_columnOptions = 686, /* columnOptions */
YYSYMBOL_column_compression = 687, /* column_compression */
YYSYMBOL_opt_column_compression = 688, /* opt_column_compression */
YYSYMBOL_column_storage = 689, /* column_storage */
YYSYMBOL_opt_column_storage = 690, /* opt_column_storage */
YYSYMBOL_ColQualList = 691, /* ColQualList */
YYSYMBOL_ColConstraint = 692, /* ColConstraint */
YYSYMBOL_ColConstraintElem = 693, /* ColConstraintElem */
YYSYMBOL_opt_unique_null_treatment = 694, /* opt_unique_null_treatment */
YYSYMBOL_generated_when = 695, /* generated_when */
YYSYMBOL_ConstraintAttr = 696, /* ConstraintAttr */
YYSYMBOL_TableLikeClause = 697, /* TableLikeClause */
YYSYMBOL_TableLikeOptionList = 698, /* TableLikeOptionList */
YYSYMBOL_TableLikeOption = 699, /* TableLikeOption */
YYSYMBOL_TableConstraint = 700, /* TableConstraint */
YYSYMBOL_ConstraintElem = 701, /* ConstraintElem */
YYSYMBOL_opt_no_inherit = 702, /* opt_no_inherit */
YYSYMBOL_opt_column_list = 703, /* opt_column_list */
YYSYMBOL_columnList = 704, /* columnList */
YYSYMBOL_columnElem = 705, /* columnElem */
YYSYMBOL_opt_c_include = 706, /* opt_c_include */
YYSYMBOL_key_match = 707, /* key_match */
YYSYMBOL_ExclusionConstraintList = 708, /* ExclusionConstraintList */
YYSYMBOL_ExclusionConstraintElem = 709, /* ExclusionConstraintElem */
YYSYMBOL_OptWhereClause = 710, /* OptWhereClause */
YYSYMBOL_key_actions = 711, /* key_actions */
YYSYMBOL_key_update = 712, /* key_update */
YYSYMBOL_key_delete = 713, /* key_delete */
YYSYMBOL_key_action = 714, /* key_action */
YYSYMBOL_OptInherit = 715, /* OptInherit */
YYSYMBOL_OptPartitionSpec = 716, /* OptPartitionSpec */
YYSYMBOL_PartitionSpec = 717, /* PartitionSpec */
YYSYMBOL_part_params = 718, /* part_params */
YYSYMBOL_part_elem = 719, /* part_elem */
YYSYMBOL_table_access_method_clause = 720, /* table_access_method_clause */
YYSYMBOL_OptWith = 721, /* OptWith */
YYSYMBOL_OnCommitOption = 722, /* OnCommitOption */
YYSYMBOL_OptTableSpace = 723, /* OptTableSpace */
YYSYMBOL_OptConsTableSpace = 724, /* OptConsTableSpace */
YYSYMBOL_ExistingIndex = 725, /* ExistingIndex */
YYSYMBOL_CreateStatsStmt = 726, /* CreateStatsStmt */
YYSYMBOL_stats_params = 727, /* stats_params */
YYSYMBOL_stats_param = 728, /* stats_param */
YYSYMBOL_AlterStatsStmt = 729, /* AlterStatsStmt */
YYSYMBOL_create_as_target = 730, /* create_as_target */
YYSYMBOL_opt_with_data = 731, /* opt_with_data */
YYSYMBOL_CreateMatViewStmt = 732, /* CreateMatViewStmt */
YYSYMBOL_create_mv_target = 733, /* create_mv_target */
YYSYMBOL_OptNoLog = 734, /* OptNoLog */
YYSYMBOL_RefreshMatViewStmt = 735, /* RefreshMatViewStmt */
YYSYMBOL_CreateSeqStmt = 736, /* CreateSeqStmt */
YYSYMBOL_AlterSeqStmt = 737, /* AlterSeqStmt */
YYSYMBOL_OptSeqOptList = 738, /* OptSeqOptList */
YYSYMBOL_OptParenthesizedSeqOptList = 739, /* OptParenthesizedSeqOptList */
YYSYMBOL_SeqOptList = 740, /* SeqOptList */
YYSYMBOL_SeqOptElem = 741, /* SeqOptElem */
YYSYMBOL_opt_by = 742, /* opt_by */
YYSYMBOL_NumericOnly = 743, /* NumericOnly */
YYSYMBOL_NumericOnly_list = 744, /* NumericOnly_list */
YYSYMBOL_CreatePLangStmt = 745, /* CreatePLangStmt */
YYSYMBOL_opt_trusted = 746, /* opt_trusted */
YYSYMBOL_handler_name = 747, /* handler_name */
YYSYMBOL_opt_inline_handler = 748, /* opt_inline_handler */
YYSYMBOL_validator_clause = 749, /* validator_clause */
YYSYMBOL_opt_validator = 750, /* opt_validator */
YYSYMBOL_opt_procedural = 751, /* opt_procedural */
YYSYMBOL_CreateTableSpaceStmt = 752, /* CreateTableSpaceStmt */
YYSYMBOL_OptTableSpaceOwner = 753, /* OptTableSpaceOwner */
YYSYMBOL_DropTableSpaceStmt = 754, /* DropTableSpaceStmt */
YYSYMBOL_CreateExtensionStmt = 755, /* CreateExtensionStmt */
YYSYMBOL_create_extension_opt_list = 756, /* create_extension_opt_list */
YYSYMBOL_create_extension_opt_item = 757, /* create_extension_opt_item */
YYSYMBOL_AlterExtensionStmt = 758, /* AlterExtensionStmt */
YYSYMBOL_alter_extension_opt_list = 759, /* alter_extension_opt_list */
YYSYMBOL_alter_extension_opt_item = 760, /* alter_extension_opt_item */
YYSYMBOL_AlterExtensionContentsStmt = 761, /* AlterExtensionContentsStmt */
YYSYMBOL_CreateFdwStmt = 762, /* CreateFdwStmt */
YYSYMBOL_fdw_option = 763, /* fdw_option */
YYSYMBOL_fdw_options = 764, /* fdw_options */
YYSYMBOL_opt_fdw_options = 765, /* opt_fdw_options */
YYSYMBOL_AlterFdwStmt = 766, /* AlterFdwStmt */
YYSYMBOL_create_generic_options = 767, /* create_generic_options */
YYSYMBOL_generic_option_list = 768, /* generic_option_list */
YYSYMBOL_alter_generic_options = 769, /* alter_generic_options */
YYSYMBOL_alter_generic_option_list = 770, /* alter_generic_option_list */
YYSYMBOL_alter_generic_option_elem = 771, /* alter_generic_option_elem */
YYSYMBOL_generic_option_elem = 772, /* generic_option_elem */
YYSYMBOL_generic_option_name = 773, /* generic_option_name */
YYSYMBOL_generic_option_arg = 774, /* generic_option_arg */
YYSYMBOL_CreateForeignServerStmt = 775, /* CreateForeignServerStmt */
YYSYMBOL_opt_type = 776, /* opt_type */
YYSYMBOL_foreign_server_version = 777, /* foreign_server_version */
YYSYMBOL_opt_foreign_server_version = 778, /* opt_foreign_server_version */
YYSYMBOL_AlterForeignServerStmt = 779, /* AlterForeignServerStmt */
YYSYMBOL_CreateForeignTableStmt = 780, /* CreateForeignTableStmt */
YYSYMBOL_ImportForeignSchemaStmt = 781, /* ImportForeignSchemaStmt */
YYSYMBOL_import_qualification_type = 782, /* import_qualification_type */
YYSYMBOL_import_qualification = 783, /* import_qualification */
YYSYMBOL_CreateUserMappingStmt = 784, /* CreateUserMappingStmt */
YYSYMBOL_auth_ident = 785, /* auth_ident */
YYSYMBOL_DropUserMappingStmt = 786, /* DropUserMappingStmt */
YYSYMBOL_AlterUserMappingStmt = 787, /* AlterUserMappingStmt */
YYSYMBOL_CreatePolicyStmt = 788, /* CreatePolicyStmt */
YYSYMBOL_AlterPolicyStmt = 789, /* AlterPolicyStmt */
YYSYMBOL_RowSecurityOptionalExpr = 790, /* RowSecurityOptionalExpr */
YYSYMBOL_RowSecurityOptionalWithCheck = 791, /* RowSecurityOptionalWithCheck */
YYSYMBOL_RowSecurityDefaultToRole = 792, /* RowSecurityDefaultToRole */
YYSYMBOL_RowSecurityOptionalToRole = 793, /* RowSecurityOptionalToRole */
YYSYMBOL_RowSecurityDefaultPermissive = 794, /* RowSecurityDefaultPermissive */
YYSYMBOL_RowSecurityDefaultForCmd = 795, /* RowSecurityDefaultForCmd */
YYSYMBOL_row_security_cmd = 796, /* row_security_cmd */
YYSYMBOL_CreateAmStmt = 797, /* CreateAmStmt */
YYSYMBOL_am_type = 798, /* am_type */
YYSYMBOL_CreateTrigStmt = 799, /* CreateTrigStmt */
YYSYMBOL_TriggerActionTime = 800, /* TriggerActionTime */
YYSYMBOL_TriggerEvents = 801, /* TriggerEvents */
YYSYMBOL_TriggerOneEvent = 802, /* TriggerOneEvent */
YYSYMBOL_TriggerReferencing = 803, /* TriggerReferencing */
YYSYMBOL_TriggerTransitions = 804, /* TriggerTransitions */
YYSYMBOL_TriggerTransition = 805, /* TriggerTransition */
YYSYMBOL_TransitionOldOrNew = 806, /* TransitionOldOrNew */
YYSYMBOL_TransitionRowOrTable = 807, /* TransitionRowOrTable */
YYSYMBOL_TransitionRelName = 808, /* TransitionRelName */
YYSYMBOL_TriggerForSpec = 809, /* TriggerForSpec */
YYSYMBOL_TriggerForOptEach = 810, /* TriggerForOptEach */
YYSYMBOL_TriggerForType = 811, /* TriggerForType */
YYSYMBOL_TriggerWhen = 812, /* TriggerWhen */
YYSYMBOL_FUNCTION_or_PROCEDURE = 813, /* FUNCTION_or_PROCEDURE */
YYSYMBOL_TriggerFuncArgs = 814, /* TriggerFuncArgs */
YYSYMBOL_TriggerFuncArg = 815, /* TriggerFuncArg */
YYSYMBOL_OptConstrFromTable = 816, /* OptConstrFromTable */
YYSYMBOL_ConstraintAttributeSpec = 817, /* ConstraintAttributeSpec */
YYSYMBOL_ConstraintAttributeElem = 818, /* ConstraintAttributeElem */
YYSYMBOL_CreateEventTrigStmt = 819, /* CreateEventTrigStmt */
YYSYMBOL_event_trigger_when_list = 820, /* event_trigger_when_list */
YYSYMBOL_event_trigger_when_item = 821, /* event_trigger_when_item */
YYSYMBOL_event_trigger_value_list = 822, /* event_trigger_value_list */
YYSYMBOL_AlterEventTrigStmt = 823, /* AlterEventTrigStmt */
YYSYMBOL_enable_trigger = 824, /* enable_trigger */
YYSYMBOL_CreateAssertionStmt = 825, /* CreateAssertionStmt */
YYSYMBOL_DefineStmt = 826, /* DefineStmt */
YYSYMBOL_definition = 827, /* definition */
YYSYMBOL_def_list = 828, /* def_list */
YYSYMBOL_def_elem = 829, /* def_elem */
YYSYMBOL_def_arg = 830, /* def_arg */
YYSYMBOL_old_aggr_definition = 831, /* old_aggr_definition */
YYSYMBOL_old_aggr_list = 832, /* old_aggr_list */
YYSYMBOL_old_aggr_elem = 833, /* old_aggr_elem */
YYSYMBOL_opt_enum_val_list = 834, /* opt_enum_val_list */
YYSYMBOL_enum_val_list = 835, /* enum_val_list */
YYSYMBOL_AlterEnumStmt = 836, /* AlterEnumStmt */
YYSYMBOL_opt_if_not_exists = 837, /* opt_if_not_exists */
YYSYMBOL_CreateOpClassStmt = 838, /* CreateOpClassStmt */
YYSYMBOL_opclass_item_list = 839, /* opclass_item_list */
YYSYMBOL_opclass_item = 840, /* opclass_item */
YYSYMBOL_opt_default = 841, /* opt_default */
YYSYMBOL_opt_opfamily = 842, /* opt_opfamily */
YYSYMBOL_opclass_purpose = 843, /* opclass_purpose */
YYSYMBOL_opt_recheck = 844, /* opt_recheck */
YYSYMBOL_CreateOpFamilyStmt = 845, /* CreateOpFamilyStmt */
YYSYMBOL_AlterOpFamilyStmt = 846, /* AlterOpFamilyStmt */
YYSYMBOL_opclass_drop_list = 847, /* opclass_drop_list */
YYSYMBOL_opclass_drop = 848, /* opclass_drop */
YYSYMBOL_DropOpClassStmt = 849, /* DropOpClassStmt */
YYSYMBOL_DropOpFamilyStmt = 850, /* DropOpFamilyStmt */
YYSYMBOL_DropOwnedStmt = 851, /* DropOwnedStmt */
YYSYMBOL_ReassignOwnedStmt = 852, /* ReassignOwnedStmt */
YYSYMBOL_DropStmt = 853, /* DropStmt */
YYSYMBOL_object_type_any_name = 854, /* object_type_any_name */
YYSYMBOL_object_type_name = 855, /* object_type_name */
YYSYMBOL_drop_type_name = 856, /* drop_type_name */
YYSYMBOL_object_type_name_on_any_name = 857, /* object_type_name_on_any_name */
YYSYMBOL_any_name_list = 858, /* any_name_list */
YYSYMBOL_any_name = 859, /* any_name */
YYSYMBOL_attrs = 860, /* attrs */
YYSYMBOL_type_name_list = 861, /* type_name_list */
YYSYMBOL_TruncateStmt = 862, /* TruncateStmt */
YYSYMBOL_opt_restart_seqs = 863, /* opt_restart_seqs */
YYSYMBOL_CommentStmt = 864, /* CommentStmt */
YYSYMBOL_comment_text = 865, /* comment_text */
YYSYMBOL_SecLabelStmt = 866, /* SecLabelStmt */
YYSYMBOL_opt_provider = 867, /* opt_provider */
YYSYMBOL_security_label = 868, /* security_label */
YYSYMBOL_FetchStmt = 869, /* FetchStmt */
YYSYMBOL_fetch_args = 870, /* fetch_args */
YYSYMBOL_from_in = 871, /* from_in */
YYSYMBOL_opt_from_in = 872, /* opt_from_in */
YYSYMBOL_GrantStmt = 873, /* GrantStmt */
YYSYMBOL_RevokeStmt = 874, /* RevokeStmt */
YYSYMBOL_privileges = 875, /* privileges */
YYSYMBOL_privilege_list = 876, /* privilege_list */
YYSYMBOL_privilege = 877, /* privilege */
YYSYMBOL_parameter_name_list = 878, /* parameter_name_list */
YYSYMBOL_parameter_name = 879, /* parameter_name */
YYSYMBOL_privilege_target = 880, /* privilege_target */
YYSYMBOL_grantee_list = 881, /* grantee_list */
YYSYMBOL_grantee = 882, /* grantee */
YYSYMBOL_opt_grant_grant_option = 883, /* opt_grant_grant_option */
YYSYMBOL_GrantRoleStmt = 884, /* GrantRoleStmt */
YYSYMBOL_RevokeRoleStmt = 885, /* RevokeRoleStmt */
YYSYMBOL_grant_role_opt_list = 886, /* grant_role_opt_list */
YYSYMBOL_grant_role_opt = 887, /* grant_role_opt */
YYSYMBOL_grant_role_opt_value = 888, /* grant_role_opt_value */
YYSYMBOL_opt_granted_by = 889, /* opt_granted_by */
YYSYMBOL_AlterDefaultPrivilegesStmt = 890, /* AlterDefaultPrivilegesStmt */
YYSYMBOL_DefACLOptionList = 891, /* DefACLOptionList */
YYSYMBOL_DefACLOption = 892, /* DefACLOption */
YYSYMBOL_DefACLAction = 893, /* DefACLAction */
YYSYMBOL_defacl_privilege_target = 894, /* defacl_privilege_target */
YYSYMBOL_IndexStmt = 895, /* IndexStmt */
YYSYMBOL_opt_unique = 896, /* opt_unique */
YYSYMBOL_access_method_clause = 897, /* access_method_clause */
YYSYMBOL_index_params = 898, /* index_params */
YYSYMBOL_index_elem_options = 899, /* index_elem_options */
YYSYMBOL_index_elem = 900, /* index_elem */
YYSYMBOL_opt_include = 901, /* opt_include */
YYSYMBOL_index_including_params = 902, /* index_including_params */
YYSYMBOL_opt_collate = 903, /* opt_collate */
YYSYMBOL_opt_asc_desc = 904, /* opt_asc_desc */
YYSYMBOL_opt_nulls_order = 905, /* opt_nulls_order */
YYSYMBOL_CreateFunctionStmt = 906, /* CreateFunctionStmt */
YYSYMBOL_opt_or_replace = 907, /* opt_or_replace */
YYSYMBOL_func_args = 908, /* func_args */
YYSYMBOL_func_args_list = 909, /* func_args_list */
YYSYMBOL_function_with_argtypes_list = 910, /* function_with_argtypes_list */
YYSYMBOL_function_with_argtypes = 911, /* function_with_argtypes */
YYSYMBOL_func_args_with_defaults = 912, /* func_args_with_defaults */
YYSYMBOL_func_args_with_defaults_list = 913, /* func_args_with_defaults_list */
YYSYMBOL_func_arg = 914, /* func_arg */
YYSYMBOL_arg_class = 915, /* arg_class */
YYSYMBOL_param_name = 916, /* param_name */
YYSYMBOL_func_return = 917, /* func_return */
YYSYMBOL_func_type = 918, /* func_type */
YYSYMBOL_func_arg_with_default = 919, /* func_arg_with_default */
YYSYMBOL_aggr_arg = 920, /* aggr_arg */
YYSYMBOL_aggr_args = 921, /* aggr_args */
YYSYMBOL_aggr_args_list = 922, /* aggr_args_list */
YYSYMBOL_aggregate_with_argtypes = 923, /* aggregate_with_argtypes */
YYSYMBOL_aggregate_with_argtypes_list = 924, /* aggregate_with_argtypes_list */
YYSYMBOL_opt_createfunc_opt_list = 925, /* opt_createfunc_opt_list */
YYSYMBOL_createfunc_opt_list = 926, /* createfunc_opt_list */
YYSYMBOL_common_func_opt_item = 927, /* common_func_opt_item */
YYSYMBOL_createfunc_opt_item = 928, /* createfunc_opt_item */
YYSYMBOL_func_as = 929, /* func_as */
YYSYMBOL_ReturnStmt = 930, /* ReturnStmt */
YYSYMBOL_opt_routine_body = 931, /* opt_routine_body */
YYSYMBOL_routine_body_stmt_list = 932, /* routine_body_stmt_list */
YYSYMBOL_routine_body_stmt = 933, /* routine_body_stmt */
YYSYMBOL_transform_type_list = 934, /* transform_type_list */
YYSYMBOL_opt_definition = 935, /* opt_definition */
YYSYMBOL_table_func_column = 936, /* table_func_column */
YYSYMBOL_table_func_column_list = 937, /* table_func_column_list */
YYSYMBOL_AlterFunctionStmt = 938, /* AlterFunctionStmt */
YYSYMBOL_alterfunc_opt_list = 939, /* alterfunc_opt_list */
YYSYMBOL_opt_restrict = 940, /* opt_restrict */
YYSYMBOL_RemoveFuncStmt = 941, /* RemoveFuncStmt */
YYSYMBOL_RemoveAggrStmt = 942, /* RemoveAggrStmt */
YYSYMBOL_RemoveOperStmt = 943, /* RemoveOperStmt */
YYSYMBOL_oper_argtypes = 944, /* oper_argtypes */
YYSYMBOL_any_operator = 945, /* any_operator */
YYSYMBOL_operator_with_argtypes_list = 946, /* operator_with_argtypes_list */
YYSYMBOL_operator_with_argtypes = 947, /* operator_with_argtypes */
YYSYMBOL_DoStmt = 948, /* DoStmt */
YYSYMBOL_dostmt_opt_list = 949, /* dostmt_opt_list */
YYSYMBOL_dostmt_opt_item = 950, /* dostmt_opt_item */
YYSYMBOL_CreateCastStmt = 951, /* CreateCastStmt */
YYSYMBOL_cast_context = 952, /* cast_context */
YYSYMBOL_DropCastStmt = 953, /* DropCastStmt */
YYSYMBOL_opt_if_exists = 954, /* opt_if_exists */
YYSYMBOL_CreateTransformStmt = 955, /* CreateTransformStmt */
YYSYMBOL_transform_element_list = 956, /* transform_element_list */
YYSYMBOL_DropTransformStmt = 957, /* DropTransformStmt */
YYSYMBOL_ReindexStmt = 958, /* ReindexStmt */
YYSYMBOL_reindex_target_relation = 959, /* reindex_target_relation */
YYSYMBOL_reindex_target_all = 960, /* reindex_target_all */
YYSYMBOL_opt_reindex_option_list = 961, /* opt_reindex_option_list */
YYSYMBOL_AlterTblSpcStmt = 962, /* AlterTblSpcStmt */
YYSYMBOL_RenameStmt = 963, /* RenameStmt */
YYSYMBOL_opt_column = 964, /* opt_column */
YYSYMBOL_opt_set_data = 965, /* opt_set_data */
YYSYMBOL_AlterObjectDependsStmt = 966, /* AlterObjectDependsStmt */
YYSYMBOL_opt_no = 967, /* opt_no */
YYSYMBOL_AlterObjectSchemaStmt = 968, /* AlterObjectSchemaStmt */
YYSYMBOL_AlterOperatorStmt = 969, /* AlterOperatorStmt */
YYSYMBOL_operator_def_list = 970, /* operator_def_list */
YYSYMBOL_operator_def_elem = 971, /* operator_def_elem */
YYSYMBOL_operator_def_arg = 972, /* operator_def_arg */
YYSYMBOL_AlterTypeStmt = 973, /* AlterTypeStmt */
YYSYMBOL_AlterOwnerStmt = 974, /* AlterOwnerStmt */
YYSYMBOL_CreatePublicationStmt = 975, /* CreatePublicationStmt */
YYSYMBOL_PublicationObjSpec = 976, /* PublicationObjSpec */
YYSYMBOL_pub_obj_list = 977, /* pub_obj_list */
YYSYMBOL_AlterPublicationStmt = 978, /* AlterPublicationStmt */
YYSYMBOL_CreateSubscriptionStmt = 979, /* CreateSubscriptionStmt */
YYSYMBOL_AlterSubscriptionStmt = 980, /* AlterSubscriptionStmt */
YYSYMBOL_DropSubscriptionStmt = 981, /* DropSubscriptionStmt */
YYSYMBOL_RuleStmt = 982, /* RuleStmt */
YYSYMBOL_RuleActionList = 983, /* RuleActionList */
YYSYMBOL_RuleActionMulti = 984, /* RuleActionMulti */
YYSYMBOL_RuleActionStmt = 985, /* RuleActionStmt */
YYSYMBOL_RuleActionStmtOrEmpty = 986, /* RuleActionStmtOrEmpty */
YYSYMBOL_event = 987, /* event */
YYSYMBOL_opt_instead = 988, /* opt_instead */
YYSYMBOL_NotifyStmt = 989, /* NotifyStmt */
YYSYMBOL_notify_payload = 990, /* notify_payload */
YYSYMBOL_ListenStmt = 991, /* ListenStmt */
YYSYMBOL_UnlistenStmt = 992, /* UnlistenStmt */
YYSYMBOL_TransactionStmt = 993, /* TransactionStmt */
YYSYMBOL_TransactionStmtLegacy = 994, /* TransactionStmtLegacy */
YYSYMBOL_opt_transaction = 995, /* opt_transaction */
YYSYMBOL_transaction_mode_item = 996, /* transaction_mode_item */
YYSYMBOL_transaction_mode_list = 997, /* transaction_mode_list */
YYSYMBOL_transaction_mode_list_or_empty = 998, /* transaction_mode_list_or_empty */
YYSYMBOL_opt_transaction_chain = 999, /* opt_transaction_chain */
YYSYMBOL_ViewStmt = 1000, /* ViewStmt */
YYSYMBOL_opt_check_option = 1001, /* opt_check_option */
YYSYMBOL_LoadStmt = 1002, /* LoadStmt */
YYSYMBOL_CreatedbStmt = 1003, /* CreatedbStmt */
YYSYMBOL_createdb_opt_list = 1004, /* createdb_opt_list */
YYSYMBOL_createdb_opt_items = 1005, /* createdb_opt_items */
YYSYMBOL_createdb_opt_item = 1006, /* createdb_opt_item */
YYSYMBOL_createdb_opt_name = 1007, /* createdb_opt_name */
YYSYMBOL_opt_equal = 1008, /* opt_equal */
YYSYMBOL_AlterDatabaseStmt = 1009, /* AlterDatabaseStmt */
YYSYMBOL_AlterDatabaseSetStmt = 1010, /* AlterDatabaseSetStmt */
YYSYMBOL_DropdbStmt = 1011, /* DropdbStmt */
YYSYMBOL_drop_option_list = 1012, /* drop_option_list */
YYSYMBOL_drop_option = 1013, /* drop_option */
YYSYMBOL_AlterCollationStmt = 1014, /* AlterCollationStmt */
YYSYMBOL_AlterSystemStmt = 1015, /* AlterSystemStmt */
YYSYMBOL_CreateDomainStmt = 1016, /* CreateDomainStmt */
YYSYMBOL_AlterDomainStmt = 1017, /* AlterDomainStmt */
YYSYMBOL_opt_as = 1018, /* opt_as */
YYSYMBOL_AlterTSDictionaryStmt = 1019, /* AlterTSDictionaryStmt */
YYSYMBOL_AlterTSConfigurationStmt = 1020, /* AlterTSConfigurationStmt */
YYSYMBOL_any_with = 1021, /* any_with */
YYSYMBOL_CreateConversionStmt = 1022, /* CreateConversionStmt */
YYSYMBOL_ClusterStmt = 1023, /* ClusterStmt */
YYSYMBOL_cluster_index_specification = 1024, /* cluster_index_specification */
YYSYMBOL_VacuumStmt = 1025, /* VacuumStmt */
YYSYMBOL_AnalyzeStmt = 1026, /* AnalyzeStmt */
YYSYMBOL_utility_option_list = 1027, /* utility_option_list */
YYSYMBOL_analyze_keyword = 1028, /* analyze_keyword */
YYSYMBOL_utility_option_elem = 1029, /* utility_option_elem */
YYSYMBOL_utility_option_name = 1030, /* utility_option_name */
YYSYMBOL_utility_option_arg = 1031, /* utility_option_arg */
YYSYMBOL_opt_analyze = 1032, /* opt_analyze */
YYSYMBOL_opt_verbose = 1033, /* opt_verbose */
YYSYMBOL_opt_full = 1034, /* opt_full */
YYSYMBOL_opt_freeze = 1035, /* opt_freeze */
YYSYMBOL_opt_name_list = 1036, /* opt_name_list */
YYSYMBOL_vacuum_relation = 1037, /* vacuum_relation */
YYSYMBOL_vacuum_relation_list = 1038, /* vacuum_relation_list */
YYSYMBOL_opt_vacuum_relation_list = 1039, /* opt_vacuum_relation_list */
YYSYMBOL_ExplainStmt = 1040, /* ExplainStmt */
YYSYMBOL_ExplainableStmt = 1041, /* ExplainableStmt */
YYSYMBOL_PrepareStmt = 1042, /* PrepareStmt */
YYSYMBOL_prep_type_clause = 1043, /* prep_type_clause */
YYSYMBOL_PreparableStmt = 1044, /* PreparableStmt */
YYSYMBOL_ExecuteStmt = 1045, /* ExecuteStmt */
YYSYMBOL_execute_param_clause = 1046, /* execute_param_clause */
YYSYMBOL_InsertStmt = 1047, /* InsertStmt */
YYSYMBOL_insert_target = 1048, /* insert_target */
YYSYMBOL_insert_rest = 1049, /* insert_rest */
YYSYMBOL_override_kind = 1050, /* override_kind */
YYSYMBOL_insert_column_list = 1051, /* insert_column_list */
YYSYMBOL_insert_column_item = 1052, /* insert_column_item */
YYSYMBOL_opt_on_conflict = 1053, /* opt_on_conflict */
YYSYMBOL_opt_conf_expr = 1054, /* opt_conf_expr */
YYSYMBOL_returning_clause = 1055, /* returning_clause */
YYSYMBOL_DeleteStmt = 1056, /* DeleteStmt */
YYSYMBOL_using_clause = 1057, /* using_clause */
YYSYMBOL_LockStmt = 1058, /* LockStmt */
YYSYMBOL_opt_lock = 1059, /* opt_lock */
YYSYMBOL_lock_type = 1060, /* lock_type */
YYSYMBOL_opt_nowait = 1061, /* opt_nowait */
YYSYMBOL_opt_nowait_or_skip = 1062, /* opt_nowait_or_skip */
YYSYMBOL_UpdateStmt = 1063, /* UpdateStmt */
YYSYMBOL_set_clause_list = 1064, /* set_clause_list */
YYSYMBOL_set_clause = 1065, /* set_clause */
YYSYMBOL_set_target = 1066, /* set_target */
YYSYMBOL_set_target_list = 1067, /* set_target_list */
YYSYMBOL_MergeStmt = 1068, /* MergeStmt */
YYSYMBOL_merge_when_list = 1069, /* merge_when_list */
YYSYMBOL_merge_when_clause = 1070, /* merge_when_clause */
YYSYMBOL_opt_merge_when_condition = 1071, /* opt_merge_when_condition */
YYSYMBOL_merge_update = 1072, /* merge_update */
YYSYMBOL_merge_delete = 1073, /* merge_delete */
YYSYMBOL_merge_insert = 1074, /* merge_insert */
YYSYMBOL_merge_values_clause = 1075, /* merge_values_clause */
YYSYMBOL_DeclareCursorStmt = 1076, /* DeclareCursorStmt */
YYSYMBOL_cursor_name = 1077, /* cursor_name */
YYSYMBOL_cursor_options = 1078, /* cursor_options */
YYSYMBOL_opt_hold = 1079, /* opt_hold */
YYSYMBOL_SelectStmt = 1080, /* SelectStmt */
YYSYMBOL_select_with_parens = 1081, /* select_with_parens */
YYSYMBOL_select_no_parens = 1082, /* select_no_parens */
YYSYMBOL_select_clause = 1083, /* select_clause */
YYSYMBOL_simple_select = 1084, /* simple_select */
YYSYMBOL_with_clause = 1085, /* with_clause */
YYSYMBOL_cte_list = 1086, /* cte_list */
YYSYMBOL_common_table_expr = 1087, /* common_table_expr */
YYSYMBOL_opt_materialized = 1088, /* opt_materialized */
YYSYMBOL_opt_search_clause = 1089, /* opt_search_clause */
YYSYMBOL_opt_cycle_clause = 1090, /* opt_cycle_clause */
YYSYMBOL_opt_with_clause = 1091, /* opt_with_clause */
YYSYMBOL_into_clause = 1092, /* into_clause */
YYSYMBOL_OptTempTableName = 1093, /* OptTempTableName */
YYSYMBOL_opt_table = 1094, /* opt_table */
YYSYMBOL_set_quantifier = 1095, /* set_quantifier */
YYSYMBOL_distinct_clause = 1096, /* distinct_clause */
YYSYMBOL_opt_all_clause = 1097, /* opt_all_clause */
YYSYMBOL_opt_sort_clause = 1098, /* opt_sort_clause */
YYSYMBOL_sort_clause = 1099, /* sort_clause */
YYSYMBOL_sortby_list = 1100, /* sortby_list */
YYSYMBOL_sortby = 1101, /* sortby */
YYSYMBOL_select_limit = 1102, /* select_limit */
YYSYMBOL_opt_select_limit = 1103, /* opt_select_limit */
YYSYMBOL_limit_clause = 1104, /* limit_clause */
YYSYMBOL_offset_clause = 1105, /* offset_clause */
YYSYMBOL_select_limit_value = 1106, /* select_limit_value */
YYSYMBOL_select_offset_value = 1107, /* select_offset_value */
YYSYMBOL_select_fetch_first_value = 1108, /* select_fetch_first_value */
YYSYMBOL_I_or_F_const = 1109, /* I_or_F_const */
YYSYMBOL_row_or_rows = 1110, /* row_or_rows */
YYSYMBOL_first_or_next = 1111, /* first_or_next */
YYSYMBOL_group_clause = 1112, /* group_clause */
YYSYMBOL_group_by_list = 1113, /* group_by_list */
YYSYMBOL_group_by_item = 1114, /* group_by_item */
YYSYMBOL_empty_grouping_set = 1115, /* empty_grouping_set */
YYSYMBOL_rollup_clause = 1116, /* rollup_clause */
YYSYMBOL_cube_clause = 1117, /* cube_clause */
YYSYMBOL_grouping_sets_clause = 1118, /* grouping_sets_clause */
YYSYMBOL_having_clause = 1119, /* having_clause */
YYSYMBOL_for_locking_clause = 1120, /* for_locking_clause */
YYSYMBOL_opt_for_locking_clause = 1121, /* opt_for_locking_clause */
YYSYMBOL_for_locking_items = 1122, /* for_locking_items */
YYSYMBOL_for_locking_item = 1123, /* for_locking_item */
YYSYMBOL_for_locking_strength = 1124, /* for_locking_strength */
YYSYMBOL_locked_rels_list = 1125, /* locked_rels_list */
YYSYMBOL_values_clause = 1126, /* values_clause */
YYSYMBOL_from_clause = 1127, /* from_clause */
YYSYMBOL_from_list = 1128, /* from_list */
YYSYMBOL_table_ref = 1129, /* table_ref */
YYSYMBOL_joined_table = 1130, /* joined_table */
YYSYMBOL_alias_clause = 1131, /* alias_clause */
YYSYMBOL_opt_alias_clause = 1132, /* opt_alias_clause */
YYSYMBOL_opt_alias_clause_for_join_using = 1133, /* opt_alias_clause_for_join_using */
YYSYMBOL_func_alias_clause = 1134, /* func_alias_clause */
YYSYMBOL_join_type = 1135, /* join_type */
YYSYMBOL_opt_outer = 1136, /* opt_outer */
YYSYMBOL_join_qual = 1137, /* join_qual */
YYSYMBOL_relation_expr = 1138, /* relation_expr */
YYSYMBOL_extended_relation_expr = 1139, /* extended_relation_expr */
YYSYMBOL_relation_expr_list = 1140, /* relation_expr_list */
YYSYMBOL_relation_expr_opt_alias = 1141, /* relation_expr_opt_alias */
YYSYMBOL_tablesample_clause = 1142, /* tablesample_clause */
YYSYMBOL_opt_repeatable_clause = 1143, /* opt_repeatable_clause */
YYSYMBOL_func_table = 1144, /* func_table */
YYSYMBOL_rowsfrom_item = 1145, /* rowsfrom_item */
YYSYMBOL_rowsfrom_list = 1146, /* rowsfrom_list */
YYSYMBOL_opt_col_def_list = 1147, /* opt_col_def_list */
YYSYMBOL_opt_ordinality = 1148, /* opt_ordinality */
YYSYMBOL_where_clause = 1149, /* where_clause */
YYSYMBOL_where_or_current_clause = 1150, /* where_or_current_clause */
YYSYMBOL_OptTableFuncElementList = 1151, /* OptTableFuncElementList */
YYSYMBOL_TableFuncElementList = 1152, /* TableFuncElementList */
YYSYMBOL_TableFuncElement = 1153, /* TableFuncElement */
YYSYMBOL_xmltable = 1154, /* xmltable */
YYSYMBOL_xmltable_column_list = 1155, /* xmltable_column_list */
YYSYMBOL_xmltable_column_el = 1156, /* xmltable_column_el */
YYSYMBOL_xmltable_column_option_list = 1157, /* xmltable_column_option_list */
YYSYMBOL_xmltable_column_option_el = 1158, /* xmltable_column_option_el */
YYSYMBOL_xml_namespace_list = 1159, /* xml_namespace_list */
YYSYMBOL_xml_namespace_el = 1160, /* xml_namespace_el */
YYSYMBOL_Typename = 1161, /* Typename */
YYSYMBOL_opt_array_bounds = 1162, /* opt_array_bounds */
YYSYMBOL_SimpleTypename = 1163, /* SimpleTypename */
YYSYMBOL_ConstTypename = 1164, /* ConstTypename */
YYSYMBOL_GenericType = 1165, /* GenericType */
YYSYMBOL_opt_type_modifiers = 1166, /* opt_type_modifiers */
YYSYMBOL_Numeric = 1167, /* Numeric */
YYSYMBOL_opt_float = 1168, /* opt_float */
YYSYMBOL_Bit = 1169, /* Bit */
YYSYMBOL_ConstBit = 1170, /* ConstBit */
YYSYMBOL_BitWithLength = 1171, /* BitWithLength */
YYSYMBOL_BitWithoutLength = 1172, /* BitWithoutLength */
YYSYMBOL_Character = 1173, /* Character */
YYSYMBOL_ConstCharacter = 1174, /* ConstCharacter */
YYSYMBOL_CharacterWithLength = 1175, /* CharacterWithLength */
YYSYMBOL_CharacterWithoutLength = 1176, /* CharacterWithoutLength */
YYSYMBOL_character = 1177, /* character */
YYSYMBOL_opt_varying = 1178, /* opt_varying */
YYSYMBOL_ConstDatetime = 1179, /* ConstDatetime */
YYSYMBOL_ConstInterval = 1180, /* ConstInterval */
YYSYMBOL_opt_timezone = 1181, /* opt_timezone */
YYSYMBOL_opt_interval = 1182, /* opt_interval */
YYSYMBOL_interval_second = 1183, /* interval_second */
YYSYMBOL_a_expr = 1184, /* a_expr */
YYSYMBOL_b_expr = 1185, /* b_expr */
YYSYMBOL_c_expr = 1186, /* c_expr */
YYSYMBOL_func_application = 1187, /* func_application */
YYSYMBOL_func_expr = 1188, /* func_expr */
YYSYMBOL_func_expr_windowless = 1189, /* func_expr_windowless */
YYSYMBOL_func_expr_common_subexpr = 1190, /* func_expr_common_subexpr */
YYSYMBOL_xml_root_version = 1191, /* xml_root_version */
YYSYMBOL_opt_xml_root_standalone = 1192, /* opt_xml_root_standalone */
YYSYMBOL_xml_attributes = 1193, /* xml_attributes */
YYSYMBOL_xml_attribute_list = 1194, /* xml_attribute_list */
YYSYMBOL_xml_attribute_el = 1195, /* xml_attribute_el */
YYSYMBOL_document_or_content = 1196, /* document_or_content */
YYSYMBOL_xml_indent_option = 1197, /* xml_indent_option */
YYSYMBOL_xml_whitespace_option = 1198, /* xml_whitespace_option */
YYSYMBOL_xmlexists_argument = 1199, /* xmlexists_argument */
YYSYMBOL_xml_passing_mech = 1200, /* xml_passing_mech */
YYSYMBOL_within_group_clause = 1201, /* within_group_clause */
YYSYMBOL_filter_clause = 1202, /* filter_clause */
YYSYMBOL_window_clause = 1203, /* window_clause */
YYSYMBOL_window_definition_list = 1204, /* window_definition_list */
YYSYMBOL_window_definition = 1205, /* window_definition */
YYSYMBOL_over_clause = 1206, /* over_clause */
YYSYMBOL_window_specification = 1207, /* window_specification */
YYSYMBOL_opt_existing_window_name = 1208, /* opt_existing_window_name */
YYSYMBOL_opt_partition_clause = 1209, /* opt_partition_clause */
YYSYMBOL_opt_frame_clause = 1210, /* opt_frame_clause */
YYSYMBOL_frame_extent = 1211, /* frame_extent */
YYSYMBOL_frame_bound = 1212, /* frame_bound */
YYSYMBOL_opt_window_exclusion_clause = 1213, /* opt_window_exclusion_clause */
YYSYMBOL_row = 1214, /* row */
YYSYMBOL_explicit_row = 1215, /* explicit_row */
YYSYMBOL_implicit_row = 1216, /* implicit_row */
YYSYMBOL_sub_type = 1217, /* sub_type */
YYSYMBOL_all_Op = 1218, /* all_Op */
YYSYMBOL_MathOp = 1219, /* MathOp */
YYSYMBOL_qual_Op = 1220, /* qual_Op */
YYSYMBOL_qual_all_Op = 1221, /* qual_all_Op */
YYSYMBOL_subquery_Op = 1222, /* subquery_Op */
YYSYMBOL_expr_list = 1223, /* expr_list */
YYSYMBOL_func_arg_list = 1224, /* func_arg_list */
YYSYMBOL_func_arg_expr = 1225, /* func_arg_expr */
YYSYMBOL_func_arg_list_opt = 1226, /* func_arg_list_opt */
YYSYMBOL_type_list = 1227, /* type_list */
YYSYMBOL_array_expr = 1228, /* array_expr */
YYSYMBOL_array_expr_list = 1229, /* array_expr_list */
YYSYMBOL_extract_list = 1230, /* extract_list */
YYSYMBOL_extract_arg = 1231, /* extract_arg */
YYSYMBOL_unicode_normal_form = 1232, /* unicode_normal_form */
YYSYMBOL_overlay_list = 1233, /* overlay_list */
YYSYMBOL_position_list = 1234, /* position_list */
YYSYMBOL_substr_list = 1235, /* substr_list */
YYSYMBOL_trim_list = 1236, /* trim_list */
YYSYMBOL_in_expr = 1237, /* in_expr */
YYSYMBOL_case_expr = 1238, /* case_expr */
YYSYMBOL_when_clause_list = 1239, /* when_clause_list */
YYSYMBOL_when_clause = 1240, /* when_clause */
YYSYMBOL_case_default = 1241, /* case_default */
YYSYMBOL_case_arg = 1242, /* case_arg */
YYSYMBOL_columnref = 1243, /* columnref */
YYSYMBOL_indirection_el = 1244, /* indirection_el */
YYSYMBOL_opt_slice_bound = 1245, /* opt_slice_bound */
YYSYMBOL_indirection = 1246, /* indirection */
YYSYMBOL_opt_indirection = 1247, /* opt_indirection */
YYSYMBOL_opt_asymmetric = 1248, /* opt_asymmetric */
YYSYMBOL_json_value_expr = 1249, /* json_value_expr */
YYSYMBOL_json_format_clause_opt = 1250, /* json_format_clause_opt */
YYSYMBOL_json_encoding_clause_opt = 1251, /* json_encoding_clause_opt */
YYSYMBOL_json_output_clause_opt = 1252, /* json_output_clause_opt */
YYSYMBOL_json_predicate_type_constraint = 1253, /* json_predicate_type_constraint */
YYSYMBOL_json_key_uniqueness_constraint_opt = 1254, /* json_key_uniqueness_constraint_opt */
YYSYMBOL_json_name_and_value_list = 1255, /* json_name_and_value_list */
YYSYMBOL_json_name_and_value = 1256, /* json_name_and_value */
YYSYMBOL_json_object_constructor_null_clause_opt = 1257, /* json_object_constructor_null_clause_opt */
YYSYMBOL_json_array_constructor_null_clause_opt = 1258, /* json_array_constructor_null_clause_opt */
YYSYMBOL_json_value_expr_list = 1259, /* json_value_expr_list */
YYSYMBOL_json_aggregate_func = 1260, /* json_aggregate_func */
YYSYMBOL_json_array_aggregate_order_by_clause_opt = 1261, /* json_array_aggregate_order_by_clause_opt */
YYSYMBOL_opt_target_list = 1262, /* opt_target_list */
YYSYMBOL_target_list = 1263, /* target_list */
YYSYMBOL_target_el = 1264, /* target_el */
YYSYMBOL_qualified_name_list = 1265, /* qualified_name_list */
YYSYMBOL_qualified_name = 1266, /* qualified_name */
YYSYMBOL_name_list = 1267, /* name_list */
YYSYMBOL_name = 1268, /* name */
YYSYMBOL_attr_name = 1269, /* attr_name */
YYSYMBOL_file_name = 1270, /* file_name */
YYSYMBOL_func_name = 1271, /* func_name */
YYSYMBOL_AexprConst = 1272, /* AexprConst */
YYSYMBOL_Iconst = 1273, /* Iconst */
YYSYMBOL_SignedIconst = 1274, /* SignedIconst */
YYSYMBOL_RoleId = 1275, /* RoleId */
YYSYMBOL_RoleSpec = 1276, /* RoleSpec */
YYSYMBOL_role_list = 1277, /* role_list */
YYSYMBOL_NonReservedWord = 1278, /* NonReservedWord */
YYSYMBOL_BareColLabel = 1279, /* BareColLabel */
YYSYMBOL_unreserved_keyword = 1280, /* unreserved_keyword */
YYSYMBOL_col_name_keyword = 1281, /* col_name_keyword */
YYSYMBOL_type_func_name_keyword = 1282, /* type_func_name_keyword */
YYSYMBOL_reserved_keyword = 1283, /* reserved_keyword */
YYSYMBOL_bare_label_keyword = 1284, /* bare_label_keyword */
YYSYMBOL_statements = 1285, /* statements */
YYSYMBOL_statement = 1286, /* statement */
YYSYMBOL_CreateAsStmt = 1287, /* CreateAsStmt */
YYSYMBOL_1288_1 = 1288, /* $@1 */
YYSYMBOL_1289_2 = 1289, /* $@2 */
YYSYMBOL_at = 1290, /* at */
YYSYMBOL_ECPGConnect = 1291, /* ECPGConnect */
YYSYMBOL_connection_target = 1292, /* connection_target */
YYSYMBOL_opt_database_name = 1293, /* opt_database_name */
YYSYMBOL_db_prefix = 1294, /* db_prefix */
YYSYMBOL_server = 1295, /* server */
YYSYMBOL_opt_server = 1296, /* opt_server */
YYSYMBOL_server_name = 1297, /* server_name */
YYSYMBOL_opt_port = 1298, /* opt_port */
YYSYMBOL_opt_connection_name = 1299, /* opt_connection_name */
YYSYMBOL_opt_user = 1300, /* opt_user */
YYSYMBOL_ora_user = 1301, /* ora_user */
YYSYMBOL_user_name = 1302, /* user_name */
YYSYMBOL_char_variable = 1303, /* char_variable */
YYSYMBOL_opt_options = 1304, /* opt_options */
YYSYMBOL_connect_options = 1305, /* connect_options */
YYSYMBOL_opt_opt_value = 1306, /* opt_opt_value */
YYSYMBOL_prepared_name = 1307, /* prepared_name */
YYSYMBOL_ECPGDeclareStmt = 1308, /* ECPGDeclareStmt */
YYSYMBOL_ECPGCursorStmt = 1309, /* ECPGCursorStmt */
YYSYMBOL_ECPGExecuteImmediateStmt = 1310, /* ECPGExecuteImmediateStmt */
YYSYMBOL_ECPGVarDeclaration = 1311, /* ECPGVarDeclaration */
YYSYMBOL_single_vt_declaration = 1312, /* single_vt_declaration */
YYSYMBOL_precision = 1313, /* precision */
YYSYMBOL_opt_scale = 1314, /* opt_scale */
YYSYMBOL_ecpg_interval = 1315, /* ecpg_interval */
YYSYMBOL_ECPGDeclaration = 1316, /* ECPGDeclaration */
YYSYMBOL_1317_3 = 1317, /* $@3 */
YYSYMBOL_sql_startdeclare = 1318, /* sql_startdeclare */
YYSYMBOL_sql_enddeclare = 1319, /* sql_enddeclare */
YYSYMBOL_var_type_declarations = 1320, /* var_type_declarations */
YYSYMBOL_vt_declarations = 1321, /* vt_declarations */
YYSYMBOL_variable_declarations = 1322, /* variable_declarations */
YYSYMBOL_type_declaration = 1323, /* type_declaration */
YYSYMBOL_1324_4 = 1324, /* $@4 */
YYSYMBOL_var_declaration = 1325, /* var_declaration */
YYSYMBOL_1326_5 = 1326, /* $@5 */
YYSYMBOL_1327_6 = 1327, /* $@6 */
YYSYMBOL_opt_bit_field = 1328, /* opt_bit_field */
YYSYMBOL_storage_declaration = 1329, /* storage_declaration */
YYSYMBOL_storage_clause = 1330, /* storage_clause */
YYSYMBOL_storage_modifier = 1331, /* storage_modifier */
YYSYMBOL_var_type = 1332, /* var_type */
YYSYMBOL_enum_type = 1333, /* enum_type */
YYSYMBOL_enum_definition = 1334, /* enum_definition */
YYSYMBOL_struct_union_type_with_symbol = 1335, /* struct_union_type_with_symbol */
YYSYMBOL_1336_7 = 1336, /* $@7 */
YYSYMBOL_struct_union_type = 1337, /* struct_union_type */
YYSYMBOL_1338_8 = 1338, /* $@8 */
YYSYMBOL_s_struct_union_symbol = 1339, /* s_struct_union_symbol */
YYSYMBOL_s_struct_union = 1340, /* s_struct_union */
YYSYMBOL_simple_type = 1341, /* simple_type */
YYSYMBOL_unsigned_type = 1342, /* unsigned_type */
YYSYMBOL_signed_type = 1343, /* signed_type */
YYSYMBOL_opt_signed = 1344, /* opt_signed */
YYSYMBOL_variable_list = 1345, /* variable_list */
YYSYMBOL_variable = 1346, /* variable */
YYSYMBOL_opt_initializer = 1347, /* opt_initializer */
YYSYMBOL_opt_pointer = 1348, /* opt_pointer */
YYSYMBOL_ECPGDeclare = 1349, /* ECPGDeclare */
YYSYMBOL_ECPGDisconnect = 1350, /* ECPGDisconnect */
YYSYMBOL_dis_name = 1351, /* dis_name */
YYSYMBOL_connection_object = 1352, /* connection_object */
YYSYMBOL_execstring = 1353, /* execstring */
YYSYMBOL_ECPGFree = 1354, /* ECPGFree */
YYSYMBOL_ECPGOpen = 1355, /* ECPGOpen */
YYSYMBOL_opt_ecpg_using = 1356, /* opt_ecpg_using */
YYSYMBOL_ecpg_using = 1357, /* ecpg_using */
YYSYMBOL_using_descriptor = 1358, /* using_descriptor */
YYSYMBOL_into_descriptor = 1359, /* into_descriptor */
YYSYMBOL_into_sqlda = 1360, /* into_sqlda */
YYSYMBOL_using_list = 1361, /* using_list */
YYSYMBOL_UsingValue = 1362, /* UsingValue */
YYSYMBOL_UsingConst = 1363, /* UsingConst */
YYSYMBOL_ECPGDescribe = 1364, /* ECPGDescribe */
YYSYMBOL_opt_output = 1365, /* opt_output */
YYSYMBOL_ECPGAllocateDescr = 1366, /* ECPGAllocateDescr */
YYSYMBOL_ECPGDeallocateDescr = 1367, /* ECPGDeallocateDescr */
YYSYMBOL_ECPGGetDescriptorHeader = 1368, /* ECPGGetDescriptorHeader */
YYSYMBOL_ECPGGetDescHeaderItems = 1369, /* ECPGGetDescHeaderItems */
YYSYMBOL_ECPGGetDescHeaderItem = 1370, /* ECPGGetDescHeaderItem */
YYSYMBOL_ECPGSetDescriptorHeader = 1371, /* ECPGSetDescriptorHeader */
YYSYMBOL_ECPGSetDescHeaderItems = 1372, /* ECPGSetDescHeaderItems */
YYSYMBOL_ECPGSetDescHeaderItem = 1373, /* ECPGSetDescHeaderItem */
YYSYMBOL_IntConstVar = 1374, /* IntConstVar */
YYSYMBOL_desc_header_item = 1375, /* desc_header_item */
YYSYMBOL_ECPGGetDescriptor = 1376, /* ECPGGetDescriptor */
YYSYMBOL_ECPGGetDescItems = 1377, /* ECPGGetDescItems */
YYSYMBOL_ECPGGetDescItem = 1378, /* ECPGGetDescItem */
YYSYMBOL_ECPGSetDescriptor = 1379, /* ECPGSetDescriptor */
YYSYMBOL_ECPGSetDescItems = 1380, /* ECPGSetDescItems */
YYSYMBOL_ECPGSetDescItem = 1381, /* ECPGSetDescItem */
YYSYMBOL_AllConstVar = 1382, /* AllConstVar */
YYSYMBOL_descriptor_item = 1383, /* descriptor_item */
YYSYMBOL_ECPGSetAutocommit = 1384, /* ECPGSetAutocommit */
YYSYMBOL_on_off = 1385, /* on_off */
YYSYMBOL_ECPGSetConnection = 1386, /* ECPGSetConnection */
YYSYMBOL_ECPGTypedef = 1387, /* ECPGTypedef */
YYSYMBOL_1388_9 = 1388, /* $@9 */
YYSYMBOL_opt_reference = 1389, /* opt_reference */
YYSYMBOL_ECPGVar = 1390, /* ECPGVar */
YYSYMBOL_1391_10 = 1391, /* $@10 */
YYSYMBOL_ECPGWhenever = 1392, /* ECPGWhenever */
YYSYMBOL_action = 1393, /* action */
YYSYMBOL_ECPGKeywords = 1394, /* ECPGKeywords */
YYSYMBOL_ECPGKeywords_vanames = 1395, /* ECPGKeywords_vanames */
YYSYMBOL_ECPGKeywords_rest = 1396, /* ECPGKeywords_rest */
YYSYMBOL_ECPGTypeName = 1397, /* ECPGTypeName */
YYSYMBOL_symbol = 1398, /* symbol */
YYSYMBOL_ECPGColId = 1399, /* ECPGColId */
YYSYMBOL_ColId = 1400, /* ColId */
YYSYMBOL_type_function_name = 1401, /* type_function_name */
YYSYMBOL_ColLabel = 1402, /* ColLabel */
YYSYMBOL_ECPGColLabel = 1403, /* ECPGColLabel */
YYSYMBOL_ECPGCKeywords = 1404, /* ECPGCKeywords */
YYSYMBOL_all_unreserved_keyword = 1405, /* all_unreserved_keyword */
YYSYMBOL_ECPGunreserved_interval = 1406, /* ECPGunreserved_interval */
YYSYMBOL_into_list = 1407, /* into_list */
YYSYMBOL_ecpgstart = 1408, /* ecpgstart */
YYSYMBOL_c_args = 1409, /* c_args */
YYSYMBOL_coutputvariable = 1410, /* coutputvariable */
YYSYMBOL_civarind = 1411, /* civarind */
YYSYMBOL_char_civar = 1412, /* char_civar */
YYSYMBOL_civar = 1413, /* civar */
YYSYMBOL_indicator = 1414, /* indicator */
YYSYMBOL_cvariable = 1415, /* cvariable */
YYSYMBOL_ecpg_param = 1416, /* ecpg_param */
YYSYMBOL_ecpg_bconst = 1417, /* ecpg_bconst */
YYSYMBOL_ecpg_fconst = 1418, /* ecpg_fconst */
YYSYMBOL_ecpg_sconst = 1419, /* ecpg_sconst */
YYSYMBOL_ecpg_xconst = 1420, /* ecpg_xconst */
YYSYMBOL_ecpg_ident = 1421, /* ecpg_ident */
YYSYMBOL_quoted_ident_stringvar = 1422, /* quoted_ident_stringvar */
YYSYMBOL_c_stuff_item = 1423, /* c_stuff_item */
YYSYMBOL_c_stuff = 1424, /* c_stuff */
YYSYMBOL_c_list = 1425, /* c_list */
YYSYMBOL_c_term = 1426, /* c_term */
YYSYMBOL_c_thing = 1427, /* c_thing */
YYSYMBOL_c_anything = 1428, /* c_anything */
YYSYMBOL_DeallocateStmt = 1429, /* DeallocateStmt */
YYSYMBOL_Iresult = 1430, /* Iresult */
YYSYMBOL_execute_rest = 1431, /* execute_rest */
YYSYMBOL_ecpg_into = 1432, /* ecpg_into */
YYSYMBOL_opt_ecpg_into = 1433, /* opt_ecpg_into */
YYSYMBOL_ecpg_fetch_into = 1434, /* ecpg_fetch_into */
YYSYMBOL_opt_ecpg_fetch_into = 1435 /* opt_ecpg_fetch_into */
};
typedef enum yysymbol_kind_t yysymbol_kind_t;
#ifdef short
# undef short
#endif
/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
and (if available) are included
so that the code can choose integer types of a good width. */
#ifndef __PTRDIFF_MAX__
# include /* INFRINGES ON USER NAME SPACE */
# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
# include /* INFRINGES ON USER NAME SPACE */
# define YY_STDINT_H
# endif
#endif
/* Narrow types that promote to a signed type and that can represent a
signed or unsigned integer of at least N bits. In tables they can
save space and decrease cache pressure. Promoting to a signed type
helps avoid bugs in integer arithmetic. */
#ifdef __INT_LEAST8_MAX__
typedef __INT_LEAST8_TYPE__ yytype_int8;
#elif defined YY_STDINT_H
typedef int_least8_t yytype_int8;
#else
typedef signed char yytype_int8;
#endif
#ifdef __INT_LEAST16_MAX__
typedef __INT_LEAST16_TYPE__ yytype_int16;
#elif defined YY_STDINT_H
typedef int_least16_t yytype_int16;
#else
typedef short yytype_int16;
#endif
/* Work around bug in HP-UX 11.23, which defines these macros
incorrectly for preprocessor constants. This workaround can likely
be removed in 2023, as HPE has promised support for HP-UX 11.23
(aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
. */
#ifdef __hpux
# undef UINT_LEAST8_MAX
# undef UINT_LEAST16_MAX
# define UINT_LEAST8_MAX 255
# define UINT_LEAST16_MAX 65535
#endif
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
&& UINT_LEAST8_MAX <= INT_MAX)
typedef uint_least8_t yytype_uint8;
#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
typedef unsigned char yytype_uint8;
#else
typedef short yytype_uint8;
#endif
#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
typedef __UINT_LEAST16_TYPE__ yytype_uint16;
#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
&& UINT_LEAST16_MAX <= INT_MAX)
typedef uint_least16_t yytype_uint16;
#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
typedef unsigned short yytype_uint16;
#else
typedef int yytype_uint16;
#endif
#ifndef YYPTRDIFF_T
# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
# define YYPTRDIFF_T __PTRDIFF_TYPE__
# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
# elif defined PTRDIFF_MAX
# ifndef ptrdiff_t
# include /* INFRINGES ON USER NAME SPACE */
# endif
# define YYPTRDIFF_T ptrdiff_t
# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
# else
# define YYPTRDIFF_T long
# define YYPTRDIFF_MAXIMUM LONG_MAX
# endif
#endif
#ifndef YYSIZE_T
# ifdef __SIZE_TYPE__
# define YYSIZE_T __SIZE_TYPE__
# elif defined size_t
# define YYSIZE_T size_t
# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
# include /* INFRINGES ON USER NAME SPACE */
# define YYSIZE_T size_t
# else
# define YYSIZE_T unsigned
# endif
#endif
#define YYSIZE_MAXIMUM \
YY_CAST (YYPTRDIFF_T, \
(YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \
? YYPTRDIFF_MAXIMUM \
: YY_CAST (YYSIZE_T, -1)))
#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
/* Stored state numbers (used for stacks). */
typedef yytype_int16 yy_state_t;
/* State numbers in computations. */
typedef int yy_state_fast_t;
#ifndef YY_
# if defined YYENABLE_NLS && YYENABLE_NLS
# if ENABLE_NLS
# include /* INFRINGES ON USER NAME SPACE */
# define YY_(Msgid) dgettext ("bison-runtime", Msgid)
# endif
# endif
# ifndef YY_
# define YY_(Msgid) Msgid
# endif
#endif
#ifndef YY_ATTRIBUTE_PURE
# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
# else
# define YY_ATTRIBUTE_PURE
# endif
#endif
#ifndef YY_ATTRIBUTE_UNUSED
# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
# else
# define YY_ATTRIBUTE_UNUSED
# endif
#endif
/* Suppress unused-variable warnings by "using" E. */
#if ! defined lint || defined __GNUC__
# define YY_USE(E) ((void) (E))
#else
# define YY_USE(E) /* empty */
#endif
#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
/* Suppress an incorrect diagnostic about yylval being uninitialized. */
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
_Pragma ("GCC diagnostic push") \
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
_Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
_Pragma ("GCC diagnostic pop")
#else
# define YY_INITIAL_VALUE(Value) Value
#endif
#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
# define YY_IGNORE_MAYBE_UNINITIALIZED_END
#endif
#ifndef YY_INITIAL_VALUE
# define YY_INITIAL_VALUE(Value) /* Nothing. */
#endif
#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
# define YY_IGNORE_USELESS_CAST_BEGIN \
_Pragma ("GCC diagnostic push") \
_Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
# define YY_IGNORE_USELESS_CAST_END \
_Pragma ("GCC diagnostic pop")
#endif
#ifndef YY_IGNORE_USELESS_CAST_BEGIN
# define YY_IGNORE_USELESS_CAST_BEGIN
# define YY_IGNORE_USELESS_CAST_END
#endif
#define YY_ASSERT(E) ((void) (0 && (E)))
#if !defined yyoverflow
/* The parser invokes alloca or malloc; define the necessary symbols. */
# ifdef YYSTACK_USE_ALLOCA
# if YYSTACK_USE_ALLOCA
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
# elif defined __BUILTIN_VA_ARG_INCR
# include /* INFRINGES ON USER NAME SPACE */
# elif defined _AIX
# define YYSTACK_ALLOC __alloca
# elif defined _MSC_VER
# include /* INFRINGES ON USER NAME SPACE */
# define alloca _alloca
# else
# define YYSTACK_ALLOC alloca
# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
# include /* INFRINGES ON USER NAME SPACE */
/* Use EXIT_SUCCESS as a witness for stdlib.h. */
# ifndef EXIT_SUCCESS
# define EXIT_SUCCESS 0
# endif
# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
/* Pacify GCC's 'empty if-body' warning. */
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
# ifndef YYSTACK_ALLOC_MAXIMUM
/* The OS might guarantee only one guard page at the bottom of the stack,
and a page size can be as small as 4096 bytes. So we cannot safely
invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
to allow for a few compiler-allocated temporary stack slots. */
# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
# endif
# else
# define YYSTACK_ALLOC YYMALLOC
# define YYSTACK_FREE YYFREE
# ifndef YYSTACK_ALLOC_MAXIMUM
# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
# endif
# if (defined __cplusplus && ! defined EXIT_SUCCESS \
&& ! ((defined YYMALLOC || defined malloc) \
&& (defined YYFREE || defined free)))
# include /* INFRINGES ON USER NAME SPACE */
# ifndef EXIT_SUCCESS
# define EXIT_SUCCESS 0
# endif
# endif
# ifndef YYMALLOC
# define YYMALLOC malloc
# if ! defined malloc && ! defined EXIT_SUCCESS
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
# ifndef YYFREE
# define YYFREE free
# if ! defined free && ! defined EXIT_SUCCESS
void free (void *); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
# endif
#endif /* !defined yyoverflow */
#if (! defined yyoverflow \
&& (! defined __cplusplus \
|| (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
&& defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
yy_state_t yyss_alloc;
YYSTYPE yyvs_alloc;
YYLTYPE yyls_alloc;
};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE) \
+ YYSIZEOF (YYLTYPE)) \
+ 2 * YYSTACK_GAP_MAXIMUM)
# define YYCOPY_NEEDED 1
/* Relocate STACK from its old location to the new one. The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
do \
{ \
YYPTRDIFF_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / YYSIZEOF (*yyptr); \
} \
while (0)
#endif
#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
/* Copy COUNT objects from SRC to DST. The source and destination do
not overlap. */
# ifndef YYCOPY
# if defined __GNUC__ && 1 < __GNUC__
# define YYCOPY(Dst, Src, Count) \
__builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
# else
# define YYCOPY(Dst, Src, Count) \
do \
{ \
YYPTRDIFF_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while (0)
# endif
# endif
#endif /* !YYCOPY_NEEDED */
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 3
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 153253
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 591
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 845
/* YYNRULES -- Number of rules. */
#define YYNRULES 3751
/* YYNSTATES -- Number of states. */
#define YYNSTATES 6864
/* YYMAXUTOK -- Last valid token kind. */
#define YYMAXUTOK 826
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
as returned by yylex, with out-of-bounds checking. */
#define YYTRANSLATE(YYX) \
(0 <= (YYX) && (YYX) <= YYMAXUTOK \
? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \
: YYSYMBOL_YYUNDEF)
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
as returned by yylex. */
static const yytype_int16 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 578, 2, 2,
583, 584, 576, 574, 586, 575, 585, 577, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 588, 587,
571, 573, 572, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 581, 2, 582, 579, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 589, 2, 590, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
565, 566, 567, 568, 569, 570, 580
};
#if YYDEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_int16 yyrline[] =
{
0, 1698, 1698, 1701, 1705, 1715, 1717, 1719, 1721, 1723,
1725, 1727, 1729, 1731, 1733, 1735, 1737, 1739, 1741, 1743,
1745, 1747, 1749, 1751, 1753, 1755, 1757, 1759, 1761, 1763,
1765, 1767, 1769, 1771, 1773, 1775, 1777, 1779, 1781, 1783,
1785, 1803, 1805, 1807, 1809, 1811, 1813, 1815, 1817, 1819,
1821, 1823, 1825, 1827, 1829, 1831, 1833, 1835, 1837, 1839,
1841, 1843, 1845, 1847, 1849, 1851, 1853, 1855, 1857, 1859,
1861, 1863, 1865, 1867, 1869, 1871, 1873, 1875, 1879, 1881,
1883, 1885, 1887, 1889, 1891, 1893, 1895, 1897, 1899, 1901,
1903, 1905, 1907, 1909, 1911, 1935, 1937, 1939, 1941, 1943,
1945, 1947, 1949, 1951, 1953, 1955, 1957, 1959, 1961, 1989,
1991, 1993, 1995, 1997, 1999, 2001, 2003, 2005, 2007, 2009,
2011, 2017, 2019, 2021, 2023, 2025, 2027, 2029, 2031, 2033,
2039, 2049, 2053, 2057, 2063, 2067, 2079, 2089, 2090, 2104,
2111, 2117, 2128, 2134, 2143, 2150, 2156, 2165, 2172, 2180,
2185, 2190, 2196, 2201, 2207, 2212, 2218, 2222, 2227, 2233,
2241, 2249, 2253, 2258, 2264, 2269, 2275, 2280, 2286, 2290,
2294, 2298, 2303, 2307, 2311, 2315, 2319, 2327, 2331, 2335,
2339, 2343, 2347, 2355, 2363, 2367, 2376, 2378, 2386, 2390,
2394, 2398, 2406, 2410, 2414, 2418, 2422, 2426, 2434, 2442,
2450, 2454, 2462, 2466, 2470, 2474, 2482, 2487, 2493, 2497,
2501, 2505, 2509, 2513, 2521, 2525, 2529, 2537, 2541, 2545,
2553, 2557, 2561, 2565, 2573, 2577, 2581, 2585, 2590, 2594,
2598, 2602, 2606, 2610, 2614, 2622, 2626, 2634, 2638, 2646,
2650, 2664, 2668, 2672, 2676, 2684, 2688, 2692, 2696, 2704,
2708, 2712, 2716, 2720, 2724, 2728, 2736, 2740, 2745, 2751,
2755, 2763, 2771, 2775, 2779, 2783, 2791, 2795, 2803, 2807,
2815, 2819, 2827, 2831, 2835, 2839, 2843, 2852, 2860, 2864,
2872, 2876, 2884, 2892, 2896, 2900, 2904, 2908, 2916, 2920,
2924, 2928, 2932, 2936, 2940, 2944, 2948, 2952, 2956, 2960,
2964, 2968, 2972, 2976, 2980, 2984, 2988, 2992, 2996, 3004,
3008, 3016, 3020, 3024, 3032, 3040, 3044, 3048, 3052, 3056,
3060, 3064, 3068, 3072, 3076, 3080, 3084, 3088, 3092, 3096,
3100, 3104, 3108, 3112, 3116, 3120, 3124, 3128, 3132, 3136,
3140, 3144, 3148, 3152, 3156, 3160, 3164, 3168, 3172, 3176,
3180, 3184, 3188, 3192, 3196, 3200, 3204, 3208, 3212, 3216,
3220, 3224, 3228, 3232, 3236, 3240, 3244, 3248, 3252, 3256,
3260, 3264, 3268, 3272, 3276, 3284, 3288, 3296, 3301, 3307,
3312, 3318, 3322, 3326, 3330, 3338, 3346, 3351, 3357, 3361,
3369, 3373, 3377, 3381, 3389, 3393, 3401, 3405, 3409, 3413,
3421, 3425, 3429, 3433, 3441, 3449, 3453, 3461, 3469, 3473,
3481, 3485, 3489, 3493, 3501, 3517, 3525, 3533, 3541, 3545,
3553, 3558, 3564, 3568, 3572, 3580, 3584, 3592, 3597, 3603,
3607, 3611, 3615, 3619, 3623, 3627, 3631, 3635, 3639, 3643,
3647, 3651, 3659, 3664, 3670, 3675, 3681, 3686, 3692, 3696,
3704, 3712, 3716, 3720, 3724, 3729, 3735, 3739, 3747, 3755,
3759, 3763, 3767, 3771, 3775, 3783, 3787, 3791, 3795, 3799,
3803, 3807, 3812, 3818, 3823, 3829, 3834, 3840, 3844, 3852,
3856, 3864, 3868, 3872, 3880, 3884, 3892, 3900, 3904, 3912,
3916, 3924, 3929, 3935, 3939, 3947, 3952, 3958, 3963, 3969,
3973, 3977, 3981, 3989, 3993, 3997, 4001, 4005, 4009, 4013,
4017, 4021, 4029, 4033, 4038, 4044, 4048, 4056, 4060, 4064,
4068, 4076, 4084, 4088, 4093, 4099, 4103, 4107, 4111, 4115,
4119, 4123, 4127, 4131, 4135, 4143, 4147, 4155, 4159, 4163,
4167, 4171, 4175, 4179, 4187, 4192, 4198, 4203, 4209, 4213,
4221, 4229, 4234, 4240, 4244, 4249, 4254, 4260, 4264, 4272,
4276, 4284, 4289, 4295, 4299, 4303, 4307, 4312, 4318, 4326,
4334, 4338, 4342, 4346, 4350, 4358, 4363, 4369, 4374, 4380,
4388, 4392, 4400, 4404, 4408, 4416, 4421, 4427, 4431, 4436,
4442, 4446, 4450, 4455, 4461, 4466, 4472, 4477, 4483, 4491,
4495, 4503, 4507, 4515, 4519, 4523, 4531, 4535, 4543, 4551,
4555, 4560, 4566, 4570, 4578, 4586, 4591, 4597, 4605, 4609,
4617, 4621, 4629, 4634, 4640, 4645, 4651, 4655, 4663, 4667,
4671, 4675, 4679, 4683, 4687, 4691, 4695, 4699, 4703, 4707,
4711, 4715, 4723, 4728, 4734, 4738, 4742, 4746, 4754, 4758,
4766, 4770, 4778, 4783, 4789, 4793, 4801, 4806, 4812, 4816,
4824, 4829, 4835, 4840, 4846, 4854, 4859, 4865, 4869, 4877,
4881, 4889, 4894, 4900, 4904, 4908, 4913, 4921, 4929, 4934,
4940, 4948, 4952, 4956, 4960, 4964, 4968, 4972, 4976, 4980,
4984, 4988, 4992, 4996, 5004, 5012, 5016, 5020, 5024, 5032,
5036, 5044, 5049, 5055, 5059, 5067, 5072, 5078, 5082, 5090,
5098, 5102, 5110, 5114, 5118, 5122, 5130, 5138, 5146, 5154,
5158, 5166, 5171, 5177, 5181, 5189, 5194, 5200, 5204, 5208,
5216, 5220, 5224, 5228, 5236, 5244, 5248, 5256, 5261, 5267,
5271, 5279, 5283, 5291, 5295, 5303, 5311, 5319, 5327, 5332,
5338, 5343, 5349, 5354, 5360, 5365, 5371, 5376, 5382, 5387,
5393, 5397, 5401, 5405, 5409, 5417, 5425, 5429, 5437, 5441,
5449, 5453, 5457, 5465, 5469, 5477, 5481, 5485, 5489, 5493,
5501, 5506, 5512, 5516, 5524, 5532, 5536, 5544, 5548, 5556,
5564, 5569, 5575, 5580, 5586, 5590, 5598, 5603, 5609, 5613,
5621, 5625, 5630, 5636, 5640, 5644, 5648, 5656, 5661, 5668,
5670, 5678, 5682, 5686, 5690, 5694, 5698, 5706, 5710, 5718,
5722, 5730, 5738, 5742, 5750, 5758, 5762, 5766, 5770, 5778,
5787, 5791, 5795, 5799, 5803, 5807, 5811, 5815, 5819, 5823,
5827, 5831, 5835, 5839, 5843, 5847, 5855, 5863, 5867, 5875,
5879, 5887, 5891, 5895, 5899, 5903, 5907, 5915, 5923, 5927,
5935, 5943, 5948, 5954, 5958, 5966, 5970, 5974, 5978, 5986,
5991, 5997, 6005, 6009, 6017, 6021, 6025, 6029, 6033, 6041,
6046, 6052, 6057, 6063, 6067, 6072, 6078, 6084, 6090, 6098,
6102, 6110, 6114, 6122, 6126, 6134, 6138, 6146, 6150, 6158,
6166, 6174, 6178, 6182, 6186, 6190, 6194, 6198, 6202, 6206,
6210, 6214, 6218, 6226, 6230, 6234, 6238, 6242, 6246, 6250,
6254, 6258, 6262, 6266, 6270, 6274, 6282, 6286, 6290, 6294,
6298, 6306, 6310, 6314, 6318, 6322, 6326, 6330, 6334, 6342,
6346, 6350, 6358, 6362, 6370, 6374, 6382, 6386, 6394, 6398,
6406, 6414, 6418, 6423, 6429, 6433, 6437, 6441, 6445, 6449,
6453, 6457, 6461, 6465, 6469, 6473, 6477, 6481, 6485, 6489,
6493, 6497, 6505, 6509, 6517, 6521, 6525, 6529, 6533, 6537,
6541, 6545, 6549, 6553, 6561, 6566, 6572, 6576, 6584, 6588,
6592, 6596, 6605, 6614, 6623, 6632, 6641, 6650, 6659, 6672,
6686, 6700, 6714, 6728, 6742, 6756, 6775, 6794, 6813, 6827,
6846, 6860, 6879, 6897, 6901, 6909, 6914, 6920, 6928, 6932,
6940, 6944, 6948, 6952, 6956, 6964, 6968, 6976, 6980, 6984,
6988, 6992, 7000, 7004, 7012, 7016, 7024, 7028, 7032, 7036,
7040, 7044, 7048, 7052, 7056, 7060, 7064, 7068, 7072, 7076,
7080, 7084, 7088, 7092, 7096, 7100, 7104, 7112, 7116, 7124,
7128, 7136, 7141, 7147, 7151, 7159, 7163, 7171, 7175, 7183,
7191, 7195, 7199, 7207, 7212, 7218, 7226, 7231, 7237, 7241,
7245, 7253, 7257, 7261, 7269, 7273, 7277, 7281, 7285, 7289,
7297, 7301, 7309, 7314, 7320, 7325, 7331, 7335, 7343, 7347,
7355, 7359, 7363, 7371, 7376, 7382, 7386, 7394, 7399, 7405,
7409, 7414, 7420, 7424, 7429, 7435, 7439, 7443, 7447, 7455,
7460, 7466, 7470, 7478, 7482, 7490, 7494, 7502, 7506, 7510,
7514, 7522, 7526, 7534, 7538, 7546, 7550, 7554, 7558, 7562,
7570, 7574, 7578, 7582, 7586, 7594, 7602, 7610, 7614, 7618,
7626, 7630, 7634, 7642, 7650, 7654, 7658, 7662, 7670, 7674,
7682, 7690, 7694, 7702, 7707, 7713, 7717, 7725, 7729, 7733,
7737, 7741, 7745, 7749, 7753, 7757, 7761, 7765, 7769, 7773,
7777, 7781, 7785, 7789, 7797, 7801, 7805, 7809, 7813, 7821,
7825, 7833, 7841, 7845, 7850, 7856, 7861, 7867, 7871, 7879,
7883, 7891, 7896, 7902, 7910, 7914, 7922, 7926, 7930, 7938,
7942, 7950, 7955, 7961, 7965, 7969, 7973, 7977, 7981, 7989,
7993, 8001, 8005, 8013, 8017, 8021, 8025, 8033, 8037, 8045,
8049, 8057, 8065, 8073, 8077, 8085, 8089, 8097, 8101, 8105,
8113, 8117, 8122, 8128, 8136, 8141, 8147, 8155, 8159, 8163,
8167, 8175, 8183, 8187, 8191, 8199, 8203, 8211, 8215, 8223,
8228, 8234, 8238, 8246, 8250, 8254, 8258, 8262, 8266, 8270,
8274, 8278, 8282, 8286, 8290, 8294, 8298, 8302, 8306, 8310,
8314, 8318, 8322, 8326, 8330, 8334, 8338, 8342, 8346, 8350,
8354, 8358, 8362, 8366, 8370, 8374, 8378, 8382, 8386, 8390,
8394, 8398, 8402, 8406, 8410, 8414, 8418, 8422, 8426, 8430,
8434, 8438, 8442, 8446, 8450, 8454, 8458, 8462, 8470, 8475,
8481, 8486, 8492, 8496, 8500, 8504, 8508, 8512, 8520, 8525,
8531, 8535, 8539, 8543, 8547, 8551, 8555, 8559, 8563, 8567,
8571, 8575, 8579, 8583, 8587, 8591, 8595, 8599, 8603, 8607,
8611, 8615, 8619, 8623, 8627, 8631, 8635, 8643, 8651, 8655,
8663, 8667, 8675, 8679, 8683, 8687, 8691, 8699, 8707, 8711,
8715, 8719, 8723, 8727, 8731, 8735, 8739, 8743, 8747, 8751,
8755, 8759, 8763, 8767, 8771, 8775, 8779, 8783, 8787, 8791,
8795, 8799, 8807, 8811, 8815, 8823, 8827, 8831, 8835, 8839,
8843, 8847, 8855, 8859, 8867, 8871, 8875, 8879, 8887, 8895,
8899, 8903, 8907, 8911, 8915, 8919, 8923, 8927, 8935, 8939,
8947, 8955, 8959, 8963, 8971, 8975, 8983, 8987, 8991, 8995,
8999, 9007, 9012, 9018, 9022, 9026, 9030, 9038, 9042, 9047,
9053, 9061, 9066, 9072, 9080, 9084, 9092, 9096, 9100, 9104,
9108, 9112, 9116, 9120, 9124, 9128, 9132, 9136, 9144, 9148,
9156, 9160, 9165, 9171, 9175, 9179, 9183, 9187, 9195, 9199,
9203, 9211, 9216, 9222, 9226, 9231, 9237, 9241, 9245, 9249,
9257, 9261, 9265, 9270, 9276, 9284, 9292, 9297, 9303, 9307,
9315, 9319, 9323, 9331, 9335, 9339, 9343, 9347, 9351, 9355,
9363, 9368, 9374, 9378, 9382, 9386, 9394, 9402, 9406, 9410,
9414, 9422, 9426, 9434, 9442, 9450, 9454, 9462, 9470, 9474,
9478, 9482, 9486, 9490, 9494, 9502, 9507, 9513, 9521, 9525,
9529, 9533, 9537, 9541, 9549, 9553, 9561, 9569, 9573, 9577,
9581, 9589, 9594, 9600, 9604, 9612, 9616, 9624, 9628, 9636,
9640, 9648, 9656, 9660, 9664, 9672, 9676, 9681, 9687, 9692,
9698, 9703, 9709, 9714, 9720, 9725, 9731, 9736, 9742, 9750,
9754, 9762, 9767, 9773, 9777, 9781, 9785, 9793, 9797, 9801,
9805, 9809, 9813, 9817, 9821, 9825, 9829, 9837, 9843, 9853,
9858, 9864, 9868, 9872, 9876, 9880, 9888, 9893, 9897, 9905,
9910, 9916, 9924, 9928, 9936, 9940, 9944, 9948, 9952, 9960,
9964, 9972, 9976, 9984, 9992, 9996, 10001, 10007, 10011, 10016,
10022, 10027, 10033, 10041, 10046, 10052, 10060, 10065, 10071, 10075,
10079, 10083, 10087, 10091, 10095, 10099, 10107, 10112, 10118, 10122,
10127, 10133, 10141, 10145, 10153, 10157, 10165, 10173, 10177, 10185,
10193, 10197, 10205, 10209, 10213, 10217, 10221, 10229, 10234, 10240,
10248, 10256, 10260, 10264, 10268, 10272, 10280, 10288, 10339, 10343,
10356, 10358, 10362, 10366, 10370, 10374, 10383, 10389, 10393, 10401,
10405, 10413, 10417, 10425, 10429, 10433, 10437, 10441, 10445, 10449,
10453, 10461, 10465, 10473, 10477, 10481, 10485, 10489, 10493, 10497,
10505, 10509, 10513, 10521, 10525, 10533, 10541, 10545, 10550, 10556,
10560, 10565, 10571, 10575, 10580, 10586, 10591, 10597, 10602, 10604,
10610, 10614, 10618, 10622, 10626, 10630, 10634, 10638, 10642, 10650,
10655, 10661, 10665, 10670, 10676, 10680, 10688, 10693, 10699, 10704,
10710, 10718, 10722, 10730, 10734, 10742, 10746, 10750, 10754, 10762,
10767, 10773, 10777, 10782, 10786, 10790, 10794, 10802, 10806, 10814,
10818, 10826, 10834, 10838, 10842, 10850, 10854, 10862, 10866, 10874,
10878, 10886, 10891, 10897, 10901, 10909, 10913, 10917, 10921, 10925,
10933, 10941, 10949, 10957, 10965, 10970, 10976, 10980, 10988, 10993,
10999, 11003, 11011, 11019, 11023, 11027, 11031, 11039, 11044, 11050,
11054, 11062, 11067, 11073, 11077, 11085, 11089, 11093, 11097, 11101,
11105, 11109, 11113, 11117, 11121, 11129, 11133, 11137, 11141, 11145,
11149, 11157, 11161, 11165, 11169, 11177, 11182, 11188, 11193, 11199,
11203, 11207, 11211, 11216, 11222, 11226, 11230, 11234, 11242, 11247,
11253, 11257, 11265, 11269, 11277, 11281, 11285, 11293, 11297, 11305,
11309, 11313, 11321, 11329, 11334, 11340, 11344, 11352, 11360, 11364,
11372, 11377, 11383, 11388, 11394, 11399, 11405, 11409, 11415, 11421,
11426, 11432, 11436, 11444, 11452, 11456, 11464, 11468, 11476, 11480,
11484, 11492, 11496, 11504, 11508, 11512, 11516, 11524, 11528, 11536,
11540, 11548, 11550, 11552, 11556, 11560, 11564, 11572, 11582, 11593,
11602, 11606, 11610, 11614, 11618, 11622, 11626, 11634, 11638, 11642,
11646, 11654, 11658, 11666, 11671, 11677, 11681, 11685, 11689, 11693,
11697, 11701, 11705, 11709, 11713, 11717, 11725, 11730, 11736, 11740,
11748, 11752, 11760, 11768, 11776, 11780, 11788, 11792, 11800, 11808,
11816, 11820, 11824, 11828, 11832, 11836, 11844, 11849, 11855, 11859,
11863, 11867, 11875, 11883, 11887, 11892, 11898, 11902, 11906, 11910,
11914, 11918, 11922, 11926, 11930, 11934, 11938, 11942, 11946, 11951,
11957, 11961, 11969, 11973, 11977, 11981, 11985, 11989, 11993, 11997,
12001, 12005, 12009, 12013, 12017, 12021, 12025, 12029, 12033, 12037,
12041, 12045, 12049, 12053, 12057, 12061, 12065, 12069, 12073, 12077,
12081, 12085, 12089, 12093, 12097, 12101, 12105, 12109, 12113, 12117,
12121, 12125, 12129, 12133, 12137, 12141, 12145, 12149, 12153, 12157,
12161, 12165, 12169, 12173, 12177, 12181, 12185, 12189, 12193, 12197,
12202, 12206, 12210, 12214, 12218, 12222, 12226, 12230, 12234, 12242,
12246, 12250, 12254, 12258, 12262, 12266, 12270, 12274, 12278, 12282,
12286, 12290, 12294, 12298, 12302, 12306, 12310, 12314, 12318, 12322,
12326, 12334, 12338, 12342, 12346, 12350, 12354, 12358, 12362, 12366,
12370, 12374, 12378, 12382, 12386, 12394, 12398, 12402, 12406, 12410,
12414, 12418, 12426, 12430, 12434, 12442, 12446, 12450, 12458, 12462,
12466, 12470, 12474, 12478, 12482, 12486, 12490, 12494, 12498, 12502,
12506, 12510, 12514, 12518, 12522, 12526, 12530, 12534, 12538, 12542,
12546, 12550, 12554, 12558, 12562, 12566, 12570, 12574, 12578, 12582,
12586, 12590, 12594, 12598, 12602, 12606, 12610, 12614, 12618, 12622,
12626, 12630, 12634, 12638, 12642, 12646, 12650, 12654, 12658, 12662,
12666, 12674, 12678, 12686, 12690, 12694, 12699, 12705, 12713, 12717,
12725, 12729, 12737, 12741, 12749, 12753, 12758, 12764, 12768, 12773,
12779, 12783, 12787, 12791, 12799, 12803, 12811, 12816, 12822, 12827,
12833, 12838, 12844, 12848, 12856, 12864, 12868, 12873, 12879, 12887,
12891, 12898, 12903, 12909, 12913, 12917, 12922, 12928, 12932, 12940,
12944, 12948, 12952, 12956, 12964, 12968, 12972, 12976, 12981, 12987,
12991, 12995, 13003, 13007, 13015, 13023, 13027, 13031, 13039, 13043,
13051, 13055, 13059, 13063, 13067, 13071, 13075, 13079, 13083, 13087,
13091, 13095, 13103, 13107, 13115, 13119, 13127, 13131, 13135, 13139,
13143, 13147, 13155, 13159, 13167, 13171, 13179, 13183, 13187, 13195,
13200, 13206, 13210, 13218, 13222, 13226, 13234, 13238, 13246, 13254,
13258, 13262, 13266, 13270, 13274, 13278, 13282, 13290, 13294, 13298,
13302, 13310, 13314, 13322, 13330, 13334, 13338, 13342, 13346, 13354,
13358, 13362, 13370, 13374, 13382, 13390, 13394, 13402, 13410, 13415,
13421, 13426, 13432, 13436, 13444, 13448, 13452, 13456, 13464, 13469,
13475, 13479, 13488, 13490, 13498, 13503, 13509, 13517, 13522, 13528,
13533, 13539, 13544, 13550, 13554, 13558, 13562, 13566, 13574, 13578,
13582, 13586, 13590, 13597, 13601, 13609, 13613, 13621, 13625, 13630,
13636, 13640, 13645, 13651, 13655, 13663, 13667, 13675, 13680, 13686,
13691, 13697, 13701, 13709, 13713, 13717, 13721, 13729, 13733, 13741,
13745, 13753, 13757, 13765, 13773, 13781, 13789, 13793, 13801, 13805,
13809, 13813, 13817, 13821, 13825, 13829, 13833, 13837, 13841, 13845,
13849, 13853, 13854, 13859, 13865, 13869, 13870, 13874, 13882, 13890,
13894, 13898, 13902, 13910, 13914, 13922, 13926, 13930, 13934, 13942,
13946, 13954, 13958, 13962, 13966, 13970, 13974, 13978, 13982, 13986,
13990, 13994, 13998, 14002, 14006, 14010, 14014, 14018, 14022, 14026,
14030, 14034, 14038, 14042, 14046, 14050, 14054, 14058, 14062, 14066,
14070, 14074, 14078, 14082, 14086, 14090, 14094, 14098, 14102, 14106,
14110, 14114, 14118, 14122, 14126, 14130, 14134, 14138, 14142, 14146,
14150, 14154, 14158, 14162, 14166, 14170, 14174, 14178, 14182, 14186,
14190, 14194, 14198, 14202, 14206, 14210, 14214, 14218, 14222, 14226,
14230, 14234, 14238, 14242, 14246, 14250, 14254, 14258, 14262, 14266,
14270, 14274, 14278, 14282, 14286, 14290, 14294, 14298, 14302, 14306,
14310, 14314, 14318, 14322, 14326, 14330, 14334, 14338, 14342, 14346,
14350, 14354, 14358, 14362, 14366, 14370, 14374, 14378, 14382, 14386,
14390, 14394, 14398, 14402, 14406, 14410, 14414, 14418, 14422, 14426,
14430, 14434, 14438, 14442, 14446, 14450, 14454, 14458, 14462, 14466,
14470, 14474, 14478, 14482, 14486, 14490, 14494, 14498, 14502, 14506,
14510, 14514, 14518, 14522, 14526, 14530, 14534, 14538, 14542, 14546,
14550, 14554, 14558, 14562, 14566, 14570, 14574, 14578, 14582, 14586,
14590, 14594, 14598, 14602, 14606, 14610, 14614, 14618, 14622, 14626,
14630, 14634, 14638, 14642, 14646, 14650, 14654, 14658, 14662, 14666,
14670, 14674, 14678, 14682, 14686, 14690, 14694, 14698, 14702, 14706,
14710, 14714, 14718, 14722, 14726, 14730, 14734, 14738, 14742, 14746,
14750, 14754, 14758, 14762, 14766, 14770, 14774, 14778, 14782, 14786,
14790, 14794, 14798, 14802, 14806, 14810, 14814, 14818, 14822, 14826,
14830, 14834, 14838, 14842, 14846, 14850, 14854, 14858, 14862, 14866,
14870, 14874, 14878, 14882, 14886, 14890, 14894, 14898, 14902, 14906,
14910, 14914, 14918, 14922, 14926, 14930, 14934, 14938, 14942, 14946,
14950, 14954, 14958, 14962, 14966, 14970, 14974, 14978, 14982, 14986,
14990, 14994, 14998, 15002, 15006, 15010, 15014, 15018, 15022, 15026,
15030, 15034, 15038, 15042, 15046, 15050, 15054, 15058, 15062, 15066,
15070, 15074, 15078, 15082, 15086, 15090, 15094, 15098, 15102, 15106,
15110, 15114, 15118, 15122, 15126, 15130, 15134, 15138, 15142, 15146,
15150, 15154, 15158, 15162, 15166, 15170, 15174, 15182, 15186, 15190,
15194, 15198, 15202, 15206, 15210, 15214, 15218, 15222, 15226, 15230,
15234, 15238, 15242, 15246, 15250, 15254, 15258, 15262, 15266, 15270,
15274, 15278, 15282, 15286, 15290, 15294, 15298, 15302, 15306, 15310,
15314, 15318, 15322, 15326, 15330, 15334, 15338, 15342, 15346, 15350,
15354, 15358, 15362, 15366, 15370, 15374, 15378, 15382, 15386, 15394,
15398, 15402, 15406, 15410, 15414, 15418, 15422, 15426, 15430, 15434,
15438, 15442, 15446, 15450, 15454, 15458, 15462, 15466, 15470, 15474,
15478, 15482, 15490, 15494, 15498, 15502, 15506, 15510, 15514, 15518,
15522, 15526, 15530, 15534, 15538, 15542, 15546, 15550, 15554, 15558,
15562, 15566, 15570, 15574, 15578, 15582, 15586, 15590, 15594, 15598,
15602, 15606, 15610, 15614, 15618, 15622, 15626, 15630, 15634, 15638,
15642, 15646, 15650, 15654, 15658, 15662, 15666, 15670, 15674, 15678,
15682, 15686, 15690, 15694, 15698, 15702, 15706, 15710, 15714, 15718,
15722, 15726, 15730, 15734, 15738, 15742, 15746, 15750, 15754, 15758,
15762, 15766, 15770, 15774, 15778, 15782, 15786, 15790, 15798, 15802,
15806, 15810, 15814, 15818, 15822, 15826, 15830, 15834, 15838, 15842,
15846, 15850, 15854, 15858, 15862, 15866, 15870, 15874, 15878, 15882,
15886, 15890, 15894, 15898, 15902, 15906, 15910, 15914, 15918, 15922,
15926, 15930, 15934, 15938, 15942, 15946, 15950, 15954, 15958, 15962,
15966, 15970, 15974, 15978, 15982, 15986, 15990, 15994, 15998, 16002,
16006, 16010, 16014, 16018, 16022, 16026, 16030, 16034, 16038, 16042,
16046, 16050, 16054, 16058, 16062, 16066, 16070, 16074, 16078, 16082,
16086, 16090, 16094, 16098, 16102, 16106, 16110, 16114, 16118, 16122,
16126, 16130, 16134, 16138, 16142, 16146, 16150, 16154, 16158, 16162,
16166, 16170, 16174, 16178, 16182, 16186, 16190, 16194, 16198, 16202,
16206, 16210, 16214, 16218, 16222, 16226, 16230, 16234, 16238, 16242,
16246, 16250, 16254, 16258, 16262, 16266, 16270, 16274, 16278, 16282,
16286, 16290, 16294, 16298, 16302, 16306, 16310, 16314, 16318, 16322,
16326, 16330, 16334, 16338, 16342, 16346, 16350, 16354, 16358, 16362,
16366, 16370, 16374, 16378, 16382, 16386, 16390, 16394, 16398, 16402,
16406, 16410, 16414, 16418, 16422, 16426, 16430, 16434, 16438, 16442,
16446, 16450, 16454, 16458, 16462, 16466, 16470, 16474, 16478, 16482,
16486, 16490, 16494, 16498, 16502, 16506, 16510, 16514, 16518, 16522,
16526, 16530, 16534, 16538, 16542, 16546, 16550, 16554, 16558, 16562,
16566, 16570, 16574, 16578, 16582, 16586, 16590, 16594, 16598, 16602,
16606, 16610, 16614, 16618, 16622, 16626, 16630, 16634, 16638, 16642,
16646, 16650, 16654, 16658, 16662, 16666, 16670, 16674, 16678, 16682,
16686, 16690, 16694, 16698, 16702, 16706, 16710, 16714, 16718, 16722,
16726, 16730, 16734, 16738, 16742, 16746, 16750, 16754, 16758, 16762,
16766, 16770, 16774, 16778, 16782, 16786, 16790, 16794, 16798, 16802,
16806, 16810, 16814, 16818, 16822, 16826, 16830, 16834, 16838, 16842,
16846, 16850, 16854, 16858, 16862, 16866, 16870, 16874, 16878, 16882,
16886, 16890, 16894, 16898, 16902, 16906, 16910, 16914, 16918, 16922,
16926, 16930, 16934, 16938, 16942, 16946, 16950, 16954, 16958, 16962,
16966, 16970, 16974, 16978, 16982, 16986, 16990, 16994, 16998, 17002,
17006, 17010, 17014, 17018, 17022, 17026, 17030, 17034, 17038, 17042,
17046, 17050, 17054, 17058, 17062, 17066, 17070, 17074, 17078, 17082,
17086, 17090, 17094, 17098, 17102, 17106, 17110, 17114, 17118, 17122,
17126, 17130, 17134, 17138, 17142, 17146, 17150, 17154, 17158, 17162,
17166, 17170, 17174, 17178, 17182, 17186, 17190, 17194, 17198, 17202,
17206, 17210, 17214, 17218, 17222, 17226, 17230, 17234, 17238, 17242,
17246, 17250, 17254, 17258, 17262, 17266, 17270, 17274, 17278, 17282,
17286, 17290, 17294, 17298, 17302, 17306, 17310, 17314, 17318, 17322,
17326, 17330, 17334, 17338, 17342, 17346, 17350, 17354, 17358, 17362,
17366, 17370, 17374, 17378, 17382, 17386, 17390, 17394, 17398, 17402,
17406, 17410, 17414, 17418, 17422, 17426, 17430, 17434, 17438, 17442,
17446, 17450, 17454, 17458, 17462, 17466, 17470, 17474, 17478, 17482,
17486, 17490, 17494, 17498, 17502, 17506, 17510, 17514, 17518, 17522,
17532, 17533, 17536, 17542, 17548, 17554, 17555, 17556, 17557, 17558,
17571, 17571, 17578, 17578, 17587, 17602, 17604, 17607, 17609, 17613,
17625, 17641, 17645, 17656, 17657, 17660, 17672, 17681, 17682, 17685,
17686, 17687, 17690, 17691, 17694, 17695, 17698, 17699, 17702, 17704,
17706, 17708, 17712, 17719, 17726, 17742, 17776, 17786, 17789, 17793,
17806, 17807, 17809, 17811, 17815, 17829, 17835, 17872, 17934, 17943,
17945, 17946, 17949, 17951, 17952, 17955, 17956, 17957, 17958, 17959,
17966, 17965, 17975, 17977, 17979, 17980, 17983, 17984, 17985, 17986,
17989, 17990, 17994, 17993, 18010, 18009, 18025, 18024, 18039, 18045,
18046, 18049, 18051, 18052, 18055, 18056, 18057, 18058, 18061, 18062,
18065, 18073, 18090, 18098, 18106, 18114, 18142, 18150, 18159, 18167,
18175, 18183, 18191, 18311, 18345, 18347, 18349, 18353, 18357, 18356,
18407, 18409, 18408, 18423, 18429, 18436, 18441, 18447, 18448, 18451,
18452, 18453, 18454, 18455, 18456, 18457, 18458, 18459, 18462, 18463,
18464, 18465, 18466, 18467, 18468, 18469, 18470, 18471, 18474, 18475,
18478, 18480, 18489, 18589, 18590, 18597, 18598, 18599, 18605, 18614,
18617, 18618, 18619, 18620, 18623, 18624, 18625, 18628, 18630, 18638,
18639, 18645, 18653, 18654, 18657, 18658, 18661, 18666, 18673, 18678,
18685, 18692, 18692, 18694, 18701, 18702, 18705, 18706, 18707, 18708,
18709, 18710, 18711, 18712, 18713, 18719, 18724, 18734, 18739, 18744,
18751, 18752, 18764, 18775, 18786, 18790, 18791, 18794, 18799, 18803,
18804, 18807, 18813, 18821, 18827, 18834, 18838, 18839, 18842, 18845,
18849, 18850, 18853, 18859, 18868, 18873, 18883, 18893, 18905, 18906,
18907, 18908, 18909, 18910, 18911, 18912, 18913, 18914, 18915, 18916,
18917, 18918, 18919, 18926, 18927, 18930, 18931, 18938, 18939, 18940,
18947, 18946, 18963, 18964, 18971, 18970, 19041, 19047, 19053, 19061,
19067, 19073, 19079, 19085, 19091, 19097, 19103, 19109, 19115, 19126,
19127, 19130, 19131, 19132, 19133, 19134, 19135, 19136, 19137, 19138,
19139, 19140, 19141, 19142, 19143, 19144, 19145, 19146, 19147, 19148,
19149, 19150, 19151, 19154, 19155, 19156, 19157, 19158, 19159, 19163,
19164, 19165, 19166, 19167, 19168, 19169, 19172, 19175, 19176, 19177,
19178, 19179, 19180, 19181, 19182, 19195, 19196, 19197, 19198, 19199,
19200, 19201, 19206, 19207, 19208, 19209, 19210, 19211, 19217, 19218,
19219, 19220, 19221, 19222, 19223, 19224, 19225, 19226, 19227, 19230,
19231, 19232, 19233, 19234, 19235, 19236, 19237, 19240, 19241, 19242,
19243, 19244, 19245, 19246, 19263, 19264, 19265, 19268, 19269, 19270,
19271, 19272, 19273, 19277, 19277, 19280, 19286, 19287, 19290, 19292,
19297, 19307, 19318, 19325, 19326, 19327, 19330, 19363, 19365, 19367,
19369, 19371, 19373, 19374, 19377, 19379, 19387, 19388, 19389, 19393,
19394, 19398, 19399, 19402, 19403, 19406, 19407, 19408, 19409, 19410,
19413, 19414, 19415, 19416, 19417, 19418, 19419, 19420, 19421, 19422,
19423, 19424, 19425, 19426, 19427, 19428, 19429, 19430, 19431, 19432,
19433, 19434, 19435, 19436, 19437, 19438, 19439, 19440, 19441, 19442,
19443, 19444, 19445, 19446, 19447, 19448, 19449, 19450, 19451, 19452,
19453, 19454, 19455, 19456, 19457, 19458, 19459, 19460, 19461, 19462,
19463, 19464, 19465, 19466, 19467, 19468, 19471, 19472, 19473, 19474,
19477, 19478, 19479, 19480, 19481, 19482, 19483, 19484, 19485, 19486,
19493, 19494, 19495, 19496, 19499, 19500, 19503, 19504, 19507, 19508,
19519, 19520
};
#endif
/** Accessing symbol of state STATE. */
#define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State])
#if YYDEBUG || 0
/* The user-facing name of the symbol whose (internal) number is
YYSYMBOL. No bounds checking. */
static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED;
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
"\"end of file\"", "error", "\"invalid token\"", "SQL_ALLOCATE",
"SQL_AUTOCOMMIT", "SQL_BOOL", "SQL_BREAK", "SQL_CARDINALITY",
"SQL_CONNECT", "SQL_COUNT", "SQL_DATETIME_INTERVAL_CODE",
"SQL_DATETIME_INTERVAL_PRECISION", "SQL_DESCRIBE", "SQL_DESCRIPTOR",
"SQL_DISCONNECT", "SQL_FOUND", "SQL_FREE", "SQL_GET", "SQL_GO",
"SQL_GOTO", "SQL_IDENTIFIED", "SQL_INDICATOR", "SQL_KEY_MEMBER",
"SQL_LENGTH", "SQL_LONG", "SQL_NULLABLE", "SQL_OCTET_LENGTH", "SQL_OPEN",
"SQL_OUTPUT", "SQL_REFERENCE", "SQL_RETURNED_LENGTH",
"SQL_RETURNED_OCTET_LENGTH", "SQL_SCALE", "SQL_SECTION", "SQL_SHORT",
"SQL_SIGNED", "SQL_SQLERROR", "SQL_SQLPRINT", "SQL_SQLWARNING",
"SQL_START", "SQL_STOP", "SQL_STRUCT", "SQL_UNSIGNED", "SQL_VAR",
"SQL_WHENEVER", "S_ADD", "S_AND", "S_ANYTHING", "S_AUTO", "S_CONST",
"S_DEC", "S_DIV", "S_DOTPOINT", "S_EQUAL", "S_EXTERN", "S_INC",
"S_LSHIFT", "S_MEMPOINT", "S_MEMBER", "S_MOD", "S_MUL", "S_NEQUAL",
"S_OR", "S_REGISTER", "S_RSHIFT", "S_STATIC", "S_SUB", "S_VOLATILE",
"S_TYPEDEF", "CSTRING", "CVARIABLE", "CPP_LINE", "IP", "IDENT", "UIDENT",
"FCONST", "SCONST", "USCONST", "BCONST", "XCONST", "Op", "ICONST",
"PARAM", "TYPECAST", "DOT_DOT", "COLON_EQUALS", "EQUALS_GREATER",
"LESS_EQUALS", "GREATER_EQUALS", "NOT_EQUALS", "ABORT_P", "ABSENT",
"ABSOLUTE_P", "ACCESS", "ACTION", "ADD_P", "ADMIN", "AFTER", "AGGREGATE",
"ALL", "ALSO", "ALTER", "ALWAYS", "ANALYSE", "ANALYZE", "AND", "ANY",
"ARRAY", "AS", "ASC", "ASENSITIVE", "ASSERTION", "ASSIGNMENT",
"ASYMMETRIC", "ATOMIC", "AT", "ATTACH", "ATTRIBUTE", "AUTHORIZATION",
"BACKWARD", "BEFORE", "BEGIN_P", "BETWEEN", "BIGINT", "BINARY", "BIT",
"BOOLEAN_P", "BOTH", "BREADTH", "BY", "CACHE", "CALL", "CALLED",
"CASCADE", "CASCADED", "CASE", "CAST", "CATALOG_P", "CHAIN", "CHAR_P",
"CHARACTER", "CHARACTERISTICS", "CHECK", "CHECKPOINT", "CLASS", "CLOSE",
"CLUSTER", "COALESCE", "COLLATE", "COLLATION", "COLUMN", "COLUMNS",
"COMMENT", "COMMENTS", "COMMIT", "COMMITTED", "COMPRESSION",
"CONCURRENTLY", "CONFIGURATION", "CONFLICT", "CONNECTION", "CONSTRAINT",
"CONSTRAINTS", "CONTENT_P", "CONTINUE_P", "CONVERSION_P", "COPY", "COST",
"CREATE", "CROSS", "CSV", "CUBE", "CURRENT_P", "CURRENT_CATALOG",
"CURRENT_DATE", "CURRENT_ROLE", "CURRENT_SCHEMA", "CURRENT_TIME",
"CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", "CYCLE", "DATA_P",
"DATABASE", "DAY_P", "DEALLOCATE", "DEC", "DECIMAL_P", "DECLARE",
"DEFAULT", "DEFAULTS", "DEFERRABLE", "DEFERRED", "DEFINER", "DELETE_P",
"DELIMITER", "DELIMITERS", "DEPENDS", "DEPTH", "DESC", "DETACH",
"DICTIONARY", "DISABLE_P", "DISCARD", "DISTINCT", "DO", "DOCUMENT_P",
"DOMAIN_P", "DOUBLE_P", "DROP", "EACH", "ELSE", "ENABLE_P", "ENCODING",
"ENCRYPTED", "END_P", "ENUM_P", "ESCAPE", "EVENT", "EXCEPT", "EXCLUDE",
"EXCLUDING", "EXCLUSIVE", "EXECUTE", "EXISTS", "EXPLAIN", "EXPRESSION",
"EXTENSION", "EXTERNAL", "EXTRACT", "FALSE_P", "FAMILY", "FETCH",
"FILTER", "FINALIZE", "FIRST_P", "FLOAT_P", "FOLLOWING", "FOR", "FORCE",
"FOREIGN", "FORMAT", "FORWARD", "FREEZE", "FROM", "FULL", "FUNCTION",
"FUNCTIONS", "GENERATED", "GLOBAL", "GRANT", "GRANTED", "GREATEST",
"GROUP_P", "GROUPING", "GROUPS", "HANDLER", "HAVING", "HEADER_P", "HOLD",
"HOUR_P", "IDENTITY_P", "IF_P", "ILIKE", "IMMEDIATE", "IMMUTABLE",
"IMPLICIT_P", "IMPORT_P", "IN_P", "INCLUDE", "INCLUDING", "INCREMENT",
"INDENT", "INDEX", "INDEXES", "INHERIT", "INHERITS", "INITIALLY",
"INLINE_P", "INNER_P", "INOUT", "INPUT_P", "INSENSITIVE", "INSERT",
"INSTEAD", "INT_P", "INTEGER", "INTERSECT", "INTERVAL", "INTO",
"INVOKER", "IS", "ISNULL", "ISOLATION", "JOIN", "JSON", "JSON_ARRAY",
"JSON_ARRAYAGG", "JSON_OBJECT", "JSON_OBJECTAGG", "KEY", "KEYS", "LABEL",
"LANGUAGE", "LARGE_P", "LAST_P", "LATERAL_P", "LEADING", "LEAKPROOF",
"LEAST", "LEFT", "LEVEL", "LIKE", "LIMIT", "LISTEN", "LOAD", "LOCAL",
"LOCALTIME", "LOCALTIMESTAMP", "LOCATION", "LOCK_P", "LOCKED", "LOGGED",
"MAPPING", "MATCH", "MATCHED", "MATERIALIZED", "MAXVALUE", "MERGE",
"METHOD", "MINUTE_P", "MINVALUE", "MODE", "MONTH_P", "MOVE", "NAME_P",
"NAMES", "NATIONAL", "NATURAL", "NCHAR", "NEW", "NEXT", "NFC", "NFD",
"NFKC", "NFKD", "NO", "NONE", "NORMALIZE", "NORMALIZED", "NOT",
"NOTHING", "NOTIFY", "NOTNULL", "NOWAIT", "NULL_P", "NULLIF", "NULLS_P",
"NUMERIC", "OBJECT_P", "OF", "OFF", "OFFSET", "OIDS", "OLD", "ON",
"ONLY", "OPERATOR", "OPTION", "OPTIONS", "OR", "ORDER", "ORDINALITY",
"OTHERS", "OUT_P", "OUTER_P", "OVER", "OVERLAPS", "OVERLAY",
"OVERRIDING", "OWNED", "OWNER", "PARALLEL", "PARAMETER", "PARSER",
"PARTIAL", "PARTITION", "PASSING", "PASSWORD", "PLACING", "PLANS",
"POLICY", "POSITION", "PRECEDING", "PRECISION", "PRESERVE", "PREPARE",
"PREPARED", "PRIMARY", "PRIOR", "PRIVILEGES", "PROCEDURAL", "PROCEDURE",
"PROCEDURES", "PROGRAM", "PUBLICATION", "QUOTE", "RANGE", "READ", "REAL",
"REASSIGN", "RECHECK", "RECURSIVE", "REF_P", "REFERENCES", "REFERENCING",
"REFRESH", "REINDEX", "RELATIVE_P", "RELEASE", "RENAME", "REPEATABLE",
"REPLACE", "REPLICA", "RESET", "RESTART", "RESTRICT", "RETURN",
"RETURNING", "RETURNS", "REVOKE", "RIGHT", "ROLE", "ROLLBACK", "ROLLUP",
"ROUTINE", "ROUTINES", "ROW", "ROWS", "RULE", "SAVEPOINT", "SCALAR",
"SCHEMA", "SCHEMAS", "SCROLL", "SEARCH", "SECOND_P", "SECURITY",
"SELECT", "SEQUENCE", "SEQUENCES", "SERIALIZABLE", "SERVER", "SESSION",
"SESSION_USER", "SET", "SETS", "SETOF", "SHARE", "SHOW", "SIMILAR",
"SIMPLE", "SKIP", "SMALLINT", "SNAPSHOT", "SOME", "SQL_P", "STABLE",
"STANDALONE_P", "START", "STATEMENT", "STATISTICS", "STDIN", "STDOUT",
"STORAGE", "STORED", "STRICT_P", "STRIP_P", "SUBSCRIPTION", "SUBSTRING",
"SUPPORT", "SYMMETRIC", "SYSID", "SYSTEM_P", "SYSTEM_USER", "TABLE",
"TABLES", "TABLESAMPLE", "TABLESPACE", "TEMP", "TEMPLATE", "TEMPORARY",
"TEXT_P", "THEN", "TIES", "TIME", "TIMESTAMP", "TO", "TRAILING",
"TRANSACTION", "TRANSFORM", "TREAT", "TRIGGER", "TRIM", "TRUE_P",
"TRUNCATE", "TRUSTED", "TYPE_P", "TYPES_P", "UESCAPE", "UNBOUNDED",
"UNCOMMITTED", "UNENCRYPTED", "UNION", "UNIQUE", "UNKNOWN", "UNLISTEN",
"UNLOGGED", "UNTIL", "UPDATE", "USER", "USING", "VACUUM", "VALID",
"VALIDATE", "VALIDATOR", "VALUE_P", "VALUES", "VARCHAR", "VARIADIC",
"VARYING", "VERBOSE", "VERSION_P", "VIEW", "VIEWS", "VOLATILE", "WHEN",
"WHERE", "WHITESPACE_P", "WINDOW", "WITH", "WITHIN", "WITHOUT", "WORK",
"WRAPPER", "WRITE", "XML_P", "XMLATTRIBUTES", "XMLCONCAT", "XMLELEMENT",
"XMLEXISTS", "XMLFOREST", "XMLNAMESPACES", "XMLPARSE", "XMLPI",
"XMLROOT", "XMLSERIALIZE", "XMLTABLE", "YEAR_P", "YES_P", "ZONE",
"FORMAT_LA", "NOT_LA", "NULLS_LA", "WITH_LA", "WITHOUT_LA",
"MODE_TYPE_NAME", "MODE_PLPGSQL_EXPR", "MODE_PLPGSQL_ASSIGN1",
"MODE_PLPGSQL_ASSIGN2", "MODE_PLPGSQL_ASSIGN3", "'<'", "'>'", "'='",
"'+'", "'-'", "'*'", "'/'", "'%'", "'^'", "UMINUS", "'['", "']'", "'('",
"')'", "'.'", "','", "';'", "':'", "'{'", "'}'", "$accept", "prog",
"toplevel_stmt", "stmt", "opt_single_name", "opt_qualified_name",
"opt_concurrently", "opt_drop_behavior", "CallStmt", "CreateRoleStmt",
"opt_with", "OptRoleList", "AlterOptRoleList", "AlterOptRoleElem",
"CreateOptRoleElem", "CreateUserStmt", "AlterRoleStmt",
"opt_in_database", "AlterRoleSetStmt", "DropRoleStmt", "CreateGroupStmt",
"AlterGroupStmt", "add_drop", "CreateSchemaStmt", "OptSchemaEltList",
"schema_stmt", "VariableSetStmt", "set_rest", "generic_set",
"set_rest_more", "var_name", "var_list", "var_value", "iso_level",
"opt_boolean_or_string", "zone_value", "opt_encoding",
"NonReservedWord_or_Sconst", "VariableResetStmt", "reset_rest",
"generic_reset", "SetResetClause", "FunctionSetResetClause",
"VariableShowStmt", "ConstraintsSetStmt", "constraints_set_list",
"constraints_set_mode", "CheckPointStmt", "DiscardStmt",
"AlterTableStmt", "alter_table_cmds", "partition_cmd",
"index_partition_cmd", "alter_table_cmd", "alter_column_default",
"opt_collate_clause", "alter_using", "replica_identity", "reloptions",
"opt_reloptions", "reloption_list", "reloption_elem",
"alter_identity_column_option_list", "alter_identity_column_option",
"PartitionBoundSpec", "hash_partbound_elem", "hash_partbound",
"AlterCompositeTypeStmt", "alter_type_cmds", "alter_type_cmd",
"ClosePortalStmt", "CopyStmt", "copy_from", "opt_program",
"copy_file_name", "copy_options", "copy_opt_list", "copy_opt_item",
"opt_binary", "copy_delimiter", "opt_using", "copy_generic_opt_list",
"copy_generic_opt_elem", "copy_generic_opt_arg",
"copy_generic_opt_arg_list", "copy_generic_opt_arg_list_item",
"CreateStmt", "OptTemp", "OptTableElementList",
"OptTypedTableElementList", "TableElementList", "TypedTableElementList",
"TableElement", "TypedTableElement", "columnDef", "columnOptions",
"column_compression", "opt_column_compression", "column_storage",
"opt_column_storage", "ColQualList", "ColConstraint",
"ColConstraintElem", "opt_unique_null_treatment", "generated_when",
"ConstraintAttr", "TableLikeClause", "TableLikeOptionList",
"TableLikeOption", "TableConstraint", "ConstraintElem", "opt_no_inherit",
"opt_column_list", "columnList", "columnElem", "opt_c_include",
"key_match", "ExclusionConstraintList", "ExclusionConstraintElem",
"OptWhereClause", "key_actions", "key_update", "key_delete",
"key_action", "OptInherit", "OptPartitionSpec", "PartitionSpec",
"part_params", "part_elem", "table_access_method_clause", "OptWith",
"OnCommitOption", "OptTableSpace", "OptConsTableSpace", "ExistingIndex",
"CreateStatsStmt", "stats_params", "stats_param", "AlterStatsStmt",
"create_as_target", "opt_with_data", "CreateMatViewStmt",
"create_mv_target", "OptNoLog", "RefreshMatViewStmt", "CreateSeqStmt",
"AlterSeqStmt", "OptSeqOptList", "OptParenthesizedSeqOptList",
"SeqOptList", "SeqOptElem", "opt_by", "NumericOnly", "NumericOnly_list",
"CreatePLangStmt", "opt_trusted", "handler_name", "opt_inline_handler",
"validator_clause", "opt_validator", "opt_procedural",
"CreateTableSpaceStmt", "OptTableSpaceOwner", "DropTableSpaceStmt",
"CreateExtensionStmt", "create_extension_opt_list",
"create_extension_opt_item", "AlterExtensionStmt",
"alter_extension_opt_list", "alter_extension_opt_item",
"AlterExtensionContentsStmt", "CreateFdwStmt", "fdw_option",
"fdw_options", "opt_fdw_options", "AlterFdwStmt",
"create_generic_options", "generic_option_list", "alter_generic_options",
"alter_generic_option_list", "alter_generic_option_elem",
"generic_option_elem", "generic_option_name", "generic_option_arg",
"CreateForeignServerStmt", "opt_type", "foreign_server_version",
"opt_foreign_server_version", "AlterForeignServerStmt",
"CreateForeignTableStmt", "ImportForeignSchemaStmt",
"import_qualification_type", "import_qualification",
"CreateUserMappingStmt", "auth_ident", "DropUserMappingStmt",
"AlterUserMappingStmt", "CreatePolicyStmt", "AlterPolicyStmt",
"RowSecurityOptionalExpr", "RowSecurityOptionalWithCheck",
"RowSecurityDefaultToRole", "RowSecurityOptionalToRole",
"RowSecurityDefaultPermissive", "RowSecurityDefaultForCmd",
"row_security_cmd", "CreateAmStmt", "am_type", "CreateTrigStmt",
"TriggerActionTime", "TriggerEvents", "TriggerOneEvent",
"TriggerReferencing", "TriggerTransitions", "TriggerTransition",
"TransitionOldOrNew", "TransitionRowOrTable", "TransitionRelName",
"TriggerForSpec", "TriggerForOptEach", "TriggerForType", "TriggerWhen",
"FUNCTION_or_PROCEDURE", "TriggerFuncArgs", "TriggerFuncArg",
"OptConstrFromTable", "ConstraintAttributeSpec",
"ConstraintAttributeElem", "CreateEventTrigStmt",
"event_trigger_when_list", "event_trigger_when_item",
"event_trigger_value_list", "AlterEventTrigStmt", "enable_trigger",
"CreateAssertionStmt", "DefineStmt", "definition", "def_list",
"def_elem", "def_arg", "old_aggr_definition", "old_aggr_list",
"old_aggr_elem", "opt_enum_val_list", "enum_val_list", "AlterEnumStmt",
"opt_if_not_exists", "CreateOpClassStmt", "opclass_item_list",
"opclass_item", "opt_default", "opt_opfamily", "opclass_purpose",
"opt_recheck", "CreateOpFamilyStmt", "AlterOpFamilyStmt",
"opclass_drop_list", "opclass_drop", "DropOpClassStmt",
"DropOpFamilyStmt", "DropOwnedStmt", "ReassignOwnedStmt", "DropStmt",
"object_type_any_name", "object_type_name", "drop_type_name",
"object_type_name_on_any_name", "any_name_list", "any_name", "attrs",
"type_name_list", "TruncateStmt", "opt_restart_seqs", "CommentStmt",
"comment_text", "SecLabelStmt", "opt_provider", "security_label",
"FetchStmt", "fetch_args", "from_in", "opt_from_in", "GrantStmt",
"RevokeStmt", "privileges", "privilege_list", "privilege",
"parameter_name_list", "parameter_name", "privilege_target",
"grantee_list", "grantee", "opt_grant_grant_option", "GrantRoleStmt",
"RevokeRoleStmt", "grant_role_opt_list", "grant_role_opt",
"grant_role_opt_value", "opt_granted_by", "AlterDefaultPrivilegesStmt",
"DefACLOptionList", "DefACLOption", "DefACLAction",
"defacl_privilege_target", "IndexStmt", "opt_unique",
"access_method_clause", "index_params", "index_elem_options",
"index_elem", "opt_include", "index_including_params", "opt_collate",
"opt_asc_desc", "opt_nulls_order", "CreateFunctionStmt",
"opt_or_replace", "func_args", "func_args_list",
"function_with_argtypes_list", "function_with_argtypes",
"func_args_with_defaults", "func_args_with_defaults_list", "func_arg",
"arg_class", "param_name", "func_return", "func_type",
"func_arg_with_default", "aggr_arg", "aggr_args", "aggr_args_list",
"aggregate_with_argtypes", "aggregate_with_argtypes_list",
"opt_createfunc_opt_list", "createfunc_opt_list", "common_func_opt_item",
"createfunc_opt_item", "func_as", "ReturnStmt", "opt_routine_body",
"routine_body_stmt_list", "routine_body_stmt", "transform_type_list",
"opt_definition", "table_func_column", "table_func_column_list",
"AlterFunctionStmt", "alterfunc_opt_list", "opt_restrict",
"RemoveFuncStmt", "RemoveAggrStmt", "RemoveOperStmt", "oper_argtypes",
"any_operator", "operator_with_argtypes_list", "operator_with_argtypes",
"DoStmt", "dostmt_opt_list", "dostmt_opt_item", "CreateCastStmt",
"cast_context", "DropCastStmt", "opt_if_exists", "CreateTransformStmt",
"transform_element_list", "DropTransformStmt", "ReindexStmt",
"reindex_target_relation", "reindex_target_all",
"opt_reindex_option_list", "AlterTblSpcStmt", "RenameStmt", "opt_column",
"opt_set_data", "AlterObjectDependsStmt", "opt_no",
"AlterObjectSchemaStmt", "AlterOperatorStmt", "operator_def_list",
"operator_def_elem", "operator_def_arg", "AlterTypeStmt",
"AlterOwnerStmt", "CreatePublicationStmt", "PublicationObjSpec",
"pub_obj_list", "AlterPublicationStmt", "CreateSubscriptionStmt",
"AlterSubscriptionStmt", "DropSubscriptionStmt", "RuleStmt",
"RuleActionList", "RuleActionMulti", "RuleActionStmt",
"RuleActionStmtOrEmpty", "event", "opt_instead", "NotifyStmt",
"notify_payload", "ListenStmt", "UnlistenStmt", "TransactionStmt",
"TransactionStmtLegacy", "opt_transaction", "transaction_mode_item",
"transaction_mode_list", "transaction_mode_list_or_empty",
"opt_transaction_chain", "ViewStmt", "opt_check_option", "LoadStmt",
"CreatedbStmt", "createdb_opt_list", "createdb_opt_items",
"createdb_opt_item", "createdb_opt_name", "opt_equal",
"AlterDatabaseStmt", "AlterDatabaseSetStmt", "DropdbStmt",
"drop_option_list", "drop_option", "AlterCollationStmt",
"AlterSystemStmt", "CreateDomainStmt", "AlterDomainStmt", "opt_as",
"AlterTSDictionaryStmt", "AlterTSConfigurationStmt", "any_with",
"CreateConversionStmt", "ClusterStmt", "cluster_index_specification",
"VacuumStmt", "AnalyzeStmt", "utility_option_list", "analyze_keyword",
"utility_option_elem", "utility_option_name", "utility_option_arg",
"opt_analyze", "opt_verbose", "opt_full", "opt_freeze", "opt_name_list",
"vacuum_relation", "vacuum_relation_list", "opt_vacuum_relation_list",
"ExplainStmt", "ExplainableStmt", "PrepareStmt", "prep_type_clause",
"PreparableStmt", "ExecuteStmt", "execute_param_clause", "InsertStmt",
"insert_target", "insert_rest", "override_kind", "insert_column_list",
"insert_column_item", "opt_on_conflict", "opt_conf_expr",
"returning_clause", "DeleteStmt", "using_clause", "LockStmt", "opt_lock",
"lock_type", "opt_nowait", "opt_nowait_or_skip", "UpdateStmt",
"set_clause_list", "set_clause", "set_target", "set_target_list",
"MergeStmt", "merge_when_list", "merge_when_clause",
"opt_merge_when_condition", "merge_update", "merge_delete",
"merge_insert", "merge_values_clause", "DeclareCursorStmt",
"cursor_name", "cursor_options", "opt_hold", "SelectStmt",
"select_with_parens", "select_no_parens", "select_clause",
"simple_select", "with_clause", "cte_list", "common_table_expr",
"opt_materialized", "opt_search_clause", "opt_cycle_clause",
"opt_with_clause", "into_clause", "OptTempTableName", "opt_table",
"set_quantifier", "distinct_clause", "opt_all_clause", "opt_sort_clause",
"sort_clause", "sortby_list", "sortby", "select_limit",
"opt_select_limit", "limit_clause", "offset_clause",
"select_limit_value", "select_offset_value", "select_fetch_first_value",
"I_or_F_const", "row_or_rows", "first_or_next", "group_clause",
"group_by_list", "group_by_item", "empty_grouping_set", "rollup_clause",
"cube_clause", "grouping_sets_clause", "having_clause",
"for_locking_clause", "opt_for_locking_clause", "for_locking_items",
"for_locking_item", "for_locking_strength", "locked_rels_list",
"values_clause", "from_clause", "from_list", "table_ref", "joined_table",
"alias_clause", "opt_alias_clause", "opt_alias_clause_for_join_using",
"func_alias_clause", "join_type", "opt_outer", "join_qual",
"relation_expr", "extended_relation_expr", "relation_expr_list",
"relation_expr_opt_alias", "tablesample_clause", "opt_repeatable_clause",
"func_table", "rowsfrom_item", "rowsfrom_list", "opt_col_def_list",
"opt_ordinality", "where_clause", "where_or_current_clause",
"OptTableFuncElementList", "TableFuncElementList", "TableFuncElement",
"xmltable", "xmltable_column_list", "xmltable_column_el",
"xmltable_column_option_list", "xmltable_column_option_el",
"xml_namespace_list", "xml_namespace_el", "Typename", "opt_array_bounds",
"SimpleTypename", "ConstTypename", "GenericType", "opt_type_modifiers",
"Numeric", "opt_float", "Bit", "ConstBit", "BitWithLength",
"BitWithoutLength", "Character", "ConstCharacter", "CharacterWithLength",
"CharacterWithoutLength", "character", "opt_varying", "ConstDatetime",
"ConstInterval", "opt_timezone", "opt_interval", "interval_second",
"a_expr", "b_expr", "c_expr", "func_application", "func_expr",
"func_expr_windowless", "func_expr_common_subexpr", "xml_root_version",
"opt_xml_root_standalone", "xml_attributes", "xml_attribute_list",
"xml_attribute_el", "document_or_content", "xml_indent_option",
"xml_whitespace_option", "xmlexists_argument", "xml_passing_mech",
"within_group_clause", "filter_clause", "window_clause",
"window_definition_list", "window_definition", "over_clause",
"window_specification", "opt_existing_window_name",
"opt_partition_clause", "opt_frame_clause", "frame_extent",
"frame_bound", "opt_window_exclusion_clause", "row", "explicit_row",
"implicit_row", "sub_type", "all_Op", "MathOp", "qual_Op", "qual_all_Op",
"subquery_Op", "expr_list", "func_arg_list", "func_arg_expr",
"func_arg_list_opt", "type_list", "array_expr", "array_expr_list",
"extract_list", "extract_arg", "unicode_normal_form", "overlay_list",
"position_list", "substr_list", "trim_list", "in_expr", "case_expr",
"when_clause_list", "when_clause", "case_default", "case_arg",
"columnref", "indirection_el", "opt_slice_bound", "indirection",
"opt_indirection", "opt_asymmetric", "json_value_expr",
"json_format_clause_opt", "json_encoding_clause_opt",
"json_output_clause_opt", "json_predicate_type_constraint",
"json_key_uniqueness_constraint_opt", "json_name_and_value_list",
"json_name_and_value", "json_object_constructor_null_clause_opt",
"json_array_constructor_null_clause_opt", "json_value_expr_list",
"json_aggregate_func", "json_array_aggregate_order_by_clause_opt",
"opt_target_list", "target_list", "target_el", "qualified_name_list",
"qualified_name", "name_list", "name", "attr_name", "file_name",
"func_name", "AexprConst", "Iconst", "SignedIconst", "RoleId",
"RoleSpec", "role_list", "NonReservedWord", "BareColLabel",
"unreserved_keyword", "col_name_keyword", "type_func_name_keyword",
"reserved_keyword", "bare_label_keyword", "statements", "statement",
"CreateAsStmt", "$@1", "$@2", "at", "ECPGConnect", "connection_target",
"opt_database_name", "db_prefix", "server", "opt_server", "server_name",
"opt_port", "opt_connection_name", "opt_user", "ora_user", "user_name",
"char_variable", "opt_options", "connect_options", "opt_opt_value",
"prepared_name", "ECPGDeclareStmt", "ECPGCursorStmt",
"ECPGExecuteImmediateStmt", "ECPGVarDeclaration",
"single_vt_declaration", "precision", "opt_scale", "ecpg_interval",
"ECPGDeclaration", "$@3", "sql_startdeclare", "sql_enddeclare",
"var_type_declarations", "vt_declarations", "variable_declarations",
"type_declaration", "$@4", "var_declaration", "$@5", "$@6",
"opt_bit_field", "storage_declaration", "storage_clause",
"storage_modifier", "var_type", "enum_type", "enum_definition",
"struct_union_type_with_symbol", "$@7", "struct_union_type", "$@8",
"s_struct_union_symbol", "s_struct_union", "simple_type",
"unsigned_type", "signed_type", "opt_signed", "variable_list",
"variable", "opt_initializer", "opt_pointer", "ECPGDeclare",
"ECPGDisconnect", "dis_name", "connection_object", "execstring",
"ECPGFree", "ECPGOpen", "opt_ecpg_using", "ecpg_using",
"using_descriptor", "into_descriptor", "into_sqlda", "using_list",
"UsingValue", "UsingConst", "ECPGDescribe", "opt_output",
"ECPGAllocateDescr", "ECPGDeallocateDescr", "ECPGGetDescriptorHeader",
"ECPGGetDescHeaderItems", "ECPGGetDescHeaderItem",
"ECPGSetDescriptorHeader", "ECPGSetDescHeaderItems",
"ECPGSetDescHeaderItem", "IntConstVar", "desc_header_item",
"ECPGGetDescriptor", "ECPGGetDescItems", "ECPGGetDescItem",
"ECPGSetDescriptor", "ECPGSetDescItems", "ECPGSetDescItem",
"AllConstVar", "descriptor_item", "ECPGSetAutocommit", "on_off",
"ECPGSetConnection", "ECPGTypedef", "$@9", "opt_reference", "ECPGVar",
"$@10", "ECPGWhenever", "action", "ECPGKeywords", "ECPGKeywords_vanames",
"ECPGKeywords_rest", "ECPGTypeName", "symbol", "ECPGColId", "ColId",
"type_function_name", "ColLabel", "ECPGColLabel", "ECPGCKeywords",
"all_unreserved_keyword", "ECPGunreserved_interval", "into_list",
"ecpgstart", "c_args", "coutputvariable", "civarind", "char_civar",
"civar", "indicator", "cvariable", "ecpg_param", "ecpg_bconst",
"ecpg_fconst", "ecpg_sconst", "ecpg_xconst", "ecpg_ident",
"quoted_ident_stringvar", "c_stuff_item", "c_stuff", "c_list", "c_term",
"c_thing", "c_anything", "DeallocateStmt", "Iresult", "execute_rest",
"ecpg_into", "opt_ecpg_into", "ecpg_fetch_into", "opt_ecpg_fetch_into", YY_NULLPTR
};
static const char *
yysymbol_name (yysymbol_kind_t yysymbol)
{
return yytname[yysymbol];
}
#endif
#ifdef YYPRINT
/* YYTOKNUM[NUM] -- (External) token number corresponding to the
(internal) symbol number NUM (which must be that of a token). */
static const yytype_int16 yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
755, 756, 757, 758, 759, 760, 761, 762, 763, 764,
765, 766, 767, 768, 769, 770, 771, 772, 773, 774,
775, 776, 777, 778, 779, 780, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 60, 62, 61, 43, 45, 42, 47, 37, 94,
826, 91, 93, 40, 41, 46, 44, 59, 58, 123,
125
};
#endif
#define YYPACT_NINF (-6179)
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
#define YYTABLE_NINF (-3597)
#define yytable_value_is_error(Yyn) \
((Yyn) == YYTABLE_NINF)
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
static const int yypact[] =
{
-6179, 626, 15192, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, 25814, -6179, -6179, -6179, -6179, -6179, 5390,
1224,145844, 436, 95327,100322, 1531,104762, -6179, 80878, 1721,
-6179, 1128, -6179, -6179, -6179, -6179, -6179, -6179, -6179, 1380,
2010, 17026, -6179, -6179,100877, 210, 83102, -6179,101432, 1612,
1243, 167, 224, 10074,101987, 96992, 1282,105317, 934, 437,
17493, 2010, 39854,105872, 3715, 76977, -6179, 95882, 1704, 238,
114752, 1936, 1537, 77535,114752, 1559,106427, 1767, 1915, 1680,
115307,115862, 93662, 1192,114752, 2003, 1722, 79766,116417, 1947,
106982, -6179, 1537, -6179, 80878, 75859, 188, 1948, -6179,116972,
114752, 2319, 1962, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, 1694, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, 1057, -6179,
876, 1989, 2095, 949, 2032, -6179, 6552, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, 1845, 1747, -6179, -6179, -6179,
2052, -6179, 2055, -6179, -6179, -6179, 1763, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, 2618, 5678,104762, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, 97547, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, 304, -6179, -6179, -6179, -6179, -6179,104762,104762,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179,104762, 2153, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, 454, 2439, -6179, -6179, 80878, 2317, 2317,
2686, 1845, 2238, 2248, 2271, 2293, 2212, 2316, 426, -6179,
-6179, -6179, -6179, -6179, 2713, 83102,114752,114752,114752, 2425,
114752, 2332,114752, 393, 83102,149270,107537, 2521, 2354, 70722,
117527, -6179, 83102,114752,146825, 83102,114752,114752,118082,114752,
118637,114752, 1971,102542,114752, 2448,114752,114752,147314,119192,
2620, -6179, 2885, 1842, -6179, 2361, -6179, 296, -6179, 1870,
-6179, 309, 315, 328, -6179, -6179, -6179,145351,114752, 5937,
1936, 2713, -6179, 2319,114752, 2630,114752, 2403,119747,114752,
-6179,114752, 2469,120302, 497, 2414,149270, 2471, 71296, 2577,
114752,114752,149270,120857,121412,121967,114752,114752, -6179, -6179,
2533,114752, -6179, 2664,149759, 1857, 2702, 2844, 2775, 1310,
-6179, -6179, 2942, 2464, -6179, -6179, 2985,104762, -6179,103097,
-6179, -6179, -6179, 426, 2700, -6179, 2588, 2597, 2608, -6179,
-6179, -6179, -6179, -6179,152204, 437, -6179, -6179, 2753, 83658,
2867, -6179, -6179,122522, 88662, 2659, -6179, 918, 84214,150248,
3000, 2632, 71870, 3040, -6179, 84770, -6179,150737, 85326, -6179,
-6179, -6179, -6179, -6179,123077, -6179,123632, 2728, 2867, -6179,
89218,151226, -6179, 2889,124187,124742,125297, 2713, 16797, -6179,
2611, 2640, 2641, 1609,104762,104762, 1968,142378, -6179, -6179,
2743, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
400, 2106, 78093, 264, 78651, -6179, -6179, 893, 894, 903,
400, 3146, 3146, 761,104762, -6179, -6179, 2106, -6179, 965,
808, 2761, 2720, 2720, 2720, 2931, 91, -6179, 2720, 2857,
-6179, -6179, -6179, -6179, -6179,106982, 78093, 78651, -6179, 2755,
426, 1936, 279, 3182, 2811,145351, 1446,114752, -6179, -6179,
-6179, 3230, 2793, 3063, -6179, 2772, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, 3004, 3008, 180, 745, 1936,
300, -6179, 3145, -6179, 3022, 47922, 47922, 1710,104762, 1936,
79209,108092,137507, 259,152204, 1936,125852, 2831, 1306, 3030,
-6179, -6179, -6179, 684, -6179, 3283, 2853, 3124, 782, 1842,
67342, -6179, -6179, 2849, 1870,106982, 91997, -6179, -6179, -6179,
-6179,145351, 3175, 53133,114752, 2847, -6179, 2862, 2847, 2852,
2866, 2095, -6179,145351,114752, 1863, 1863, 3322, 1863, 2049,
2176, -6179, 2081, -6179, 3211, 3185, 3186,106982, 2896, 2010,
2898, -6179, -6179, -6179, 2912, -6179, 2903, 2904, -6179, 1075,
3218, -6179, -6179, -6179, -6179, -6179, 3294, -6179, -6179, -6179,
-6179, -6179, -6179, 3424, 3421,146336,146336, 831, 953, 305,
308, -6179, -6179, -6179, 3266, -6179, -6179, 3270, 3081,114752,
-6179, -6179,114752, -6179,126407, -6179, -6179, 2317, 2912, 1386,
228, 3126, 3246, 3146, 1600, 2555, 2555, -6179, -6179, 2994,
-6179, 1290, -6179, 1780, 2998, 2171, 3001, 1920, 1679, -6179,
752,114752, 371, 3039,108647, 9498, 3006, 3007, 1870, 3174,
478, 3327, 3372, 9611, 426,109202, -6179, -6179, -6179, -6179,
114752,114752, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, 3014, 1596, -6179, -6179, 3015, 3374, 3234, 12119, 927,
3333, 3183, 1411, 13384, 3237, 850, 3382, 8231, 1890, 3384,
2059, 2490,126962,138062, 3344, 3389, 7101, 1894, 1020, 3250,
1110, 3333, 3379, 3201, 1411, 3403, 5142,114752, 3041, -6179,
3319, 3441, 1142, -6179, 248, -6179, 40414, 53133, 74741, -6179,
1870, -6179, 2386, -6179, -6179,144862, -6179, 3112, 3269, 1274,
83102, 3055,114752,114752, -6179, 89774, 83102, -6179, 3284, 72444,
83102, -6179, 83102, -6179, -6179, 3408, 89774,114752,114752, -6179,
114752, -6179, -6179, 3064, -6179, -6179, -6179, -6179, -6179, 2720,
114752, 3505, 89774, 3299, 362, 2063, 3543,114752, 3303, 2063,
3110,127517, -6179, -6179, 2063, -6179, -6179,114752,114752, 3073,
1627, 3292, 193, 2063, 3308, 3541, 3545, 3310, 3157, 3315,
2862, -6179, 3506, 3287, 1028, 262, 2299, 2063, 3136,128072,
128627,114752, 3137,114752, 3517, 83102, 3173, 83102, 83102,114752,
3439,114752, -6179, 3277,109757, -6179, 3094, 2942, -6179, -6179,
-6179, -6179, 2994, -6179, 1181, -6179, -6179, -6179, -6179, -6179,
-6179, 3459, -6179, 260, 3461, 3104, 3465, 1919, -6179, 3160,
-6179, 3160, 3160, 3109, 3109, 3301, 3117, 3477, -6179, -6179,
-6179, 2773, 3160, 3109, -6179, 90886, -6179, 2148, 2183, -6179,
278, -6179, 3597, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, 3122, -6179, 1695, -6179, 2380, -6179, -6179, -6179, -6179,
3162, -6179, 3483, 310, -6179, 3484, -6179, 3125,129182, -6179,
129737,130292, 3486, 320, -6179,149270, 3488, 310, 3489, 3125,
3492, 310, 3493, 973, 3494, -6179, 1312, 3487, 3497, 278,
3500, 2370, 3125, -6179, 3502, 321, -6179, 3508, 329, -6179,
3509, 3364, -6179, 17723, 16797, -6179, 20593, 2224, -6179, -6179,
-6179, -6179, -6179, -6179, 53133, 998, 3245, -6179, -6179, 2395,
1968, 2106, -6179,104762, 2106,104762, 761, 2106,104762, 2106,
104762, 761, 2106,104762,104762,104762, 2106, -6179, -6179, 422,
364, -6179, -6179, -6179, -6179, -6179,104762, 3151,114752, -6179,
114752, -6179, -6179, -6179, 98102,149270, 98657, -6179,114752, -6179,
159,104762, -6179,104762, -6179, 1936, -6179, 2994, -6179, 2640,
89774, 3627,149270, 3517, 2398, -6179, -6179, 3517, -6179, -6179,
3517, 3517, -6179, -6179, -6179, 3425,114752, 3501, 98102,149270,
3510, -6179,130847, -6179,152204, 3373, 3159, -6179, -6179, -6179,
-6179, 2408, 3664, 274, 3675, 53133, 3170, 274, 274, 3172,
3520, -6179, -6179, -6179, 334, 3176, 3177, -6179, 252, 252,
-6179, 3178, 3179, -6179, 269, 3181, 3187, 3692, 276, 3190,
3191, 3195, 3196, 3198, 3199, 3200, 2773, 274, 3203, 53133,
-6179, 3204, 252, 3205, 3208, 3209, 3693, 3210, -6179, 3721,
3216, -6179, 246, 336, 3219, 3222, -6179, 3450, -6179, 289,
3228, 3229, 3231, 3232, 3238, 3239, 3240, 3243, 53133, 53133,
53133, -6179, 45027, 1870, 1936, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, 292,142875, -6179, 3279, -6179, -6179, 3451,
-6179, -6179, 53133, -6179, -6179, 3594, 433, -6179, 293, -6179,
-6179, 1870, -6179, -6179, 2154, -6179, -6179, -6179, -6179, -6179,
3544, 3244, 2474, 2474, 311, -6179,100877,100877, -6179, -6179,
1648, 3249, -6179, 481, -6179, -6179, -6179, -6179, -6179, -6179,
151715, 3723, -6179, 446, 1936, 248, 2116, 3657,143386,143878,
3547, 3547, 3521, -6179, -6179,114752, -6179, -6179, 1870, 194,
3546, 2416, -6179, 2743, 19001, 2421, 2847,114752,114752, 3730,
-6179, -6179, 2431, -6179, 3253, -6179, 2862, -6179, -6179, 2095,
2095, 53133, 2095, 933, 1207, 48501, 53712, 3603, 3480, 1777,
2149, 3615, -6179, 3496, 2049, 2176,106982,114752,106982,131402,
3399, 53133, -6179, 2912, 3282, 2350, -6179, 91997, 2788, 2788,
3574, -6179, -6179, 3672,100877, 3341,146336, -6179, -6179,114752,
-6179, -6179,110312, -6179, -6179, -6179, 2607, 3278, -6179, 3290,
114752, 3852, 2555, 2555, -6179, -6179, 3280, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, 1845,114752, -6179, 3285, 3289,
3291, 3293, -6179, 91997, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, 3286, -6179, -6179, -6179, -6179, -6179, 426, 3295,
-6179, 3729, 3380, 3383, 3440, 75300, -6179, 3387, 3353, 3392,
3444, 80878, 3306, 3393, 3395, 3452, 3580, -6179, -6179, 3400,
3747, 3402,138617, -6179, -6179, 1081, -6179, -6179, -6179, 1081,
-6179, 3325, -6179, 1816, 1303, 1634, 3407, 284, 1228, 3739,
-6179, 1705, -6179, -6179, 3464, -6179, 19061,114752, 3684, 5907,
3548, 426, 3462, -6179, -6179, -6179, 3606, 3414,114752, 3418,
3562, 426, 369,139172, -6179, -6179,114752, -6179, -6179, -6179,
-6179, 3743, 3722, 43314, -6179, 2151, 3427, 3405, 3448,114752,
92552, 2547, 3553, 3575, 2048, 2568, 326, 3507,114752, 2033,
3581,114752, 3362, 3449, 3453, 3686, 3365, 631, 3788, 3368,
-6179, -6179, -6179, 3754, 3576, 3690, 3735, 7147, 3442, 3445,
86994, -6179, 3463, 95, 73018,114752,114752, 3468, 3471,139727,
3743, 3764, 99212, 99212, 3472, 3473, 65666, 3779, 2158, 3475,
-6179, -6179, -6179, 2158, 3476, 3478,140282, 3743, 3777,114752,
3479, 3481,114752, 90886, 426, -6179, 3848, 426, 426, 2429,
3851, 3485, 412, 3648, 587, 2063, 3368, 3340, -6179, 3490,
3512, 1026, -6179, 3617,114752, 3515, 3516, 2023, 3579, 1936,
-6179, 3584, -6179, 3519, 3585, 3522, 120, 3073, -6179, -6179,
1760, 3511,106982, 3611, 3616, 2033, 483, 613, 3368, -6179,
3524, 3527, 3365, 3365,114752,114752,114752,114752,114752, 263,
3884, 3886, 3528, 442, 716, 3419, -6179, 2158,147803, 3529,
-6179, 2158,114752, 488, 1041, 3368, 1963, -6179, 2007, -6179,
-6179, -6179, 1842, -6179, 53133, 53133, 53133, 3420, -6179, 2928,
19001, 889, -6179, 314, 14463, 3426, -6179, -6179, -6179, -6179,
114752,145351, -6179, -6179, -6179, -6179, -6179, -6179, -6179,114752,
-6179,114752, 3726, 89774, 3727, 3641, 3737, 3738, 426,114752,
114752, 3741, 3742, 3744, 89774, 3745, 3746, 3748, 3665, 3537,
241, 3531, 3457, 3933, 3818,114752, 80878, -6179, 1081, -6179,
89774, 3678, 3821, -6179,114752, 3696, 116, -6179, 3858, 3533,
-6179, -6179, 140,114752, 96437, 3073, -6179, -6179, 3824,149270,
1448, 3825, 1936, 3518, 3828, 3691, 1936,149270, 3736,114752,
114752,114752,114752, 363, -6179,147803, 3707, -6179,114752, 3708,
3340, 3709, 3954, 1261, 2720,131957, 3826, -6179,132512, 3482,
114752, 3491, 3491, 3955, 89774, 1586, 3765, -6179, -6179, 3513,
3146, -6179, 3094, 3503, -6179, -6179, 2478, -6179, 3623, -6179,
83102, -6179, -6179, 83102, -6179, -6179, 89774,114752, 3514, -6179,
3525, -6179, -6179, 53133, -6179, -6179, -6179, 3146, -6179, 89774,
3160, 3160, -6179, -6179, 3963, 3578, 3590, 3146, -6179, 3146,
-6179, 89774, -6179, 3523, 3530, 3146, 3589, -6179, 3592, 3146,
-6179, 2436, -6179, -6179, 83102, 83102, -6179,149270,149270, 3847,
321, 3866, 3573, 3871, 3582, 73018, 73018, -6179, 346, 83102,
-6179,149270, 83102, -6179,114752, -6179,114752, -6179, -6179, -6179,
-6179, 89774, 89774, -6179,149270,147803, 3872,114752,114752, -6179,
114752,114752, -6179,114752,114752, -6179, 20490, 2287, -6179, 16797,
-6179, 2443, 3547, -6179, 2153,133067, 1469, 1968, -6179,104762,
-6179,104762, 761, -6179, -6179,104762, -6179,104762, 761, -6179,
104762, -6179, -6179, -6179,104762,114752, 4086, 3526, -6179, 2154,
-6179,114752, 2460, -6179, -6179, 2463, 1453,114752,114752, 923,
83102,114752, 3750,114752, 83102, 83102,114752,114752,114752,114752,
114752, 3613, 3249, 727, -6179, 948, 590,106982, 3759, -6179,
-6179, -6179, 3536, -6179, -6179, 2473, 2319, 1154,114752, -6179,
114752,114752,114752, -6179, -6179, 95882, 3856, 209, 98657,114752,
-6179, -6179, 12236, 53133, 47343, -6179, -6179, 19001, 3588, 53133,
53133, 3538, 3146, 3146, -6179, 421, 53133, 53133, 44448, 53133,
49080, 53133, 53133, 3146, 3146, 53133, 5708, 53133, 73018, 53133,
57186, 41574, 53133, 53133, 45606, 338, 3178, 53133, 3791, 58344,
53133, 2116, 3792, 53133, 2116, 5708, 4045, 4045, 1948, 1645,
3905, 3554, 1870, -6179, 3146, 327, 374, 89774, 53133, 53133,
53133, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, 53133, -6179, 80878, -6179,
-6179, -6179, -6179, -6179, -6179, 3634, -6179, -6179, -6179, -6179,
-6179, -6179, 9158, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179,114752, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
46185, -6179, -6179, -6179, -6179, 3550, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, 2839, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, 46764, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, 3551, -6179, -6179,
53133, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, 3635, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, 1054, 53133, 53133, 53133,
53133, 53133, 53133, 53133, 53133, 53133, -6179, 53133, 451, -6179,
-6179, -6179, 3888, 3594, 1138, 548, 3561, 3772, 99767, 47922,
3906, -6179, 40414, -6179, 273,104762, -6179, -6179, 1870, 3906,
-6179, -6179, -6179, -6179, -6179, 2607, 3563, -6179, 3587, -6179,
-6179, -6179, -6179, -6179,114752, 3723, -6179, -6179, 3652, -6179,
-6179, -6179, -6179, 341, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, 3566, -6179, -6179, -6179, -6179, 3566, -6179, -6179,
3547, 3569, 3893, 3894, 973, 1845,114752, 3013, 53133, 3634,
294,114752, 53133, 3550, 2839, 53133, 3551, 53133, 3635, -6179,
53133, -6179, 2479, 2288,114752,114752, -6179, 3870, -6179, 3591,
-6179, 13983, 3870, -6179, -6179, 57765, 3703, 3862, 3798, -6179,
-6179, -6179, 3596, 19001, 53133, 53133, -6179, 2683, 19001, 2715,
-6179, -6179, -6179, -6179, -6179, -6179, 1578, -6179,114752, 181,
3603, 2149, 3644, 1345, 4058, 3649,114752, -6179, 67897, 2484,
2599, -6179, 2912, -6179, -6179, 367, -6179, 528, -6179, 4138,
-6179,146336, -6179, -6179, -6179, 4086, -6179, 2985, -6179, 2985,
4165, -6179,104762, -6179, -6179, -6179, -6179, 380, -6179, -6179,
16797, 16797, -6179, -6179, -6179, -6179, -6179,149270,114752,114752,
3801, -6179, 4047, -6179, 90886, -6179, 3599, -6179, 90330, 85882,
-6179, -6179, 1008, -6179, 1001,149270, -6179,114752,114752, -6179,
80878,149270,114752,114752, -6179,149270, 3646,114752,114752, -6179,
-6179, -6179, -6179, -6179,144370, 1558, 95882, 3749, 94217, -6179,
-6179, 3602,114752, 3659, 3887, 3889, 1327, -6179, -6179,133622,
-6179, 3831,149270,114752,114752, 53133, 3833,114752,114752, -6179,
539, 3698, 3702, -6179,114752, 3704, 83102, 3619, 89774, 83102,
73592, 83102, 83102, 3965, 89774,114752,114752, 1488,106982, 515,
1178, 3368, 3849, -6179, 392, -6179,149270, -6179,114752, 3840,
-6179, -6179, -6179,110867, 4091, 3751, -6179, -6179, -6179,140837,
-6179, -6179, 3859, -6179, 2487, -6179,149270,149270,114752, 9953,
134177, 1697, 3864, -6179, -6179, 89774, -6179,114752,111422,114752,
114752, 3901,114752,103652,134732,135287, 1822, 1825, 3910,114752,
104207, 3916, -6179, 3793,114752, -6179, -6179, 81434,149270,114752,
1271, 80878, -6179, 3899, -6179,114752, -6179, 366, -6179,114752,
6402, 3867, 3732, 3755,114752, 517, 1200, 3368, 4034,114752,
114752, 3650, 2488,149270,114752, 80878, -6179, 3873, 1643,149270,
114752,110867, -6179, 3874, -6179,106982, 3967, -6179, 3651, 2720,
2849, 2203, 3651,149270,114752, -6179, 3651,114752,137507, -6179,
149270, 1708, -6179,149270,114752,110867, -6179, 3879, 3827,149270,
114752, 10758, -6179, -6179, -6179, 426, -6179, -6179, -6179, -6179,
-6179,114752,114752, 426,114752,114752, 426, 1985, -6179,149270,
114752, -6179, -6179, -6179, 3790,149270,114752,114752, 400,114752,
-6179,114752,149270, 3711,114752,114752, -6179, -6179,114752, 9093,
114752,114752,114752,114752,114752,114752,149270,114752, -6179, -6179,
1217, 1569, 1190, 2011, 1906,114752, 3990,114752,135842,149270,
114752,114752, 1936,114752, 80878, 1939, -6179, -6179, 3802, -6179,
149270, 1708, -6179, 10494,114752,114752,114752, 3756, 3766, 237,
3853, -6179, -6179, -6179, 1189, 1189, 3885, -6179, 53133, 53133,
49659, 3680, -6179, -6179, 53133, 3112, -6179, -6179, -6179, 1052,
4154, 1052,136397, 1052, 1052, 3975, 3761, 3763, 1052, 1052,
1052, 3964, 1052, 1052, 1052,114752, 3865, -6179, -6179, 3865,
236, 53133, 89774,114752, -6179, 2509, -6179, 3695, -6179, -6179,
80878,114752, 270, 1108, 4046, 3917, 93107, 3549, 4042,114752,
3752,114752, 4179, 3804, 56, -6179, 3549,114752, -6179, 2374,
95882, -6179, -6179, -6179, -6179, -6179, -6179, -6179,114752, -6179,
-6179, 4055,114752, 61174, 3891, -6179, 1936, 3073, 3073, 3073,
3073, 3714, 3073,114752, 3850, 4075, 3549, 3717, 4077, -6179,
3340, 4079, 4082,114752, 3948, 93107, 3789, 3769, 3962, 4205,
2720, 1936, 3969, 3949, -6179, 75300, -6179, 3073, 4225, 43881,
7226, 7702, 3959, 4023, -6179, -6179, 3968, 1042,114752,109757,
-6179, 3753, -6179, 4068, 4072, 4096, -6179, 260, -6179, 4227,
2053, 4097, 53133, 2513, 3757, 278, -6179, -6179, 3758, 3530,
3778, 3785, 3767, 3768, -6179, 3146, 66221, 3770, 1646, 4014,
3771, -6179, 310, -6179, 3125, -6179,114752, -6179,114752,114752,
114752,114752, 320, -6179, -6179, 310, 3125, 310, 973, -6179,
4050, 278, 3125, 3896, 4112, 321, -6179, 329, -6179, 3991,
973, -6179, -6179, -6179, -6179, -6179, -6179, -6179, 4007, 2720,
2478, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179,104762, 2985, -6179, 2517, -6179,114752, -6179, 4090, 4092,
4093, 4094, 4098, 3781, 3782, 3832,114752, 3784, 3781, 426,
3795, 3786, -6179, 3784, 3784, 3781, 3249, 3249, 3781, 3782,
148292, 4248, 80878, -6179, -6179, 3881, 3796, 4140, 261, -6179,
993, 1227, 4053, -6179, -6179, -6179, -6179, -6179, 89774, -6179,
149270, 3857, -6179, -6179, -6179, 4022, 3803,148292, 973, 200,
-6179, 83102,114752, 89774, 83102, 4029, 83102, 83102, 89774,114752,
114752, 2518, -6179, 2303, -6179, 2308, 53133, 414, -6179, 14493,
2522, 53133, 3806, 3808, -6179, -6179, -6179, -6179, -6179, -6179,
3809, 4155, -6179, -6179, 2529, 2551, 89774, 2017, 3837, 15373,
-6179, 3816, 282, 4030, 3504, 3876, 2552, 3820, 285, -6179,
3504, 386, 2557, 3822, 3829, 6858, 7177, 3830, 15471, 3823,
3834, 3835, 3838, 57186, 57186, 45027, 1720, -6179, 57186, 3836,
4033, 2558, 14593, 3839, 3841, 15810, 50238, 53133, 50238, 50238,
15763, 3842, 3843, -6179, 4207, -6179, 2561, 80878, 4035, 16147,
2564, -6179, 53133, 80878, 7494, 53133, -6179, 53133, 3845, -6179,
-6179, 8376, 8376, 8376, 5708, -6179, 3875, -6179, 57186, 57186,
-6179, 1997, 45027, -6179, -6179, 4172, -6179, -6179, 335, -6179,
-6179, -6179, -6179, -6179, 3401, -6179, -6179, -6179, 4081, 2537,
2352, 73018, 7524, 53133, 325, 53133, 3550, 53133, 3920, 8376,
8376, 8376, 501, 501, 281, 281, 281, 1959, 548, -6179,
-6179, -6179, 3854, 3860, 3772, 3861, 53133, -6179, 3895, 68452,
-6179, 2573, 2660,114752, 9153, 12423, 17797, -6179, -6179, -6179,
60608, 3897, 889, -6179, -6179, -6179, 3897, 1510, 4165, 2607,
-6179, 1842, 3146, 327,144862, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179,114752, 19001, -6179, -6179, 4100, 3863, -6179,
-6179, 53133, -6179, -6179, 2512, 3868, 1005, 160, 2555, 2555,
2683, 1284, -6179, -6179, 3914, -6179, 53133, -6179, 2766, 2778,
-6179, -6179, -6179, -6179, 3249, -6179, 4103, -6179, -6179, -6179,
60608, 3903, 3915, 119, 65107, 4080, -6179,114752, 60608, -6179,
114752, 232, -6179, 3877, -6179, -6179, -6179, -6179, 2152, -6179,
-6179, -6179, 3869, -6179, 3878, -6179, 3880, -6179, -6179, -6179,
-6179, 288, 3890, 3883, 3902, 2234, -6179, -6179, -6179, -6179,
85882, 2380, -6179, 90330, -6179, 90330, -6179, 2380, 4318, -6179,
85882, 2193, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179,149270,149270, 4083,114752,
4084, 4089, 53133, 874,114752, 3892, 3904, 1856, 4178, 3909,
-6179, 4231, 973, -6179, -6179, 3960, -6179, 19001, -6179, -6179,
-6179, -6179, -6179,149270,114752, -6179,152204, -6179, -6179, 89774,
-6179, -6179,114752,114752, -6179, -6179, -6179, 89774, -6179, -6179,
-6179,114752, 855, 3961, 3966,114752, -6179, 1084, 3617, 10552,
114752,114752,114752, 4180, -6179, -6179, -6179, -6179, 4104, -6179,
4235, -6179, 85882, -6179, 3125, 1193, 3974, 3368, 4122, -6179,
4249, 4011, -6179, 4043, 1628, -6179, -6179, 4041, -6179, -6179,
-6179, -6179, 4273, 973, 4275, 973,114752,114752,114752,114752,
4057, -6179, -6179, -6179, -6179, 4059, 4191, -6179, 80878, 80878,
80878, 2570, -6179, -6179, 1936, -6179, -6179, -6179, -6179, -6179,
-6179, 4232, -6179, 2576, -6179, 2024,114752, -6179, -6179, -6179,
-6179, -6179, 4281,149270,114752, 11116,114752,114752,114752, 4145,
2205, 930, 89774, -6179, 87550, -6179, -6179, 2582, -6179, 3939,
114752, 4016,149270, 3993, -6179, -6179, -6179, 4288, 2720, 4074,
99212, 3980, 3980, 2269, -6179, -6179, -6179, -6179, 4206, 4130,
-6179, 1103, 4132,149270, 4003, -6179, -6179, -6179, -6179, -6179,
4295, 4026, -6179, -6179, 4028, 1216, 3368, 3340, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, 4056, -6179, -6179,
-6179, -6179, 672, 672, -6179, -6179, -6179, 672, 1615, 514,
1301, 3368, -6179, 2140, 1872, 4031, -6179, 4032, -6179, -6179,
-6179, 4203, 4209, 4210, 4038, 4048, 4088, 4049, 4054, 4101,
-6179, 4060, 4105, 4061, 4108, 4062, 4343, 973, 89774, 4192,
1936, 4099, 4328, 973, -6179, 4067, -6179, 4070, -6179, 2586,
4438, -6179,114752, -6179, 518, 1431, 3368, -6179, 4071, -6179,
149270,114752, -6179, -6179, -6179, 53133, 3972, 3985, 3987, 19001,
19001, 53133, -6179, -6179, 19001, 3971, -6179, -6179, -6179, -6179,
89774, -6179,114752, 4282, -6179, -6179, 1052,114752,114752, -6179,
-6179, -6179,114752, -6179, -6179, -6179, 4283, -6179, 376, 376,
-6179, -6179, 4316, 7851, 3992, 384, -6179, 80878, 69573, 2329,
779, 2063, -6179,152204,114752,152204, -6179, 1108, 4208,114752,
114752,114752, 3994, 3989, -6179, -6179, -6179, -6179,149270, 1296,
149270, 3146, -6179, -6179, 4073, -6179,114752, 2720, 2700, 4341,
3711, -6179, 4471, 3545, 1448, 2167, 275, 3157, 4411, 2862,
53133, 301, -6179, -6179, -6179, -6179, -6179, 1870,114752, 3769,
-6179, -6179, -6179, -6179, 1936, -6179, 4010, 4009, -6179,114752,
4358,114752,114752,114752,104762, 2319, 4015,114752, 4013, 89774,
114752, 2556, 3365, 4492, 4377, 2319, 3789, 4111, 4378,106982,
2592, -6179, 4036, -6179, 1042, -6179, 2609, 217, -6179, 1936,
152204, 86438, 4372, -6179, 576, 7702, -6179, -6179, 576, 1058,
114752, -6179, -6179, -6179, -6179, 4251, 875, -6179, 4356, -6179,
114752, -6179, -6179, 64548, -6179, 89774, 4037, -6179, 2612, -6179,
2615, -6179, -6179, -6179, 3146, -6179, -6179, 2667, 2667, 4039,
-6179, 66787, -6179, 4040, -6179, 2379, -6179, -6179, -6179, 321,
4095, 973, 4106, 973, -6179, -6179, -6179, -6179,114752, -6179,
114752,147803, -6179, -6179,114752, -6179, 4389, 4376, -6179, -6179,
-6179, -6179, 4173, 4177, 4184, 4186, 4187,114752, 3781, -6179,
4044,114752,114752,149270, 1171, -6179, -6179,149270, 465, -6179,
1101, -6179,106982, 4170, -6179, -6179, -6179, -6179, 4409, 4410,
-6179, -6179, -6179, 1508, -6179, 98102, 484, -6179,149270, 4344,
4345, 4346, 4348, 426, 4349, 4350, 4351, 4352, 4354, -6179,
-6179, -6179, 4065, 16312, 53133, -6179, 4432, 89774, -6179, 9102,
-6179, -6179, -6179, 53133, -6179, -6179, 3837, 4353, 4221, -6179,
-6179, 4287, 4291, 53133, 4221, 4524, 1066, 53133, 53133, -6179,
-6179, 4294, 4296, 53133, 2537, 2537, -6179, -6179, -6179, -6179,
2606, 53133, -6179, 53133, -6179, -6179, 42154, 4577, 4577, 4076,
89774, 57186, 57186, 57186, 57186, 1917, 3205, 57186, 57186, 57186,
57186, 57186, 57186, 57186, 57186, 57186, 57186, 507, -6179, 4286,
53133, 53133, 50817, -6179, -6179, 89774, 4085, 3842, 4087, 4102,
53133, -6179, -6179, -6179, 2635, 58910, 4109, 80878, -6179, 53133,
15424, 2636, 4133, 16466, 1870, 10058, 1936, 53133, 1322, 2459,
53133, 2644, 53133, -6179, -6179, -6179, -6179, 4420, -6179, -6179,
-6179, -6179, -6179, -6179, 4317, 2537, -6179, 4153, 4156, -6179,
53133, 4110, 2418, 57186, 57186, 3540, -6179, 4008, 53133, 45027,
-6179, 3885, -6179, 42734, 4113, 53133,141392, -6179, -6179, 1537,
1537, 1537, 1537, -6179,114752,114752,114752, 61740, 4424, 4107,
60042,111977, 4114, 2493, -6179,111977,112532,111977, 4115, 1870,
53133, 4419, 4117, 4419, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, 4116,
-6179, 4119, -6179, -6179, 248, 4120, -6179, -6179, 288, -6179,
-6179, 2319, -6179, 4123, -6179, 3868, 1815, -6179, -6179, -6179,
1289, -6179, 4181, -6179, -6179, -6179, 4114, 51396, 4245, -6179,
-6179, -6179, 4148, 2652, -6179, -6179, 4517, 4245, -6179, 2388,
-6179, 2655, 67897, 3903, 53133, 1870, 3146, 4124, -6179, 2985,
1510, -6179, -6179, -6179, -6179, -6179, 2656, 2284, -6179, -6179,
85882, -6179, 4171, 3125, 3125, 1551, 3781, 4439, 1551, 10094,
-6179, -6179, 62306,114752,114752, -6179,114752,114752, 2147,114752,
-6179,114752, -6179, -6179, -6179, 4572, 4160, 4161, 4382, -6179,
3001, -6179, -6179,149270,114752, -6179, -6179, -6179, 526, 1432,
3368, -6179, 4198, -6179, -6179, 4408,114752, -6179, 4574, 4220,
114752, 4486,114752,113087, -6179, 4558, 2147, 4244, 4468, 1804,
3365, 2129, 4436, -6179, 794, -6179, -6179, 4211, -6179,114752,
-6179,114752, -6179, -6179, -6179, -6179, -6179, -6179, -6179, 4270,
-6179, -6179, -6179, -6179, 81434, -6179, -6179,114752, -6179, 80878,
69573, 80878, -6179,114752, -6179, 1667, 540, 1479, 3368, -6179,
4222, -6179, 4494, 4226, 4229, 4280, 1397, 899, 4230, 4236,
4290, 4144, 4150, 4152, -6179, 80878, 70148, 4304,114752, 3125,
4146, 4199,114752, 3980,113642, -6179, 4157, -6179, -6179, 3980,
400, 1936, -6179, -6179, 1936, 3125, 1936,114752,114752,114752,
114752, 400, -6179, -6179, -6179, 4609, 4254,114752,114752,114752,
114752, -6179, 4216, -6179, -6179, -6179,114752,114752, 4508, 286,
2391,149270,114752,114752,149270,114752,114752,114752,114752,114752,
114752,114752, 4383, -6179, 4599, 4525, 2569, 4568, 4246,114752,
-6179,114752, 1936, -6179, 3617,114752,114752,114752,114752, -6179,
-6179, -6179, -6179, -6179, 3885, -6179, 4167, 4461, 1052, -6179,
4463, 4464, 4465, 1052, -6179, -6179, 2063, -6179, 267,114752,
-6179, 2703,114752, -6179, -6179, -6179, 4123, 2555, 2555, -6179,
-6179, -6179, -6179, -6179, -6179, 4175,114752,114752, 57186, -6179,
2434, 1811, 1527, -6179, 4459,114752, 3450, -6179, -6179, -6179,
287,114752, -6179, -6179, -6179, -6179, 4182, -6179, 148, 4015,
-6179, 4484, 93107, 3125,149270,149270, 3125, -6179, 89774, 4183,
3769, -6179, 418, 4265, -6179,149270, 1448,136952, 3518, 4224,
4404, 10762, 60608, 61174, 672, -6179, 4188, 4185, -6179, -6179,
114752, 4208,147803, 2671, 3340, 4662, 1292, 2641, 3857, 94772,
4387, 4015, 4484, -6179, 3365, 4412, 4413, -6179, 2319,114752,
3857, 3769, 1936,114752, 3659, -6179, 2700, 69573, 1978, -6179,
85882, 53133, 53133, -6179, 4190, -6179, 4194, 7702, -6179, 4267,
4201, 4666, 53133, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, 4292, 4212,114752,114752, 1042,114752, 4704, -6179, -6179,
4213, 4097, -6179, 4097, -6179, 4214, -6179, -6179, -6179, 2323,
1845, 66787, 66787, 66787, 66787, 66787, -6179, -6179,114752, -6179,
114752, -6179, 973, -6179, 4338, 973,114752, 2319,114752,114752,
114752,114752,114752, 3781, 426, 3786, -6179, -6179, 4541,148292,
4543, -6179, 80878, -6179, -6179, -6179, -6179, -6179, 2674,114752,
-6179, -6179, -6179, 4610, 4554, 973, 209, 1112, 1112, 1112,
1112, 4510, 1112, 1112, 1112, 1112, 1112, -6179, 53133, 19001,
-6179, 4215, -6179, 19001, -6179, 4591, 4223, 4450, 4453, -6179,
4228, 53133, 4221, -6179, -6179, 4455, 4456, -6179, 4221, 4221,
4237, 11141, 16996, -6179, 2691, 53133, -6179, 3355, 3355, 3355,
2923, 4569, -6179, 3075, 3355, 3355, 3355, 466, 466, 243,
243, 243, 4577, 507, 17235, 17754, 18144, 4238, -6179, -6179,
-6179, 3842, -6179, 54291, 135, 4685, 58344, -6179, -6179, -6179,
4277, 4285, 4240, -6179, 53133, 54870, 4233, 90886, 4443, -6179,
1966, 53133, 53133, 2548, -6179, 6901, 53133, -6179, -6179, 4526,
4527, 2548, 498, 53133, 2634, 2675, 53133, 53133, 4892, 11181,
4241, -6179, 2696, 53133, 11499, 4440, -6179,114752,114752,114752,
114752, -6179, -6179, -6179,111977,112532,111977, 4247, 59476, 63993,
2493, 4250,114752, -6179, -6179, 4252, 60608, 4535, 4457, -6179,
60608, 4457, 1972, 4457, 4537, 4355, 69007, -6179, -6179, 4253,
-6179, 4466, -6179, 2151, 19001, 4708, 4576, 1936, 4576, 1510,
491, 1936, -6179, 4256, 73018, -6179, -6179, -6179, -6179, 4357,
-6179, 4485, 19001, 47922, -6179, 2319, 2749,114752, 1870, 130,
-6179, 53133, 4271,114752, -6179, 4245, 19001, -6179, 16797, -6179,
-6179, -6179, -6179, 4340, 2699, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, 4359, 95882, 4613, -6179, 53133, 2707, -6179, 4314,
4711, 198, 2711, 2716, 2147, -6179, 2722, -6179, 1818, 4585,
234, -6179, 973, -6179, 89774,114752,114752,114752, 3306, -6179,
-6179,114752,114752,114752,114752, -6179, -6179,149270,114752, -6179,
114752, -6179, -6179, -6179,114197, -6179, 4208, 400, 2434, 4600,
4601, 4509, -6179, 426, -6179, 2434, 4511, 400, -6179, -6179,
-6179, -6179, 3542, -6179, 89774, 973, 973, -6179, -6179, -6179,
-6179, -6179, 4297, -6179, 4736, 4380,114752,114752,114752,114752,
114752,149270,114752,114752, 3146, 3146, 89774, 4289, -6179, 3146,
3146, 4293, -6179,149270,114752,114752, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, 4374, -6179, 53133,
4727, -6179, -6179, -6179, -6179, -6179, 53133, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179,149270,114752, 4379,
-6179, 4385, -6179, 203, -6179, -6179,114752,114752,114752,114752,
4649, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, 4650,114752, -6179, -6179, 1936, 1936, 89774, 973,
973, -6179, -6179, -6179, 4386, -6179, -6179, 4303, 4589, 1052,
-6179, 1052, 1052, 1052, -6179, 4306, -6179, 2063, 4695, -6179,
2147, 2196, 4646, -6179, 53133, -6179, 1148, 2923, -6179, 4705,
4785, -6179, -6179, -6179, -6179, 3711, 2720, 3711, -6179, -6179,
83102, 1548, -6179, 4628, 270, 80878, 4538, 93107, 2140, 2180,
4320, 4445, -6179, 3125, 3125, 4388,114752, 4793, -6179, -6179,
-6179, -6179, -6179, -6179,149270, 3993, -6179, 4561, 1555, 4668,
114752, 61174, -6179, 4114, -6179, -6179, -6179, 1936, -6179, -6179,
4462, 3769, -6179, 4690,114752, 4555, 93107, 3857, -6179, 2726,
-6179, -6179, -6179, 4384, 4787, 3789, -6179, 2140, 4387, -6179,
-6179, 4763, 4434, 4390, 4815, -6179, 4434, 4681, 4562, 4361,
-6179, 4036, -6179,114752, -6179, 19001, 19001, 1936, 91442, 576,
89774, 4688, -6179, 19001,114752, 962, 4360, 4516, -6179, 4654,
114752, -6179, 973, 2731, -6179, -6179, -6179, 4367, 2363, 2363,
-6179, -6179, -6179, 973, 973, -6179,114752, -6179, 3781, 3781,
3781, 3781, 3781, -6179, 4566, -6179, -6179, -6179, -6179, 4647,
-6179,148292, -6179, 973, -6179, -6179, -6179, -6179, -6179, -6179,
1112, -6179, -6179, -6179, -6179, -6179, 19001, -6179,114752, -6179,
-6179, -6179, -6179, -6179, 3591, 4368, -6179, -6179, 4369, 4381,
-6179, -6179, 53133, -6179, 11546, 57186, 4693, -6179, 53133, 53133,
53133, -6179, 4373, 2734, 2735, -6179, -6179, 135, -6179, 4685,
-6179, -6179, -6179, 11790, 4414, 19001, 4470, 4392, 1769, 2548,
2548, 6901, -6179, -6179, 2548, 53133, 53133, 2548, 2548, 53133,
-6179, -6179, -6179, 12125, -6179, 4810, 3885, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, 81990, 4375, 4035,111977, 4394,114752,
2493, 60608, -6179, -6179, 2311, -6179, 60608, 4667, -6179, 60608,
83102, -6179,114752, 4395,114752, -6179, 1863, 53133, 4402, -6179,
4402, -6179, 2555, -6179, -6179, -6179, -6179, -6179, 4518, 4396,
-6179,104762, 801, -6179, 119, -6179, -6179, 4801, 62306, 4759,
18359, 53133, -6179, -6179, -6179, -6179, -6179,148292, 4602,148292,
2147, 12316, 4700, 62306, 74166,114752, -6179,114752, -6179, 4565,
4700, 4700, -6179, -6179, -6179, -6179, -6179, -6179, 4398, -6179,
-6179, -6179, -6179, 4487, -6179, -6179, 83, 3759, -6179, -6179,
-6179, -6179, -6179, 4875, 4762, 4766, -6179, -6179, -6179, -6179,
-6179, 4599, -6179, -6179, 69573,149270,114752, -6179, 4496, -6179,
-6179, -6179, -6179, -6179, -6179, 63438, 73018, -6179, 1397, 4416,
4422, 899, -6179, -6179, -6179,114752, 12472, 4423, 13009, 676,
3759,114752,114752, 4425, 4427, 4428, 2079, 2025, 2094, 3781,
4756,114752, -6179, -6179, -6179, 4599, -6179, -6179,114752, -6179,
1052, -6179, -6179, -6179, -6179, 80878, -6179, 2725, 4306, 1936,
83102, 4887, 4887, 13081, 4641, -6179, -6179, 424, 4476, 4679,
4476, 4430,114752, 287, 4433, 2739, -6179,114752, 4431, 4570,
2322, 2322,114752,114752,114752, 2742, 2319, 3125, 4199, 1448,
4794, 93107, 4835, 4208, 373, -6179,114752, 4913,104762, 2319,
4015,114752, 4441, 998, -6179, 94772, 4655, 2329,114752, 2556,
4387, 3789, 1410,114752, -6179, 1644, -6179, 2319, -6179,114752,
106982, 62306, 4779, -6179, 90330, -6179, 2745, -6179, -6179, -6179,
4520, 8679, 3897, 4563, 4564, 4444, 2297, 4795,114752, 1288,
-6179, 4458, -6179, -6179, -6179, -6179, -6179, -6179, -6179,114752,
484, -6179, -6179, -6179, -6179, -6179, -6179, 18501, -6179, 3272,
57186, 19001, 19001, 19001, 53133, -6179, 53133, -6179, -6179, -6179,
-6179, 714, -6179, -6179, 4760, 4451, 2548, 2548, 2548, -6179,
53133, 1672, -6179, 2756, 4928, 56607, 4886, -6179,114752, 2765,
-6179, 53133, 4460, -6179, -6179, 60608, 2311, 4469, 2780,114752,
2783, 89774, 55449, 19001,114752, -6179, -6179, -6179, -6179, 2134,
4857, -6179, -6179, -6179, 4513,114752, 2784, -6179, 179, 2191,
4505, -6179, 19001, 1171, 1551, 372, 4711, 4472, 3711, -6179,
4474, -6179, -6179, 1487, 3365,114752, 3711, 3711, -6179,114752,
4556, -6179, 2329, 4781, -6179, -6179, 4528, -6179, 769, 3759,
114752, 89774, -6179, 185, 4808, -6179, 89774, 89774, -6179, -6179,
-6179, 53133, -6179, 4559, -6179, -6179, -6179, 53133, 53133,152693,
-6179, -6179,114752,114752,114752,114752,114752, -6179, 973, -6179,
-6179, 2790, -6179,141884, -6179, -6179, 3543, 1936, 3543, 849,
-6179, -6179, 3543, 3543, -6179, 3897, -6179, 4887, 957, -6179,
-6179, 4702, 4475, 53133, 4778, -6179, 244, 4694, -6179, 4477,
-6179, 83102, 4977, -6179, 80878, 4015, 4484,114752, -6179, -6179,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
2794, 4208, 4831, 3769, 4390, -6179,114752, 4519, -6179, 60608,
4208, 2319, 2641, 3857, 4387, 4015, 4484, -6179, -6179, -6179,
4481, 4413, 3789, 2556, 4627, -6179, 4630, -6179, 4924, 4701,
4929, 3857, -6179, 3659, 2798,114752, -6179, -6179, 7702, 91442,
89774, -6179, -6179, -6179, 4490, 4867, 4533, 4539, -6179, -6179,
-6179, 2297, -6179, 1619, 4870, 4545, -6179, 4557,114752, -6179,
-6179, 2736, 5006, 4208, 973, 53133, 3272, 2804, 2810, 4567,
-6179, -6179, -6179, 3842, 51975, 51975, 51975, 4504, 4115, 81990,
4506, -6179, 57186, 2818, -6179, 2694,114752, 2821, -6179, 19001,
114752, -6179, -6179, 53133, -6179, 2822, -6179, 4507, 1048, 4512,
40994, 4514, -6179, -6179, -6179, -6179, -6179, 19001, 4515, -6179,
4984, 4859, 4861,114752, -6179, 2319, -6179, 3897, 62306, -6179,
4642, 4993, 4777, -6179, -6179, 4860, -6179, -6179,114752, 4476,
73018, 3868, 1487, 2720, 4476, 4476, -6179,114752, 4475, 53133,
-6179, 4615, -6179, -6179, 2826, 1918, 4697, 4697, 2830, 2842,
13131,114752, 2845, 2848, -6179, 2855, 3146, 3782, 2094, 3782,
-6179, 3781, -6179, -6179, 80878, -6179,148781, -6179, -6179, -6179,
1936, -6179, 1936, 4750,114752, 76418, 1936, 1936, -6179, -6179,
-6179, -6179, 4836, -6179, 3340, -6179, 13687, 4618, -6179, -6179,
-6179, 621, -6179, 4747, 4748, -6179, 4531, -6179, 2872, -6179,
2140, 4663, 4208, -6179, -6179,114752, 5008, 5010, -6179, 1556,
114752, 4114, -6179, 4390, 3857, -6179, 3789, 2140, 4387, 2329,
62872, 4434, 2556, 4413, -6179, -6179, 4757, -6179, 4758, -6179,
4544, 4855, -6179, 2179, 576, -6179, -6179, -6179, 1244, 4882,
4883, -6179, -6179, -6179, 3543, -6179, 2012, 4547, 4908, -6179,
-6179, -6179, -6179, -6179,114752, -6179, -6179, 19001, -6179, -6179,
-6179, 56028, 4698, 1401, 14842, 4912, -6179, 4912, 4912, -6179,
-6179, -6179,114752, 2923, 4548, 56607, 80878, 2876, -6179, 88106,
-6179, 2879, 2882, -6179, 53133, 4553, 53133, -6179, 55449,114752,
4560, 5009, 5011, 1136, -6179, -6179, -6179, 67897, 53133, 4644,
4993,148292, 2905, 3980, 4573, -6179, 3868, 4679, -6179, -6179,
3759, -6179, 19001,114752, 83102, 5012, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, 3759, 4645, -6179, -6179,152693, -6179,114752,
-6179, -6179, 2939, -6179, -6179, -6179,114752, 4360, -6179, 4360,
-6179, -6179, -6179, 1639, 4669,114752, 1011, 1011, 4953, -6179,
4631, -6179, 4575, -6179, 5073, 4699,114752, -6179, -6179, 1397,
2319, 93107, 4208, -6179, 998, 2556, 4387, 3789, 53133, 2940,
-6179, 4711, 198, -6179, 4413, 4434, -6179, -6179, 62306, 4578,
3450, 4942, -6179, -6179, -6179, 3188, 83102, 83102,114752, -6179,
-6179, -6179, 53133, 287, -6179, 5051, -6179, -6179, -6179, -6179,
-6179, 265, -6179, -6179, -6179, 2944, 58344, -6179, -6179, -6179,
114752, 4790, 1636, 5055, 4743, 2945, 55449, 2949, -6179, -6179,
-6179,114752,114752,114752, 1924, 19001, 990, 4684, 372, -6179,
-6179, -6179, -6179, 4694, 2147, 2147, -6179, 3759, -6179,114752,
-6179, 4595, -6179, -6179, -6179,148781, 4360, -6179, -6179, -6179,
-6179, 5086, -6179, 980, -6179, -6179, -6179, -6179,114752, 4208,
4289, 4390, -6179, -6179, 4413, 3789, 2556, 13834, -6179, 62872,
114752,114752, 4434, -6179, 2957, 62306, 3769, 4744, -6179, 3097,
-6179, -6179, -6179, -6179, -6179, -6179, -6179, 824, 4596, 4598,
-6179, -6179, 13917, 83102, 52554, 4751, -6179, 4812, -6179, -6179,
4035, -6179, -6179, 57186, 4832, -6179, 1636, -6179, 57186,114752,
-6179, 4606, -6179, -6179, 2958, -6179, 1482, 1485, 2174, -6179,
-6179, 4841, 4738, -6179, -6179, 995, -6179, 2147, -6179, -6179,
-6179, 53133, -6179, -6179, 2720, 2720, 4208, -6179, -6179, 4434,
2556, 4413, 4711, -6179, -6179, -6179, -6179, 4855, -6179, 2962,
4434, 4545, 2170, -6179, -6179, 2240, 2866, 4703, 4950, -6179,
4616, -6179, -6179, -6179, 5047, 2923, -6179, -6179, 2923, -6179,
53133, -6179,114752,114752, 82546,114752, -6179, 67897, 4850, 257,
-6179, 2147, 2970, -6179, -6179, -6179, -6179, 4413, 4434,114752,
3450, -6179, 62306, 3897, 4980, -6179, 3097, 4739, 4741, 80322,
114752, 14217, -6179, -6179, 342, 5019, -6179, 4623, -6179, 4683,
119, 4632,114752, -6179, -6179, 4434, -6179, -6179, 3769, -6179,
-6179, 287, -6179, 4671, 4673, 2971, -6179, -6179, -6179, -6179,
-6179, 2974, -6179, 53133, 82546, -6179, 4691, 53133, 2980, -6179,
4434, 83102, 4968, 4972, -6179, 80322, -6179, 1189, 4707, 4692,
2981, 168, 3897, 4637, 83102, 83102, -6179, 4638,114752, -6179,
-6179, 119, -6179, -6179, 80322, -6179, -6179, 1936, -6179, 4706,
2984, 4692, -6179, -6179
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
Performed when YYTABLE does not specify something else to do. Zero
means the default is an error. */
static const yytype_int16 yydefact[] =
{
3270, 0, 2, 1, 3704, 3708, 3712, 3713, 3635, 3714,
3715, 3680, 3681, 3682, 3683, 3684, 3685, 3686, 3687, 3688,
3689, 3690, 3691, 3693, 3692, 3694, 3695, 3696, 3697, 3698,
3699, 3700, 3701, 3703, 3702, 3653, 3277, 3652, 3649, 3650,
2363, 3717, 3705, 3718, 3706, 3707, 3709, 3710, 3679, 3711,
3719, 3720, 3721, 3716, 3724, 3675, 3676, 3674, 3677, 3678,
3722, 3723, 3666, 3667, 3668, 3669, 3725, 3278, 3279, 3671,
3271, 3275, 3340, 3419, 3672, 3673, 3670, 3276, 3665, 3419,
0, 0, 3471, 3433, 0, 0, 0, 3418, 3395, 3401,
3524, 0, 3367, 3368, 3364, 3366, 3365, 3369, 3352, 1969,
1462, 663, 1550, 1549, 0, 1462, 0, 282, 0, 1561,
0, 1462, 443, 1120, 3294, 0, 3379, 0, 0, 0,
663, 1462, 0, 0, 1716, 0, 3377, 0, 0, 1969,
0, 0, 1730, 0, 0, 3378, 0, 0, 0, 1260,
0, 0, 0, 1462, 0, 0, 1737, 0, 0, 0,
0, 3380, 1730, 3520, 3396, 0, 1563, 0, 3376, 0,
0, 0, 0, 3, 38, 73, 74, 31, 30, 91,
56, 17, 64, 126, 125, 127, 43, 39, 81, 26,
28, 40, 44, 66, 68, 33, 57, 103, 65, 24,
63, 69, 89, 51, 12, 13, 52, 14, 53, 15,
54, 99, 75, 92, 36, 62, 23, 45, 71, 72,
5, 47, 79, 11, 58, 59, 61, 84, 85, 86,
109, 87, 121, 42, 118, 96, 97, 115, 98, 116,
9, 100, 55, 16, 112, 111, 113, 82, 48, 83,
70, 90, 110, 27, 114, 18, 19, 21, 22, 20,
60, 29, 67, 32, 88, 117, 107, 102, 122, 120,
4, 128, 104, 76, 7, 8, 93, 6, 25, 50,
10, 35, 34, 49, 41, 124, 37, 1561, 95, 108,
94, 101, 80, 105, 123, 106, 78, 119, 1692, 1679,
1739, 1683, 1715, 0, 1695, 46, 1716, 130, 131, 132,
137, 3274, 3329, 3330, 3331, 3419, 3362, 3363, 3356, 3372,
3390, 3371, 3383, 3391, 3370, 3397, 0, 134, 136, 138,
141, 135, 129, 133, 140, 145, 139, 144, 142, 143,
146, 147, 148, 77, 3347, 3346, 0, 3419, 0, 3646,
2381, 2382, 2383, 2384, 2385, 2386, 2387, 2388, 2389, 2390,
2391, 2392, 2393, 2394, 2395, 2397, 2396, 2398, 2399, 2739,
2400, 2401, 2402, 2687, 2688, 2740, 2689, 2690, 2403, 2404,
2405, 2406, 2407, 2408, 2409, 2410, 2411, 2691, 2412, 2413,
2414, 2415, 2416, 2692, 2741, 2417, 2418, 2419, 2420, 2421,
2422, 2742, 2423, 2424, 2425, 2426, 2427, 2428, 2429, 2430,
2743, 2431, 2432, 2370, 2744, 2371, 2433, 2434, 2435, 2436,
2437, 2693, 2694, 2438, 2439, 2440, 2441, 2442, 2443, 2444,
2445, 2446, 2447, 2448, 2449, 2450, 2451, 2452, 2453, 2454,
2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464,
2465, 2695, 2466, 2467, 2468, 2469, 2696, 2470, 2471, 2472,
2473, 2697, 2474, 2475, 2476, 2477, 2745, 2746, 2478, 2479,
2480, 2481, 2482, 2698, 2699, 2483, 2484, 2485, 2486, 2487,
2488, 2747, 2489, 2490, 2491, 2492, 2493, 2494, 2495, 2496,
2497, 2498, 2499, 2500, 2501, 2748, 2700, 2502, 2503, 2504,
2701, 2702, 2505, 2749, 2750, 2506, 2751, 2507, 2703, 2704,
2705, 2706, 2508, 2509, 2510, 2511, 2512, 2513, 2514, 2707,
2752, 2515, 2753, 2516, 2517, 2518, 2519, 2520, 2521, 2522,
2523, 2524, 2525, 2526, 2527, 2528, 2529, 2530, 2531, 2532,
2533, 2534, 2708, 2754, 2709, 2535, 2536, 2537, 2538, 2539,
2540, 2541, 2710, 2711, 2542, 2543, 2544, 2755, 2545, 2712,
2546, 2713, 2547, 2548, 2549, 2550, 2551, 2552, 2553, 2554,
2555, 2556, 2714, 2756, 2557, 2757, 2715, 2558, 2559, 2560,
2561, 2562, 2563, 2564, 2565, 2566, 2567, 2568, 2569, 2716,
2570, 2717, 2573, 2571, 2572, 2574, 2575, 2576, 2577, 2578,
2579, 2580, 2581, 2582, 2583, 2718, 2584, 2585, 2586, 2587,
2588, 2589, 2590, 2591, 2592, 2593, 2594, 2595, 2596, 2597,
2598, 2599, 2600, 2601, 2602, 2758, 2603, 2604, 2605, 2606,
2607, 2719, 2608, 2609, 2610, 2611, 2612, 2613, 2614, 2615,
2616, 2617, 2618, 2619, 2620, 2621, 2372, 2622, 2623, 2720,
2624, 2625, 2759, 2626, 2627, 2721, 2628, 2629, 2630, 2631,
2632, 2633, 2634, 2635, 2636, 2637, 2638, 2639, 2640, 2641,
2722, 2642, 2643, 2644, 2645, 2760, 2646, 2647, 2648, 2649,
2650, 2651, 2723, 2724, 3294, 2652, 2653, 2725, 2654, 2726,
2655, 2656, 2657, 2658, 2659, 2660, 2661, 2662, 2663, 2664,
2665, 2666, 2667, 2668, 2669, 2670, 2671, 2672, 2727, 2673,
2761, 2674, 2675, 2676, 2677, 2678, 2679, 2680, 2681, 2682,
2683, 2684, 2728, 2729, 2730, 2731, 2732, 2733, 2734, 2735,
2736, 2737, 2738, 2685, 2686, 3312, 2368, 2369, 2376, 2377,
2378, 3287, 3308, 3314, 3642, 3313, 2375, 3470, 0, 0,
3541, 3542, 3563, 3543, 3544, 3545, 3564, 3565, 3546, 3547,
3548, 3549, 3550, 3551, 3552, 3553, 3554, 3566, 3555, 3556,
3557, 3558, 3559, 3560, 3561, 3562, 3567, 3568, 3617, 3618,
3619, 3620, 3621, 3623, 3622, 3432, 3590, 3626, 3431, 3627,
3435, 3628, 3629, 3630, 3631, 3591, 3632, 3434, 3624, 3587,
3436, 3429, 3430, 3588, 3539, 3540, 2343, 3589, 3586, 3625,
3315, 3585, 3440, 3439, 1668, 3641, 1669, 0, 3442, 3569,
3570, 3571, 3572, 3574, 3573, 3575, 2762, 2763, 2764, 2765,
2766, 2767, 2768, 2769, 2770, 2771, 2772, 2773, 3600, 2774,
2775, 2776, 3616, 2777, 2778, 3601, 2779, 2780, 2781, 2782,
2783, 2784, 2785, 2786, 2787, 2788, 2789, 2790, 2791, 2792,
2793, 2794, 2795, 2796, 2797, 2798, 2799, 2800, 2801, 2802,
3602, 3603, 2803, 2804, 2805, 2806, 2807, 2808, 2809, 2810,
2811, 2812, 2813, 2814, 2815, 2816, 2817, 2818, 2819, 2820,
2821, 2822, 2823, 2824, 2825, 2826, 2827, 3604, 2828, 2829,
3605, 2830, 2831, 2832, 3606, 2833, 2834, 2835, 2836, 2837,
3610, 3611, 3612, 3613, 3614, 3615, 3599, 3393, 3576, 3598,
3607, 3608, 3609, 3403, 3399, 3407, 3402, 0, 0, 0,
0, 3419, 1958, 1959, 1960, 1957, 1970, 1956, 0, 3335,
1961, 3382, 1461, 1460, 1475, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 662, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3284, 0, 1472, 159, 0, 3594, 3588, 3597, 0,
2346, 3589, 3586, 3585, 415, 414, 1560, 0, 1539, 663,
0, 1475, 442, 1716, 0, 0, 0, 0, 0, 0,
879, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 151, 0, 153, 0, 0, 466, 465,
0, 0, 1092, 471, 0, 0, 0, 0, 0, 653,
3293, 3288, 3298, 0, 3291, 3292, 3585, 0, 3728, 2571,
3324, 3325, 3726, 0, 2633, 1670, 1668, 3641, 0, 283,
286, 287, 284, 285, 0, 1232, 1233, 1235, 0, 0,
1245, 919, 920, 0, 0, 0, 933, 0, 0, 0,
917, 0, 0, 0, 939, 0, 936, 0, 0, 940,
937, 914, 938, 921, 0, 913, 0, 0, 1245, 941,
0, 0, 915, 0, 0, 0, 0, 1475, 0, 3385,
3386, 2489, 1600, 472, 0, 0, 1716, 0, 1584, 1585,
1561, 1573, 1586, 1578, 1580, 1579, 1581, 1582, 1577, 1583,
2383, 1016, 2400, 1016, 2477, 1013, 1014, 1016, 1016, 1016,
2591, 0, 0, 988, 0, 999, 2364, 1016, 2365, 3642,
1021, 2391, 547, 547, 547, 0, 1020, 1025, 547, 0,
3381, 1443, 1484, 2345, 1729, 0, 2400, 2477, 989, 1442,
0, 2652, 1590, 0, 0, 0, 0, 2610, 1452, 267,
3583, 2621, 2723, 2652, 3584, 266, 261, 262, 3578, 3579,
3581, 235, 3582, 3580, 3577, 0, 0, 1020, 547, 0,
1475, 1450, 985, 1736, 1734, 0, 2330, 0, 0, 2410,
0, 2425, 2518, 258, 2603, 2612, 2621, 2723, 2652, 2684,
214, 224, 219, 0, 276, 2621, 2723, 2652, 0, 1472,
0, 1696, 1843, 1842, 2339, 0, 0, 3394, 1445, 1444,
1562, 0, 1565, 0, 2586, 1700, 1703, 1567, 1701, 1692,
0, 0, 3273, 0, 1572, 1733, 1733, 0, 1733, 0,
1684, 1692, 1687, 1691, 0, 0, 0, 0, 0, 1462,
0, 3354, 3390, 3361, 3425, 3358, 0, 0, 3415, 3411,
3408, 3416, 3417, 3410, 3398, 3341, 0, 3349, 3348, 3654,
3655, 3472, 3286, 3305, 0, 0, 0, 0, 0, 0,
0, 3441, 3443, 3445, 3405, 3404, 3400, 0, 0, 0,
3530, 3531, 0, 3529, 0, 3526, 3528, 0, 3425, 0,
0, 0, 0, 0, 0, 0, 0, 3332, 647, 3334,
644, 0, 1446, 0, 0, 0, 944, 0, 1487, 1077,
0, 0, 0, 0, 0, 1329, 0, 1128, 1129, 0,
2368, 0, 2488, 1329, 0, 0, 2208, 2219, 2220, 2221,
2414, 2470, 2216, 2217, 2218, 2210, 2211, 2212, 2213, 2214,
2215, 0, 0, 1227, 2209, 0, 2488, 0, 1329, 0,
186, 0, 163, 1329, 0, 0, 2488, 0, 0, 2488,
0, 0, 0, 0, 0, 2488, 0, 0, 0, 0,
0, 186, 2523, 0, 163, 2488, 0, 0, 0, 1466,
0, 0, 0, 1468, 1471, 1458, 0, 2289, 0, 2290,
2347, 1554, 0, 1553, 1547, 1557, 1552, 1542, 0, 2339,
0, 0, 0, 0, 927, 0, 0, 917, 0, 0,
0, 928, 0, 929, 930, 0, 0, 0, 0, 926,
0, 1456, 1448, 0, 1592, 1594, 1593, 1595, 1591, 547,
0, 0, 0, 2488, 0, 163, 1526, 0, 2488, 163,
0, 0, 470, 469, 163, 468, 467, 2414, 2470, 0,
1119, 0, 1202, 163, 2488, 0, 207, 2488, 722, 2488,
1567, 152, 0, 666, 0, 834, 2523, 163, 0, 0,
0, 0, 0, 0, 155, 0, 0, 0, 0, 0,
0, 0, 652, 663, 0, 3297, 3303, 0, 3295, 3473,
3729, 3727, 3334, 3428, 0, 3326, 1236, 259, 260, 1234,
931, 2488, 1161, 158, 0, 0, 2488, 163, 1918, 1947,
1925, 1947, 1947, 1914, 1914, 2453, 1927, 2488, 1915, 1916,
1952, 0, 1947, 1914, 1919, 0, 1917, 1955, 1955, 1942,
158, 948, 1899, 1900, 1901, 1902, 1928, 1929, 1903, 1934,
1935, 1939, 1904, 1969, 3595, 1914, 3596, 3593, 3592, 932,
0, 918, 2488, 158, 1125, 2488, 2373, 196, 0, 916,
2414, 2470, 2488, 158, 1229, 0, 2488, 158, 2488, 192,
2488, 158, 2488, 158, 2488, 667, 0, 0, 2488, 158,
2488, 2523, 194, 935, 2488, 158, 942, 2488, 158, 2341,
2488, 0, 1459, 0, 0, 3659, 3663, 0, 3661, 3656,
3384, 3438, 3437, 3328, 0, 3740, 0, 1670, 1575, 0,
1716, 1016, 1015, 0, 1016, 0, 3750, 1016, 0, 1016,
0, 3750, 1016, 0, 0, 0, 1016, 2366, 2367, 0,
0, 3749, 3745, 3748, 990, 1000, 0, 1022, 0, 1030,
0, 1029, 1028, 1027, 0, 0, 0, 1031, 0, 1847,
1627, 0, 997, 0, 995, 0, 1440, 3334, 1455, 0,
0, 0, 0, 155, 0, 1258, 1255, 155, 1257, 1256,
155, 155, 1451, 265, 263, 0, 0, 0, 0, 0,
0, 1457, 0, 1449, 0, 0, 0, 3648, 3651, 2222,
3647, 0, 2688, 2689, 2690, 2281, 0, 3590, 2691, 2692,
2741, 2103, 2089, 2098, 2104, 2090, 2092, 2099, 2693, 2694,
2038, 2695, 2696, 2359, 2697, 2698, 2699, 2701, 2702, 2703,
2704, 2705, 2706, 2707, 2094, 2096, 2708, 2709, 2711, 0,
2360, 2712, 2713, 2552, 2715, 2716, 2718, 2719, 2100, 2721,
2722, 2101, 2723, 2724, 2725, 2726, 2358, 514, 2102, 2727,
2729, 2730, 2731, 2732, 2734, 2735, 2736, 2737, 0, 0,
0, 2336, 0, 2067, 0, 1907, 1908, 1930, 1931, 1909,
1936, 1937, 1910, 0, 2335, 1972, 2167, 2066, 2084, 0,
2072, 2073, 0, 2065, 2061, 2169, 1719, 2331, 0, 2062,
2348, 2282, 2362, 2361, 3642, 2292, 2351, 2349, 2350, 2352,
1719, 2329, 0, 0, 0, 227, 0, 0, 3519, 278,
0, 279, 2337, 2621, 215, 257, 229, 256, 230, 228,
0, 2412, 216, 0, 0, 217, 0, 0, 0, 0,
0, 0, 0, 272, 1447, 0, 1845, 1844, 2340, 953,
0, 0, 1564, 1561, 2232, 0, 1702, 0, 0, 0,
1682, 1681, 0, 1569, 1571, 1545, 1567, 1731, 1732, 0,
0, 0, 0, 0, 0, 0, 0, 1789, 1747, 1748,
1750, 1786, 1790, 1798, 0, 1688, 0, 0, 0, 1849,
0, 0, 3272, 3425, 3426, 0, 3420, 0, 3419, 3419,
3413, 3412, 3409, 0, 0, 3307, 0, 3311, 3309, 0,
3465, 3468, 0, 3466, 3467, 3469, 0, 3474, 3475, 0,
0, 0, 0, 0, 3456, 3444, 3451, 3453, 3455, 3454,
3463, 3459, 3462, 3464, 3406, 3419, 0, 3532, 3538, 3535,
2427, 0, 3527, 0, 3338, 1963, 1964, 1965, 1966, 1967,
1968, 3339, 0, 3336, 1962, 3337, 645, 646, 0, 0,
1473, 0, 0, 0, 0, 0, 1160, 0, 0, 0,
0, 0, 945, 0, 0, 0, 0, 1495, 1496, 1497,
0, 0, 0, 1498, 1499, 1487, 269, 1506, 1503, 1486,
1488, 1501, 1493, 0, 0, 0, 0, 0, 0, 0,
1518, 0, 200, 201, 0, 679, 663, 0, 2488, 0,
0, 0, 0, 1170, 1177, 1328, 0, 0, 0, 0,
0, 0, 0, 0, 1171, 1169, 0, 1172, 271, 1182,
1209, 1212, 0, 0, 1127, 1130, 0, 0, 0, 0,
0, 1319, 0, 0, 0, 1319, 0, 0, 0, 1328,
0, 0, 0, 0, 0, 0, 0, 0, 0, 294,
296, 309, 374, 0, 0, 0, 2488, 1329, 0, 0,
0, 1231, 0, 0, 0, 0, 0, 0, 0, 0,
1212, 0, 0, 0, 0, 0, 0, 0, 0, 0,
161, 162, 167, 0, 0, 0, 0, 1212, 0, 0,
0, 0, 0, 0, 0, 630, 643, 0, 0, 0,
0, 0, 640, 0, 0, 163, 299, 620, 626, 0,
0, 0, 729, 728, 0, 0, 0, 0, 0, 0,
1416, 0, 1415, 0, 0, 0, 0, 0, 1516, 1515,
0, 0, 0, 0, 0, 0, 1319, 0, 288, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 407, 408, 0, 0, 0,
167, 0, 0, 1319, 0, 301, 0, 3342, 0, 1467,
1464, 1465, 0, 1470, 0, 0, 0, 0, 2075, 0,
2236, 1739, 2234, 1145, 2288, 0, 2285, 2284, 2344, 2291,
0, 0, 246, 247, 245, 1555, 248, 1556, 1551, 0,
1537, 0, 0, 0, 0, 0, 0, 0, 0, 2414,
2470, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 842, 1487, 1525,
0, 0, 0, 672, 0, 2488, 0, 165, 880, 0,
832, 471, 0, 0, 0, 0, 1392, 165, 0, 0,
203, 0, 0, 726, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 833, 0, 0, 165, 0, 2488,
623, 2488, 0, 547, 547, 0, 0, 154, 151, 0,
0, 0, 0, 0, 0, 0, 0, 3301, 3296, 3299,
0, 3289, 3303, 0, 1674, 1673, 1676, 1675, 0, 1672,
0, 156, 157, 0, 1219, 1244, 0, 0, 0, 1946,
1933, 1941, 1940, 0, 1923, 1922, 1921, 0, 1920, 0,
1947, 1947, 1945, 1924, 1899, 0, 0, 0, 1951, 0,
1949, 0, 909, 1895, 1891, 0, 1958, 1957, 1956, 0,
1905, 1914, 1911, 934, 0, 0, 1213, 0, 0, 2488,
158, 2488, 0, 2488, 0, 0, 0, 1221, 158, 0,
1215, 0, 0, 1217, 0, 1418, 0, 925, 923, 922,
924, 0, 0, 907, 0, 0, 0, 0, 0, 902,
0, 0, 904, 0, 0, 3657, 0, 0, 3660, 0,
3387, 0, 3746, 1596, 3743, 0, 0, 1716, 1574, 0,
1008, 0, 3750, 3751, 993, 0, 1003, 0, 3750, 991,
0, 1004, 1001, 1002, 0, 0, 0, 3744, 3633, 3639,
1007, 0, 0, 548, 550, 0, 0, 2436, 2452, 0,
2478, 2511, 2512, 2562, 2577, 2606, 2612, 2617, 0, 2646,
2657, 0, 1036, 1074, 1026, 738, 0, 0, 1637, 998,
996, 1441, 0, 1588, 2241, 0, 1716, 0, 0, 1259,
0, 0, 151, 264, 236, 0, 0, 1074, 0, 2610,
1454, 984, 663, 0, 0, 2070, 2071, 2280, 0, 0,
0, 0, 0, 0, 2069, 0, 0, 0, 2302, 0,
2302, 0, 0, 0, 0, 0, 1994, 0, 0, 2240,
0, 0, 2240, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1995, 1976, 1977, 3591, 2067,
2232, 0, 2068, 2355, 0, 1969, 2222, 0, 2219, 2220,
2221, 2838, 2839, 2840, 2841, 2842, 2843, 2844, 2845, 2846,
2847, 2848, 2849, 2850, 2851, 2852, 2853, 2854, 0, 2855,
2856, 2857, 2858, 2859, 2861, 2860, 2862, 2863, 2864, 2865,
2866, 2867, 2295, 2869, 2870, 2871, 2872, 2873, 2874, 2875,
2876, 2877, 2878, 2879, 2880, 2881, 2882, 2883, 2884, 2885,
2886, 2887, 2888, 2889, 2890, 2891, 2892, 2893, 2894, 2895,
2896, 2897, 2898, 2899, 2900, 2901, 2902, 2903, 2904, 2905,
2906, 2907, 2908, 2909, 2910, 2911, 2912, 2913, 2914, 2915,
2916, 2917, 2918, 2919, 2920, 2921, 2922, 2923, 2924, 2925,
2926, 2927, 2928, 2929, 2930, 2931, 2932, 2933, 2934, 2935,
2936, 2937, 2938, 2939, 2940, 2941, 2942, 2943, 2944, 2945,
2946, 2947, 2948, 2949, 2950, 2951, 2952, 2953, 2954, 2955,
2956, 2957, 2958, 2959, 2960, 2961, 2962, 2963, 2964, 2965,
2966, 2967, 2968, 2969, 2970, 2971, 2972, 2973, 2974, 2975,
2976, 2977, 2978, 2979, 2980, 2981, 2982, 2983, 2984, 2985,
2986, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995,
2996, 2997, 2998, 2999, 3000, 3001, 3002, 3003, 3004, 3005,
3006, 3007, 3008, 3009, 3010, 3011, 3012, 3013, 3014, 3015,
3016, 3017, 3018, 3019, 3020, 3021, 3022, 2009, 3023, 3024,
3025, 3026, 3027, 3028, 3029, 3030, 3031, 3032, 3033, 3034,
3035, 3036, 3037, 3038, 3039, 3040, 3041, 3042, 3043, 3044,
3045, 3046, 3047, 3048, 3049, 3050, 3051, 3052, 3053, 3054,
3055, 3056, 3057, 3058, 3059, 3060, 3061, 3062, 3063, 3064,
3065, 3066, 3067, 3068, 3069, 3070, 3071, 3072, 3073, 3074,
3075, 3076, 3077, 3078, 3079, 2011, 3080, 3081, 3082, 3083,
3084, 3085, 3086, 3087, 3088, 3089, 3090, 3091, 3092, 3093,
3094, 3095, 3096, 3097, 3098, 3099, 3100, 3101, 3102, 3103,
3104, 3105, 3106, 3107, 3108, 3109, 3110, 3111, 3112, 3113,
3114, 3117, 3115, 3116, 3118, 3119, 3120, 3121, 3122, 3123,
3124, 3125, 3126, 3127, 3128, 3129, 3130, 3131, 3132, 3133,
3134, 3135, 3136, 3137, 3138, 3139, 3140, 3141, 3142, 3143,
3144, 3145, 3146, 3147, 3148, 3149, 3150, 3151, 3152, 3153,
3154, 3155, 3156, 3157, 3158, 3159, 3160, 3161, 3162, 3163,
3164, 3165, 3166, 3167, 3168, 3169, 3170, 3171, 3172, 3173,
3175, 3174, 3176, 3177, 3178, 3179, 3180, 3181, 3182, 3183,
3184, 3185, 3186, 3187, 3188, 3189, 3190, 3191, 3192, 3193,
3194, 3195, 3196, 3197, 3198, 3199, 3200, 3201, 3202, 3203,
3204, 3205, 3206, 3207, 3208, 3209, 3210, 3211, 3212, 3213,
3214, 3215, 3216, 3217, 3218, 3219, 3220, 3221, 3222, 3223,
3224, 3225, 3226, 3227, 3228, 3229, 3230, 3231, 3232, 3233,
3234, 3235, 3236, 3237, 3238, 3239, 3240, 3241, 3242, 3243,
3244, 3245, 3246, 3247, 3248, 3249, 3250, 3251, 3252, 3253,
3254, 3255, 3256, 3257, 3258, 3259, 3260, 3261, 3262, 3263,
3264, 3265, 3266, 3267, 3268, 3269, 0, 2216, 2217, 2218,
2210, 2211, 2212, 2213, 2214, 2215, 2226, 0, 0, 2334,
2380, 2379, 0, 2169, 0, 1991, 0, 2177, 0, 0,
1802, 1718, 0, 2353, 2283, 0, 3640, 3643, 2063, 1802,
3516, 3515, 3514, 3513, 3484, 0, 3478, 3479, 0, 3517,
3518, 280, 281, 277, 0, 0, 232, 231, 0, 254,
255, 226, 253, 0, 249, 250, 234, 2153, 2152, 233,
225, 222, 220, 237, 239, 240, 223, 221, 275, 273,
0, 0, 0, 0, 158, 3419, 1572, 1559, 0, 0,
2295, 0, 2230, 0, 0, 2228, 0, 0, 0, 1799,
0, 1704, 0, 1708, 1572, 0, 1568, 1699, 1698, 1740,
1741, 1111, 1697, 1769, 1770, 0, 0, 0, 0, 1795,
1793, 1760, 1751, 1759, 0, 0, 1757, 0, 1761, 1972,
1788, 1686, 1745, 1746, 1749, 1685, 0, 1791, 0, 1640,
1789, 1750, 1624, 0, 1602, 0, 0, 1850, 0, 0,
0, 3427, 3425, 3357, 1899, 3419, 3350, 3419, 3414, 0,
3304, 0, 3285, 3310, 3450, 2629, 3482, 0, 3483, 0,
0, 3447, 0, 3457, 3460, 3458, 3461, 0, 1899, 3533,
3636, 3636, 1899, 1971, 3333, 3375, 1474, 0, 0, 0,
1140, 1142, 0, 1141, 0, 1144, 0, 1153, 0, 0,
1139, 1158, 0, 1147, 1145, 0, 1514, 0, 0, 946,
0, 0, 0, 0, 1494, 0, 0, 0, 2646, 268,
1497, 1502, 1489, 1500, 0, 0, 0, 0, 0, 1076,
1075, 0, 0, 1095, 0, 0, 514, 1521, 536, 0,
376, 0, 0, 0, 0, 0, 0, 0, 0, 828,
825, 0, 0, 824, 0, 677, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 702, 0, 1319,
0, 307, 0, 1179, 0, 1178, 0, 1183, 0, 0,
1180, 1175, 1176, 2612, 2621, 2652, 270, 1181, 1211, 0,
1210, 1206, 0, 1122, 0, 1123, 0, 0, 0, 0,
0, 2462, 2488, 315, 338, 0, 1318, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 360, 0, 0, 363, 362, 0, 0, 0,
0, 0, 368, 0, 346, 0, 347, 0, 367, 0,
0, 0, 0, 0, 0, 1319, 0, 303, 0, 0,
0, 0, 0, 0, 0, 0, 1228, 0, 755, 0,
0, 2612, 1207, 0, 1401, 0, 2645, 1402, 1405, 547,
0, 547, 1407, 0, 0, 1404, 1406, 0, 0, 189,
0, 184, 188, 0, 0, 2612, 1208, 0, 0, 0,
0, 0, 628, 629, 642, 0, 633, 634, 631, 635,
636, 0, 0, 0, 0, 0, 0, 0, 627, 0,
0, 724, 723, 727, 0, 0, 0, 0, 0, 0,
1410, 0, 0, 1202, 0, 0, 1409, 1417, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1262, 1261,
0, 0, 0, 0, 1329, 0, 870, 0, 0, 0,
0, 0, 0, 0, 0, 0, 191, 742, 0, 741,
0, 185, 190, 0, 0, 0, 0, 0, 0, 0,
0, 244, 1463, 1469, 1739, 1739, 1739, 2081, 0, 0,
0, 0, 1738, 2286, 2289, 1542, 1548, 1541, 1540, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 421, 418, 419, 421,
0, 0, 0, 0, 844, 0, 847, 850, 1485, 498,
0, 0, 669, 702, 0, 0, 474, 198, 0, 0,
0, 0, 757, 0, 1202, 1201, 160, 151, 207, 472,
0, 206, 208, 210, 211, 212, 209, 213, 0, 721,
725, 0, 0, 0, 0, 665, 0, 0, 0, 0,
0, 0, 0, 1870, 0, 0, 183, 0, 0, 618,
622, 0, 3280, 0, 0, 474, 586, 387, 2488, 0,
547, 0, 2488, 0, 150, 0, 831, 0, 0, 0,
1164, 1164, 0, 0, 771, 770, 0, 0, 0, 0,
3302, 0, 3374, 0, 0, 0, 1671, 158, 1162, 0,
163, 0, 0, 0, 0, 158, 1944, 1943, 1896, 1892,
0, 0, 0, 0, 949, 0, 0, 0, 0, 0,
0, 1912, 158, 1126, 197, 2374, 0, 911, 0, 0,
0, 0, 158, 1230, 899, 158, 193, 158, 158, 668,
0, 158, 195, 0, 0, 158, 943, 158, 2342, 0,
158, 3658, 3664, 3662, 1599, 3747, 3741, 3742, 2488, 547,
1676, 1576, 1005, 1012, 994, 1011, 1010, 992, 1009, 1006,
3449, 0, 0, 3638, 0, 1023, 0, 546, 0, 0,
0, 0, 0, 1044, 1045, 0, 0, 1041, 1046, 0,
1048, 1032, 1034, 1042, 1043, 1049, 1038, 1037, 1050, 1051,
0, 0, 0, 1063, 736, 0, 0, 0, 0, 1634,
0, 1632, 0, 1848, 1636, 1625, 3373, 1589, 0, 1587,
0, 611, 1253, 1252, 1254, 0, 1020, 0, 158, 0,
1453, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2245, 0, 2246, 0, 0, 2279, 2275, 0,
0, 0, 0, 0, 2252, 2253, 2254, 2251, 2255, 2250,
0, 0, 2256, 2249, 0, 0, 0, 2067, 2298, 2298,
2323, 0, 2322, 2328, 2236, 1972, 0, 0, 2319, 2313,
0, 2319, 0, 0, 0, 0, 0, 0, 2236, 2239,
0, 0, 2719, 0, 0, 0, 0, 2039, 0, 0,
2203, 0, 2236, 0, 0, 0, 0, 0, 0, 0,
2232, 2271, 0, 512, 0, 2029, 0, 0, 0, 2151,
0, 2148, 0, 0, 0, 0, 2292, 0, 0, 2356,
1973, 1987, 1988, 1989, 1992, 2333, 0, 2294, 0, 0,
1974, 2000, 0, 2272, 2025, 0, 2030, 2015, 2303, 2257,
2258, 2259, 2260, 2032, 0, 2008, 2013, 2017, 0, 2312,
1996, 0, 1993, 0, 2295, 2231, 0, 2229, 0, 1984,
1985, 1986, 1978, 1979, 1980, 1981, 1982, 1983, 1990, 2207,
2205, 2206, 0, 0, 2177, 0, 0, 2012, 0, 0,
2083, 2481, 2518, 0, 1730, 1730, 1730, 1717, 1728, 2332,
0, 1865, 1739, 3645, 3644, 2293, 1865, 0, 0, 0,
2338, 0, 0, 1969, 0, 274, 1846, 951, 952, 950,
1899, 1544, 1558, 1572, 2233, 1566, 1706, 0, 0, 1546,
1570, 0, 1109, 1110, 0, 1114, 2719, 2608, 0, 0,
0, 0, 1762, 1796, 0, 1787, 0, 1763, 2348, 2349,
1764, 1767, 1768, 1758, 1797, 1638, 0, 1792, 1690, 1689,
0, 1868, 0, 0, 0, 1616, 1604, 0, 0, 1851,
0, 1802, 1642, 0, 2292, 1800, 3355, 3421, 3360, 3389,
3351, 3392, 0, 3306, 3485, 3486, 0, 3476, 3477, 3446,
3452, 3523, 0, 3637, 0, 0, 1368, 1263, 1330, 1143,
0, 1914, 1154, 0, 1138, 0, 1137, 1914, 0, 1155,
0, 1914, 1369, 1264, 1331, 947, 1370, 1265, 1332, 1371,
1505, 1266, 1504, 1492, 1491, 1490, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
809, 2488, 158, 1519, 1372, 0, 1267, 375, 1520, 1333,
1524, 827, 826, 0, 0, 1334, 0, 678, 683, 0,
685, 686, 2414, 2470, 687, 690, 691, 0, 693, 682,
681, 0, 0, 0, 0, 0, 699, 701, 0, 0,
0, 0, 0, 0, 1173, 1174, 1373, 1270, 0, 1335,
0, 1121, 0, 1271, 199, 0, 0, 295, 2488, 317,
0, 496, 809, 0, 1321, 314, 344, 0, 359, 354,
355, 353, 2488, 158, 2488, 158, 0, 0, 0, 0,
0, 356, 351, 352, 348, 0, 0, 361, 2386, 2454,
2622, 0, 710, 712, 0, 717, 364, 1291, 383, 382,
381, 0, 369, 0, 388, 391, 0, 366, 345, 343,
340, 310, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1223, 0, 1376, 1336, 0, 1358, 0,
0, 0, 0, 749, 1379, 1277, 1339, 0, 547, 0,
0, 562, 562, 547, 1390, 1278, 187, 1308, 0, 0,
172, 0, 0, 0, 0, 166, 176, 1380, 1279, 1340,
0, 0, 1381, 1280, 0, 0, 300, 621, 632, 637,
1285, 641, 638, 1348, 639, 1388, 1281, 0, 1384, 1311,
1343, 606, 1202, 1202, 1391, 1411, 1282, 1202, 0, 1319,
0, 289, 291, 0, 155, 0, 1283, 0, 1341, 1383,
1310, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1527, 0, 0, 0, 0, 0, 0, 158, 0, 0,
0, 1321, 2488, 158, 1382, 0, 1316, 0, 1356, 0,
0, 409, 0, 1309, 1319, 0, 302, 1287, 0, 1350,
0, 0, 242, 241, 243, 0, 0, 0, 0, 2237,
2238, 0, 2235, 2076, 2288, 0, 1538, 973, 959, 972,
0, 955, 2452, 0, 958, 960, 0, 0, 0, 961,
965, 966, 0, 957, 954, 956, 0, 420, 0, 0,
766, 767, 0, 0, 0, 0, 846, 0, 0, 1517,
0, 163, 676, 0, 0, 0, 671, 701, 706, 0,
0, 0, 0, 473, 477, 481, 482, 483, 0, 0,
0, 0, 177, 164, 0, 888, 0, 547, 0, 759,
1202, 1394, 0, 207, 202, 0, 0, 722, 0, 1567,
0, 0, 601, 2085, 604, 2086, 2087, 603, 0, 387,
841, 839, 838, 840, 862, 837, 0, 1869, 1871, 0,
0, 0, 0, 0, 0, 0, 476, 0, 0, 550,
0, 589, 0, 0, 0, 0, 586, 0, 0, 0,
0, 858, 3592, 830, 0, 1132, 0, 1150, 1133, 0,
0, 0, 0, 1187, 1194, 1163, 1188, 1165, 1194, 0,
0, 772, 776, 775, 779, 777, 0, 773, 650, 3300,
3294, 1677, 1678, 0, 1220, 0, 0, 1513, 0, 1511,
0, 1913, 1926, 910, 0, 1953, 1954, 1955, 1955, 0,
1897, 0, 3730, 3738, 3737, 0, 1938, 1906, 1214, 158,
0, 158, 0, 158, 1222, 1216, 1218, 1419, 0, 908,
0, 0, 901, 903, 0, 905, 0, 0, 3448, 3634,
1024, 549, 0, 0, 0, 0, 0, 0, 1040, 648,
1047, 0, 0, 0, 1062, 1057, 1059, 0, 1074, 1068,
0, 735, 0, 0, 1635, 1628, 1630, 1629, 0, 0,
1626, 2242, 900, 0, 617, 0, 1074, 1065, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1735,
2243, 2244, 0, 0, 0, 2276, 0, 0, 2120, 0,
2091, 2093, 2106, 0, 2121, 2074, 2298, 0, 2302, 2296,
2140, 0, 0, 0, 2302, 0, 2322, 0, 0, 2135,
2137, 0, 0, 0, 2312, 2312, 2122, 2095, 2097, 2107,
0, 0, 2223, 0, 2110, 2109, 0, 2041, 2042, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2056, 2111, 2202,
0, 0, 0, 2113, 2112, 0, 0, 2270, 0, 0,
0, 2118, 513, 2123, 0, 0, 0, 0, 2129, 0,
2159, 0, 0, 0, 2064, 2233, 0, 0, 0, 0,
0, 0, 0, 2305, 2306, 2307, 2304, 0, 2031, 2016,
2034, 2010, 2014, 2018, 0, 2312, 2033, 0, 0, 2036,
0, 0, 2004, 0, 0, 2002, 2026, 1998, 0, 0,
2027, 0, 2082, 0, 0, 0, 2180, 2175, 2176, 1730,
1730, 1730, 1730, 1727, 0, 0, 0, 0, 2608, 2738,
0, 1826, 1801, 1803, 1813, 1826, 1833, 1826, 1863, 2339,
0, 1772, 0, 1772, 3498, 3500, 3501, 3502, 3503, 3504,
3506, 3507, 3509, 3510, 3511, 3499, 3505, 3508, 3512, 3489,
3490, 0, 3480, 3481, 218, 0, 251, 238, 3523, 1543,
1707, 1716, 1742, 0, 2224, 1114, 0, 1744, 1765, 1766,
0, 1755, 0, 1794, 1752, 1639, 1623, 0, 1621, 1608,
1610, 1609, 0, 0, 1611, 2292, 0, 1621, 1603, 0,
1647, 0, 0, 1868, 0, 1646, 0, 3423, 3343, 0,
0, 3522, 3525, 3537, 3534, 3353, 0, 1914, 1135, 1136,
0, 1159, 0, 1079, 1080, 0, 1078, 0, 0, 0,
535, 1094, 0, 0, 0, 809, 0, 0, 539, 0,
1522, 0, 1389, 1307, 680, 0, 0, 0, 0, 695,
654, 696, 698, 0, 0, 697, 700, 703, 1319, 0,
308, 1293, 0, 1354, 1167, 0, 0, 1124, 0, 0,
0, 0, 0, 0, 495, 492, 339, 0, 0, 0,
0, 163, 0, 319, 331, 394, 337, 0, 371, 0,
342, 0, 335, 357, 349, 358, 350, 370, 372, 0,
714, 715, 713, 709, 0, 716, 718, 0, 385, 0,
0, 0, 365, 0, 1375, 0, 1319, 0, 304, 1289,
0, 1352, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1357, 0, 0, 0, 0, 754,
0, 751, 0, 562, 0, 1403, 0, 1400, 1398, 562,
0, 0, 169, 168, 0, 175, 0, 0, 0, 0,
0, 0, 1412, 1413, 1414, 0, 0, 0, 0, 0,
0, 403, 0, 311, 313, 312, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 410, 378, 0, 865, 0, 0, 0,
412, 0, 0, 1367, 0, 0, 0, 0, 0, 1374,
1272, 2079, 2080, 2077, 1739, 2287, 0, 0, 0, 970,
0, 0, 0, 0, 423, 424, 163, 422, 445, 0,
809, 0, 0, 843, 848, 856, 2552, 2210, 2211, 854,
849, 851, 853, 852, 855, 0, 0, 0, 0, 517,
0, 0, 0, 504, 0, 0, 514, 497, 500, 501,
0, 0, 672, 675, 673, 674, 0, 694, 0, 476,
524, 576, 0, 179, 0, 0, 180, 178, 0, 0,
387, 756, 0, 753, 1393, 0, 205, 0, 726, 0,
0, 0, 0, 0, 1202, 664, 0, 861, 863, 835,
0, 706, 0, 0, 623, 0, 547, 1600, 611, 0,
578, 476, 576, 585, 0, 0, 593, 386, 0, 0,
611, 387, 0, 0, 1095, 857, 0, 0, 0, 1131,
0, 0, 0, 1184, 1189, 1185, 0, 1164, 1146, 0,
1186, 0, 0, 1192, 1117, 1166, 1118, 1435, 1436, 1433,
1434, 0, 0, 0, 0, 0, 0, 3317, 1667, 3327,
0, 0, 1509, 0, 1932, 0, 1950, 1948, 1893, 0,
3419, 0, 0, 0, 0, 0, 1898, 912, 0, 895,
0, 897, 158, 743, 0, 158, 0, 0, 0, 0,
0, 0, 0, 1039, 0, 1033, 1035, 1060, 0, 0,
1074, 1073, 0, 1064, 1072, 1070, 1071, 1069, 0, 0,
1633, 1631, 609, 0, 0, 158, 1074, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2247, 0, 2278,
2274, 0, 2088, 2248, 2301, 2300, 0, 0, 0, 2324,
0, 0, 2302, 2316, 2315, 0, 0, 2314, 2302, 2302,
0, 0, 0, 2203, 0, 0, 2040, 2052, 2053, 2054,
2263, 0, 2059, 0, 2049, 2050, 2051, 2043, 2044, 2045,
2046, 2047, 2048, 2055, 2267, 2266, 0, 0, 2115, 2116,
2117, 2269, 2124, 0, 2404, 2160, 0, 2128, 2150, 2149,
0, 0, 0, 2131, 0, 0, 2146, 0, 2204, 2357,
1975, 0, 0, 2001, 2273, 2019, 0, 2035, 2037, 2309,
2311, 1997, 2223, 0, 0, 0, 0, 0, 2006, 0,
0, 2200, 0, 0, 0, 2182, 2179, 0, 0, 0,
0, 1721, 1720, 1726, 1826, 1833, 1826, 0, 0, 1692,
0, 1813, 0, 1825, 1811, 1824, 0, 0, 1839, 1837,
0, 1839, 0, 1839, 0, 1805, 0, 1829, 1807, 1824,
1809, 0, 1855, 2340, 1864, 0, 1785, 2076, 1785, 0,
0, 0, 3521, 0, 0, 1743, 1112, 1113, 1753, 0,
1756, 0, 1866, 0, 1622, 0, 0, 0, 1613, 1619,
1601, 0, 0, 0, 1643, 1621, 1644, 3359, 0, 3422,
3487, 3488, 1156, 0, 0, 1148, 1085, 1086, 1089, 1087,
1084, 1088, 0, 0, 0, 809, 0, 0, 557, 0,
1108, 1108, 0, 0, 541, 598, 0, 812, 0, 0,
0, 810, 158, 1268, 0, 0, 0, 0, 655, 1387,
1269, 0, 0, 0, 0, 1168, 1322, 0, 0, 1292,
0, 316, 494, 493, 0, 491, 706, 0, 0, 322,
332, 0, 327, 0, 1320, 0, 0, 0, 326, 329,
328, 398, 0, 395, 0, 158, 158, 373, 711, 384,
389, 390, 393, 1327, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 889, 872, 0,
0, 890, 891, 0, 0, 0, 1225, 1226, 1224, 1359,
1360, 1365, 1362, 1361, 1364, 1363, 1366, 0, 1275, 0,
0, 747, 1323, 1395, 1397, 1396, 0, 1399, 173, 170,
171, 174, 1324, 1305, 1286, 1349, 607, 0, 0, 0,
1284, 0, 1342, 0, 1301, 1295, 0, 0, 0, 0,
0, 1386, 1315, 1347, 1385, 1313, 1345, 1312, 1344, 1314,
1346, 1306, 0, 0, 1873, 869, 0, 0, 0, 158,
158, 868, 745, 1288, 0, 1351, 1297, 0, 0, 0,
962, 0, 0, 0, 964, 428, 446, 163, 0, 765,
829, 0, 0, 845, 0, 502, 0, 508, 515, 0,
0, 519, 520, 518, 503, 1202, 547, 1202, 798, 799,
0, 0, 819, 0, 670, 0, 0, 474, 0, 521,
0, 0, 478, 182, 181, 0, 0, 0, 760, 764,
762, 761, 763, 758, 0, 749, 207, 2488, 0, 0,
0, 0, 605, 599, 602, 1408, 836, 0, 1872, 739,
0, 387, 619, 3282, 0, 0, 474, 611, 3281, 0,
479, 484, 485, 498, 0, 586, 577, 0, 578, 587,
588, 0, 595, 1483, 0, 612, 595, 0, 0, 0,
859, 0, 860, 0, 1134, 1151, 1152, 0, 0, 1194,
0, 0, 1196, 1191, 0, 0, 778, 781, 774, 657,
0, 3290, 158, 0, 1512, 1894, 3731, 0, 3732, 3733,
3734, 3735, 3736, 158, 158, 1251, 0, 906, 1054, 1055,
1056, 1053, 1052, 649, 0, 1058, 1017, 1067, 737, 0,
610, 0, 1018, 158, 987, 979, 986, 975, 978, 980,
0, 982, 983, 977, 974, 976, 2277, 2105, 0, 2297,
2139, 2321, 2320, 2138, 2327, 0, 2318, 2317, 0, 0,
2108, 2119, 0, 2202, 2233, 0, 0, 2060, 0, 0,
0, 2114, 2728, 0, 0, 2164, 2165, 0, 2161, 2162,
2157, 2158, 2130, 0, 2541, 2141, 0, 0, 2156, 2023,
2021, 2020, 2308, 2310, 2005, 0, 0, 2003, 1999, 0,
2028, 2166, 2199, 2233, 2168, 0, 1739, 1725, 1724, 1723,
1722, 1812, 1808, 1810, 0, 2733, 0, 1815, 1822, 0,
1804, 0, 1838, 1834, 0, 1835, 0, 0, 1836, 0,
0, 1806, 0, 1822, 0, 1862, 1733, 0, 2171, 2354,
2171, 3491, 0, 3494, 3492, 3493, 3497, 252, 1711, 0,
1754, 0, 3746, 1605, 0, 1606, 1612, 0, 0, 0,
0, 0, 1648, 1641, 3424, 1149, 1157, 0, 0, 0,
537, 0, 552, 0, 0, 0, 1101, 153, 1100, 0,
552, 552, 814, 813, 816, 811, 815, 1523, 0, 688,
689, 692, 1294, 0, 1355, 1303, 0, 1637, 318, 490,
489, 498, 325, 0, 0, 0, 320, 397, 399, 321,
324, 378, 341, 334, 0, 0, 0, 1290, 0, 1353,
1299, 1326, 1377, 1273, 1337, 0, 0, 878, 0, 0,
0, 0, 1378, 1274, 1338, 0, 0, 0, 0, 0,
1637, 0, 0, 0, 0, 0, 0, 0, 0, 1532,
0, 0, 377, 867, 866, 378, 411, 1317, 0, 2078,
0, 963, 968, 969, 967, 0, 417, 425, 428, 0,
0, 1242, 1242, 0, 0, 499, 516, 0, 597, 556,
597, 0, 0, 0, 0, 0, 707, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 752, 751, 204,
0, 474, 0, 706, 0, 864, 0, 0, 0, 0,
476, 0, 0, 3740, 475, 0, 0, 487, 0, 589,
578, 586, 0, 0, 608, 0, 1476, 0, 614, 0,
0, 0, 808, 1190, 0, 1204, 0, 1145, 1115, 1199,
0, 1716, 1865, 0, 0, 0, 0, 791, 0, 661,
3316, 3320, 1243, 1510, 3739, 896, 898, 744, 1061, 0,
1074, 1066, 981, 2299, 2326, 2136, 2325, 2262, 2204, 2057,
0, 2265, 2264, 2268, 0, 2125, 0, 2126, 2163, 2132,
2142, 0, 2133, 2154, 0, 0, 2024, 2022, 2007, 2201,
0, 2186, 1858, 0, 1861, 0, 0, 1814, 0, 0,
1816, 0, 0, 1818, 1820, 0, 0, 0, 0, 0,
0, 2343, 0, 1784, 0, 1694, 1693, 3496, 3495, 0,
1714, 2225, 1867, 1620, 0, 0, 0, 1096, 0, 0,
1649, 1650, 1645, 1062, 0, 158, 1108, 0, 1202, 558,
2552, 559, 1107, 1111, 152, 0, 1202, 1202, 684, 0,
0, 297, 486, 0, 323, 333, 380, 392, 0, 1637,
0, 0, 876, 885, 885, 873, 0, 0, 892, 1276,
748, 0, 561, 0, 292, 1302, 1296, 0, 0, 0,
1534, 1535, 0, 0, 0, 0, 0, 1325, 158, 1298,
971, 0, 448, 455, 429, 433, 1526, 0, 1526, 0,
430, 434, 1526, 1526, 427, 1865, 444, 1242, 0, 1239,
1238, 545, 625, 0, 0, 506, 0, 567, 505, 0,
820, 0, 0, 705, 0, 476, 576, 0, 534, 525,
526, 527, 528, 530, 529, 531, 532, 533, 523, 522,
0, 706, 882, 387, 1483, 746, 0, 0, 719, 0,
706, 0, 1600, 611, 578, 476, 576, 1597, 480, 498,
0, 593, 586, 589, 0, 590, 0, 594, 0, 0,
0, 611, 1536, 1095, 0, 0, 809, 1203, 1164, 0,
0, 1193, 1197, 1198, 0, 0, 0, 0, 1246, 785,
786, 780, 782, 0, 793, 797, 656, 0, 0, 660,
651, 0, 3318, 706, 158, 0, 2058, 0, 0, 2144,
2143, 2155, 2134, 2181, 0, 0, 0, 0, 1863, 0,
0, 1857, 0, 0, 1887, 0, 0, 0, 1823, 1841,
0, 1819, 1817, 0, 1830, 0, 1832, 2432, 2699, 2605,
0, 1771, 1773, 1776, 1778, 1777, 1779, 1775, 2170, 2172,
0, 0, 0, 0, 1705, 0, 1618, 1865, 0, 1615,
0, 1658, 0, 1651, 1081, 0, 1082, 1102, 0, 597,
0, 1114, 1111, 547, 597, 597, 1304, 0, 625, 0,
336, 0, 305, 1300, 0, 0, 887, 887, 0, 0,
0, 0, 0, 0, 405, 0, 0, 1528, 0, 1529,
1530, 1533, 413, 426, 0, 453, 0, 451, 450, 452,
0, 441, 0, 0, 0, 0, 0, 0, 416, 1237,
1241, 1240, 0, 507, 0, 509, 0, 0, 553, 554,
555, 0, 511, 563, 564, 817, 0, 822, 0, 708,
0, 0, 706, 575, 730, 0, 0, 0, 1477, 0,
0, 600, 740, 1483, 611, 3283, 586, 0, 578, 488,
0, 595, 589, 593, 591, 592, 0, 1480, 0, 613,
0, 1104, 807, 0, 1194, 1205, 1200, 1195, 1439, 0,
0, 783, 788, 787, 1526, 792, 0, 0, 0, 659,
658, 3321, 3323, 3322, 0, 734, 1019, 2261, 2147, 2127,
2145, 2687, 0, 2660, 0, 2198, 2187, 2198, 2198, 2178,
1856, 1859, 0, 1890, 0, 0, 0, 0, 1876, 0,
1821, 0, 0, 1831, 0, 0, 0, 1780, 0, 0,
0, 0, 0, 0, 1607, 1617, 1097, 0, 0, 0,
1658, 0, 0, 562, 0, 1098, 1114, 556, 809, 809,
1637, 330, 379, 0, 0, 0, 883, 886, 874, 875,
894, 893, 750, 1637, 0, 401, 400, 0, 404, 0,
449, 458, 0, 456, 431, 436, 0, 440, 438, 437,
432, 435, 544, 0, 0, 0, 0, 0, 0, 565,
0, 566, 0, 821, 0, 0, 0, 732, 881, 0,
0, 474, 706, 1478, 3740, 589, 578, 586, 0, 0,
580, 1108, 1108, 461, 593, 595, 1481, 1482, 0, 0,
514, 0, 1116, 1438, 1437, 1716, 0, 0, 0, 794,
795, 790, 0, 0, 3319, 0, 2191, 2190, 2189, 2193,
2192, 0, 2185, 2183, 2184, 0, 0, 1888, 1889, 1874,
0, 0, 1878, 1828, 1854, 0, 0, 0, 1774, 2173,
2174, 0, 0, 0, 1865, 1657, 0, 0, 158, 551,
809, 560, 1099, 567, 540, 538, 298, 1637, 877, 0,
293, 0, 406, 1531, 454, 0, 439, 624, 510, 596,
572, 0, 571, 0, 569, 568, 818, 823, 0, 706,
871, 1483, 720, 1598, 593, 586, 589, 0, 579, 0,
153, 153, 595, 459, 0, 0, 387, 0, 1421, 1716,
1420, 1422, 1430, 1427, 1429, 1428, 1426, 0, 1249, 1250,
784, 789, 0, 0, 0, 0, 2195, 0, 2196, 1860,
0, 1877, 1880, 0, 0, 1886, 1879, 1881, 0, 0,
1840, 0, 1852, 1782, 0, 1781, 0, 0, 0, 1614,
1660, 0, 0, 1652, 1653, 0, 1083, 542, 809, 306,
884, 0, 457, 570, 547, 547, 706, 731, 1479, 595,
589, 593, 1108, 581, 583, 582, 463, 1104, 1105, 0,
595, 797, 0, 1431, 1425, 1692, 1679, 0, 0, 796,
0, 2188, 2194, 2197, 0, 1884, 1885, 1882, 1883, 1827,
0, 1783, 0, 0, 0, 0, 1655, 0, 0, 0,
1654, 543, 0, 574, 573, 733, 462, 593, 595, 153,
514, 1103, 0, 1865, 0, 1423, 1716, 0, 0, 802,
0, 0, 1710, 1709, 0, 0, 1713, 1659, 1656, 0,
0, 0, 0, 1661, 402, 595, 460, 584, 387, 1106,
1090, 0, 1424, 0, 0, 0, 800, 803, 806, 804,
805, 0, 1853, 0, 0, 1665, 0, 0, 0, 464,
595, 0, 0, 0, 768, 0, 1875, 1739, 0, 0,
0, 0, 1865, 0, 0, 0, 801, 0, 0, 1662,
1666, 0, 1663, 1091, 802, 1247, 1248, 0, 1712, 0,
0, 0, 769, 1664
};
/* YYPGOTO[NTERM-NUM]. */
static const int yypgoto[] =
{
-6179, -6179, 4927, -767, -2111, -5588, -1544, 6660, -6179, -6179,
-1191, -1653, 3045, -2787, -6179, -6179, -6179, 1300, -6179, -6179,
-6179, -6179, 3898, -6179, -3387, -6179, -6179, 73, 3846, -1827,
49, 3381, 1329, -6179, -1382, -6179, -6179, -990, -72, -6179,
3900, 464, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179,
-1241, 1826, -6179, 1911, 1140, -3327, -6179, -6179, -2010, -4248,
-6179, 377, -6179, 405, -5298, -1276, -6179, -6179, -6179, 1807,
-6179, -6179, -6179, 1755, 936, -672, -6179, -6179, -6179, -6179,
-6179, -6179, -1107, -6179, -6179, -1387, -65, -1002, -3418, -4785,
-6179, -6179, 229, -715, -1978, -6179, 420, -6179, 423, -6179,
-5320, -6179, -292, -3155, -2616, -6179, -6179, -6179, -685, -1950,
1234, -6179, -1061, -1620, 1594, -2568, -1236, -6179, -560, -4066,
-1356, -1116, -1114, -1267, -4808, -5362, -6179, -6179, -1388, -4289,
-5662, -5893, -5279, -5285, 1245, -6179, -318, 231, -6179, -4105,
-4865, -60, 206, -6179, -59, -58, -6179, 222, -1050, -1348,
-2095, -6179, -879, -6179, -6179, -6179, -3941, -6179, -6179, -6179,
78, -6179, -6179, -6179, -6179, 271, -6179, -6179, -6179, -6179,
-6179, -6179, -3600, 1776, 1778, -6179, -4877, -6179, -1319, -6179,
430, -3970, 1166, -6179, -6179, 932, 3912, 249, -6179, -6179,
-6179, -6179, -6179, -6179, -2186, -6179, -6179, -6179, -6179, -294,
-654, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -56, -6179,
891, 191, -6179, -6179, -943, -6179, -6179, -6179, -6179, -6179,
-6179, -1442, -5670, -1552, -1530, -6179, -3972, -6179, -6179, -6179,
-626, -6179, -6179, -6179, -6179, -6179, -1327, -6179, 991, -4605,
-6179, -6179, 233, -6179, -6179, -6179, -6179, -6179, -1242, -566,
3056, -6179, -798, -1020, -6179, -6179, -6179, -561, -6179, -6179,
-6179, -6179, -6179, -807, -1687, 5201, 4333, -1527, 6237, -1263,
-890, -6179, -6179, -6179, -3140, -6179, -6179, -4813, -6179, 5191,
124, -336, -55, -6179, -114, -16, 3660, -6179, 834, -1607,
-3623, 178, -754, -6179, -6179, -6179, 176, -6179, -2425, -6179,
-6179, -6179, -6179, -4583, -53, -6179, -4858, -5669, -5073, -4593,
-1407, -6179, -4608, -5602, -4585, -6179, 1812, -6179, -6179, -887,
-886, 3031, -6179, -1969, 2156, -1889, -6179, -3075, 256, 1332,
3038, -3706, -839, 3020, -3469, -6179, -1058, 926, -6179, -649,
-4262, -6179, -6179, -6179, -3240, -884, -6179, -6179, -755, 347,
-6179, -6179, -6179, -6179, -981, 2968, -919, -6179, -6179, 4298,
-6179, -5434, -6179, 4259, -6179, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -1933, 1098, -6179, -1121, -6179, -6179, 1916,
471, -6179, -6179, -6179, -6179, 1187, -137, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, -1216, -1428, -6179, -6179, -6075, -6179,
-6179, -6179, -6179, -6179, 489, -1339, -1110, 4141, 566, -52,
-5843, -6179, -6179, -761, -6179, 3366, -6179, -6179, -6179, -6179,
-6179, 250, 251, -6179, -6179, -6179, -6179, -4598, -6179, -6179,
-5531, -6179, -6179, 1898, -6179, -6179, 1080, -69, 3155, -6179,
-6179, -6179, -100, -6179, -6179, -1390, 2282, -6179, -2797, -6179,
-912, -6179, -6179, -2360, -51, -4840, -67, -6179, -6179, -5583,
-1434, 32, -6179, -6179, -4431, -64, -6179, -6179, -6179, -6179,
-5553, -6179, -63, -6030, 618, -3777, -6179, -66, -6179, -709,
-1118, -6179, -6179, -6179, -4156, -50, 94, 3760, 1723, -70,
2073, -156, -120, -106, -71, 58, 3532, -6179, -6179, -6179,
-4850, 3555, -6179, -109, -1198, -6179, -6179, -1217, -246, 183,
1455, -954, 2256, 3495, 3498, -6179, 1442, 2285, -2838, -2842,
-6179, 686, -1224, -1095, -6179, -6179, -6179, -6179, 71, -945,
2270, -6179, 3535, -6179, -6179, -6179, -2784, -3832, -3807, 711,
-4482, -4374, -6179, 107, 93, -1732, -660, -108, -1923, -1152,
1677, -6179, -6179, 721, -869, -6179, -6179, -867, -3816, 649,
-6179, -5481, -3266, 726, -1386, -1195, -6179, -1290, -6179, -1057,
6710, -2169, -1493, -6179, -6179, -1420, 11290, -6179, -6179, -6179,
17437, 23366, -6179, -6179, 25326, 31876, -6179, -1243, 32025, 7892,
-1471, -1458, -1144, 31976, -2410, -1077, 268, -6179, -3436, -3335,
-6179, -6179, -6179, -617, 790, 401, -6179, -6179, -5505, -4905,
-6179, 2409, -377, -6179, -1065, 1541, -1064, -6179, -6179, -6179,
-2978, -5952, -3121, 2415, -6179, -6179, -6179, -864, -6179, 32581,
-3664, -6179, -1173, -1395, -2059, 2899, -3200, -2323, -6179, -6179,
-6179, -3561, -6179, -6179, -6179, -877, 1564, -6179, -6179, 1685,
-6179, -6179, -6179, -1315, 1960, -1153, -3565, 1576, -2352, -3487,
-6179, -2391, 1589, -2560, -6179, -2373, 1663, 879, -6179, -1490,
-6179, -6179, -1149, 2427, -1161, 33718, -1003, 30719, -1774, -6179,
10431, -6178, 537, -94, -753, 7003, -791, -946, -6179, 8837,
9783, 7383, -4134, -6179, -6179, -6179, -48, -6179, -6179, -6179,
-6179, 4767, 1010, -6179, 3935, -6179, 1864, 3133, -6179, -6179,
2305, -980, -47, -6179, -997, -6179, -91, -6179, -6179, -6179,
-6179, 1014, 103, -984, 5320, -6179, -6179, -6179, -6179, -6179,
-6179, 3556, -6179, -6179, -1696, -6179, -6179, -6179, -6179, -6179,
5144, -271, -6179, 4362, -268, -6179, -6179, -6179, -6179, -6179,
-6179, -6179, -6179, -6179, 3570, 2320, -6179, 4143, -6179, -6179,
-6179, 64, 3780, -6179, -6179, -6179, -648, -934, 4176, 4189,
2315, -6179, -6179, -6179, -6179, -6179, -6179, -6179, -6179, 2325,
-6179, -6179, 1577, -2895, 2326, -6179, -6179, 719, -6179, -6179,
161, -6179, 722, -6179, 3656, -6179, -6179, -6179, 763, -6179,
-6179, -6179, -540, 22567, 27, 74, 88, 470, -6179, 17813,
16452, -76, -936, 12371, 26997, -13, -6179, 5148, 2324, 1824,
-1165, -6179, 316, 3048, 31236, -6179, -1158, 14, -2, -1157,
3305, -714, -1341, 3882, -771, -2325, -6179, 5487, -6179, -4126,
-5649, -1199, -312, 4363, -1361
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
0, 1, 162, 163, 1475, 1480, 2298, 2324, 164, 165,
2102, 3507, 3361, 4342, 4343, 166, 167, 2098, 168, 169,
170, 171, 2016, 172, 2270, 3521, 173, 3199, 1211, 1212,
1213, 3052, 3053, 3452, 3054, 3041, 1836, 2216, 2038, 1176,
1177, 1997, 2039, 175, 176, 1830, 3033, 177, 178, 179,
2069, 2159, 2070, 2071, 2010, 5514, 6330, 4132, 3318, 4393,
4133, 4134, 4834, 4835, 4923, 6344, 6345, 180, 2175, 2176,
181, 182, 3489, 4308, 4976, 5916, 5917, 6154, 994, 5537,
5538, 6141, 6142, 6358, 6522, 6523, 3522, 1025, 4388, 5060,
4333, 5609, 4334, 5610, 4335, 5611, 5405, 5406, 4824, 4825,
4319, 5007, 5008, 2526, 5550, 5009, 4336, 5569, 6188, 4337,
3218, 6373, 3556, 2445, 2443, 6088, 6167, 5367, 5368, 4897,
6382, 6383, 6384, 6644, 5571, 5615, 5616, 6559, 6560, 4391,
5066, 5622, 5974, 6165, 4030, 184, 4361, 4362, 185, 2292,
4514, 1108, 3559, 1026, 1109, 3523, 189, 3549, 6375, 3550,
2128, 3375, 4989, 4490, 190, 1503, 4799, 5999, 6249, 6250,
1093, 191, 2278, 192, 193, 3502, 4326, 194, 3235, 4047,
195, 196, 4066, 4067, 4068, 197, 5017, 5935, 2072, 4121,
4122, 4123, 4124, 4855, 198, 2273, 3530, 3531, 199, 200,
201, 3696, 3697, 202, 3438, 203, 204, 205, 206, 4891,
5471, 5585, 4163, 4349, 5033, 5583, 207, 4312, 3524, 3577,
4426, 4427, 5997, 6241, 6242, 6243, 6434, 6680, 6245, 6436,
6581, 6438, 5560, 6815, 6816, 6226, 4788, 5381, 209, 5561,
5562, 6388, 210, 3233, 211, 212, 2247, 3495, 3496, 4990,
3566, 4400, 4401, 5046, 5047, 213, 4250, 214, 5447, 5448,
1027, 6396, 6336, 6508, 215, 216, 5451, 5452, 217, 218,
219, 220, 221, 1094, 1438, 1439, 1096, 1605, 1606, 4001,
1550, 222, 3064, 223, 4288, 224, 1705, 5685, 225, 1133,
1632, 1633, 3525, 227, 1145, 3716, 1147, 3680, 3681, 2461,
4494, 4495, 5150, 228, 229, 4498, 4499, 5157, 3693, 230,
2003, 3209, 3210, 5362, 3526, 1028, 4025, 6076, 5826, 6077,
6570, 6739, 5827, 3925, 4727, 232, 1029, 2044, 3274, 1573,
1574, 3570, 4406, 3177, 3178, 2199, 5087, 3180, 4408, 3181,
1976, 3182, 1522, 1523, 4414, 4415, 4416, 4417, 5083, 5093,
5094, 5991, 6234, 5090, 2266, 5985, 5986, 233, 2041, 3271,
234, 235, 236, 2081, 1361, 1583, 1584, 237, 1055, 1056,
238, 6159, 239, 1525, 240, 5995, 241, 242, 1690, 1691,
1166, 243, 244, 3288, 4837, 245, 2042, 246, 247, 4157,
4158, 5463, 248, 249, 250, 3347, 3348, 251, 252, 253,
254, 255, 6670, 6742, 6743, 6744, 5101, 6575, 256, 1676,
257, 258, 259, 260, 973, 1403, 1404, 1405, 1322, 3527,
5976, 262, 263, 1998, 1999, 2000, 2001, 3204, 264, 265,
266, 4438, 4439, 267, 268, 269, 270, 2250, 271, 272,
6132, 273, 274, 2220, 275, 276, 1412, 1413, 1414, 1415,
2218, 3913, 988, 1232, 1863, 1869, 1873, 1874, 1875, 278,
1111, 279, 1681, 1443, 1112, 1625, 1113, 3123, 3955, 4742,
4743, 4744, 4747, 5809, 5334, 1114, 3951, 283, 2468, 3702,
3705, 3947, 1115, 3961, 3962, 3963, 4751, 1116, 6080, 6081,
6489, 6713, 6714, 6770, 6803, 1117, 1135, 1514, 3585, 1118,
1783, 289, 290, 291, 1241, 1235, 1236, 3918, 6070, 6304,
293, 3010, 3887, 1155, 1879, 1195, 1196, 1249, 3462, 3089,
3090, 3114, 3115, 1888, 1889, 3102, 3106, 3107, 3937, 3931,
3095, 5316, 6291, 6292, 6293, 6294, 6295, 6296, 5788, 3110,
3111, 1891, 1892, 1893, 3119, 294, 3891, 4682, 4683, 4684,
5293, 5294, 6700, 5308, 5304, 5773, 6053, 4685, 1222, 1670,
1900, 5781, 6702, 4686, 6042, 6043, 6271, 5312, 4691, 4738,
4376, 4377, 4378, 4687, 6467, 6468, 6696, 6697, 6273, 6274,
3183, 2354, 1552, 1784, 1553, 2362, 1785, 2338, 1555, 1786,
1787, 1788, 1558, 1789, 1790, 1791, 1561, 2330, 1792, 1793,
2348, 929, 930, 1864, 6275, 1795, 1796, 1797, 4688, 1798,
5246, 5737, 5723, 3810, 3811, 3049, 6035, 5242, 4616, 5236,
3003, 3007, 6065, 6298, 6299, 3880, 4667, 5275, 5756, 6267,
6455, 6456, 6592, 1799, 1800, 1801, 3872, 2996, 1364, 1802,
4992, 2998, 3801, 3779, 2202, 3780, 2475, 2496, 3735, 3750,
3751, 3848, 3781, 3789, 3794, 3802, 3834, 1803, 3737, 3738,
4536, 2498, 1804, 1409, 2205, 1410, 3018, 3829, 3760, 4548,
5699, 3761, 3849, 4649, 3768, 3769, 4564, 4554, 3762, 1805,
4556, 1820, 1806, 1807, 2462, 1223, 6049, 804, 2207, 1152,
1808, 1809, 1810, 1318, 725, 1576, 1577, 727, 2999, 788,
789, 976, 903, 3000, 2, 70, 1119, 4385, 5959, 296,
297, 1031, 1032, 1033, 1505, 1506, 2308, 2311, 1915, 3142,
731, 732, 805, 5651, 6000, 6252, 1102, 298, 299, 300,
301, 302, 1319, 1969, 931, 71, 79, 72, 1275, 336,
337, 3135, 303, 921, 304, 1903, 1264, 4757, 305, 306,
307, 308, 309, 1099, 310, 1266, 311, 1267, 312, 313,
314, 315, 1274, 316, 1905, 1906, 5349, 1907, 317, 318,
791, 792, 1623, 319, 320, 1291, 2412, 1293, 1652, 1921,
1935, 1936, 1937, 321, 739, 322, 323, 324, 1927, 1928,
325, 3026, 3027, 3147, 3028, 326, 3974, 3975, 327, 4709,
4710, 5794, 4711, 328, 3022, 329, 330, 1226, 4762, 331,
917, 332, 1305, 793, 794, 795, 978, 907, 1181, 796,
980, 4125, 909, 797, 798, 799, 2437, 73, 3982, 2438,
1812, 806, 1813, 3016, 1814, 1815, 1816, 1817, 1818, 1819,
801, 1281, 1615, 1616, 3983, 1618, 77, 1619, 333, 4455,
2413, 1653, 3646, 2423, 2424
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule whose
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
75, 174, 292, 287, 277, 1240, 281, 285, 183, 282,
284, 2201, 908, 186, 187, 188, 74, 208, 226, 1853,
231, 261, 280, 286, 1042, 295, 1048, 1469, 1186, 2127,
1362, 1137, 3388, 2215, 1261, 1894, 790, 1262, 2442, 1137,
1831, 1416, 1221, 1225, 1250, 1162, 908, 1821, 1880, 1317,
1882, 2370, 2344, 292, 3217, 1110, 3312, 790, 1335, 2132,
1865, 4029, 3718, 1982, 1516, 2193, 1368, 1034, 1041, 1373,
1047, 1858, 3283, 1859, 3275, 911, 1041, 2350, 908, 735,
4693, 1661, 1662, 1663, 3643, 1363, 3179, 1667, 4332, 1041,
2275, 2486, 1608, 1289, 4516, 2209, 1323, 4364, 1845, 3544,
3284, 1626, 4418, 3994, 3996, 2360, 4898, 5071, 1517, 911,
3786, 1146, 1035, 2334, 2335, 904, 3709, 1057, 4736, 3767,
4826, 5045, 3295, 2343, 4805, 1938, 1187, 1667, 1183, 1153,
3897, 4354, 1940, 1943, 1183, 1183, 2126, 3456, 3771, 2478,
5325, 911, 2260, 2480, 1363, 2158, 2481, 2482, 4850, 904,
4852, 4749, 3418, 3419, 3179, 2185, 5096, 3763, 2284, 4247,
1292, 1416, 905, 4215, 1317, 1957, 1959, 1960, 971, 3349,
3349, 3734, 1252, 3349, 5599, 3599, 906, 1244, 803, 970,
808, 904, 1437, 4750, 4993, 2045, 1253, 3563, 1587, 5369,
1175, 1591, 1339, 5608, 1628, 5364, 905, 1218, 4365, 1651,
1599, 1371, 985, 2180, 5307, 5625, 3266, 3189, 1363, 3633,
906, 1045, 3136, 3136, 1838, 1393, 5629, 5607, 1238, 1416,
1210, 6074, 2073, 3414, 174, 292, 287, 277, 905, 281,
285, 183, 282, 284, 5568, 3896, 186, 187, 188, 6093,
208, 226, 906, 231, 261, 280, 286, 2091, 295, 1134,
3445, 4624, 2108, 1464, 5618, 5431, 5971, 1134, 1517, 1473,
4725, 6046, 3266, 6171, 2248, 3943, 1858, 3940, 2253, 3911,
5939, 1487, 4549, 2257, 4351, 2408, 5617, 2040, 5055, 3266,
2429, 1317, 2267, 4644, 4766, 1416, 1589, 3919, 2331, 2332,
1860, 1280, 2350, 5967, 6101, 1887, 2287, 1416, 5828, 2342,
1602, 6058, 2361, 6060, 1890, 1917, 1918, 6211, 2334, 2335,
2040, 5305, 6224, 5310, 6207, 2040, 5340, 4761, 6411, 5970,
3024, 1930, -1955, 1509, 1284, 5119, 4580, 1617, -1914, 3246,
5728, 4291, 2343, 4294, 4295, 39, 2328, 6124, 4299, 4300,
4301, 3349, 4303, 4304, 4305, -1927, 5825, 5978, 992, -2347,
-1947, 6398, -1952, 1920, 1923, 5687, 5688, 5689, 3062, 5691,
5692, 5693, 5694, 5695, 2547, -1942, 6134, 6135, 39, 39,
2283, 3714, -3595, 4551, 974, 339, 4561, 1930, 339, 1306,
3425, -3595, -3595, 38, 39, -3596, 1707, 1708, 2240, 40,
-2346, -3593, 4272, 2321, -3596, -3596, 3069, 733, 972, 4755,
-3593, -3593, 87, 4322, -3592, 1321, 5081, 3827, 88, 89,
-2744, 2321, -1955, -3592, -3592, 92, 93, 39, 39, -2744,
-2744, 94, 922, 6335, 1699, 5835, 2414, 2466, 3296, 3071,
95, 2264, 96, 1230, 97, 2435, 1496, 6685, 3827, 1399,
99, 1138, 4633, 2321, 4518, 3223, 6799, 5893, 1835, 1138,
339, 2411, 39, 2321, 2321, 38, 39, 6614, 1707, 1708,
3691, 40, 2321, -447, 737, 2074, 2012, 4806, 2262, 1517,
339, 5894, 5632, -2208, 2331, 2332, 3890, 4561, 1294, 2321,
-2208, 40, -163, 4504, 1824, 3487, 3086, -163, 6160, 6378,
35, 6321, 339, -163, 37, 5807, 339, 39, 923, 6585,
6672, 38, 3505, -2534, 2342, 2321, 2193, 40, 1125, 4310,
2231, 2356, 4138, 39, 4323, 35, 339, 5578, 6686, 37,
6565, 38, 39, 1679, 5497, 3405, -1768, 40, 2313, 5851,
6309, 6102, 1126, 5558, 5566, 3945, 2217, 3334, 6100, 69,
2227, 1400, 3803, 2209, 2232, 5042, 2233, 6851, 5725, 4580,
3869, 6413, 3510, -2473, 116, 4365, 6332, 3870, 1958, 3430,
6553, 339, 3261, 87, 990, 1363, 38, 39, 924, 88,
89, 925, 40, 2012, 4185, 1333, 92, 93, 6285, 3541,
2013, 2222, 94, 122, 2547, 4074, 6795, 923, 1665, 934,
4580, 95, 1100, 96, 6672, 97, 2265, -2227, 1401, 1840,
991, 99, 4740, 126, -2227, 3744, 2245, 3011, 6212, 2541,
1097, 6687, 5579, 2090, 3516, 4365, 3069, 6199, 2107, 3063,
3372, 3011, 3035, 4365, 1227, 4534, 3, 1034, 4982, 6379,
2542, 2547, 1190, 3286, 3546, 3039, 6800, 4552, 3286, 4741,
4562, 4041, 4170, 3946, 3412, 6168, 6838, 1287, 1288, 3071,
1308, 3058, 3059, 1262, 4185, 129, 1402, 924, 3014, 3262,
2357, 5726, 1136, 3069, 3286, 3286, 932, 3286, 3286, 2368,
1136, 6662, 1035, 3511, 926, 4917, 3286, 1666, 3335, 1460,
3313, 3745, 4075, 3698, 926, 6162, 2322, 2013, 3804, 5559,
3286, 1041, 1041, 2472, 4634, 6801, 3071, 5091, 6310, 3506,
-1768, 5580, 1651, 2246, 2322, 6380, 3313, 1651, 5498, 932,
933, 6672, 4324, 5808, 2491, 116, 3691, 738, 2418, 4505,
6496, 4311, 3008, 6369, 3313, 135, 4993, 4806, 3129, 4139,
2209, 5567, 6751, 2265, 1540, 3691, 2322, 6797, 3488, 1295,
1054, 4562, 5963, 5895, 122, 2467, 2322, 2322, 4273, 3297,
6564, 3746, 5465, 933, 3747, 2322, -2534, 5836, 1517, 6688,
1280, 6729, 3040, 3298, 126, 3299, 1666, 1952, 2080, 3355,
3542, 1231, 2322, 926, 1931, 3828, 4635, 1501, 3251, 1407,
2467, 3224, 5577, 1408, 6801, -2473, 1666, 1638, 5536, 3426,
5082, 1643, 1644, 1645, 2378, 2368, 927, 1702, 2322, 3454,
3455, 1656, 4325, 5307, 2329, 3730, 4653, 993, 6728, 3109,
2345, 2346, 3699, 5374, 3393, 6536, 129, 6519, 4752, 3406,
3407, 3664, 4595, 5626, 6028, 1285, 2014, 5473, 3300, 2347,
1931, 1926, -2534, 5477, 2192, 2333, 3327, 3025, 6778, -2208,
6802, 1297, 6406, 2407, -2534, 2246, 2323, 2004, 4974, 4975,
3037, -2473, 2337, 3453, 1407, 1386, -2347, -1947, 1408, -1952,
2995, 4636, 1680, 151, 2351, 3082, 5581, 3748, 4553, 3606,
3635, 4563, -1942, 5290, 2463, 2544, 3012, 6012, 1334, -3595,
154, 1286, 1932, 1933, 6805, 2358, 135, 5043, 2436, 6409,
2015, 2477, -3596, 6654, 1517, 158, 2365, -2346, -3593, 6664,
2345, 2346, 1517, 1517, 911, 6653, 2376, 2398, 2487, 3314,
5761, -3592, 5763, 6683, 5813, 2401, 3871, -2744, 4768, 2349,
4769, 3674, 292, 1448, 3902, 6823, 1444, 1447, 1847, 1445,
1446, 3383, 2368, 3689, 3386, 3314, 3143, 5582, 3515, 3431,
3120, 3611, 1320, 4993, 904, 2246, 3543, 6626, 1511, 3121,
3736, 1240, 2100, 3314, 1932, 1933, 3328, 3969, 5149, 5043,
6630, 2005, 4042, -2227, 3042, 3968, 5036, 2246, 3432, 3055,
3055, 3134, 4912, 4913, 1131, 1132, 2101, 4914, 3691, 3749,
3413, 6595, 1461, 3270, 3461, 3444, -163, -163, 1441, 3981,
1280, 905, 1041, 3985, 6731, 5658, 5659, 5660, 5661, 5662,
1315, 1316, 5010, 5092, 4713, 906, 1895, 6163, 5540, 5200,
1630, 4918, 4070, 6317, 4146, 4955, 3211, 3162, 1254, 3009,
1315, 1316, 2092, 5391, 151, 4876, 1631, 3700, 1637, 3385,
1642, 5055, 3270, 1049, 6493, 292, 1646, 5436, 5539, 6498,
6499, 154, 4592, 4593, 4594, 4595, 6557, 1669, 3701, 3270,
1649, 5152, 1518, 1057, 1622, 3415, 158, 1320, 1041, 5184,
6259, 3654, 1637, 1642, 5354, 2408, 5792, 3657, 6777, 6370,
5149, 1649, 6734, 6735, 6719, 3315, 6198, 2992, 2993, 2994,
2995, 4590, 4591, 4592, 4593, 4594, 4595, 3819, 4730, 3164,
1649, 3940, 6545, 335, 3213, 1245, 75, 3596, 3597, 1910,
1570, 3315, 39, 3336, 3316, 3675, 2321, 1255, -1914, 6556,
5034, 4801, 74, 1700, 3214, 3766, 4719, 1669, 3971, 3315,
1919, 1252, 2990, 2991, 2992, 2993, 2994, 2995, 39, 3317,
3316, 6123, 6563, 2006, 3313, 1253, 2093, 1125, 1125, 4877,
6537, 6831, 3253, 1254, 6640, 5449, 1512, 1125, 3316, 1899,
35, 1280, 3260, 790, 37, 3317, 4969, 4551, 3433, 1678,
3593, 1126, 1126, 1246, 918, 5649, 919, 3694, 3093, 6724,
3311, 1126, 2007, 3317, 1320, 6204, 3854, 4753, 2164, 39,
5338, 1848, -2513, -2536, 6710, 6754, 2279, 1701, 39, 1183,
-1914, 6807, -2574, 1183, 6655, 6711, 3311, 1825, 1627, 6363,
6768, 1837, 1518, 1839, 6364, 2169, 5993, 2008, 1657, 3245,
5593, 2170, 2265, 3645, 3311, 4506, 1636, 6826, 1641, 4831,
1363, 2165, 5464, 6371, 6331, -1680, 2019, 2209, 1655, 2280,
5369, 2110, 1255, 3557, 3201, 3373, 4422, 338, 3376, 3377,
5104, 1986, 1922, 4991, 1138, 5105, 1635, 1247, 1640, 5422,
1672, 1674, 5097, 904, -3315, 6365, 1996, 1849, 2401, 6107,
1247, 3695, 2368, 1677, 1828, 1416, 5450, 3692, 6859, 1696,
2111, 3313, 3215, 6260, 3094, 1834, 2009, 1256, 6769, 1842,
1671, 1673, 1650, 735, 735, 6047, 6663, 1649, 1942, 3993,
4995, 2314, 1866, 3313, 1987, 2419, 3686, 3687, 2421, 3434,
905, 2425, 4089, 2427, 1941, 2315, 2430, -1680, 2094, 3313,
2434, 4878, 4231, 2368, 6394, 5011, 4071, 3855, 4232, 2171,
3731, 3733, 3856, 6402, 1050, 4423, 5969, 3740, 1660, 1966,
1967, 5154, 2208, 3754, 3755, 6725, 5088, 4998, 6405, 3772,
4061, 5098, 4365, 1257, 6573, 4365, 5370, 2095, 3791, 3475,
4879, 1278, 1650, 5957, 3806, 2368, 6419, 6641, 1320, 1138,
1911, 2316, 6404, 3314, 4061, 6420, 3857, 1696, 6391, 1183,
1183, -1767, -1914, 4577, 4578, 3676, 6445, 5988, 4597, 3998,
4802, 3391, 2096, 6736, 1051, 4880, 2542, 3009, 3216, 1248,
6390, 1658, 4147, 5820, 3313, 911, 5000, 3637, 6408, 2322,
1988, 4282, 1709, 1571, 2166, 4580, 4352, 4287, 1495, 4581,
4582, 4583, 2281, 1518, -2513, -2536, 4005, 3225, 4628, 4629,
6407, 4552, -1680, 1052, -2574, 1053, 4233, 5251, 1970, 1320,
4062, 1175, 2150, 3765, 3765, 904, 1138, 6642, 1138, 3970,
1138, 3970, 3266, 3787, 3673, 3211, 1138, 4365, 3678, 3595,
6776, 4507, 3808, 3685, 4062, 3388, 3688, 3623, 4902, 5994,
4128, 6783, 3200, 2317, 3212, 1136, 6643, 5684, 1257, 5155,
2387, 1496, 1138, 1138, 1650, 3460, 1138, 3612, 920, 3613,
-2513, -2536, 905, 3446, 3588, -1680, -3315, 3498, 1651, 5770,
-2574, 2172, 3625, 5774, 1651, 3627, 906, 1399, 5924, 6806,
3314, 6315, 3631, 5003, 6475, 3651, 5099, 3096, 2190, 6712,
2167, 1363, 1363, 2388, 3858, 6547, 4129, 4694, 2282, 1290,
4695, 4696, 3314, 3213, 3313, 3313, 6829, 2318, 6574, 3315,
2173, 4697, 4698, 4699, 3952, 4700, 4701, 3777, 3314, 6554,
4702, 4703, 4704, 3214, 807, -1767, 5004, 4424, 6360, 5024,
6362, 6842, -3315, 3097, 6366, 6367, 1497, 1442, 3316, 292,
1247, 4425, 5005, 3677, 922, 2174, 5812, 3683, 3684, 1993,
1954, 1994, 3313, 4818, -1914, 3875, 3614, 5100, 3226, 2314,
1136, 2306, -1914, 3317, 2333, -1914, 1981, -1914, 4576, 1189,
3626, 6613, 3999, 2315, 4000, 5936, 3922, -1680, 4234, 1400,
4407, 733, 733, 3632, 6214, 5156, 1939, 4364, 989, 4065,
4241, 75, 75, 4585, 75, 3098, 3519, 3892, 5639, 6215,
4072, 3553, 4130, 3314, 3311, 2319, 1240, 74, 74, 1685,
74, 2507, 1622, 4065, 6247, 69, 1971, 4235, 6587, -2343,
923, -1680, 4148, 5444, -1680, 4242, 1955, 3554, 4819, 3650,
4731, 3710, 5604, 5932, 1363, 5328, 1401, 1136, 4910, 1136,
1138, 1136, 5006, 1612, 4508, 3099, 3315, 1136, 1647, 1648,
3227, -704, 4236, 2471, 3158, 6652, 3179, 1262, 5605, 2097,
3179, 2344, 6213, 3574, 2525, 3729, 3923, 2191, 3315, 4586,
5162, 932, 4705, 1136, 1136, 3316, 2389, 1136, 3520, 2209,
3668, 3215, 1518, 3895, 3315, 35, 3575, 4365, 4365, 37,
924, 5148, 1498, 925, 1402, 6486, 1956, 3316, 5553, 1686,
3317, 3876, 3666, 4828, 3953, 6677, 3100, 2420, 5025, 2422,
4993, 1138, 2426, 3316, 2428, 933, 6495, 2431, 2432, 2433,
2368, 4718, 3317, 4920, 4061, 913, 4509, 2113, 35, 1499,
2440, 2317, 37, 3314, 3314, 914, 1703, 5149, 3317, 3087,
3088, 3311, 3092, 3067, 5445, 2469, 3647, 2470, 1268, 2114,
1844, 5933, 6727, 1253, 1253, 4275, 1253, 35, 6218, 790,
790, 37, 2543, 3311, 5598, 4991, 6219, 1269, 1899, 3315,
1899, 2545, 4131, 146, 6588, 3219, 93, 1270, 5356, 3311,
1709, 3314, 2390, 4580, 5595, 6216, 3013, 4581, 4582, 4583,
1500, 5462, 1501, 6248, 97, 2318, 1502, 3216, 3316, 6677,
2115, 1193, 4014, 3220, 4732, 6693, 926, 1934, 5530, 5329,
150, -2368, 926, 5534, 4062, -186, 6578, 4829, 1518, 1986,
3031, 3044, 3046, 3317, 3555, 4706, 1518, 1518, 4028, 6775,
1962, 5557, 1647, 1648, 5163, 1407, 3669, 1320, 1005, 1408,
915, 3905, 1320, 1320, -1692, 1043, -186, 790, 4178, 4063,
3576, 5446, 157, 4957, 5393, 5606, 1005, -1692, 3096, 2356,
87, 1136, 5554, -1692, 3311, 159, 88, 89, 1687, 3670,
3029, 3030, 1987, 4587, 4588, 4589, 4590, 4591, 4592, 4593,
4594, 4595, 1271, 3671, 4707, 2208, 1955, 3229, 4064, 160,
2116, 6622, 3032, 2319, 735, 3553, 5604, 3230, 99, 3315,
3315, 5438, 4179, 6412, 3097, 1007, 1194, 6264, 3954, 1688,
1963, 1689, -1692, 1964, 904, -616, 6677, 6762, 927, 3672,
6763, 3554, 5605, 1007, 1149, 6397, 3154, 3156, 3316, 3316,
4237, 2100, 1136, 6660, 6661, 923, 3352, 3944, -1692, 3356,
6220, 4365, 1877, 928, 6050, 4365, 2117, 3315, 911, 6054,
2118, 1272, 6056, 3317, 3317, 2101, 1956, 2082, 3140, 1183,
904, 905, 1320, 4180, 3221, 3387, 6694, 5357, 4584, 4238,
4016, 6695, 1938, 3220, 5358, 4915, 3316, 2062, 1988, 1940,
1943, 5359, 4991, 5551, 5198, 5199, 916, -1692, 904, 1883,
5832, 4585, 39, 4065, 3311, 3311, -1692, 4708, 3932, 2120,
1183, 3317, 1154, 4197, 4239, 924, 1996, 905, 2357, 2297,
5409, 1996, 116, 1399, 4260, 1320, 3099, 5360, 4087, -472,
2170, 6033, 2547, 4366, 3409, 1320, 1965, 5434, 1273, 2547,
5326, 2083, 4830, 4831, 3205, 905, 6432, 6246, 6010, 5361,
1989, 122, 3311, 4161, 2122, 5410, 3206, 1878, 3666, 906,
4916, 3666, 6738, 5153, 3069, 5552, 1183, 2546, 4017, 6265,
2547, 126, 5833, 4832, 3207, 5258, 3231, 4586, 2123, 4459,
1885, 5165, 926, 1183, 4240, 1990, 4181, 3100, 1018, 1991,
1019, 3179, 3388, 141, 6433, 1996, 4924, 3071, 2125, 1996,
6266, 3179, 3069, 4817, 3071, 6034, 1018, 6555, 1019, -3597,
5327, 5211, 5435, 5212, 6779, 3232, 1023, 3514, 1320, 3392,
4196, 1320, 1320, 129, 1992, 1400, 1103, 3400, 5951, 6551,
4162, 926, 1160, 986, 2261, 3071, 288, 1163, 2171, 5938,
69, 69, 2246, 69, 5411, 4364, 1104, 5186, -1692, 1138,
-472, 1972, 6572, 5190, 1138, 1138, 3378, 1993, 4221, 1994,
3497, 5207, 5208, 5209, 5210, 3015, 6235, 5214, 5215, 5216,
5217, 5218, 5219, 5220, 5221, 5222, 5223, 1629, 5962, 6809,
5197, 1105, 1401, 3179, 6083, 987, 6085, 288, 4173, 5949,
1973, 5189, 4266, 135, 6389, 5193, 5194, 1822, -1691, 5177,
4370, 4371, 4372, 4373, 4630, 4375, 4282, 5298, 4024, 1995,
4182, -1691, 4964, 6637, 339, 986, 1407, -1691, 4183, 1870,
1408, 4184, 733, 911, 1239, 1974, -1692, 4276, 4277, 4278,
4403, 1164, 1320, 5264, 5265, 1684, 3208, 3349, 6281, -1692,
1402, 5299, 2025, 2358, 6423, -1692, 4365, 1848, 1517, 2062,
-3597, 4106, 6301, 1165, 4108, -3597, 5776, 5213, 6656, 1488,
3529, 2129, 3303, 904, 3534, 2160, -1691, 1243, 2359, 3047,
-1095, 1883, 5301, 1823, 1138, 5134, 4919, 1884, 4171, 6505,
4172, 4587, 4588, 4589, 4590, 4591, 4592, 4593, 4594, 4595,
1245, 1983, -1691, 4246, -1692, 1192, 1489, 6440, 3304, -3597,
2130, 1861, 3379, -1739, 2161, 5928, 3380, 5930, 2162, -1739,
905, 4054, 3048, 1872, 4107, 4015, 4245, 4109, 6044, 4921,
-1692, 4956, 6302, 1849, 906, 1298, 1299, 1138, 5377, 6368,
1984, 151, 1490, 5633, 3447, 1696, 292, 1138, 5105, 2163,
1125, -1691, 3758, 4051, 1300, 4055, 4056, 1301, 154, 3703,
-1691, 5323, 1885, 6506, 3076, 1251, 6730, 6401, 1246, 288,
5377, 3715, 5370, 158, 1126, 1985, 1363, 4028, 4922, -1692,
1136, 1883, 5067, 3448, 138, 1136, 1136, 5370, -1692, 5911,
1491, 5912, 5913, 5914, -1739, 1382, 4212, 4048, 4213, 4436,
4366, 5940, 4217, 5303, 75, 292, 1448, 75, -1738, 1444,
1447, 1886, 1445, 1446, -1738, 3449, 146, 6571, 6740, 4440,
74, 6178, 2131, 74, 5378, 5793, 1383, 6620, 3450, 4365,
1138, 4243, 2546, 1138, 1138, 2547, 4365, 3342, 3979, 4784,
2135, 4365, 5920, -1739, 4365, 4716, 1219, 6133, 1302, 6579,
5941, 1407, 1247, 150, 3366, 1408, 5378, -3597, 3451, 2100,
4366, 4690, 1885, 3146, 1957, 3397, 4244, 3069, 4366, 3153,
3155, 4995, 3719, 4365, -3597, 6179, 5921, 4996, 6180, 2136,
5297, 1303, 6580, 2101, 6181, 3291, 4084, 3292, 4365, -1738,
4997, 6485, 3825, 5379, 3398, 157, 4198, 5380, 2546, 4396,
3071, 2547, -1691, 3752, 4201, 1136, -1507, 4204, 159, 932,
4752, 1886, 6182, 3652, 2137, 3653, 6311, 4355, 4998, 3655,
4999, 3656, 1304, 4083, 3658, 5379, 6624, 6625, 3659, 5380,
-1692, 1233, 160, 3069, 6106, -1120, 5548, 2285, -1738, 1709,
-3597, 6312, 4580, 146, 1138, 5370, 4581, 4582, 4583, 1242,
3293, 161, 1977, 933, -396, 911, 5298, 5297, 1136, -3597,
6830, 2286, 3359, 5549, 5252, 6130, 3071, 3362, 1136, 4650,
6183, 2990, 2991, 2992, 2993, 2994, 2995, 5000, 6138, 1488,
150, 3611, 141, 6184, -396, 2138, 4873, 1978, 5547, 6131,
5299, 1979, 1346, 2100, 1248, 904, 6185, 4860, 1407, 1347,
1348, 1349, 1408, 2100, 2542, 5300, 5001, 4177, 2395, 4861,
3378, 2401, 4579, 3358, 3916, -3597, 1489, 2101, 1258, 6130,
-3597, 5301, 157, 1005, 4607, 4874, 1980, 2101, 2546, 5499,
38, 2547, 2396, 5298, 6130, 5263, 40, 6239, 3917, 1265,
-1508, 3436, 905, 6131, -3388, 3442, 4365, -1093, 6717, 5302,
2139, 1136, 5037, 5500, 1136, 1136, 906, 8, 6131, 4631,
4875, 6240, 5297, 3069, -3597, 2401, 5516, 5299, 3303, 2100,
-3597, 6764, 2103, 4488, 1290, 4692, 6051, 339, 161, 5002,
4925, -3597, 5300, 6849, 5003, 6852, -3597, 4263, 40, 5517,
1007, 2177, 2140, 2101, 2181, 6765, 3071, 3286, 5301, 2141,
1491, 1307, 2142, 4664, 3304, 6863, 3787, 3787, 3287, 1621,
339, 3787, 2345, 2346, 1709, -396, -396, 4580, 3286, 3076,
4365, 4581, 4582, 4583, 1296, 5676, 5302, 5004, 4767, 3294,
-3597, 2347, 1407, 3606, -2347, 1309, 1408, 5421, 5298, 5745,
4756, 5683, 5303, 5005, 1009, 1310, 6771, 2345, 2346, 4807,
4585, 3787, 3787, 5341, 6785, 1709, 3379, 6786, 4580, 6424,
3380, 5053, 4581, 4582, 4583, 1136, 2349, 146, 1311, 35,
6140, 4772, 5299, 37, 1709, 4836, 2333, 4580, 3190, -2339,
5746, 4581, 4582, 4583, 1407, 3076, 1660, 5300, 1408, 4991,
1312, 4714, 5853, 6186, 3910, 1313, 6187, 1262, 6709, 5858,
4489, 5705, 6466, 5301, 150, 35, 339, 5708, 5709, 37,
2409, -3597, -3597, 1314, 2410, 3606, -3597, 40, 1321, 5303,
5412, 4765, 5418, 87, 1870, 1329, 4586, -1680, 4810, 88,
89, 5302, 6052, 6044, 1331, 3020, 92, 93, 4522, 3021,
4524, 4525, 94, 5006, 5401, -2340, 157, 3580, 6319, 6144,
1407, 95, 1660, 96, 1408, 97, 6324, 6325, 2209, 159,
-3597, 99, 5353, 1018, 4365, 1019, 5600, 2333, 6618, 3190,
4651, 2143, 5370, 2409, 3594, 5392, -1120, 3642, -3597, 4723,
1344, 3179, 4519, 160, 3602, 4530, 3603, 1345, 1022, 3080,
4531, 2261, 3607, 1388, 4532, 6145, 3610, 5121, 5122, 5123,
5124, 5125, 161, 1462, 4868, 1463, 2144, 5656, 5164, 6227,
2145, 6334, 2340, 2341, -3597, 3076, 6338, 6339, 1398, 4606,
6146, 4608, 4609, 1397, 5303, 4585, 2990, 2991, 2992, 2993,
2994, 2995, 3812, 5437, 4365, 3815, 3132, 3133, 6147, 5123,
5124, 5125, 6148, 69, 1406, 2146, 69, 4478, 3839, 3840,
3841, 3842, 2147, 5121, 5122, 5123, 5124, 5125, 1517, 1450,
1465, 5126, 1466, 2333, 6149, 1981, 4585, 6810, 6150, 5040,
2210, 1457, 2211, 4365, 6561, 116, 5116, 5117, 1484, 2417,
-3597, 2211, 2479, 6151, 2211, 4585, 1452, 1363, 4983, 2494,
-615, 161, 2990, 2991, 2992, 2993, 2994, 2995, 3912, 1470,
3066, 4586, 2211, 1709, 122, 3079, 4580, 3080, -3597, 1493,
4581, 4582, 4583, 3458, 3459, 3084, 4776, 2211, 3583, 2333,
3584, 3190, 1504, 5814, 126, 3055, 6853, 3644, 1492, 3080,
4587, 4588, 4589, 4590, 4591, 4592, 4593, 4594, 4595, 3742,
3743, 3903, 4586, 3835, 3665, 3836, 3666, 3667, 1494, 3666,
3773, 3774, 1507, 3956, 5619, 339, 4794, 3707, -3324, 3708,
4724, 4586, 4669, 3915, 4670, 2401, 288, -3325, 3965, 3837,
3080, 4081, 4153, 4082, 4154, 4365, 129, 4647, 1515, 4648,
6152, 3818, 1520, 1352, 1353, 1354, 1355, 1356, 1357, 1358,
1359, 1360, 4018, 4316, 4021, 4317, 5064, 4441, 5065, 3080,
1517, 4480, 4529, 3666, 3080, 1280, 4538, 4893, 3080, 5612,
-3597, 4407, 4899, 4544, 2208, 3080, 102, 103, 3939, 3939,
3941, 3942, 2990, 2991, 2992, 2993, 2994, 2995, 5804, 1524,
5012, 6153, 5370, 5962, 3838, 4545, 4559, 3080, 4275, 735,
4069, 4566, 4599, 3080, 3080, 4613, 135, 3080, 4618, 4671,
4619, 4672, -1762, -1762, 4853, 1942, 4854, 1578, 75, 75,
4858, 1569, 4859, 5372, 5373, 1579, 4884, 5376, 4885, 1585,
4953, 1941, 4885, 1596, 74, 74, 5075, 911, 5076, 288,
1239, 3839, 3840, 3841, 3842, 3132, 3966, 4366, 3843, 3844,
4366, 3179, 1603, 5079, 3845, 5080, 5112, 146, 5113, 5114,
1098, 3080, 1518, -1765, -1765, 4587, 4588, 4589, 4590, 4591,
4592, 4593, 4594, 4595, 4585, -1766, -1766, 904, 1320, 5232,
5243, 5233, 5244, 6561, 1624, 4773, 4774, 40, 5254, 5370,
3080, 2345, 2346, 4365, 150, 4135, 5336, 4168, 5337, 5342,
5352, 5343, 4000, 5541, 1659, 5542, 4587, 4588, 4589, 4590,
4591, 4592, 4593, 4594, 4595, 5601, 1183, 3666, 5678, 4159,
2467, 1839, 6096, 6097, 905, 4587, 4588, 4589, 4590, 4591,
4592, 4593, 4594, 4595, 986, 5713, 157, 3080, 906, 5716,
5752, 5717, 3080, 5816, 151, 4000, 5030, 6457, 6458, 159,
4586, 5822, 4366, 5823, 911, 5829, 1664, 3666, 911, 1668,
5830, 154, 3666, 1660, 4211, 6019, 5831, 76, 3666, 3895,
5964, 1682, 5965, 160, 1251, 6003, 158, 5113, 6025, 6027,
6026, 3080, 911, 6173, 4365, 6174, 6193, 5421, 3666, 6228,
4365, 6229, 161, 5013, 904, 5015, 6593, 6594, 904, 1839,
6268, 1675, 6269, 3846, 1683, 1183, 5370, 3611, 1693, 6278,
5158, 2401, 1709, 1694, 3847, 4580, 1695, 1696, 4159, 4581,
4582, 4583, 904, 1839, 6284, 5044, 5050, 6286, 6307, 5050,
6308, 4889, 1697, 1698, 6353, 2193, 6354, 1517, 6393, 1517,
3034, 905, 6421, 1704, 6308, 905, 736, 1706, 6448, 1320,
4619, 1843, 4905, 912, 6449, 906, 3080, 1320, 1846, 906,
1320, 1850, 6464, 5204, 6465, 6470, 6473, 2401, 5050, 905,
6504, 983, 3708, 1851, 6510, 6666, 3708, 1852, 1862, 1036,
5085, 911, 5848, 906, 4320, 1857, 6511, 912, 3708, 6514,
4257, 3080, 6515, 1867, 3080, 1709, 1870, 5231, 4580, 6516,
3895, 6517, -3597, -3597, -3597, 1868, 1184, 4365, 2113, 134,
1871, 1881, 1184, 1184, 4724, 1896, 6543, 733, 6544, 912,
6599, 904, 6600, 6603, 1517, 2401, 6604, 4289, 3080, 4289,
2114, 4289, 4289, 1939, 1897, 1898, 4289, 4289, 4289, 1901,
4289, 4289, 4289, 5646, 5143, 1902, 3765, 911, 1904, 6619,
5272, 3666, 1908, 1909, 4587, 4588, 4589, 4590, 4591, 4592,
4593, 4594, 4595, 1912, 3787, 3787, 3787, 3787, 905, 1913,
3787, 3787, 3787, 3787, 3787, 3787, 3787, 3787, 3787, 3787,
1138, 2115, 906, 6634, 6658, 6635, 6659, 904, 6689, 6703,
5050, 3080, 1914, 6705, 4369, 3080, 5313, 5388, 5235, 6668,
134, 6737, 6761, 6308, 6478, 146, 6781, 5023, 6782, 5026,
1916, 1944, 4366, 4366, 6804, 6834, 3080, 6835, 6836, 4397,
6600, 1945, 3146, -3597, 6841, 6850, 5337, 3080, 6862, 5775,
6835, 5778, 926, 3122, 905, 3125, 3787, 3787, 1946, 1961,
1968, 1975, 150, 2017, 2546, 6254, 1981, 2547, 906, 2043,
-3594, 2548, 2549, 2550, 2046, 2048, 2049, 2080, 2085, 2086,
2084, 2097, 2109, 2099, 4454, 4637, 2112, 4638, 2134, 3068,
6256, 2116, 2151, 2152, 1280, 2168, 4500, 2178, 35, 3069,
2546, 2179, 37, 2547, 157, 6808, 3070, 2182, 2187, 1240,
2188, 4639, 2189, 2219, 2221, 5522, 146, 159, 2223, 4586,
5413, 3938, 3938, 2228, 5171, 4338, 2234, 2242, 2239, 2244,
2113, 2249, 3071, 2252, 2254, 3069, 2246, 2263, 2268, 2269,
2271, 160, -3597, -150, 2272, 2274, 2276, 2117, 2277, 2288,
2295, 2118, 2114, 150, 2297, 2300, 1240, 2304, 951, 911,
161, -1432, 2310, 2320, -1432, 2325, 3387, 2326, 3071, 2327,
2329, 1138, 2333, 1320, 1934, 2336, 3838, 69, 69, 1138,
2337, 2339, 1138, 288, 2353, 2355, 2363, 2364, 2367, 4178,
2375, 2368, 2379, 2381, 1138, 157, 2382, 2384, 2386, 904,
2120, 2392, 4586, 2115, 2394, 2391, 2397, 5166, 159, 2404,
2415, 4614, 2400, 2403, 2441, 2476, 2483, 4621, 2492, 2485,
-1918, 1136, 2493, 3839, 3840, 3841, 3842, 5527, 2488, 5984,
4640, -1925, 160, 2499, 5738, 2500, 4641, 5266, 2501, 2502,
2503, 161, 2505, 4179, 2506, 2122, 905, 3072, -1916, -1919,
2507, 6669, 3073, 2508, 2509, 4674, 4675, 4676, 2510, 2511,
906, 2512, 2513, 2514, 2495, 5535, 2515, 2517, 2518, 2123,
5415, 2519, 2520, 2521, 911, 3074, 2737, -1917, 1240, 2522,
911, 4363, 2523, -3597, 2504, 2524, 4366, 2525, -3597, 2125,
4366, 2527, 2528, 2116, 2529, 2530, 3075, 4339, 102, 103,
3002, 2531, 2532, 2533, 4180, 4093, 2534, 3006, 3004, 3050,
3009, 3038, 3060, 3008, 904, 3034, 1649, 3065, 3083, 3085,
904, 1884, 1886, 4587, 4588, 4589, 4590, 4591, 4592, 4593,
4594, 4595, -3597, 3116, 3128, 2539, 3118, 2795, 3131, 3138,
3139, 3141, 6463, 3150, 3149, 3152, 3157, 3166, 3160, 2117,
3163, 3076, -3541, 2118, 3077, 2020, 3161, 3167, -3536, 3165,
3168, 905, 3169, 1103, 3185, 3186, 3188, 905, 3387, 3187,
3191, 3190, 3192, 3194, 3193, 906, 3196, 3195, 3203, 3197,
3228, 906, 1518, 1104, 3222, 4642, 3234, 3076, 3248, 3254,
2021, 3256, 1136, 3252, 3255, 3258, 4643, 3259, 1320, 3272,
1136, 3787, 2120, 1136, 3276, 3277, -3597, -3597, -3597, 4590,
4591, 4592, 4593, 4594, 4595, 1136, 3278, 4181, 1105, 3289,
3290, 3305, 4729, 4729, 3301, 3307, 3308, 3310, 3311, 3319,
3309, 3321, 1251, 1251, 3320, 1251, 5945, 3322, 3323, 3324,
3333, 3343, 3357, 3329, 3078, 3339, 3330, 2122, 3340, 3353,
3354, 2022, 3360, 3363, 3367, 3364, 3369, 3374, 3370, 1036,
3381, 4340, 3382, 3384, 3399, 2546, 2062, 3389, 2547, 3401,
3403, 2123, 2548, 2549, 2550, 1138, 4724, 3410, 2209, 3408,
-3597, 3427, 3411, 3428, 3457, 3435, 3472, 5461, 2023, 3390,
3068, 2125, 3395, 3396, 3464, 5612, 3402, 3469, 3471, 3404,
3069, 3416, 4724, 3895, 3417, 3429, 3440, 3070, 3473, 3474,
3485, 4341, 3478, 3479, 3486, 3480, 3482, 3483, 3490, 3484,
3491, 3492, 3493, 3500, 1518, 3501, 3504, 1000, 3517, 3528,
2131, 2024, 3532, 3071, 3509, 3536, 3533, 3545, 3548, 3551,
5724, 4182, 3552, 3572, 3561, 3565, 2986, 3586, 3578, 4183,
3598, 3616, 4184, 3600, 3569, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 6322, 3601, 3608, 3582, 2546, 3609,
3618, 2547, 4557, 2026, 3619, 3620, 3634, 3591, 3579, 3661,
3717, 4366, -3597, 3621, 3605, 911, 911, 911, 3592, 3679,
3690, 3606, 3662, 3704, 2990, 2991, 2992, 2993, 2994, 2995,
3706, 3741, 4856, 3069, 3736, 2028, 3807, 3813, 2547, 3826,
-3597, 138, 3853, 3832, 3851, 5668, 5669, 5670, 5671, 5672,
3817, 3873, 4449, 4452, 3878, 904, 904, 904, 3879, 3898,
3890, 3901, 3904, 3906, 3907, 3908, 3071, 1246, 4363, 5729,
3899, 3933, 3934, 146, 3935, 3950, 3957, 141, 3072, 3268,
3958, 3972, 2030, 3073, 3024, 3989, 3990, 3921, 4010, 4903,
4024, 2031, 3936, 3992, 5802, 4022, 4033, 4026, 4038, 4027,
2032, 4019, 905, 905, 905, 4043, 3074, 2737, 3269, 4044,
150, 4046, 4049, 4057, 4073, 4078, 906, 906, 906, 1840,
2034, 5766, 4097, 4724, 4090, 1844, 1136, 3075, 4363, 2035,
1138, 4110, 912, 2036, 4080, 5267, 4363, 4115, 4136, 4143,
4116, 4149, 4142, 5573, 5574, 4169, 4152, 4170, 4160, 4167,
983, 3497, 157, 4144, 4190, 4207, 1106, 4191, 4946, 983,
736, 2265, 4249, 4270, 4262, 159, 1247, 983, 2795, 736,
983, 4274, 4290, 4271, 4283, 5673, 4296, 4302, 4318, 4307,
4329, -3597, 3076, 736, 4366, 3077, -3597, 4330, 2037, 160,
4344, 4366, 4297, 6755, 4298, 4346, 4366, 4348, 6758, 4366,
4350, 5074, 736, 5057, 4289, 4358, 4368, 4374, 1107, 4380,
4381, 4382, 4379, 4383, 911, 4384, 4977, 4977, 4387, 4392,
4390, 736, 4394, 4395, 4399, 5058, 4994, 736, 4366, 4398,
-3597, 1518, 4404, 1518, 4419, 5070, 4420, 4431, 4421, 736,
4430, 4432, 1320, 4366, 4433, 4435, 4437, 1041, 4445, 4444,
5984, 4442, 5109, 5799, 904, 4446, 5918, 1964, 4470, 1513,
4471, 4447, 4448, 4468, 4456, 4457, 4474, 4476, 4482, 736,
4483, 4484, 4485, 5108, 983, 3078, 4486, 2401, 2398, 1568,
2365, 4492, 5048, 983, 736, 3076, 4487, 4497, 4501, 4502,
983, 4491, 736, 983, 4503, 4510, 1041, 4515, 4523, 1666,
4540, 905, 4541, 4542, 1669, 1568, 736, 4513, 4547, 4543,
4550, 4555, 4558, 76, 4560, 906, 4567, 5084, 1518, 4275,
-2200, 4612, 736, 4568, 4572, 5270, 4632, 4658, 4574, 4575,
4598, 4576, 4615, 4603, 4735, 4604, 4720, 4611, 3080, 4626,
4646, 4726, 4665, 4733, 4690, 4627, 3146, 4659, 3388, 4715,
4737, 1136, 4739, 4661, 4663, 4746, 4721, 4770, 4775, 4454,
4754, 4786, 4777, 4760, 4778, 4789, 4758, 4791, 4803, 4815,
1363, 4814, 4816, 4804, 4759, 4728, 4728, 2986, -3597, 2409,
736, 4820, 4821, 4822, 4763, 4782, 2987, 2988, 2989, 2990,
2991, 2992, 2993, 2994, 2995, 4823, 4764, 4783, 4838, 3816,
288, 4366, 4787, 5896, 5897, 5929, 5899, 4839, 4827, 4841,
983, 983, 4849, 1240, 4847, 4857, 4848, 1184, 4863, 736,
4872, 1184, 4886, 4888, 4890, 4892, 4894, 4896, 4901, 4900,
4904, 4906, 4907, 4908, 1240, 4909, 4928, 4911, 4926, 4927,
4933, 912, 4929, 4930, 5857, 4931, 736, 1320, 983, 6041,
4942, 5238, 4945, 4936, 2113, 4932, 4934, 4938, 736, 288,
4940, 4935, 4949, 4965, 4947, 3425, 4961, 4937, 4939, 4941,
5277, 5278, 5279, 5280, 4951, 4366, 2114, 4952, 4958, 4962,
-3597, 4963, 4979, 4968, 4973, 5022, 4981, 5016, 5021, 5032,
5028, 3757, 2990, 2991, 2992, 2993, 2994, 2995, 6062, 5035,
736, 736, 5404, 5039, 5049, 5050, 5052, 5062, 5059, 3805,
5068, 5069, 5073, 3645, 911, 6347, 5846, 6349, 5072, 5077,
5089, 5103, 5106, 5136, 5137, 5138, 5128, 2115, 5414, 5139,
5111, 5118, 5159, 5120, 5249, 3225, 5140, 5130, 5141, 5142,
5144, 5160, 5161, 2002, 1138, 5167, 5168, 5169, 3787, 5170,
5172, 5173, 5174, 5175, 904, 5176, 2494, 5180, 5185, 3756,
292, 1448, 5187, 5191, 1444, 1447, 5188, 1445, 1446, 5195,
4580, 5196, 5205, -2199, 5256, 5245, 5257, 5259, 5287, 5228,
5260, 5229, 5315, 5333, 5335, 5330, 5339, 5363, 5355, 5311,
5384, 5385, 5386, 6483, 5415, 5387, 5230, 1184, 1184, 5395,
5288, 905, 5320, 5237, 5262, 5394, 5889, 5348, 6492, 5273,
5296, 5317, 5319, 5397, 5321, 906, 5324, 2116, 5398, 4366,
5400, 983, 983, 912, 5404, 5407, 5408, 5427, 5424, 5439,
736, 5440, 5443, 5441, 5467, 983, 5442, 5453, 5456, 5469,
1568, 983, 5455, 5454, 5457, 983, 5458, 983, 5487, 5470,
5476, 1568, 5488, 5493, 6527, 6529, 5496, 5513, 5512, 5515,
5414, 5528, 5529, 5518, 5531, 5532, 5533, 1568, 5544, 5555,
5570, 6357, 5584, 2117, 2414, 5565, 5576, 2118, 5590, 5591,
5603, 5597, 5596, 5614, 5640, 5620, 5637, 5638, 5621, 4366,
5642, 6190, 3387, 4135, 5650, 5432, 5416, 5641, 3833, 5644,
5666, 5674, 5680, 5947, 3691, 5645, 5655, 5652, 5681, 5697,
983, 5690, 983, 983, 5698, 5701, 5478, 5700, 5702, 4159,
5706, 5707, 5703, 5715, 5727, 5730, 2120, 5486, 4366, 5736,
-2201, 5710, 5721, 5731, 5732, 5751, 5755, 5742, 5743, 5771,
5764, 5779, 5772, 5787, 5767, 5769, 5784, 5786, 5785, 1138,
5798, 911, 5780, 6091, 5811, 5801, 911, 5815, 911, 5657,
1568, 5800, 1262, 6258, 5824, 1136, 5817, 5819, 4994, 5825,
5834, 2122, 5854, 5855, 5856, 5865, 5859, 6263, 5866, 5887,
5864, 5885, 911, 5900, 1320, 5878, 5891, 5901, 5027, 5881,
5910, 904, 5892, 5908, 5466, 2123, 904, 5909, 904, 5915,
736, 5919, 5922, 5927, 5926, 6113, 5934, 5943, 5937, 5479,
1320, 5946, 5480, 5942, 5481, 2125, 6636, 5417, 5952, 5944,
4823, 5950, 904, 5958, 5956, 5961, 5968, 5972, 76, 76,
4366, 76, 5973, 5977, 5966, 5979, 5990, 5980, 905, 983,
5975, 5996, 5998, 905, 6008, 905, 6009, 6020, 6031, 6040,
6030, 6064, 906, 3787, 5981, 4363, 3666, 906, 4363, 906,
5521, 6004, 6014, 6015, 6342, 6343, 6024, 6114, 6045, 905,
1363, 6055, 6075, 6069, 6078, 6016, 4289, 6084, 3787, 6087,
736, 4289, 2546, 906, 6521, 2547, 6032, 6048, 6059, 6095,
6071, 5115, 6098, 6103, 6099, 1568, 6104, 736, 4452, 6112,
6105, 6706, 6707, 6110, 6136, 6158, 5554, 6164, 5623, 6116,
4724, 1966, 1967, 6166, 736, 6117, 6121, 3069, 6127, 736,
6128, 6129, 1363, 6169, -3597, 6176, 6172, 6197, 6196, 3311,
983, 6201, 6177, 6225, 6209, 6206, 6533, 6230, 6238, 6236,
6237, 6251, 6261, 6244, 6157, 6262, 6270, 6276, 6303, 6305,
3071, 6079, 6328, 6280, 6327, 6277, 6335, 6341, 6372, 6329,
4363, 6377, 6283, 6387, 983, 6318, 6277, 6320, 6374, 6381,
1136, 6385, 6395, 6400, 6410, 6414, 6416, 5108, 6415, 6417,
5627, 6418, 6428, 6429, 6108, 4994, 4500, 6427, 4366, 6430,
6435, 6437, 6439, 983, 983, 983, 6444, 983, 6459, 6462,
6474, 1320, 6480, 6450, 6481, 6476, 6482, 6487, 6488, 3001,
6478, 6479, 6490, 6503, 6491, 6526, 6535, 983, 6507, 5749,
6472, 6532, 6538, 6540, 6542, 6546, 6549, 2541, 6550, 4454,
4454, 4454, 4454, 4454, 6569, 6566, 6567, 6568, 6576, 6577,
6582, 6583, 6591, 6351, 6596, 6586, 6606, 6616, 6611, 911,
6612, 6629, 6631, 4666, 6638, 736, 3833, 6536, 3045, 6647,
6537, 6648, 6667, 736, 736, -3597, 6684, 6621, 1320, 6646,
-3597, 6665, 6692, 6699, 6701, 5686, 5686, 5686, 5686, 4366,
5686, 5686, 5686, 5686, 5686, 4366, 1138, 6715, 6721, 904,
6723, 6741, 6747, 6346, 6748, 6753, 983, 6756, 6752, 6760,
983, 983, 6766, 6767, 6788, 3787, 288, 1517, 6790, 6789,
6787, 6798, 1138, 6811, -3597, 6813, 983, 6814, 6824, 4752,
6825, 6832, 912, 6833, 6844, 6827, 1138, 6839, 6845, 6801,
6854, 736, 6857, 1260, 6232, 3441, 905, 1138, 6848, 2149,
3057, 4141, 6861, 4717, 4833, 4222, 5430, 2050, 2047, 5423,
906, 6632, 4261, 2051, 4309, 4978, 6155, 6520, 6722, 5818,
6208, 5572, 5419, 6521, 5925, 5420, 6189, 4780, 912, 3076,
4481, 6623, 6497, 6089, 6359, 5803, 5805, 6718, 6541, 6539,
6645, 6733, 4785, 5954, 5594, 5624, 5602, 6471, 6501, 4327,
1568, 4328, 2148, 5564, 5428, 4851, 912, 5589, 2053, 5038,
2133, 5948, 4366, 5347, 6195, 5078, 5648, 1184, 6431, 6784,
2002, 6605, 6860, 6607, 2002, 6846, 6170, 6650, 4984, 5630,
4363, 4363, 6115, 5852, 3508, 5789, 6337, 6509, 5796, 5797,
6118, 1095, 1440, 5860, 1158, 5145, 2464, 5675, 5677, 6314,
6780, 4356, 4771, 3571, 5795, 3995, 5634, 3567, 1184, 6494,
3587, 5095, 6233, 3622, 2054, 6425, 75, 1597, 1568, 4948,
4259, 2055, -3597, 1519, 2056, 2414, 5459, 4895, 6812, 6671,
1854, 5653, 74, 4286, 5654, 3202, 3466, 3920, 6828, 5806,
5344, 6313, 6617, 4477, 5704, 3019, 4722, 3949, 4734, 5318,
3930, 2057, 6704, 6608, 3113, 1568, 3112, 2416, 3787, 5790,
3948, 5291, 5762, 1138, 1184, 5777, 6282, 1136, 5285, 3081,
6461, 6460, 5345, 5286, 6821, 6691, 6757, 6257, 6597, 5239,
1517, 1184, 3874, 6066, 6609, 4662, 6610, 2058, 1568, 3877,
4656, 3793, 4535, 1136, 4285, 87, 3117, 1320, 6837, -3344,
4654, 88, 89, 4645, 4565, 5192, 3889, 1136, 92, 93,
5107, 1283, 2312, 4429, 94, 3581, 3973, 6584, 1136, 1150,
1263, 1953, 3967, 95, -3597, 96, 1363, 97, 98, 2473,
1138, 334, 1620, 99, 1924, 3137, 2990, 2991, 2992, 2993,
2994, 2995, 3980, 3130, 3977, 4712, 3978, 1925, 5350, 3023,
5791, 5322, 5351, 736, 1276, 3984, 4479, 3663, 2155, 78,
6073, 0, 2060, 0, 0, 2406, 1654, 0, 0, 983,
983, 983, 2061, 0, 0, 0, 0, 0, 0, 0,
0, 2062, 0, 0, 5903, 5904, 736, 0, 0, 6690,
0, 0, 0, 2063, 1647, 1648, 0, 4289, 1568, 4289,
4289, 4289, 0, 0, 0, 0, 0, 0, 0, 1568,
0, 0, 0, 0, 0, 0, 0, 0, 6772, 0,
0, 912, 911, 2002, 0, 1568, 0, 0, 0, 0,
0, 0, 2183, 0, 4363, 2065, 2066, 0, 4363, 0,
0, 6346, 0, 0, 736, 0, 0, 116, 0, 0,
0, 0, 736, 0, 0, 0, 0, 0, 0, 0,
736, 0, 904, 0, 0, 5955, 0, 2184, 0, 0,
0, 0, 0, 0, 0, 0, 122, 0, 0, 1568,
0, 0, 0, 0, 1136, 0, 3787, 0, 6628, 0,
6847, 3787, 0, 0, 0, 983, 126, 0, 983, 0,
0, 1568, 0, 0, 0, 5983, 0, 0, 983, 905,
0, 0, 0, 0, 1568, 0, 0, 0, 0, 0,
0, 0, 0, 906, 6840, 0, 1568, 0, 4452, 4452,
4452, 4452, 4452, 6773, 6774, 0, 2068, 0, 0, 983,
983, 0, 736, 736, 0, 0, 0, 0, 129, 0,
0, 1136, 0, 0, 983, 0, 736, 983, 5686, 1517,
6678, 6679, 0, 0, 0, 0, 1568, 1568, 0, 736,
736, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 76, 0, 87, 76, 0, 0, -3345, 0, 88,
89, 0, 0, 1138, 0, 0, 92, 93, 0, 1138,
0, 0, 94, 1138, 0, 0, 0, 0, 0, 0,
0, 95, 0, 96, 0, 97, 98, 0, 135, 1277,
0, 99, 0, 0, 0, 983, 0, 0, 0, 983,
983, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2546, 0,
0, 2547, 0, 0, 0, 2548, 2549, 2550, 983, 983,
0, 0, 0, 0, 983, 983, 6068, 0, 0, 0,
3753, 983, 983, 983, 983, 983, 983, 983, 0, 0,
983, 0, 983, 3069, 983, 983, 983, 983, 983, 983,
3070, 0, 983, 0, 983, 983, 0, 0, 983, 6143,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1568, 983, 983, 983, 3071, 3146, 2539, 4363,
0, 0, 4994, 0, 0, 116, 0, 6202, 0, 0,
0, 983, 6223, 912, 0, 0, 6194, 0, 1320, 0,
0, 0, 0, 0, 0, 69, 151, 0, 0, 6203,
0, 0, 0, 0, 122, 6072, 0, 0, 0, 0,
0, 0, 911, 154, 0, 2539, 0, 6221, 4289, 0,
0, 1041, 0, 0, 126, 0, 0, 6156, 158, 174,
292, 287, 277, 0, 281, 285, 183, 282, 284, 3833,
0, 186, 187, 188, 0, 208, 226, 0, 231, 261,
280, 286, 904, 295, 1136, 4660, 0, 0, 0, 0,
1136, 0, 0, 0, 1136, 0, 0, 0, 6855, 6856,
0, 0, 0, 4681, 0, 0, 129, 0, 0, 0,
0, 3072, 0, 0, 0, 0, 3073, 0, 0, 0,
0, 5875, 5876, 0, 0, 0, 5879, 5880, 0, 905,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3074,
2737, 0, 2050, 906, 0, 0, 0, 0, 2051, 0,
0, 0, 0, 0, 0, 983, 0, 0, 0, 0,
3075, 0, 0, 4681, 0, 0, 0, 1239, 0, 0,
1058, 4681, 4363, 0, 0, 1420, 135, 0, 0, 4363,
0, 0, 0, 0, 4363, 0, 0, 4363, 0, 0,
0, 0, 0, 2053, 0, 0, 0, 0, 0, 0,
0, 2795, 983, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1421, 0, 3076, 4363, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1061, 1422, 0, 0,
0, 4363, 0, 0, 0, 0, 0, 0, 1423, 0,
0, 0, 1062, 0, 0, 0, 0, 0, 0, 2054,
0, 0, 0, 0, 0, 983, 2055, 0, 0, 2056,
1424, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 6403, 0, 0, 1240, 0, 0, 0, 0, 0,
0, 1518, 0, 0, 1425, 6361, 2057, 0, 0, 0,
0, 0, 0, 0, 0, 1065, 0, 1320, 0, 0,
0, 911, 0, 0, 1066, 0, 0, 0, 3078, 0,
0, 0, 0, 0, 151, 0, 0, 1067, 0, 0,
1138, 0, 2058, 1426, 0, 0, 0, 0, 0, 0,
0, 154, 0, 0, 0, 0, 0, 0, 0, 0,
0, 904, 0, 0, 0, 0, 158, 0, 0, 0,
1427, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 6484, 0, 0, 0, 0,
0, 1428, 0, 0, 0, 0, 0, 0, 905, 4363,
0, 0, 0, 2155, 0, 0, 0, 2060, 0, 0,
0, 0, 906, 1071, 0, 0, 0, 2061, 0, 0,
2986, 0, 0, 0, 0, 0, 2062, 0, 6143, 2987,
2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 2063, 0,
0, 0, 983, 983, 983, 983, 983, 983, 983, 983,
983, 0, 983, 0, 1429, 0, 0, 0, 0, 0,
0, 0, 0, 0, 983, 0, 0, 983, 0, 0,
0, 0, 0, 4363, 0, 0, 0, 3249, 1074, 6067,
2065, 2066, 0, 0, 0, 0, 0, 0, 951, 1430,
0, 911, 1076, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1518, 0, 0, 0, 6524, 0,
6525, 0, 3250, 0, 6530, 6531, 0, 0, 0, 1431,
0, 0, 1432, 983, 0, 0, 1079, 983, 0, 1080,
983, 904, 983, 0, 0, 983, 1081, 0, 0, 1082,
6598, 0, 0, 0, 0, 0, 0, 0, 0, 0,
983, 1136, 0, 0, 0, 0, 0, 0, 1083, 983,
983, 0, 0, 0, 0, 1433, 0, 0, 0, 0,
0, 0, 1085, 0, 0, 1434, 0, 0, 905, 1087,
0, 2068, 0, 0, 0, 0, 0, 1435, 0, 1089,
0, 0, 906, 0, 1436, 0, 736, 0, 0, 0,
0, 0, 0, 911, 0, 0, 0, 0, 288, 1138,
0, 0, 0, 0, 0, 76, 76, 4363, 288, 0,
1092, 0, 736, 0, 0, 0, 0, 0, 0, 1568,
6651, 0, 0, 1568, 1568, 0, 0, 0, 0, 0,
736, 0, 0, 904, 0, 912, 736, 2050, 0, 0,
736, 0, 0, 2051, 292, 6676, 288, 0, 6673, 736,
0, 6674, 6675, 6746, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 736, 0, 0,
983, 0, 0, 0, 0, 0, 0, 4363, 0, 0,
905, 983, 0, 1568, 983, 0, 983, 983, 2053, 1568,
0, 0, 0, 0, 906, 80, 0, 0, 0, 0,
81, 736, 0, 0, 82, 0, 83, 6442, 84, 85,
0, 0, 0, 0, 1184, 0, 4363, 0, 0, 86,
0, 736, 736, 0, 0, 0, 0, 0, 0, 0,
1568, 0, 0, 0, 0, 90, 91, 0, 292, 6676,
0, 0, 6673, 0, 2054, 6674, 6675, 0, 0, 0,
0, 2055, 912, 736, 2056, 0, 912, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1518, 0, 0, 0, 0, 736, 0,
912, 2057, 100, 0, 736, 0, 0, 0, 0, 0,
0, 0, 0, 101, 0, 102, 103, 0, 736, 0,
0, 0, 0, 1184, 0, 736, 4186, 0, 736, 0,
0, 0, 0, 1259, 736, 0, 0, 2058, 4363, 0,
1136, 0, 0, 106, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 736, 107, 0, 108, 109, 0,
736, 0, 0, 0, 110, 0, 111, 736, 0, 0,
0, 0, 0, 6818, 0, 292, 6676, 0, 112, 6673,
113, 736, 6674, 6675, 0, 0, 0, 0, 0, 0,
0, 0, 2539, 0, 736, 114, 0, 115, 0, 912,
117, 0, 0, 0, 0, 736, 4186, 0, 2155, 0,
5284, 0, 2060, 5289, 0, 118, 0, 119, 0, 6818,
0, 120, 2061, 983, 983, 983, 0, 121, 0, 983,
0, 2062, 0, 0, 0, 123, 911, 124, 6818, 0,
0, 0, 0, 2063, 125, 0, 0, 6820, 6441, 0,
0, 0, 3013, 0, 288, 0, 983, 1568, 0, 0,
0, 0, 127, 6819, 0, 912, 0, 0, 0, 0,
0, 0, 4186, 0, 0, 0, 904, 0, 0, 128,
0, 4186, 911, 0, 0, 2065, 2066, 0, 0, 0,
0, 0, 0, 6820, 0, 0, 4363, 0, 983, 0,
0, 911, 0, 0, 0, 0, 0, 0, 0, 6819,
0, 4186, 6820, 0, 0, 5789, 0, 2067, 0, 0,
0, 0, 904, 905, 0, 0, 130, 131, 6819, 0,
4402, 0, 132, 0, 1568, 0, 0, 906, 0, 0,
0, 904, 0, 6518, 0, 0, 133, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 983, 0, 0,
0, 0, 0, 0, 134, 0, 0, 0, 0, 905,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 906, 0, 0, 2068, 4363, 905, 0,
0, 0, 0, 4363, 0, 0, 0, 0, 2546, 0,
0, 2547, 906, 0, 0, 2548, 2549, 2550, 136, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 137, 3068, 0, 0, 0, 0, 138, 139,
0, 140, 0, 3069, 0, 0, 141, 0, 0, 0,
3070, 2546, 142, 0, 2547, 143, 0, 0, 2548, 2549,
2550, 0, 144, 0, 0, 736, 0, 912, 0, 145,
146, 0, 0, 0, 0, 0, 3071, 147, 0, 0,
0, 148, 0, 1568, 0, 736, 3069, 0, 0, 0,
0, 149, 736, 3070, 0, 0, 983, 0, 1568, 983,
0, 983, 983, 1568, 0, 0, 0, 150, 0, 0,
0, 983, 0, 0, 0, 0, 983, 0, 0, 3071,
4363, 0, 0, 0, 0, 0, 0, 152, 0, 153,
0, 1568, 0, 0, 0, 0, 0, 0, 155, 0,
0, 0, 0, 0, 156, 0, 0, 0, 0, 157,
0, 0, 0, 0, 726, 0, 0, 0, 983, 983,
983, 0, 159, 983, 0, 0, 0, 0, 0, 0,
0, 983, 983, 983, 983, 0, 0, 0, 0, 0,
0, 0, 912, 0, 0, 4681, 160, 983, 912, 0,
983, 3072, 983, 0, 0, 0, 3073, 0, 0, 0,
0, 0, 0, 983, 983, 161, 0, 983, 0, -149,
0, 288, 0, 0, 0, 0, 0, 0, 0, 3074,
2737, 0, 0, 0, 0, 0, 0, 0, 983, 0,
983, 0, 983, 0, 3072, 0, 0, 0, 0, 3073,
3075, 0, 0, 1325, 1327, 0, 0, 1330, 0, 0,
0, 983, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -3597, -3597, 0, 983, 2050, 1380, 0, 0,
0, 0, 2051, 0, 1390, 0, 0, 0, 0, 736,
288, 2795, 0, 3075, 0, 0, 0, 2153, 0, 0,
0, 0, 0, 0, 0, 3076, 983, 0, 3077, 0,
0, 0, 0, 1451, 0, 1454, 0, 0, 1456, 0,
0, 983, 2050, 0, 0, 0, 0, 2053, 2051, 0,
0, 0, 1481, 0, -3597, 983, 0, 2546, 1485, 0,
2547, 0, 0, 983, 2548, 2549, 2550, 0, 3076, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3068, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3069, 2053, 0, 1568, 0, 0, 1568, 3070,
1568, 2154, 0, 2054, 0, 1568, 0, 0, 0, 0,
2055, 0, 0, 2056, 0, 0, 0, 0, 3078, 0,
0, 736, 736, 0, 0, 3071, 6817, 983, 0, 0,
0, 0, 0, 0, 4409, 0, 0, 0, 0, 0,
2057, 0, 0, 0, 0, 0, 0, 0, 736, 2054,
0, 736, 0, 0, 1568, 0, 2055, 0, 2020, 2056,
0, 3078, 1568, 0, 0, 0, 0, 0, 0, 4681,
0, 0, 6817, 4681, 0, 0, 2058, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2057, 1568, 0, 0,
0, 6817, 0, 2021, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 288, 288,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2986, 0, 2058, 912, 912, 912, 0, 0, 0, 2987,
2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 0, 0,
3072, 0, 4569, 0, 4570, 3073, 0, 2155, 736, 0,
0, 2060, 0, 0, 2022, 0, 0, 1568, 0, 1568,
0, 2061, 0, 2986, 730, 0, 0, 736, 3074, 2737,
2062, 902, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 2063, 0, 0, 0, 0, 0, 736, 3075,
0, 2023, 0, 2059, 0, 0, 0, 2060, 0, 0,
0, 0, 0, 0, 0, 902, 0, 2061, 0, 0,
0, 0, 0, 0, 0, 0, 2062, 0, 0, 0,
0, 2156, 0, 0, 2065, 2066, 0, 0, 2063, 4410,
2795, 0, 0, 0, 2024, 0, 0, 902, 0, 0,
0, 0, 0, 0, 3076, 0, 0, 3077, 0, 0,
0, 0, 0, 1568, 0, 0, 2157, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3325, 0, 0,
2065, 2066, 0, 0, 2546, 736, 2026, 2547, 0, 0,
983, 2548, 2549, 2550, 0, 0, 983, 2078, 2079, 0,
0, 0, 0, 0, 0, 1568, 0, 0, 0, 3068,
0, 0, 3326, 0, 2546, 0, 0, 2547, 2028, 3069,
0, 2548, 2549, 2550, 0, 0, 3070, 0, 0, 0,
0, 0, 912, 1568, 0, 2068, 0, 0, 736, 3068,
736, 0, 0, 0, 0, 0, 0, 3078, 0, 3069,
0, 0, 3071, 736, 0, 736, 3070, 0, 0, 0,
141, 0, 0, 5031, 0, 4411, 0, 0, 0, 2224,
0, 0, 0, 0, 2031, 983, 0, 0, 0, 0,
0, 2068, 3071, 2032, 2236, 0, 0, 0, 0, 0,
0, 3269, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2034, 1568, 0, 0, 0, 0, 0,
0, 0, 2035, 0, 2258, 2259, 2036, 0, 0, 0,
0, 0, 0, 0, 0, 736, 1568, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4412, 0, 0, 0,
2296, 0, 0, 0, 0, 0, 0, 0, 0, 2986,
1568, 0, 0, 0, 0, 0, 0, 0, 2987, 2988,
2989, 2990, 2991, 2992, 2993, 2994, 2995, 3072, 0, 0,
0, 2037, 3073, 4571, 0, 4413, 0, 0, 0, 0,
0, 0, 0, 0, 1551, 0, 736, 0, 0, 0,
0, 0, 0, 0, 0, 3074, 2737, 3072, 0, 0,
0, 0, 3073, 0, 0, 0, 0, 0, 736, 0,
1551, 0, 736, 0, 0, 0, 3075, 0, 0, 0,
4409, 0, 0, 0, 0, 3074, 2737, 2372, 2374, 0,
0, 0, 0, 736, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2020, 0, 3075, 0, 0, 983,
0, 0, 1568, 0, 4681, 0, 0, 2795, 983, 4681,
0, 0, 4681, 0, 0, 0, 0, 0, 983, 0,
0, 3076, 983, 983, 3077, 0, 0, 0, 983, 2021,
0, 0, 0, 0, 0, 0, 983, 2795, 983, 0,
0, 983, 0, 0, 0, 1568, 983, 983, 983, 983,
0, 3076, 983, 983, 983, 983, 983, 983, 983, 983,
983, 983, 0, 0, 0, 983, 983, 983, 0, 0,
1568, 0, 0, 0, 0, 983, 0, 0, 0, 0,
983, 0, 912, 0, 983, 0, 0, 0, 0, 0,
2022, 2546, 983, 0, 2547, 983, 0, 983, 2548, 2549,
2550, 0, 0, 0, 0, 0, 0, 0, 1340, 0,
0, 0, 0, 0, 3078, 983, 3068, 1372, 983, 983,
0, 0, 0, 983, 983, 0, 3069, 2023, 983, 0,
983, 1394, 0, 3070, 0, 0, 0, 0, 0, 0,
0, 0, 983, 0, 3078, 983, 0, 0, 0, 0,
0, 0, 0, 0, 0, 983, 0, 0, 0, 3071,
0, 0, 0, 0, 0, 4410, 0, 0, 0, 726,
2024, 0, 0, 0, 0, 726, 0, 0, 0, 288,
0, 0, 0, 0, 0, 0, 0, 726, 0, 0,
0, 0, 288, 0, 0, 0, 0, 0, 0, 0,
0, 0, 983, 0, 0, 0, 0, 0, 0, 0,
288, 0, 2026, 0, 0, 0, 2986, 0, 0, 983,
0, 0, 0, 0, 288, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 0, 1568, 0, 0, 0, 0,
4622, 0, 0, 0, 2028, 0, 2986, 983, 0, 0,
0, 0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 0, 0, 0, 0, 736, 0,
0, 0, 0, 0, 3072, 0, 0, 0, 0, 3073,
0, 0, 0, 0, 0, 0, 141, 0, 4681, 0,
0, 2030, 0, 0, 0, 2226, 0, 0, 0, 0,
2031, 0, 3074, 2737, 0, 0, 2235, 0, 0, 2032,
0, 0, 0, 0, 0, 0, 0, 3269, 0, 912,
0, 0, 2243, 3075, 912, 1568, 912, 0, 0, 2034,
0, 0, 0, 0, 0, 0, 0, 0, 2035, 0,
0, 0, 2036, 0, 0, 0, 0, 0, 0, 0,
912, 1568, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4412, 0, 2795, 0, 0, 0, 0, 0,
2352, 0, 0, 0, 0, 0, 0, 0, 3076, 0,
0, 3077, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2366, 0, 0, 736, 2037, 0, 736,
0, 4413, 0, 2377, 0, 0, 0, 2380, 0, 0,
0, 2383, 0, 2385, 0, 0, 0, 0, 0, 2393,
0, 0, 0, 0, 0, 2399, 0, 0, 2402, 0,
0, 0, 4681, 3267, 288, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 726, 726,
0, 0, 0, 0, 0, 0, 0, 0, 3306, 0,
902, 0, 0, 983, 0, 0, 0, 0, 0, 0,
0, 3078, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2050, 1337, 730, 736,
736, 0, 2051, 1568, 0, 1337, 0, 730, 1337, 2113,
736, 0, 0, 0, 0, 0, 0, 983, 983, 0,
0, 730, 0, 0, 0, 0, 0, 736, 0, 0,
0, 2114, 0, 2539, 0, 0, 0, 0, 0, 0,
730, 3394, 0, 0, 0, 0, 0, 2053, 288, 0,
0, 5631, 1568, 0, 0, 1568, 983, 983, 0, 730,
2474, 0, 0, 0, 0, 730, 0, 983, 0, 0,
0, 3420, 3421, 3422, 3423, 0, 0, 730, 0, 0,
0, 0, 2115, 2986, 0, 0, 0, 0, 0, 0,
0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 0, 2054, 0, 4980, 0, 730, 0, 0,
2055, 0, 0, 2056, 0, 0, 0, 0, 0, 0,
0, 1337, 730, 0, 736, 0, 2546, 912, 1337, 2547,
730, 1337, 0, -3597, -3597, -3597, 3476, 3477, 0, 0,
2057, 0, 0, 0, 730, 0, 0, 0, 0, 0,
0, 0, 3494, 983, 0, 0, 0, 0, 0, 0,
730, 3069, 0, 0, 0, 0, 983, 0, 3070, 0,
0, 0, 2116, 0, 0, 0, 2058, 0, 0, 0,
983, 0, 0, 0, 0, 0, 3537, 3538, 3539, 3540,
0, 0, 0, 0, 3071, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 983, 0,
0, 983, 0, 0, 0, 0, 0, 0, 730, 983,
983, 0, 1568, 0, 0, 0, 983, 983, 2117, 0,
0, 983, 2118, 0, 0, 0, 0, 0, 983, 0,
0, 983, 983, 0, 0, 0, 0, 2119, 983, 0,
0, 2060, 0, 0, 0, 0, 0, 730, 0, 0,
0, 2061, 0, 983, 0, 0, 0, 0, 0, 0,
2062, 983, 0, 0, 0, 983, 0, 0, 0, 902,
0, 2120, 2063, 0, 730, 0, 0, 0, 0, 0,
0, 0, 0, 288, 0, 0, 730, 0, 0, 0,
0, 0, 0, 0, 0, 3636, 0, 0, 983, 3072,
0, 3640, 0, 0, 3073, 0, 983, 0, 288, 0,
0, 2121, 0, 76, 2065, 2066, 2122, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 730, 730,
0, 983, 0, 0, 0, 0, 0, 0, 0, 0,
2123, 0, 80, 0, 0, 0, 2124, 81, 3075, 1568,
0, 82, 0, 83, 0, 84, 85, 0, 0, 0,
2125, 0, 736, 0, 0, 0, 86, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 90, 91, 0, 0, 0, 0, 0, 1568,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6745, 3076, 0, 0, 736, 0, 0, 0,
0, 1568, 0, 0, 0, 2068, 0, 0, 736, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 100,
0, 0, 0, 0, 983, 0, 0, 0, 0, 0,
101, 983, 102, 103, 0, 0, 0, 0, 0, 0,
3332, 902, 736, 0, 0, 0, 0, 0, 730, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1337,
106, 0, 0, 1337, 0, 1337, 0, 0, 0, 0,
0, 0, 107, 1568, 108, 109, 0, 0, 0, 0,
0, 110, 0, 111, 0, 0, 3078, 0, 0, 0,
0, 0, 0, 3830, 0, 112, 0, 113, 0, 983,
0, 0, 0, 0, 0, 0, 0, 0, 0, 288,
0, 0, 114, 0, 115, 983, 0, 117, 0, 0,
912, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 118, 0, 119, 0, 0, 0, 120, 736,
0, 0, 0, 0, 6231, 0, 983, 0, 0, 0,
0, 0, 123, 0, 124, 0, 0, 0, 0, 0,
0, 125, 0, 0, 0, 0, 0, 0, 728, 726,
0, 0, 0, 0, 0, 900, 0, 0, 0, 127,
0, 0, 0, 3470, 0, 0, 0, 0, 2986, 0,
0, 0, 0, 1568, 3481, 1568, 128, -3597, -3597, -3597,
2990, 2991, 2992, 2993, 2994, 2995, 1563, 0, 0, 900,
3499, 0, 0, 0, 0, 0, 0, 0, 730, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1178, 0,
0, 0, 1563, 0, 1178, 1178, 736, 0, 0, 0,
0, 900, 0, 130, 131, 0, 0, 0, 0, 132,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 133, 3573, 0, 0, 983, 0, 0,
983, 0, 0, 983, 983, 983, 0, 0, 0, 0,
3617, 134, 0, 0, 0, 0, 3589, 0, 3624, 0,
0, 0, 0, 0, 0, 0, 0, 0, 730, 1551,
983, 983, 0, 0, 983, 0, 0, 0, 0, 0,
0, 3604, 0, 0, 0, 730, 0, 0, 0, 983,
0, 0, 0, 0, 0, 136, 983, 0, 0, 0,
0, 983, 730, 0, 983, 983, 0, 730, 0, 137,
0, 0, 983, 0, 0, 138, 139, 0, 140, 0,
0, 3630, 1551, 141, 0, 0, 5092, 0, 0, 142,
0, 0, 143, 983, 0, 0, 983, 0, 0, 144,
0, 0, 736, 0, 736, 0, 145, 146, 983, 0,
0, 0, 0, 0, 147, 0, 0, 0, 148, 0,
0, 0, 0, 0, 0, 0, 0, 0, 149, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 150, 0, 0, 0, 0, 1568,
736, 0, 0, 0, 0, 0, 0, 0, 0, 0,
983, 3439, 2546, 0, 152, 2547, 153, 0, 2050, 2548,
2549, 2550, 0, 0, 2051, 155, 0, 0, 0, 0,
0, 156, 0, 0, 0, 0, 157, 3068, 0, 2153,
0, 0, 0, 0, 0, 0, 0, 3069, 0, 159,
912, 0, 0, 730, 3070, 983, 0, 0, 0, 0,
0, 730, 730, 0, 0, 0, 0, 0, 0, 2053,
0, 0, 0, 160, 0, 0, 0, 0, 0, 0,
3071, 0, 0, 0, 0, 0, 0, 3820, 0, 0,
0, 0, 161, 0, 0, 0, -149, 0, 0, 0,
0, 3827, 3518, 0, 0, 0, 0, 0, 0, 0,
3535, 0, 0, 0, 0, 0, 983, 0, 3439, 1568,
902, 0, 0, 2154, 0, 2054, 0, 0, 0, 730,
0, 0, 2055, 0, 0, 2056, 0, 0, 3830, 0,
0, 0, 0, 0, 0, 0, 0, 1563, 0, 0,
0, -2647, 0, 0, 0, 983, -2868, 0, 1563, 983,
0, 983, 2057, 0, 0, 0, 902, 0, 0, 0,
0, 0, 0, 0, 1563, 983, 0, 0, 0, 0,
983, 0, 0, 0, 0, 0, 983, 0, 0, 0,
983, 0, 0, 0, 902, 3072, 1568, 983, 2058, 0,
3073, 3615, -2647, 0, 0, 0, 0, -2868, 0, 0,
0, 0, 0, 0, 0, -2647, 0, 0, 0, 0,
-2868, -2647, 0, 3074, 2737, 0, -2868, -2647, 3439, 0,
0, 0, -2868, -2647, 0, 0, -2647, 0, -2868, 0,
-2647, -2868, 0, 0, 3075, -2868, 1568, 0, 0, 0,
0, 1568, 1568, 0, 0, 0, 983, 0, 0, 0,
0, 0, 983, 983, 736, 0, 0, 1563, 0, 2155,
-2647, 0, 0, 2060, 0, -2868, 0, -2868, 736, 0,
0, 0, 0, 2061, 0, 2795, 0, 0, 0, 0,
0, 0, 2062, 0, 0, 0, -2647, 0, 983, 3076,
0, -2868, 3077, 0, 2063, 0, 983, 0, 0, 912,
0, 0, 4059, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 983, 0, 0, 0, 0, 0,
0, 0, 0, 4219, 0, -2647, 2065, 2066, -2647, 0,
-2868, 0, 0, -2868, -2647, 0, 0, 0, 0, -2868,
0, 0, 0, 0, 1568, 1568, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4220, 0,
0, 0, 0, 0, 0, 0, 6443, 0, 0, 0,
983, 730, 3078, 0, 0, 0, 0, 0, 0, 983,
983, 983, 1563, 0, 983, 0, 0, 983, 0, 0,
0, -2647, 0, 0, 0, 0, -2868, 0, 983, 0,
0, 0, 0, 0, 730, 983, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 983, 0, 0, 0, 2068, 4199, 0,
0, 4202, 0, 0, 0, 0, 0, 0, 0, 902,
2020, 0, 0, 0, 983, 0, 0, 0, 1154, 3828,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 730, 0, 0, 0, 0, 0, 0, 912,
730, 736, 0, 0, 2986, 2021, -2647, 0, 730, 0,
0, -2868, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993,
2994, 2995, 0, 0, 0, 0, 5182, 0, 0, 0,
-2647, 0, -2647, -2647, 0, -2868, 0, -2868, -2868, 0,
0, 0, 0, 0, 0, 0, 2050, 0, 0, 4293,
0, 0, 2051, 0, -2647, 983, 0, 0, 0, -2868,
0, 0, 4306, 0, 3909, 0, 2022, 2052, 0, 0,
4315, 0, 0, 0, -2647, 3043, 0, -2647, -2647, 0,
-2647, 0, -2868, 0, -2868, -2868, 0, 1337, 1337, 0,
730, 730, 0, 0, 900, 0, 983, 2053, 0, 0,
0, 0, 1337, 2023, 730, 1337, 0, 0, 0, 4359,
983, 912, 0, 0, 1568, 0, 0, 730, 730, 983,
0, 983, 728, 983, 0, 0, 0, 0, 0, 0,
4386, 728, 0, 983, 0, 0, 736, 0, 0, 0,
0, 0, 0, 0, 0, 728, 2024, 0, 0, 983,
0, 0, 0, 2054, 0, 0, 0, 0, 0, 0,
2055, 0, 736, 2056, 728, 0, 0, 0, 0, 0,
0, 0, 0, 1337, 0, 0, 0, 1337, 1337, 0,
0, 0, 0, 728, 2025, 0, 0, 0, 2026, 728,
2057, 0, 0, 0, 0, 4460, 0, 4462, 0, 0,
0, 728, 0, 983, 729, 0, 0, 1563, 0, 0,
0, 901, 0, 983, 0, 0, 0, 0, 0, 2027,
2028, 983, 983, 0, 0, 0, 2058, 983, 0, 0,
0, 728, 0, 0, 0, 0, 0, 0, 0, 0,
0, 983, 0, 0, 0, 901, 728, 6698, 0, 0,
0, 983, 0, 0, 728, 0, 0, 0, 2029, 0,
0, 0, 141, 0, 1179, 0, 0, 2030, 728, 0,
1179, 1179, 0, 0, 0, 1563, 2031, 901, 0, 0,
736, 0, 0, 0, 728, 2032, 0, 0, 4050, 0,
0, 902, 0, 2033, 4058, 0, 0, 2059, 0, 4520,
0, 2060, 0, 0, 983, 2034, 4527, 0, 0, 0,
983, 2061, 1563, 0, 2035, 0, 0, 0, 2036, 0,
2062, 0, 0, 0, 0, 0, 0, 0, 983, 983,
0, 0, 2063, 0, 0, 4091, 0, 0, 983, 0,
0, 6698, 728, 983, 0, 1563, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 983, 0, 0, 0,
0, 2064, 0, 2037, 2065, 2066, 0, 0, 0, 1178,
0, 728, 0, 1178, 0, 0, 0, 0, 2050, 0,
0, 0, 0, 0, 2051, 0, 0, 0, 0, 0,
0, 0, 0, 900, 0, 983, 2067, 0, 728, 983,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
728, 0, 0, 0, 0, 0, 0, 983, 0, 0,
0, 0, 0, 0, 912, 0, 0, 0, 0, 2053,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1563, 0, 0, 0, 0,
0, 0, 728, 728, 0, 0, 1563, 0, 983, 983,
0, 0, 983, 0, 0, 2068, 983, 0, 2546, 0,
912, 2547, 1563, 0, 726, 2548, 2549, 2550, 0, 983,
983, 0, 0, 0, 0, 2054, 0, 0, 0, 912,
0, 0, 2055, 3068, 0, 2056, 0, 995, 0, 0,
3986, 0, 0, 3069, 2546, 0, 0, 2547, 0, 0,
3070, 2548, 2549, 2550, 0, 996, 0, 0, 4002, 0,
0, 0, 2057, 0, 4006, 0, 1563, 0, 4009, 3068,
0, 0, 4314, 0, 0, 0, 3071, 0, 0, 3069,
997, 0, 0, 0, 0, 0, 3070, 0, 1563, 1178,
1178, 0, 0, 998, 0, 4034, 0, 0, 2058, 0,
0, 1563, 0, 0, 0, 0, 0, 0, 0, -880,
0, 0, 3071, 1563, 0, 900, 0, 4434, 0, 0,
0, 0, 728, 0, 0, 4443, 0, 999, 0, 4076,
0, 0, 0, 1000, 0, 0, 0, 0, 0, 0,
0, 0, 4458, 0, 0, 0, 0, 0, 0, 726,
0, 1001, 4464, 1563, 1563, 4465, 0, 4466, 4467, 4796,
4797, 4469, 1002, 0, 0, 4472, 0, 4473, 0, 2155,
4475, 1003, 0, 2060, 0, 0, 0, 0, 0, 0,
0, 4126, 0, 2061, 1004, 0, 0, 0, 0, 0,
0, 3072, 2062, 1005, 0, 0, 3073, 1006, 0, 0,
0, 0, 0, 0, 2063, 0, 4155, 0, 0, 0,
0, 0, 4164, 0, 0, 0, 0, -1093, 0, 3074,
2737, 0, 0, 0, 0, 0, 4174, 3072, 0, 0,
0, 0, 3073, 726, 0, 0, 4187, 0, 0, 0,
3075, 0, 4192, 4086, 0, 0, 2065, 2066, 4517, 0,
0, 0, 0, 0, 0, 3074, 2737, 0, 0, 0,
1007, 0, 4205, 0, 0, 0, 0, 0, 4208, 0,
-616, 0, 0, 0, 0, 4214, 3075, 0, 2067, 0,
0, 2795, 0, 0, 0, 0, 0, 0, 4511, 4229,
0, 0, 728, 0, 0, 3076, 0, 0, 3077, 0,
0, 0, 4254, 4521, 0, 0, 0, 0, 4526, 1563,
0, 1008, 0, 726, 1009, 0, 0, 2795, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3076, 0, 0, 3077, 1010, 4546, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2068, 0, 1011,
0, 0, 0, 0, 0, 0, -472, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 728, 0, 0, 0, 1012, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1013, 0, 3078, 728,
0, 0, 0, -472, 730, 0, 1014, 0, 0, 4967,
0, 0, 0, 0, 0, 0, 728, 975, 0, 0,
0, 728, 0, 0, 0, 1015, 0, 0, 0, 0,
730, 0, 1016, 0, 3078, 0, 0, 0, 0, -472,
0, 0, 1017, 1018, 0, 1019, 1020, 0, 730, 0,
0, 0, 0, 902, 730, 0, 0, 0, 730, 0,
0, 1021, 0, 0, 0, 0, 0, 730, 1022, 2050,
0, 1023, 0, 0, 1024, 2051, 0, 0, 0, 0,
0, 0, 0, 0, 0, 730, 0, -472, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2986, 0, 1337, 0, 1337, 1337, 0, 0, 0, 2987,
2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 0, 730,
2053, 0, 5248, 0, 0, 0, 0, 2050, 0, 0,
0, 0, 0, 2051, 0, 0, 2986, 0, 0, 730,
730, 0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 0, 0, 0, 728, 5365, 0,
0, 0, 0, 0, 0, 728, 728, 0, 0, 0,
902, 730, 4790, 4496, 902, 0, 2054, 0, 2053, 0,
901, 0, 0, 2055, 0, 0, 2056, 0, 0, 0,
0, 5135, 0, 4512, 0, 0, 730, 0, 902, 0,
4496, 0, 730, 0, 0, 0, 0, 0, 729, 0,
0, 0, 0, 2057, 0, 0, 730, 729, 0, 0,
0, 0, 0, 730, 900, 0, 730, 0, 0, 0,
0, 729, 730, 728, 2054, 0, 0, 0, 0, 4795,
0, 2055, 0, 4840, 2056, 4842, 0, 4798, 0, 2058,
729, 0, 730, 0, 0, 0, 0, 0, 730, 0,
0, 0, 0, 0, 0, 730, 0, 0, 0, 729,
900, 2057, 0, 0, 0, 729, 0, 0, 0, 730,
0, 0, 0, 0, 0, 0, 0, 729, 0, 0,
0, 0, 730, 0, 0, 0, 0, 902, 900, 0,
0, 0, 0, 730, 0, 0, 0, 2058, 0, 1178,
0, 0, 0, 0, 0, 0, 0, 729, 0, 0,
2155, 0, 2546, 0, 2060, 2547, 0, 0, 0, 2548,
2549, 2550, 729, 2050, 2061, 0, 0, 0, 0, 2051,
729, 0, 4881, 2062, 4883, 0, 2113, 3068, 0, 0,
1178, 0, 0, 0, 729, 2063, 0, 3069, 0, 0,
0, 0, 0, 902, 3070, 0, 0, 0, 2114, 0,
729, 0, 0, 0, 0, 0, 0, 0, 2155, 0,
0, 0, 2060, 0, 2053, 0, 0, 4943, 0, 0,
3071, 0, 2061, 4950, 4264, 0, 0, 2065, 2066, 0,
0, 2062, 0, 0, 0, 0, 1178, 0, 0, 0,
0, 0, 0, 2063, 0, 0, 0, 0, 0, 2115,
0, 0, 0, 1178, 0, 0, 0, 0, 729, 4265,
0, 0, 0, 0, 0, 0, 0, 0, 4944, 0,
2054, 0, 0, 0, 0, 0, 0, 2055, 0, 0,
2056, 0, 4808, 0, 0, 2065, 2066, 0, 0, 0,
0, 0, 0, 0, 0, 1179, 0, 729, 0, 1179,
0, 0, 0, 0, 0, 0, 0, 2057, 0, 0,
4966, 0, 0, 0, 0, 0, 0, 4809, 0, 901,
0, 0, 0, 0, 729, 728, 0, 0, 2068, 0,
0, 0, 0, 0, 0, 3072, 729, 0, 0, 2116,
3073, 0, 0, 2058, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4792, 0, 728, 0,
0, 0, 0, 3074, 2737, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1563, 0, 729, 729,
1563, 1563, 0, 730, 3075, 902, 2068, 0, 0, 0,
0, 0, 0, 900, 0, 2117, 0, 0, 0, 2118,
0, 0, 0, 730, 0, 0, 0, 0, 0, 4091,
730, 0, 0, 0, 2119, 0, 728, 1337, 2060, 1337,
1337, 0, 0, 0, 728, 2795, 0, 0, 2061, 5127,
0, 5129, 728, 5131, 0, 0, 0, 2062, 0, 3076,
1563, 0, 3077, 0, 0, 0, 1563, 0, 2120, 2063,
0, 0, 0, 0, 0, 5110, 4864, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1179, 1179, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1563, 4194, 0,
0, 2065, 2066, 2122, 0, 0, 0, 0, 0, 0,
902, 901, 0, 0, 0, 0, 902, 0, 729, 0,
0, 0, 0, 0, 728, 728, 0, 2123, 0, 0,
0, 2050, 0, 4195, 0, 0, 0, 2051, 728, 5543,
0, 2546, 3078, 0, 2547, 0, 0, 2125, 2548, 2549,
2550, 728, 728, 5545, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3068, 5181, 0, 0,
0, 0, 0, 0, 0, 0, 3069, 0, 0, 0,
0, 2546, 2053, 3070, 2547, 0, 0, 0, 2548, 2549,
2550, 0, 0, 4959, 0, 0, 0, 0, 0, 0,
0, 0, 2068, 0, 0, 0, 3068, 730, 0, 3071,
5206, 0, 0, 0, 0, 0, 3069, 0, 0, 0,
0, 0, 0, 3070, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5227, 0, 0, 2054, 0,
0, 0, 0, 0, 2986, 2055, 0, 0, 2056, 3071,
0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993,
2994, 2995, 0, 0, 0, 0, 5592, 0, 0, 0,
0, 0, 0, 0, 0, 2057, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1324, 0, 729, 0,
0, 0, 0, 0, 0, 1336, 0, 0, 0, 0,
0, 0, 0, 1336, 1563, 0, 1336, 0, 0, 0,
0, 2058, 0, 0, 0, 0, 0, 0, 0, 730,
730, 0, 0, 0, 3072, 900, 0, 0, 0, 3073,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 730, 0, 0, 730,
0, 0, 3074, 2737, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3072, 0, 0, 0, 729, 3073,
0, 0, 0, 3075, 0, 0, 0, 1563, 0, 0,
0, 1563, 2155, 0, 0, 729, 2060, 0, 0, 0,
0, 0, 3074, 2737, 3439, 0, 2061, 0, 0, 0,
0, 0, 729, 0, 0, 2062, 0, 729, 0, 0,
1324, 0, 0, 3075, 2795, 0, 5147, 2063, 0, 1336,
5151, 902, 902, 902, 0, 0, 1336, 0, 3076, 1336,
0, 3077, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 730, 0, 0, 0,
0, 0, 0, 0, 2795, 0, 4866, 0, 0, 2065,
2066, 0, 0, 0, 0, 730, 0, 0, 3076, 0,
0, 3077, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 730, 0, 0, 0,
0, 4867, 0, 0, 0, 0, 0, 0, 0, 2546,
0, 0, 2547, 0, 0, 0, 2548, 2549, 2550, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1563, 3078, 0, 0, 3068, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3069, 1563, 0, 0, 0, 0,
1563, 3070, 0, 729, 0, 0, 2546, 0, 0, 2547,
0, 729, 729, 2548, 2549, 2550, 0, 0, 0, 0,
2068, 3078, 0, 0, 0, 0, 0, 3071, 1563, 0,
0, 3068, 0, 730, 0, 0, 0, 0, 0, 0,
0, 3069, 0, 0, 0, 0, 0, 0, 3070, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
901, 0, 0, 0, 3071, 0, 0, 0, 0, 729,
902, 0, 0, 2986, 0, 0, 730, 0, 730, 0,
0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 730, 0, 730, 0, 5711, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5898, 901, 0, 5575, 0,
0, 0, 0, 2986, 0, 0, 0, 0, 0, 0,
5902, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 3072, 0, 901, 5750, 0, 3073, 0, 0,
0, 0, 0, 0, 0, 1179, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3074, 2737, 5665, 730, 0, 5667, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 5389, 0, 0, 3072,
0, 3075, 0, 0, 3073, 0, 1179, 0, 0, 0,
0, 0, 0, 0, 0, 5682, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3074, 2737, 0,
0, 5960, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1324, 2795, 0, 730, 0, 0, 1336, 3075, 0,
0, 1336, 0, 1336, 0, 0, 3076, 0, 0, 3077,
2546, 0, 1179, 2547, 0, 0, 730, 2548, 2549, 2550,
730, 0, 1563, 0, 0, 1563, 0, 1563, 0, 1179,
0, 0, 1563, 0, 0, 3068, 0, 0, 0, 2795,
0, 730, 0, 0, 0, 3069, 0, 0, 0, 0,
0, 0, 3070, 3076, 0, 0, 3077, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2299, 0, 2301, 2302,
0, 0, 0, 0, 5501, 0, 0, 5504, 3071, 0,
0, 1563, 0, 0, 0, 0, 0, 0, 0, 1563,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3078,
0, 729, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1563, 0, 0, 0, 728, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 729, 0, 0, 0, 0, 0,
902, 0, 0, 0, 728, 0, 3078, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 728, 0, 0, 0, 0, 900, 728, 901,
0, 0, 728, 0, 0, 0, 0, 0, 5586, 0,
0, 728, 5837, 0, 1563, 0, 1563, 0, 0, 0,
0, 0, 729, 3072, 0, 3439, 0, 0, 3073, 728,
729, 2986, 6092, 0, 6094, 0, 0, 0, 729, 0,
2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 0,
0, 3074, 2737, 5754, 0, 5862, 5863, 0, 0, 0,
0, 0, 0, 728, 5838, 0, 0, 0, 0, 0,
0, 0, 3075, 0, 0, 0, 1178, 0, 2986, 0,
0, 0, 0, 728, 728, 0, 0, 2987, 2988, 2989,
2990, 2991, 2992, 2993, 2994, 2995, 0, 0, 0, 0,
6018, 0, 0, 0, 5861, 0, 0, 0, 0, 0,
1563, 0, 0, 2795, 900, 728, 0, 0, 900, 0,
729, 729, 4496, 0, 0, 0, 5877, 3076, 0, 0,
3077, 0, 0, 0, 729, 0, 0, 0, 0, 0,
728, 0, 900, 0, 0, 0, 728, 729, 729, 5906,
5907, 0, 1563, 0, 0, 0, 730, 0, 0, 0,
728, 0, 0, 0, 0, 1178, 0, 728, 0, 0,
728, 0, 0, 0, 0, 2546, 728, 0, 2547, 0,
1563, 0, 2548, 2549, 2550, 0, 6222, 0, 0, 0,
0, 0, 0, 0, 0, 0, 728, 0, 5905, 0,
3068, 0, 728, 0, 0, 0, 0, 902, 0, 728,
3069, 0, 902, 0, 902, 0, 0, 3070, 0, 0,
3078, 2020, 0, 728, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 728, 0, 902, 0,
0, 900, 0, 3071, 0, 0, 0, 728, 0, 0,
0, 1563, 0, 0, 0, 0, 2021, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1563, 0, 0, 0, 0, 0, 0,
0, 0, 6002, 0, 730, 0, 0, 730, 0, 0,
0, 0, 0, 6005, 6006, 0, 0, 1563, 0, 1058,
0, 0, 0, 0, 3721, 0, 0, 900, 0, 0,
0, 0, 0, 6011, 0, 0, 0, 2022, 0, 0,
5989, 901, 2986, 0, 1554, 0, 0, 0, 0, 0,
0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995,
6348, 0, 6350, 0, 6029, 0, 0, 0, 0, 0,
1554, 0, 0, 0, 2023, 1061, 3722, 0, 3072, 0,
0, 0, 0, 3073, 0, 0, 2546, 0, 0, 2547,
0, 1062, 0, 2548, 2549, 2550, 0, 730, 730, 0,
0, 0, 0, 0, 0, 0, 3074, 2737, 730, 1424,
0, 3068, 0, 0, 0, 0, 0, 2024, 0, 1563,
0, 3069, 0, 0, 0, 730, 0, 3075, 3070, 0,
0, 0, 0, 3723, 5872, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1065, 0, 5882, 0, 0, 910,
0, 0, 0, 1066, 3071, 2025, 0, 0, 0, 2026,
0, 0, 1563, 0, 0, 0, 1067, 981, 2795, 0,
0, 0, 3724, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3076, 910, 0, 3077, 0, 1563, 0, 0,
2087, 2028, 0, 0, 0, 0, 0, 0, 0, 1427,
0, 0, 1182, 0, 0, 0, 0, 0, 1182, 1182,
0, 0, 0, 0, 0, 910, 0, 728, 0, 900,
0, 0, 730, 0, 0, 902, 0, 0, 0, 2088,
3725, 0, 0, 141, 0, 0, 0, 728, 2030, 0,
0, 0, 2546, 0, 728, 2547, 0, 2031, 0, 2548,
2549, 2550, 1071, 0, 0, 0, 2032, 0, 0, 0,
0, 0, 0, 0, 2089, 0, 0, 3068, 0, 3072,
0, 0, 0, 0, 3073, 3078, 2034, 3069, 0, 0,
0, -2649, 0, 0, 3070, 2035, 0, 0, 0, 2036,
0, 0, 0, 0, 0, 0, 0, 3074, 2737, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3071, 0, 0, 0, 0, 0, 0, 0, 3075, 0,
0, 0, 6548, 0, 0, 0, 0, 951, 3726, 0,
0, 1076, -2649, 0, 900, 0, 0, 0, 0, 0,
900, 0, 0, 0, 2037, -2649, 0, 0, 0, 0,
0, -2649, 1563, 0, 0, 0, 0, -2649, 1431, 2795,
0, 3727, 0, -2649, 0, 0, -2649, 0, 1080, 0,
-2649, 0, 0, 3076, 4496, 1081, 3077, 2986, 1082, 0,
0, 0, 0, 0, 0, 0, 2987, 2988, 2989, 2990,
2991, 2992, 2993, 2994, 2995, 0, 0, 1083, 0, 6039,
-2649, 0, 0, 0, 1433, 1554, 0, 0, 0, 0,
0, 1085, 0, 0, 1434, 0, 1554, 0, 1087, 0,
0, 0, 0, 0, 0, 3072, -2649, 0, 0, 0,
3073, 728, 1554, 3728, 0, 6316, 0, 0, 0, 0,
0, 1324, 1563, 0, 1324, 0, 6633, 0, 0, 0,
0, 0, 0, 3074, 2737, 0, 0, 0, 0, 1092,
0, 4944, 0, 0, 0, 0, 3078, 0, 1563, 0,
730, 0, 0, 0, 3075, -2649, 0, 0, -2649, 0,
0, 0, 0, 0, -2649, 1336, 1336, 0, 6352, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1336, 0, 0, 1336, 0, 0, 0, 0, 0, 0,
4496, 2474, 4496, 0, 730, 2795, 2474, 2474, 0, 0,
0, 0, 0, 0, 0, 1554, 730, 0, 0, 3076,
0, 0, 3077, 0, 0, 0, 0, 0, 0, 0,
0, -2649, 0, 728, 728, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 6720, 0, 0, 0,
730, 0, 0, 0, 0, 0, 0, 0, 2986, 0,
728, 1336, 0, 728, 0, 1336, 1336, 2987, 2988, 2989,
2990, 2991, 2992, 2993, 2994, 2995, 0, 1481, 1481, 0,
6086, 0, 0, 0, 0, 0, 0, 0, 1154, 0,
0, 0, 0, 0, 6446, 0, 0, 0, 0, 0,
1563, 0, 0, 0, 729, 0, 0, 0, 0, 0,
0, 0, 3078, 0, 0, 0, -2649, 0, 0, 0,
6426, 0, 0, 0, 0, 0, 0, 0, 902, 0,
729, 0, 0, 0, 0, 900, 900, 900, 0, 0,
-2649, 0, -2649, -2649, 0, 0, 0, 730, 729, 1563,
1554, 0, 1563, 901, 729, 0, 0, 0, 729, 0,
728, 0, 0, 0, -2649, 0, 0, 729, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 728,
0, 0, 0, 0, -2649, 729, 0, -2649, -2649, 0,
-2649, 0, 0, 0, 0, 0, 1481, 0, 0, 0,
728, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2986, 0, 0, 0, 0, 729,
0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993,
2994, 2995, 1179, 0, 0, 0, 6120, 0, 0, 729,
729, 0, 0, 0, 730, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2546,
901, 729, 2547, 0, 901, 0, 2548, 2549, 2550, 0,
0, 0, 0, 0, 0, 0, 0, 728, 0, 0,
0, 0, 0, 0, 3068, 0, 729, 0, 901, 0,
0, 0, 729, 0, 3069, 0, 0, 0, 0, 0,
0, 3070, 0, 0, 0, 0, 729, 0, 0, 1563,
0, 1179, 0, 729, 0, 0, 729, 0, 0, 0,
0, 0, 729, 0, 900, 0, 0, 3071, 0, 0,
728, 2546, 728, 0, 2547, 0, 0, 0, 2548, 2549,
2550, 0, 729, 0, 0, 728, 0, 728, 729, 6602,
0, 0, 0, 0, 0, 729, 3068, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3069, 0, 0, 729,
730, 0, 730, 3070, 0, 0, 0, 0, 0, 0,
0, 2546, 729, 0, 2547, 0, 0, 901, 2548, 2549,
2550, 0, 0, 729, 0, 0, 0, 0, 0, 3071,
0, 0, 0, 0, 0, 0, 3068, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3069, 728, 730, 0,
0, 0, 0, 3070, 0, 0, 0, 0, 1337, 0,
0, 0, 0, 0, 0, 1554, 0, 0, 0, 0,
0, 0, 3072, 0, 0, 0, 1563, 3073, 6716, 3071,
0, 0, 0, 901, 0, 0, 0, 0, 910, 0,
0, 0, 0, 0, 0, 0, 0, 0, 902, 0,
3074, 2737, 0, 1337, 0, 0, 981, 0, 728, 0,
0, 0, 0, 0, 0, 981, 1563, 0, 0, 0,
0, 3075, 0, 981, 0, 0, 981, 0, 0, 0,
728, 0, 0, 1554, 728, 0, 0, 0, 1563, 0,
0, 0, 0, 0, 3072, 0, 0, 0, 0, 3073,
0, 0, 0, 0, 0, 728, 0, 0, 0, 0,
0, 0, 2795, 0, 0, 0, 0, 0, 0, 0,
1554, 0, 3074, 2737, 0, 0, 3076, 0, 0, 3077,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3075, 3072, 0, 0, 0, 0, 3073,
0, 0, 0, 1554, 0, 0, 0, 0, 0, 0,
1563, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3074, 2737, 0, 0, 0, 0, 0, 0,
981, 0, 0, 0, 2795, 1566, 0, 0, 0, 981,
0, 0, 0, 3075, 0, 0, 981, 0, 3076, 981,
0, 3077, 0, 0, 900, 0, 0, 0, 0, 0,
0, 1566, 0, 0, 0, 0, 0, 0, 0, 3078,
0, 0, 0, 729, 0, 901, 0, 0, 0, 0,
0, 0, 0, 0, 2795, 0, 0, 0, 0, 0,
0, 0, 0, 729, 4496, 0, 0, 0, 3076, 0,
729, 3077, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 730, 1554, 0, 0, 2020, 0, 0, 0,
0, 0, 0, 0, 1554, 0, 730, 0, 0, 0,
0, 0, 1563, 0, 0, 0, 0, 0, 0, 0,
1554, 3078, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2021, 0, 0, 0, 0, 0, 902, 0, 0,
0, 0, 0, 0, 0, 0, 981, 981, 0, 0,
0, 2986, 0, 1182, 0, 0, 0, 1182, 0, 0,
2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 0,
901, 3078, 0, 6122, 1554, 0, 901, 0, 0, 0,
0, 0, 0, 0, 981, 0, 0, 0, 0, 0,
0, 0, 2022, 0, 0, 0, 1554, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1554,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
728, 1554, 0, 2986, 0, 0, 0, 0, 0, 2023,
0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 0, 0, 0, 6161, 0, 1324, 0, 0,
1336, 0, 1336, 1336, 0, 0, 0, 0, 0, 0,
0, 1554, 1554, 0, 0, 0, 0, 729, 0, 0,
0, 900, 2024, 2986, 0, 0, 900, 0, 900, 0,
0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 0, 0, 0, 6512, 0, 0, 0, 0,
0, 0, 900, 0, 0, 0, 0, 0, 0, 0,
2025, 0, 0, 0, 2026, 0, 0, 902, 0, 730,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1182, 1182, 0, 1563, 0, 0, 0,
0, 0, 0, 0, 0, 2104, 2028, 2546, 728, 0,
2547, 728, 0, 0, 2548, 2549, 2550, 981, 981, 910,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 981, 3068, 0, 0, 0, 1566, 981, 0, 729,
729, 981, 3069, 981, 2105, 0, 0, 1566, 141, 3070,
0, 0, 0, 2030, 0, 0, 0, 0, 0, 0,
0, 0, 2031, 1566, 0, 0, 729, 0, 0, 729,
0, 2032, 0, 0, 0, 3071, 0, 1554, 0, 2106,
0, 0, 0, 0, 0, 0, 0, 0, 0, 902,
0, 2034, 0, 0, 0, 0, 0, 0, 0, 0,
2035, 728, 728, 0, 2036, 0, 981, 0, 981, 981,
0, 0, 728, 0, 730, 0, 1563, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1337, 0, 728,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
730, 901, 901, 901, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2546, 0, 1566, 2547, 0, 2037,
0, 2548, 2549, 2550, 0, 0, 729, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3068,
0, 0, 0, 0, 0, 729, 0, 0, 0, 3069,
3072, 0, 0, 1563, 0, 3073, 3070, 0, 0, 1337,
1337, 0, 0, 0, 975, 0, 729, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3074, 2737,
0, 0, 3071, 0, 0, 0, 728, 0, 0, 900,
0, 0, 0, 0, 0, 981, 0, 2546, 0, 3075,
2547, 0, 0, 1563, 2548, 2549, 2550, 0, 1563, 1563,
0, 0, 0, 0, 0, 0, 0, 0, 730, 0,
0, 0, 3068, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3069, 0, 0, 0, 0, 0, 0, 3070,
2795, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1566, 0, 729, 3076, 0, 0, 3077, 0, 0,
0, 0, 0, 2546, 0, 3071, 2547, 0, 0, 0,
2548, 2549, 2550, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 981, 0, 3068, 0,
0, 0, 3922, 0, 0, 0, 0, 3072, 3069, 0,
901, 0, 3073, 0, 0, 3070, 729, 0, 729, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
981, 729, 1563, 729, 0, 3074, 2737, 0, 0, 0,
0, 3071, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3075, 3078, 0, 981,
981, 981, 1324, 981, 0, 1336, 0, 1336, 1336, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 902, 981, 0, 0, 0, 0, 0, 0,
3072, 0, 3923, 0, 0, 3073, 0, 2795, 0, 0,
0, 0, 0, 729, 0, 0, 0, 0, 0, 0,
0, 3076, 0, 0, 3077, 0, 0, 0, 3074, 2737,
0, 0, 0, 0, 0, 0, 0, 0, 902, 0,
0, 0, 0, 0, 0, 0, 0, 1337, 1337, 3075,
0, 0, 0, 0, 728, 0, 0, 902, 0, 0,
0, 0, 0, 0, 0, 0, 3072, 0, 0, 2986,
0, 3073, 981, 0, 729, 0, 981, 981, 2987, 2988,
2989, 2990, 2991, 2992, 2993, 2994, 2995, 0, 0, 0,
2795, 6534, 981, 0, 3074, 2737, 729, 0, 728, 0,
729, 0, 0, 0, 3076, 0, 0, 3077, 0, 0,
728, 0, 0, 0, 3078, 3075, 0, 2546, 0, 0,
2547, 729, 0, 0, 2548, 2549, 2550, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 975, 3068, 0, 728, 0, 0, 0, 0, 0,
0, 0, 3069, 0, 0, 0, 2795, 0, 0, 3070,
0, 0, 0, 0, 0, 0, 1566, 0, 0, 0,
3076, 0, 910, 3077, 0, 0, 0, 0, 0, 0,
0, 1563, 0, 1182, 0, 3071, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3078, 0, 0,
0, 975, 0, 0, 0, 0, 0, 0, 0, 975,
0, 0, 0, 0, 0, 0, 2986, 0, 0, 0,
901, 0, 900, 0, 1182, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 1566, 0, 0, 0, 6732, 0,
0, 728, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3078, 0, 0, 0, 0, 0, 0,
0, 1566, 0, 0, 0, 0, 0, 0, 0, 0,
1182, 0, 0, 0, 1554, 0, 0, 0, 1554, 1554,
0, 0, 0, 0, 0, 0, 0, 1182, 0, 2986,
3072, 0, 0, 0, 1566, 3073, 0, 0, 2987, 2988,
2989, 2990, 2991, 2992, 2993, 2994, 2995, 0, 0, 0,
0, 6749, 0, 0, 3924, 0, 0, 0, 3074, 2737,
0, 0, 0, 0, 0, 0, 0, 0, 728, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1554, 3075,
0, 0, 0, 0, 1554, 0, 0, 0, 0, 0,
0, 0, 0, 2546, 0, 2986, 2547, 0, 0, 0,
2548, 2549, 2550, 0, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, 0, 0, 981, 981, 981, 3068, 0,
2795, 0, 0, 2546, 0, 1554, 2547, 0, 3069, 0,
2548, 2549, 2550, 0, 3076, 3070, 729, 3077, 0, 0,
0, 0, 0, 0, 1566, 0, 0, 0, 3068, 0,
0, 4537, 0, 0, 0, 1566, 0, 0, 3069, 0,
0, 3071, 0, 0, 0, 3070, 0, 910, 0, 0,
0, 1566, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 901, 0, 0,
0, 3071, 901, 0, 901, 0, 0, 0, 0, 0,
0, 0, 0, 0, 728, 0, 728, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 901, 0,
0, 0, 0, 2546, 0, 1566, 2547, 3078, 0, 0,
2548, 2549, 2550, 0, 0, 0, 0, 0, 0, 0,
0, 981, 0, 0, 981, 0, 0, 1566, 3068, 0,
0, 0, 728, 0, 981, 0, 0, 0, 3069, 0,
1566, 0, 0, 0, 729, 3070, 0, 729, 0, 0,
0, 0, 1566, 0, 0, 0, 3072, 0, 0, 0,
0, 3073, 0, 0, 0, 981, 981, 0, 0, 0,
0, 3071, 0, 0, 0, 0, 0, 0, 0, 0,
981, 0, 900, 981, 3074, 2737, 3072, 0, 0, 0,
0, 3073, 1566, 1566, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3075, 0, 0, 0, 2986,
0, 0, 1554, 0, 3074, 2737, 0, 0, 2987, 2988,
2989, 2990, 2991, 2992, 2993, 2994, 2995, 0, 0, 0,
0, 6822, 0, 0, 0, 3075, 0, 729, 729, 0,
0, 0, 0, 0, 0, 0, 2795, 0, 729, 0,
0, 981, 0, 0, 0, 981, 981, 0, 0, 0,
3076, 4600, 0, 3077, 0, 729, 0, 4601, 0, 0,
0, 0, 0, 0, 0, 0, 2795, 0, 0, 0,
0, 0, 0, 0, 0, 1554, 3072, 0, 0, 1554,
3076, 3073, 0, 3077, 981, 981, 0, 0, 0, 0,
981, 981, 0, 0, 0, 0, 0, 981, 981, 981,
981, 981, 981, 981, 3074, 2737, 981, 0, 981, 0,
981, 981, 981, 981, 981, 981, 0, 0, 981, 0,
981, 981, 0, 0, 981, 3075, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1566, 981,
981, 981, 2546, 3078, 0, 2547, 0, 0, 0, 2548,
2549, 2550, 729, 0, 0, 901, 0, 981, 0, 910,
0, 0, 0, 0, 0, 0, 2795, 3068, 0, 0,
0, 0, 0, 3078, 0, 0, 0, 3069, 0, 0,
3076, 0, 0, 3077, 3070, 0, 728, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
728, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3071, 0, 0, 0, 0, 0, 0, 0, 1554, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 900, 0, 1554, 0, 0, 0, 0, 1554, 0,
0, 0, 0, 0, 0, 2986, 0, 0, 0, 0,
0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, 0, 0, 3463, 1554, 0, 0, 0,
0, 0, 0, 4602, 0, 2986, 0, 0, 0, 0,
0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, 0, 0, 0, 0, 0, 0, 6589,
0, 981, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3072, 0, 0, 975, 0,
3073, 975, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 981, 0,
0, 0, 0, 3074, 2737, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3075, 2986, 0, 0, 0, 0,
0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, 0, 0, 0, 0, 0, 0, 0,
729, 981, 0, 0, 0, 0, 0, 0, 0, 0,
0, 900, 0, 728, 0, 2795, 0, 4, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3076,
0, 0, 3077, 975, 0, 0, 5, 0, 0, 0,
0, 0, 0, 0, 729, 0, 6, 7, 0, 0,
0, 8, 0, 9, 10, 6590, 729, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 0, 36, 0, 37, 0, 38, 39, 0,
729, 0, 0, 40, 0, 0, 0, 0, 0, 0,
1554, 0, 0, 1554, 0, 1554, 0, 0, 0, 0,
1554, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3078, 900, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 728, 0,
0, 41, 0, 0, 0, 0, 0, 0, 0, 1554,
0, 0, 0, 0, 0, 0, 0, 1554, 901, 0,
0, 0, 0, 0, 728, 0, 0, 0, 981, 981,
981, 981, 981, 981, 981, 981, 981, 729, 981, 0,
0, 0, 1554, 0, 0, 0, 0, 0, 0, 0,
981, 0, 0, 981, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2986, 0, 0, 0, 42, 0,
0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993,
2994, 2995, 0, 0, 0, 0, 0, 0, 43, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 981,
0, 0, 1554, 981, 1554, 0, 981, 0, 981, 0,
0, 981, 44, 2546, 0, 0, 2547, 0, 0, 0,
2548, 2549, 2550, 0, 729, 0, 981, 0, 0, 0,
0, 0, 728, 975, 975, 981, 981, 45, 3068, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3069, 0,
0, 0, 0, 0, 0, 3070, 0, 0, 0, 0,
0, 0, 0, 0, 2546, 0, 0, 2547, 0, 0,
0, 2548, 2549, 2550, 0, 0, 0, 0, 0, 0,
0, 3071, 46, 0, 0, 47, 0, 0, 0, 3068,
0, 0, 0, 0, 0, 0, 0, 0, 1554, 3069,
0, 0, 0, 0, 0, 1566, 3070, 48, 0, 1566,
1566, 2546, 0, 0, 2547, 0, 0, 0, 2548, 2549,
2550, 910, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3071, 0, 0, 0, 3068, 0, 0, 0,
1554, 0, 0, 0, 0, 0, 3069, 0, 0, 0,
0, 0, 0, 3070, 0, 0, 981, 0, 0, 0,
729, 0, 729, 0, 0, 0, 0, 981, 1554, 1566,
981, 0, 981, 981, 0, 1566, 0, 0, 0, 3071,
0, 0, 0, 0, 0, 0, 900, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3072, 0, 49, 0,
1182, 3073, 0, 0, 0, 0, 0, 0, 729, 0,
0, 0, 0, 0, 0, 0, 1566, 0, 0, 0,
0, 0, 0, 0, 3074, 2737, 0, 0, 0, 0,
0, 0, 900, 0, 0, 0, 0, 0, 910, 1554,
0, 0, 910, 0, 0, 3075, 0, 3072, 0, 50,
0, 900, 3073, 0, 0, 0, 0, 0, 901, 0,
0, 1554, 0, 0, 0, 51, 910, 0, 0, 0,
0, 0, 0, 0, 0, 3074, 2737, 0, 0, 0,
52, 0, 0, 0, 0, 1554, 2795, 975, 0, 1182,
0, 975, 0, 0, 3072, 0, 3075, 0, 0, 3073,
3076, 0, 0, 3077, 0, 0, 0, 0, 0, 0,
53, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3074, 2737, 0, 54, 55, 56, 57, 58,
59, 0, 0, 60, 61, 62, 63, 2795, 64, 65,
66, 67, 68, 3075, 0, 0, 0, 0, 0, 0,
0, 3076, 0, 0, 3077, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 910, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 5240,
0, 0, 0, 0, 2795, 0, 0, 1554, 0, 981,
981, 981, 0, 3078, 0, 981, 0, 0, 3076, 0,
0, 3077, 0, 2546, 0, 0, 2547, 0, 0, 0,
2548, 2549, 2550, 0, 0, 0, 0, 0, 0, 0,
4573, 0, 981, 1566, 0, 0, 0, 0, 3068, 0,
1554, 910, 0, 0, 0, 0, 0, 0, 3069, 0,
0, 0, 0, 0, 3078, 3070, 0, 0, 0, 0,
2546, 0, 0, 2547, 0, 1554, 0, 2548, 2549, 2550,
0, 5241, 0, 0, 981, 0, 0, 0, 0, 0,
0, 3071, 729, 0, 0, 3068, 0, 0, 4605, 0,
0, 0, 0, 0, 0, 3069, 729, 0, 0, 0,
0, 3078, 3070, 0, 4547, 2986, 1566, 0, 0, 0,
1566, 0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, 0, 0, 0, 0, 901, 3071, 0,
0, 0, 0, 981, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2986, 0, 0, 0,
0, 5931, 0, 0, 0, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 0, 0, 0, 4610, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 975, 0, 0, 0, 3072, 0, 0, 0,
0, 3073, 0, 2986, 0, 0, 0, 0, 0, 0,
0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 0, 0, 3074, 2737, 0, 0, 0, 0,
1554, 0, 0, 910, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3072, 0, 3075, 0, 0, 3073, 1566,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 981, 0, 1566, 981, 0, 981, 981, 1566,
0, 3074, 2737, 0, 0, 0, 0, 981, 0, 0,
0, 0, 981, 0, 0, 0, 2795, 0, 0, 0,
0, 0, 3075, 0, 0, 0, 0, 1566, 0, 0,
3076, 0, 0, 3077, 0, 0, 0, 901, 0, 729,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1554, 0, 0, 0, 981, 981, 981, 0, 0, 981,
0, 0, 0, 2795, 0, 0, 0, 981, 981, 981,
981, 0, 0, 0, 0, 0, 1554, 3076, 910, 0,
3077, 0, 0, 981, 910, 0, 981, 0, 981, 0,
0, 0, 0, 0, 0, 975, 0, 0, 0, 981,
981, 0, 975, 981, 0, 0, 0, 975, 0, 0,
975, 6057, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3078, 981, 0, 981, 2546, 981, 0,
2547, 0, 0, 0, 2548, 2549, 2550, 0, 0, 975,
0, 0, 0, 0, 0, 0, 0, 981, 0, 901,
0, 0, 3068, 0, 975, 4617, 0, 0, 0, 0,
0, 981, 3069, 0, 0, 0, 0, 0, 0, 3070,
3078, 0, 0, 0, 729, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 981, 0, 0, 3071, 0, 0, 0, 0,
729, 0, 0, 0, 0, 0, 1336, 981, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1554, 0,
0, 981, 0, 0, 0, 2986, 0, 0, 0, 981,
0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, 0, 0, 0, 0, 0, 0, 0,
0, 1336, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1566, 0, 0, 1566, 0, 1566, 1554, 0, 0,
1554, 1566, 2986, 0, 0, 0, 0, 0, 0, 0,
0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995,
0, 0, 2546, 981, 0, 2547, 0, 0, 0, 2548,
2549, 2550, 0, 0, 0, 0, 0, 0, 0, 0,
3072, 0, 975, 0, 0, 3073, 0, 3068, 729, 0,
1566, 0, 0, 0, 0, 0, 0, 3069, 1566, 0,
0, 0, 0, 0, 3070, 0, 0, 0, 3074, 2737,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1566, 0, 0, 0, 0, 0, 3075,
3071, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 975, 0, 0, 910,
910, 910, 0, 0, 0, 0, 0, 0, 0, 0,
2795, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3076, 0, 0, 3077, 0, 0,
0, 0, 0, 1566, 0, 1566, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1554, 0, 0,
0, 0, 0, 0, 0, 0, 2546, 0, 0, 2547,
0, 0, 0, 2548, 2549, 2550, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3068, 901, 0, 5247, 3072, 0, 0, 0, 0,
3073, 3069, 0, 0, 0, 0, 0, 0, 3070, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6386, 3074, 2737, 0, 0, 3078, 0, 0,
0, 0, 0, 0, 3071, 0, 0, 0, 901, 1566,
0, 0, 0, 0, 3075, 0, 0, 0, 0, 0,
975, 0, 0, 0, 0, 0, 0, 901, 0, 0,
0, 0, 0, 0, 0, 0, 981, 0, 0, 0,
0, 0, 981, 0, 0, 0, 0, 0, 0, 0,
0, 1566, 0, 0, 0, 2795, 0, 0, 0, 0,
0, 0, 0, 0, 1554, 0, 0, 0, 0, 3076,
0, 0, 3077, 0, 0, 0, 0, 0, 910, 1566,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
975, 0, 0, 0, 0, 0, 0, 0, 0, 2986,
0, 0, 0, 0, 1554, 0, 0, 0, 2987, 2988,
2989, 2990, 2991, 2992, 2993, 2994, 2995, 0, 0, 3072,
0, 981, 0, 0, 3073, 0, 1554, 0, 0, 975,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3074, 2737, 0,
1566, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3078, 0, 0, 0, 0, 0, 3075, 0,
0, 0, 1566, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4, 0, 0, 5178, 1566, 0, 1554, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2795,
0, 5, 0, 0, 0, 0, 0, 0, 0, 0,
0, 6, 7, 3076, 0, 0, 3077, 0, 9, 10,
0, 975, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 0, 0, 0,
37, 0, 38, 39, 2986, 0, 0, 0, 40, 0,
0, 0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993,
2994, 2995, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 981, 0, 0, 1566, 0,
0, 0, 0, 0, 981, 0, 0, 0, 0, 0,
0, 0, 0, 0, 981, 0, 3078, 0, 981, 981,
1554, 0, 0, 0, 981, 1336, 41, 0, 0, 0,
0, 0, 981, 0, 981, 0, 0, 981, 0, 0,
0, 1566, 981, 981, 981, 981, 0, 0, 981, 981,
981, 981, 981, 981, 981, 981, 981, 981, 0, 0,
0, 981, 981, 981, 0, 0, 1566, 0, 0, 0,
0, 981, 0, 0, 0, 0, 981, 0, 910, 0,
981, 0, 0, 0, 0, 0, 0, 0, 981, 975,
0, 981, 0, 981, 0, 0, 0, 1336, 1336, 0,
0, 0, 0, 42, 0, 0, 0, 0, 0, 0,
0, 981, 0, 0, 981, 981, 0, 0, 2986, 981,
981, 0, 0, 43, 981, 0, 981, 2987, 2988, 2989,
2990, 2991, 2992, 2993, 2994, 2995, 0, 0, 981, 0,
0, 981, 0, 0, 0, 0, 0, 44, 0, 0,
0, 981, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2546, 0, 0, 2547,
0, 0, 45, 2548, 2549, 2550, 0, 0, 0, 0,
975, 0, 0, 0, 0, 0, 975, 0, 0, 0,
0, 3068, 0, 0, 0, 0, 0, 0, 981, 0,
0, 3069, 0, 0, 6750, 0, 0, 0, 3070, 0,
0, 0, 0, 0, 935, 981, 0, 46, 0, 0,
47, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1566, 0, 0, 3071, 0, 0, 0, 0, 0,
0, 0, 48, 981, 1554, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 936, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 937, 0, 0, 0, 6794, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 938,
0, 0, 0, 975, 0, 939, 0, 0, 0, 0,
0, 0, 0, 0, 0, 910, 0, 0, 0, 0,
910, 1566, 910, 940, 0, 0, 0, 0, 0, 0,
5712, 0, 0, 49, 941, 0, 0, 0, 0, 0,
0, 0, 0, 942, 0, 6794, 910, 1566, 0, 3072,
0, 0, 6843, 0, 3073, 0, 943, 0, 0, 0,
0, 0, 944, 0, 1554, 1336, 1336, 0, 0, 945,
0, 0, 0, 0, 0, 0, 0, 3074, 2737, 0,
0, 0, 0, 0, 50, 0, 0, 0, 0, 946,
0, 0, 0, 0, 0, 0, 0, 0, 3075, 0,
51, 0, 0, 0, 0, 2546, 0, 0, 2547, 0,
0, 0, 2548, 2549, 2550, 52, 0, 0, 0, 0,
947, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3068, 0, 0, 0, 0, 0, 0, 0, 0, 2795,
3069, 1554, 948, 0, 0, 53, 0, 3070, 0, 0,
0, 0, 0, 3076, 0, 0, 3077, 0, 0, 981,
54, 55, 56, 57, 58, 59, 0, 0, 60, 61,
1613, 0, 0, 3071, 0, 66, 1614, 0, 0, 0,
0, 0, 0, 949, 0, 0, 0, 0, 0, 1566,
0, 1554, 0, 0, 0, 0, 1554, 1554, 0, 0,
0, 0, 0, 981, 981, 0, 0, 950, 0, 0,
0, 0, 0, 0, 0, 0, 0, 951, 952, 0,
0, 953, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1566, 0,
0, 1566, 981, 981, 0, 0, 3078, 0, 954, 0,
0, 955, 0, 981, 0, 956, 0, 0, 957, 0,
0, 0, 0, 0, 0, 958, 0, 0, 959, 5718,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 960, 3072, 0,
0, 0, 0, 3073, 961, 0, 0, 0, 0, 962,
0, 963, 0, 0, 964, 0, 1565, 0, 965, 0,
1554, 0, 0, 910, 0, 0, 3074, 2737, 966, 0,
0, 0, 0, 967, 0, 0, 0, 0, 0, 0,
0, 0, 1565, 0, 0, 0, 968, 3075, 0, 981,
0, 0, 0, 0, 0, 0, 0, 0, 2986, 969,
0, 0, 981, 0, 0, 0, 0, 2987, 2988, 2989,
2990, 2991, 2992, 2993, 2994, 2995, 981, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1058, 0, 2795, 0,
0, 1059, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3076, 0, 981, 3077, 0, 981, 0, 0,
0, 0, 0, 0, 0, 981, 981, 0, 1566, 0,
0, 0, 981, 981, 0, 0, 0, 981, 0, 1060,
0, 0, 0, 0, 981, 0, 0, 981, 981, 0,
0, 0, 1061, 0, 981, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1062, 981,
0, 0, 0, 0, 0, 0, 0, 981, 0, 0,
0, 981, 0, 0, 0, 0, 1063, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3078, 0, 0, 0, 0,
1064, 0, 0, 0, 981, 0, 0, 0, 0, 0,
0, 1065, 981, 0, 0, 0, 0, 0, 0, 0,
1066, 0, 0, 0, 0, 0, 0, 0, 4, 0,
0, 0, 0, 1067, 0, 0, 0, 981, 0, 1068,
0, 0, 0, 0, 0, 0, 1069, 5, 0, 0,
0, 0, 0, 0, 0, 1566, 0, 6, 7, 1554,
0, 0, 0, 0, 9, 10, 1070, 0, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 0, 0, 1566, 37, 2986, 38, 39,
0, 0, 0, 0, 40, 0, 2987, 2988, 2989, 2990,
2991, 2992, 2993, 2994, 2995, 0, 0, 1566, 0, 1071,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2546, 0, 0, 2547, 0, 0,
981, 2548, 2549, 2550, 0, 0, 0, 981, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2203, 3068,
1072, 0, 41, 0, 0, 0, 0, 0, 0, 3069,
0, 0, 0, 1073, 0, 0, 3070, 1565, 0, 0,
0, 0, 0, 0, 1074, 0, 0, 0, 1565, 1566,
0, 0, 0, 0, 951, 1075, 0, 0, 1076, 0,
0, 0, 3071, 0, 1565, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 981, 0, 0, 0, 979,
0, 0, 0, 0, 0, 1077, 0, 0, 1078, 0,
0, 981, 1079, 0, 0, 1080, 910, 0, 0, 42,
1148, 0, 1081, 1151, 0, 1082, 0, 1159, 0, 0,
0, 0, 0, 1168, 0, 1188, 0, 1191, 0, 43,
0, 0, 981, 1224, 1083, -2665, 0, 0, 1229, 0,
0, 1084, 0, 0, 0, 0, 0, 0, 1085, 0,
0, 1086, 0, 44, 0, 1087, 0, 0, 0, 0,
0, 0, 5719, 1088, 0, 1089, 0, 1565, 0, 0,
1090, 0, 0, 0, 0, 0, 0, 0, 45, 1566,
0, 1566, 0, 1091, 0, 0, -2665, 3072, 0, 0,
0, 0, 3073, 0, 0, 0, 1092, 0, 0, -2665,
0, 0, 0, 0, 0, -2665, 0, 0, 0, 0,
0, -2665, 0, 0, 0, 3074, 2737, -2665, 0, 0,
-2665, 0, 0, 46, -2665, 0, 47, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3075, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 48, 0,
0, 0, 0, 981, -2665, 0, 981, 0, 0, 981,
981, 981, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2795, 0, 0,
-2665, 0, 0, 0, 0, 0, 981, 981, 0, 0,
981, 3076, 0, 0, 3077, 0, 0, 0, 0, 0,
0, 0, 1565, 0, 0, 981, 0, 0, 0, 0,
0, 0, 981, 0, 0, 0, 0, 981, 0, 0,
981, 981, 0, 0, 0, 0, 0, 0, 981, -2665,
0, 0, -2665, 0, 0, 0, 0, 0, -2665, 49,
0, 0, 0, 0, 0, 0, 0, 0, 0, 981,
0, 0, 981, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 981, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3078, 0, 0, 0, 0, 0,
50, 0, 0, 0, 2546, -2665, 0, 2547, 0, 0,
0, 2548, 2549, 2550, 0, 1566, 51, 0, 0, 0,
0, 0, 0, 0, 0, 0, 981, 0, 0, 3068,
0, 52, 0, 0, 0, 0, 0, 0, 0, 3069,
0, 0, 0, 0, 0, 0, 3070, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 53, 1154, 0, 0, 0, 910, 0, 0, 0,
0, 981, 3071, 0, 0, 0, 54, 55, 56, 57,
58, 59, 0, 0, 60, 61, 1613, 2405, 0, 0,
-2665, 66, 0, 0, 0, 0, 2986, 0, 0, 0,
0, 0, 0, 0, 0, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, -2665, 0, -2665, -2665, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 981, 0, 0, 1566, 0, 0, -2665, 0,
0, 5720, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -2665, 0,
0, -2665, -2665, 0, -2665, 0, 0, 0, 0, 0,
0, 981, 0, 0, 0, 981, 0, 981, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3072, 0, 0,
0, 981, 3073, 0, 0, 0, 981, 0, 0, 0,
0, 0, 981, 0, 0, 0, 981, 3184, 0, 0,
0, 0, 1566, 981, 0, 3074, 2737, 0, 0, 2546,
0, 0, 2547, 0, 0, 0, 2548, 2549, 2550, 0,
0, 0, 0, 0, 0, 0, 3075, 0, 0, 0,
0, 0, 0, 0, 3068, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3069, 0, 0, 0, 0, 0,
0, 3070, 1566, 0, 0, 0, 0, 1566, 1566, 0,
0, 0, 981, 0, 0, 3184, 0, 2795, 981, 981,
0, 1556, 0, 0, 0, 0, 0, 3071, 0, 0,
0, 3076, 0, 0, 3077, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1556, 0, 0,
0, 0, 1565, 0, 981, 0, 0, 0, 0, 0,
0, 0, 981, 0, 0, 910, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1565, 0, 0, 0, 0,
981, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2546, 0, 0, 2547, 0, 0, 0, 2548, 2549,
2550, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1566, 1566, 0, 0, 3078, 0, 3068, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3069, 0, 0, 0,
0, 0, 3072, 3070, 0, 0, 981, 3073, 0, 0,
0, 0, 0, 0, 0, 981, 981, 981, 0, 0,
981, 0, 0, 981, 0, 0, 2203, 2203, 2203, 3071,
3074, 2737, 0, 0, 981, 0, 0, 0, 0, 0,
0, 981, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3075, 0, 0, 0, 1565, 0, 0, 0, 981,
0, 0, 0, 0, 0, 0, 1565, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
981, 0, 1565, 0, 0, 0, 2986, 0, 0, 0,
0, 0, 2795, 0, 0, 2987, 2988, 2989, 2990, 2991,
2992, 2993, 2994, 2995, 0, 910, 3076, 0, 0, 3077,
0, 0, 0, 0, 0, 0, 0, 0, 0, 6255,
0, 0, 0, 0, 0, 0, 0, 0, 979, 1326,
1326, 0, 0, 1326, 0, 0, 1565, 1338, 0, 1224,
0, 0, 1365, 0, 3072, 1338, 0, 0, 1338, 3073,
0, 1224, 0, 1326, 0, 0, 1224, 0, 1565, 0,
1326, 981, 1224, 0, 0, 0, 0, 0, 0, 0,
0, 1565, 3074, 2737, 0, 0, 0, 0, 0, 0,
0, 1419, 0, 1565, 0, 0, 0, 1224, 0, 1326,
0, 1326, 0, 3075, 1326, 0, 0, 0, 0, 3078,
0, 1365, 981, 0, 0, 0, 1476, 0, 1326, 0,
0, 0, 0, 0, 1326, 0, 981, 910, 0, 0,
1566, 0, 0, 1565, 1565, 981, 0, 981, 0, 981,
0, 0, 0, 0, 2795, 0, 0, 0, 0, 981,
0, 0, 1556, 0, 0, 0, 0, 0, 3076, 0,
0, 3077, 979, 1556, 0, 981, 0, 0, 0, 0,
0, 1338, 0, 0, 0, 1365, 0, 0, 1338, 1556,
0, 1338, 0, 0, 0, 6079, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1326, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2986, 0, 0, 0, 0, 0, 0, 0, 981,
2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 981,
0, 0, 0, 0, 0, 0, 0, 981, 981, 0,
0, 0, 0, 981, 0, 0, 0, 0, 0, 0,
0, 3078, 2203, 0, 0, 0, 0, 981, 1224, 0,
0, 2203, 0, 0, 2203, 0, 0, 981, 0, 0,
1692, 0, 1556, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1565,
0, 0, 0, 0, 0, 0, 0, 0, 1811, 1811,
0, 0, 0, 0, 1224, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
981, 0, 0, 1224, 0, 0, 981, 0, 1224, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
0, 0, 0, 0, 981, 981, 0, 1224, 0, 0,
0, 0, 0, 2986, 981, 0, 0, 0, 0, 981,
1224, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 2546, 0, 0, 2547, 0, 0, 0, 2548, 2549,
2550, 0, 981, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3068, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3069, 1556, 0, 0,
0, 0, 0, 3070, 0, 0, 0, 0, 0, 0,
0, 981, 0, 0, 0, 981, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1224, 0, 3071,
0, 0, 0, 981, 1058, 0, 0, 0, 1224, 3236,
910, 0, 0, 1326, 1326, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 981, 981, 0, 3237, 981, 0,
0, 0, 981, 0, 0, 0, 910, 0, 0, 0,
1061, 0, 0, 0, 0, 981, 981, 0, 0, 1811,
1811, 0, 0, 0, 0, 910, 1062, 0, 0, 0,
0, 0, 0, 979, 0, 1326, 0, 0, 0, 1338,
0, 0, 1365, 1338, 1424, 1338, 0, 0, 0, 0,
1326, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3072, 0, 0, 0, 3238, 3073,
0, 0, 0, 0, 1224, 0, 0, 0, 0, 1065,
1326, 1326, 0, 0, 0, 0, 0, 0, 1066, 0,
0, 0, 3074, 2737, 0, 0, 0, 0, 0, 0,
0, 1067, 1224, 1224, 1224, 0, 1326, 3239, 979, 0,
979, 979, 0, 3075, 0, 0, 0, 2309, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1427, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2795, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3076, 0,
0, 3077, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1071, 0, 0,
0, 1326, 0, 1326, 1326, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1556, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3240, 0,
0, 0, 0, 0, 0, 0, 0, 1811, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3078, 951, 3241, 2203, 0, 1076, 0, 0, 0,
0, 2444, 0, 2444, 0, 0, 0, 1224, 0, 1148,
1556, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1431, 0, 0, 3242, 0, 0, 0,
0, 0, 0, 1080, 0, 0, 0, 0, 0, 2484,
1081, 1224, 0, 1082, 0, 2490, 0, 1556, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1811, 0,
0, 0, 1083, 0, 0, 0, 0, 0, 0, 1433,
0, 0, 0, 0, 0, 0, 1085, 0, 0, 1434,
1556, 0, 0, 1087, 0, 0, 0, 0, 0, 0,
0, 3243, 1811, 2986, 0, 0, 0, 0, 3244, 0,
0, 0, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1811, 1811, 1811, 1092, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3991, 0, 0, 0,
3184, 3997, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1556, 0, 0, 0, 0, 0, 0, 0, 1224, 0,
0, 1556, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1556, 0, 0,
1565, 0, 0, 0, 1811, 0, 1565, 0, 1811, 1811,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1224,
1224, 1224, 3127, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1565, 0, 0,
0, 1556, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1556, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1556, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1556, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1556, 1556,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3257, 0, 0, 0, 0, 0, 0, 0, 1326,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1224, 3285, 0, 0, 0, 0, 0, 0,
0, 1224, 0, 0, 1326, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1365, 0, 1224,
0, 0, 0, 0, 0, 3351, 3351, 0, 0, 3351,
0, 0, 2203, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1224, 0, 0, 1224, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1565, 0, 0, 1326, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1224, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1326, 1326, 1326,
1326, 1224, 0, 0, 1556, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1224, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1811, 1811, 1811,
0, 0, 0, 0, 0, 0, 0, 3184, 0, 0,
0, 3184, 0, 1224, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1224, 0, 0, 0, 0, 0,
0, 0, 1326, 1326, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1326, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1224, 3351, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1326, 1326, 1326, 1326, 0, 0, 0, 0,
0, 1224, 0, 0, 0, 0, 0, 0, 1224, 0,
0, 3564, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 979, 0, 0, 979, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1565, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1565, 0, 1338, 1338, 0,
1565, 0, 0, 0, 0, 0, 0, 0, 1365, 1365,
0, 0, 1338, 0, 0, 1338, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1565, 0,
1326, 1326, 0, 0, 0, 0, 0, 1326, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1224, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2444, 0, 0, 0, 0, 0,
0, 1326, 0, 1338, 0, 0, 3682, 1338, 1338, 0,
1224, 1224, 0, 1326, 0, 0, 0, 0, 0, 0,
1224, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1224, 0, 0, 1224, 3564, 0, 0, 1148, 0,
0, 1148, 3720, 0, 0, 0, 1811, 1811, 0, 0,
0, 0, 1811, 1811, 0, 0, 0, 0, 0, 1811,
1811, 1811, 1811, 1811, 1811, 1811, 0, 0, 1811, 0,
1811, 1365, 1811, 1811, 1811, 1811, 1811, 1811, 0, 0,
1811, 0, 1811, 1811, 0, 0, 1811, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1811, 1811, 1811, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1811,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1326,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3184, 0, 0, 3997, 0, 3997, 0, 0,
0, 0, 3184, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4, 0, 0, 0, 0,
0, 1565, 0, 0, 0, 0, 0, 0, 0, 1565,
0, 0, 0, 0, 5, 0, 0, 0, 0, 0,
0, 0, 0, 1811, 6, 7, 0, 0, 0, 0,
0, 9, 10, 0, 3184, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
0, 0, 0, 37, 0, 38, 39, 0, 0, 0,
1811, 40, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4, 0,
0, 0, 0, 0, 1565, 0, 1565, 0, 0, 0,
0, 1556, 0, 0, 0, 1556, 1556, 5, 0, 0,
0, 0, 0, 1811, 0, 0, 0, 6, 7, 41,
0, 0, 0, 0, 9, 10, 0, 0, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 0, 0, 0, 37, 0, 38, 39,
0, 0, 0, 0, 40, 1556, 0, 0, 0, 0,
0, 1556, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1565, 0, 0, 0, 0, 0, 42, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1556, 0, 0, 0, 43, 2203, 0, 0,
0, 0, 41, 2203, 0, 0, 0, 0, 0, 0,
0, 0, 1565, 0, 0, 0, 0, 0, 0, 0,
44, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3997, 0, 0, 0, 0, 45, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 42,
1811, 0, 0, 0, 0, 0, 0, 0, 0, 0,
46, 1224, 1811, 47, 0, 1811, 0, 0, 0, 43,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1565, 0, 0, 0, 48, 0, 1224, 0, 0,
0, 0, 0, 44, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3997, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 45, 1224,
0, 1811, 0, 0, 1326, 1811, 0, 1565, 1811, 0,
1811, 0, 0, 1811, 0, 0, 0, 1224, 1224, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1811, 0,
0, 0, 0, 0, 0, 0, 0, 1811, 1811, 0,
0, 0, 0, 46, 0, 0, 47, 0, 0, 1556,
0, 1224, 0, 0, 0, 0, 49, 0, 0, 3959,
0, 3964, 0, 0, 0, 0, 0, 0, 48, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 50, 0, 1565,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1556, 51, 0, 0, 1556, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 52, 1148,
0, 1148, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1565, 0, 0, 0, 0, 0, 1811, 49,
0, 0, 0, 0, 0, 0, 0, 0, 53, 979,
0, 0, 1338, 1365, 1338, 1338, 0, 1565, 1326, 0,
0, 1224, 0, 54, 55, 56, 57, 58, 59, 0,
0, 60, 61, 1613, 3641, 0, 0, 0, 66, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
50, 0, 0, 3285, 0, 0, 0, 0, 0, 0,
0, 4094, 1224, 0, 0, 0, 51, 0, 4105, 0,
0, 0, 0, 0, 0, 0, 0, 1224, 0, 0,
0, 52, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1224, 0, 0,
0, 0, 0, 0, 0, 1556, 0, 0, 0, 0,
0, 53, 0, 0, 0, 0, 0, 0, 1224, 0,
1556, 0, 0, 0, 0, 1556, 54, 55, 56, 57,
58, 59, 0, 0, 60, 61, 1613, 0, 0, 0,
0, 66, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1556, 1326, 0, 0, 1326, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3184, 1224, 1224, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4248, 0,
4251, 4253, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1811, 1811, 1811, 0, 0, 0, 1811, 0, 0,
0, 0, 0, 0, 0, 1326, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1326, 0,
0, 0, 0, 0, 1811, 0, 1326, 0, 0, 0,
0, 0, 3997, 0, 0, 0, 0, 0, 0, 3285,
0, 0, 0, 0, 1224, 0, 0, 0, 0, 0,
4353, 0, 0, 1148, 0, 0, 0, 0, 3997, 0,
0, 0, 0, 0, 0, 1326, 4367, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4248, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1326, 0, 4389, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2309, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 4453,
0, 0, 0, 0, 0, 0, 0, 1556, 0, 1326,
1556, 1326, 1556, 1326, 0, 0, 0, 1556, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2444,
1565, 0, 0, 0, 0, 0, 1556, 0, 0, 0,
0, 0, 0, 0, 1556, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1556,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3997,
0, 0, 3184, 0, 979, 1326, 0, 1338, 0, 1338,
1338, 0, 1326, 0, 0, 0, 0, 0, 0, 1811,
0, 0, 0, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1556,
0, 1556, 0, 0, 0, 0, 1811, 1811, 1811, 0,
0, 1811, 0, 0, 0, 0, 0, 0, 0, 1811,
1811, 1811, 1811, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1811, 0, 0, 1811, 0,
1811, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1811, 1811, 0, 0, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1365, 0, 1811, 0, 1811, 0,
1811, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1556, 0, 0, 0, 1811,
0, 0, 4668, 0, 0, 0, 1224, 0, 0, 1565,
0, 0, 0, 4689, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1224, 1556, 0, 0,
0, 0, 0, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1811,
0, 0, 0, 0, 0, 1556, 0, 0, 0, 0,
0, 0, 0, 4689, 0, 0, 0, 4745, 0, 0,
4748, 4689, 0, 3964, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1556, 0, 0, 0,
0, 0, 0, 0, 0, 1811, 1565, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1556, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1326, 1326, 0, 0, 0,
0, 0, 1556, 0, 0, 0, 1565, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1565, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1565, 0, 0, 1224, 1556, 0, 0, 0, 0, 0,
0, 0, 0, 3351, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1556, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1556, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1811, 0,
5987, 0, 1565, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1326, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1224, 1224, 1224, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1224,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1811, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2444, 1224, 1224, 0, 0, 0,
1224, 0, 0, 0, 0, 0, 0, 1556, 0, 0,
0, 0, 1224, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4453, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1326, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1556, 0, 0,
0, 0, 0, 0, 3682, 5146, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1224, 3997, 0, 0, 0,
0, 0, 0, 1556, 0, 0, 0, 0, 1224, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1811, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
1811, 1811, 0, 0, 0, 0, 1811, 0, 0, 0,
0, 0, 0, 0, 1811, 0, 1811, 0, 0, 1811,
0, 0, 0, 0, 1811, 1811, 1811, 1811, 0, 0,
1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811,
0, 0, 0, 1811, 1811, 1811, 0, 0, 0, 0,
0, 0, 0, 1811, 0, 0, 0, 0, 1811, 0,
0, 0, 1811, 0, 0, 0, 3997, 0, 0, 0,
1811, 0, 0, 1811, 0, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1811, 0, 1556, 1811, 1811, 0, 0,
0, 1811, 1811, 0, 0, 0, 1811, 0, 1811, 5276,
0, 0, 0, 0, 0, 0, 0, 1224, 1224, 1224,
979, 0, 0, 4689, 5295, 0, 0, 0, 5295, 5309,
5295, 0, 0, 1811, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1565, 1556, 0, 0, 1556, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1811, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1565, 0, 3964, 0, 1811, 1565, 1565,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5371, 2444, 2444, 0, 0,
2444, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3285, 5403, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 5426, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 5987, 1565, 0, 1556, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 5475, 1180, 0,
0, 0, 0, 0, 1180, 1180, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5519, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1326, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1326,
0, 1811, 0, 0, 0, 0, 0, 0, 1224, 0,
0, 1556, 0, 0, 5563, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3285, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1224, 0, 0, 0, 0, 4689, 4367, 0, 0, 0,
0, 1556, 0, 4248, 0, 0, 0, 0, 0, 0,
0, 0, 5613, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1224, 1556, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1811, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2444, 1224, 0, 0,
0, 1565, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4453, 4453, 4453, 4453, 4453, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1224,
0, 0, 0, 0, 0, 1556, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1811, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1811, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 1811,
0, 0, 0, 0, 0, 0, 0, 1811, 1811, 0,
0, 0, 0, 0, 1811, 1811, 0, 0, 0, 1811,
0, 0, 0, 0, 0, 0, 1811, 1556, 0, 1811,
1811, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
1224, 1224, 1224, 1224, 0, 0, 0, 5295, 5309, 5295,
0, 1811, 5295, 0, 0, 5768, 0, 0, 0, 4689,
0, 0, 0, 4689, 0, 0, 0, 0, 0, 5783,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1365, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
4745, 0, 0, 0, 1811, 0, 3964, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1148, 0, 0, 1811,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3285, 0, 0, 0, 5850, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2203, 0, 0, 0, 0,
0, 0, 1811, 0, 0, 0, 0, 0, 0, 1811,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1556, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1326, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1326, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1811, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 979, 0, 0, 0, 0, 0, 0,
3285, 0, 0, 0, 0, 0, 0, 0, 0, 2444,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4367, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1326, 0, 4389,
0, 1556, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1224, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1224, 0, 0,
0, 0, 0, 6001, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1556, 0,
0, 0, 977, 0, 0, 0, 0, 0, 0, 0,
0, 977, 0, 0, 0, 0, 0, 0, 0, 977,
0, 0, 977, 0, 0, 1811, 0, 0, 1811, 0,
0, 1811, 1811, 1811, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1556, 0,
0, 0, 0, 1556, 1556, 0, 0, 0, 1811, 1811,
0, 0, 1811, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 979, 0, 0,
5295, 0, 0, 0, 4689, 0, 0, 0, 0, 4689,
0, 0, 4689, 979, 0, 4248, 0, 6061, 0, 0,
1811, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 5371, 0, 0, 1811, 0, 977, 0, 0, 0,
0, 1564, 0, 0, 0, 977, 5371, 1365, 1326, 0,
1326, 0, 977, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1556, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1338, 1365,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1338, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5563, 0, 0, 0, 0,
1224, 0, 0, 0, 0, 1224, 0, 0, 0, 0,
0, 0, 977, 977, 3285, 0, 0, 0, 0, 1180,
0, 0, 0, 1180, 1224, 0, 0, 0, 5613, 0,
0, 6210, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1326, 1224, 5371, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1811, 0, 0, 0, 1811, 0, 1811,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1811, 0, 0, 0, 0, 1811, 0,
0, 0, 0, 0, 1811, 0, 0, 0, 4689, 0,
0, 0, 6061, 0, 0, 1811, 0, 6300, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1556, 0, 1224, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1811, 0, 0, 0, 0, 0,
1811, 1811, 0, 0, 0, 1326, 1326, 1326, 1326, 1180,
1180, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 977, 0, 1811, 0, 0, 0,
0, 0, 0, 0, 979, 0, 0, 977, 0, 0,
0, 0, 1564, 977, 0, 0, 0, 977, 0, 977,
0, 0, 0, 1564, 0, 0, 0, 0, 0, 1224,
0, 0, 4689, 0, 0, 0, 0, 0, 0, 1564,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1224, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 0, 977, 977, 0, 0, 1811, 0,
0, 0, 0, 0, 0, 0, 0, 1811, 1811, 1811,
0, 0, 979, 0, 0, 1811, 0, 0, 0, 6469,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
0, 0, 0, 1811, 0, 0, 0, 0, 0, 0,
0, 0, 1564, 0, 0, 0, 2444, 0, 0, 0,
0, 5371, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2444, 0, 1365, 0, 0, 0, 0, 0, 0,
0, 0, 1811, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2444, 2444, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1326, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 6562, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 0, 6001, 0, 0,
0, 0, 0, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4248, 0, 0, 1811, 0,
0, 0, 977, 0, 0, 0, 0, 1811, 0, 1811,
0, 1811, 6300, 0, 0, 0, 0, 0, 0, 0,
3964, 1811, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 977, 1338, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1326, 0, 0, 0, 0, 0, 0, 2444,
0, 0, 0, 0, 0, 977, 977, 977, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3285, 0, 0, 0, 0, 977,
0, 1811, 0, 0, 0, 0, 0, 0, 0, 0,
0, 5371, 0, 0, 0, 0, 0, 0, 0, 1338,
1338, 6681, 0, 0, 0, 1811, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1811,
0, 0, 0, 6469, 0, 0, 0, 0, 0, 1811,
0, 0, 0, 0, 2444, 2444, 6708, 0, 0, 0,
1557, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1326, 0, 0, 0, 0, 0, 977, 0,
0, 0, 977, 977, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 6562, 1326, 1326, 0, 0, 0, 5371, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 979, 1811, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 0, 0, 0,
0, 1811, 6759, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1811, 0, 0, 0, 0, 0,
0, 0, 1564, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1180,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1811, 0, 6792, 6793, 979, 6796, 0,
3964, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1326, 0, 0, 5371, 0, 0, 0, 0,
1180, 0, 0, 6469, 0, 0, 0, 0, 0, 0,
1564, 0, 0, 0, 0, 4745, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1811, 979, 0, 0,
1811, 0, 0, 0, 979, 0, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 1180, 1338, 1338, 0,
0, 6858, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1180, 0, 0, 0, 0, 0, 0,
1564, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 977, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1564, 1557, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1564, 1557, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1564, 1557, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1564, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
977, 0, 0, 1564, 0, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 1564, 0, 0, 0,
0, 1557, 0, 0, 0, 0, 0, 0, 1564, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 977, 0, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 1564, 1564,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 977, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 977, 0, 0, 0, 0, 977, 977, 0, 0,
0, 0, 0, 977, 977, 977, 977, 977, 977, 977,
0, 0, 977, 0, 977, 0, 977, 977, 977, 977,
977, 977, 0, 0, 977, 0, 977, 977, 0, 0,
977, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1564, 977, 977, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 977, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1557, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1557,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1557,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 977, 977, 977, 977, 977, 977,
977, 977, 977, 0, 977, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 977, 0, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1557,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1557, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 0, 977,
0, 0, 977, 0, 977, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 0, 0, 0, 0, 0, 0, 0,
1557, 977, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1557, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1557, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1557, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1564, 0, 0, 0, 1564, 1564, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1557, 1557, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 1564, 977, 0, 977, 977,
0, 1564, 0, 0, 0, 0, 0, 80, 0, 0,
0, 0, 81, 0, 0, 0, 82, 0, 83, 0,
84, 85, 0, 0, 0, 0, 1180, 0, 0, 0,
0, 86, 0, 0, 0, 0, 0, 0, 0, 87,
0, 0, 1564, 0, 0, 88, 89, 90, 91, 0,
0, 0, 92, 93, 0, 0, 0, 0, 94, 0,
0, 0, 0, 0, 0, 0, 0, 95, 0, 96,
0, 97, 98, 0, 0, 0, 0, 99, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 100, 0, 0, 0, 0, 0,
0, 0, 0, 1557, 0, 101, 0, 102, 103, 0,
0, 0, 0, 0, 0, 1180, 0, 0, 0, 104,
0, 0, 0, 0, 0, 105, 0, 0, 0, 0,
0, 0, 0, 0, 0, 106, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 107, 0, 108,
109, 0, 0, 0, 0, 0, 110, 0, 111, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
112, 0, 113, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 114, 0, 115,
0, 116, 117, 0, 0, 0, 0, 0, -1716, 0,
0, 0, 0, 0, 0, 0, 0, 118, 0, 119,
0, 0, 0, 120, 0, 977, 977, 977, 0, 121,
122, 977, 0, 0, 0, 0, 0, 123, 0, 124,
0, 0, 0, 0, 0, 0, 125, 0, 0, 0,
126, 0, 0, 0, 0, 0, 0, 0, 977, 1564,
0, 0, 0, 0, 127, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 128, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, -1716, 0, 0,
977, 0, 129, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 130, 131,
0, 0, 1564, 0, 132, 0, 1564, 0, 0, 0,
0, 0, -1716, 0, 0, 0, 0, 0, 133, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 977,
0, 0, 0, 0, 0, 0, 134, 0, 0, 0,
0, 0, 135, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
136, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 137, 0, 0, 0, 0, 0,
138, 139, 0, 140, 0, 0, 0, 0, 141, 0,
0, 0, 0, 0, 142, 0, 0, 143, 0, 0,
0, 0, 0, 0, 144, 0, 0, 0, 0, 0,
0, 145, 146, 0, 0, 0, 0, 0, 0, 147,
0, 0, 0, 148, 0, 1564, 0, 0, 0, 0,
0, 0, 0, 149, 0, 0, 0, 0, 977, 0,
1564, 977, 0, 977, 977, 1564, 0, 0, 0, 150,
0, 0, 0, 977, 0, 0, 0, 0, 977, 0,
151, 0, 0, 0, 0, 0, 0, 0, 0, 152,
0, 153, 0, 1564, 0, 0, 0, 154, 0, 0,
155, 0, 0, -1716, 0, 0, 156, 0, 0, 0,
0, 157, 158, 0, 0, 0, 0, 0, 0, 0,
977, 977, 977, 0, 159, 977, 0, 0, 0, 0,
0, 0, 0, 977, 977, 977, 977, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 160, 977,
0, 0, 977, 0, 977, 0, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 977, 977, 161, 0, 977,
0, -149, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
977, 0, 977, 0, 977, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1557, 0, 0, 0, 1557, 1557, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1564, 0, 0,
1564, 0, 1564, 0, 0, 0, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1557, 0, 0, 0, 0, 0,
1557, 0, 0, 0, 0, 0, 1564, 0, 0, 0,
0, 0, 0, 0, 1564, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1564,
0, 1557, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1564,
0, 1564, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1559, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1559, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1559, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1564, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 1564, 1557, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1559, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1564, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 1557, 0, 0, 0, 1557, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1564, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1564, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1564, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1557, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1557,
0, 0, 0, 0, 1557, 0, 0, 0, 0, 0,
0, 977, 0, 982, 1564, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 0, 1557, 0, 977, 977, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 0, 0, 977, 0,
977, 0, 0, 977, 0, 0, 0, 1564, 977, 977,
977, 977, 0, 0, 977, 977, 977, 977, 977, 977,
977, 977, 977, 977, 0, 0, 0, 977, 977, 977,
0, 0, 1564, 0, 0, 0, 0, 977, 0, 0,
0, 0, 977, 0, 0, 0, 977, 0, 0, 0,
0, 0, 0, 0, 977, 0, 0, 977, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
977, 977, 0, 0, 0, 977, 977, 0, 0, 0,
977, 0, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 977, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1559, 0, 0, 977, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 977,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 1557,
0, 1557, 0, 0, 0, 0, 1557, 0, 0, 1559,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 1557, 0, 0, 0, 0,
0, 0, 0, 1557, 0, 0, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1559,
0, 0, 0, 0, 0, 0, 0, 0, 1557, 0,
0, 0, 0, 1564, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1557, 0,
1557, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1559,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1564, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 977,
977, 0, 0, 0, 1557, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1564, 0, 0, 1564, 977, 977,
0, 0, 1559, 0, 0, 0, 1557, 0, 0, 977,
0, 0, 0, 0, 0, 1559, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1559, 0, 0,
0, 0, 0, 0, 1557, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1559, 1559, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1557, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 0, 0, 0, 0, 1557, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 1557, 0, 977, 0, 0, 0, 0, 0, 0,
0, 977, 977, 0, 1564, 0, 0, 0, 977, 977,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
977, 0, 0, 977, 977, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 977, 0, 0,
0, 0, 0, 1559, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 0, 0, 1557, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 977, 0, 0, 0, 0, 0, 0,
0, 982, 0, 0, 0, 0, 1557, 0, 0, 982,
0, 1564, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1557, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1564, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1564, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 977, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 982, 0, 0, 0,
0, 1567, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 982, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1564, 0, 1567, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1564, 0, 1564, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1557, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 977,
0, 0, 977, 0, 0, 977, 977, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 977, 0, 0, 977, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 977, 0, 0, 977, 977, 0, 0,
0, 0, 0, 0, 977, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 0, 0, 0, 1557, 0, 0, 0, 0, 0,
0, 0, 0, 982, 982, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 1567, 982, 0, 0, 0, 982, 0, 982,
0, 1564, 0, 1567, 0, 0, 0, 0, 0, 0,
0, 0, 977, 1557, 0, 0, 1557, 0, 0, 1567,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 982, 0, 982, 982, 0, 0, 0, 0,
1559, 0, 0, 0, 1559, 1559, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1567, 0, 0, 0, 0, 0, 977, 0,
0, 1564, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1559, 0, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 977, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 1559, 977, 1557, 0, 0, 0, 0, 977, 0,
0, 982, 977, 0, 0, 0, 0, 0, 1564, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1567, 1564, 0,
0, 0, 0, 1564, 1564, 0, 0, 0, 977, 0,
0, 0, 0, 0, 977, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 982, 0, 0, 0,
1557, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 977, 0, 0, 0,
0, 0, 0, 0, 0, 982, 982, 982, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1557, 0, 0, 0, 0, 0, 1564, 1564, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1557, 0, 0, 0, 0, 0, 1559, 0,
0, 0, 977, 0, 0, 0, 0, 0, 0, 0,
0, 977, 977, 977, 0, 0, 977, 0, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 982, 0,
0, 0, 982, 982, 1557, 0, 0, 0, 0, 0,
0, 1559, 0, 0, 0, 1559, 977, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1567, 0, 0, 0, 0, 977, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 977, 0, 1559, 0, 1564, 0, 0, 0,
1567, 977, 0, 977, 0, 977, 0, 0, 0, 1559,
0, 0, 0, 0, 1559, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 977, 0, 0, 0, 0, 0, 1567, 0, 0,
0, 0, 1559, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1567, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 977, 977, 0, 0, 0, 0, 977,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 977, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 982, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1567, 0, 0, 0, 0, 0, 977, 0, 0, 0,
1557, 1567, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1567, 0, 0,
977, 977, 0, 0, 0, 0, 0, 0, 0, 0,
977, 0, 0, 0, 0, 977, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1567, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 982, 0, 1559,
982, 1559, 0, 1567, 0, 0, 1559, 977, 0, 0,
982, 977, 0, 0, 0, 0, 1567, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1567, 977,
1557, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1559, 982, 0, 0, 982,
0, 0, 0, 1559, 0, 0, 0, 0, 1567, 1567,
977, 977, 0, 0, 977, 0, 0, 0, 977, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1559, 0,
0, 977, 977, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1557, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 982, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1557, 1559, 0,
1559, 0, 1557, 1557, 0, 0, 0, 0, 0, 0,
982, 982, 0, 0, 0, 0, 982, 982, 0, 0,
0, 0, 0, 982, 982, 982, 982, 982, 982, 982,
0, 0, 982, 0, 982, 0, 982, 982, 982, 982,
982, 982, 0, 0, 982, 0, 982, 982, 0, 0,
982, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1567, 982, 982, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1559, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1557, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1559, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 1559, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1559, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 982, 0, 0, 0, 0, 0,
0, 1559, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1557, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1559, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1559, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 982, 982, 982, 982, 982, 982,
982, 982, 982, 0, 982, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 982, 0, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 982, 0, 0, 0, 982,
0, 0, 982, 0, 982, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 0, 0, 0, 1559, 0, 0, 0,
0, 982, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1567, 0, 0, 0, 1567, 1567, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1559, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 982, 0, 1567, 982, 0, 982, 982,
0, 1567, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1567, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1559, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1559, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 982, 982, 982, 0, 0,
0, 982, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 982, 1567,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1567, 0, 0, 0, 1567, 0, 0, 0,
0, 0, 0, 1559, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1567, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 0, 0, 0, 982, 0,
1567, 982, 0, 982, 982, 1567, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1559, 0, 0, 1567, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1559, 0, 0, 0, 0, 0, 0, 0,
982, 982, 982, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 982, 982, 982, 982, 0, 0, 0,
0, 0, 787, 0, 0, 0, 0, 0, 0, 982,
0, 0, 982, 0, 982, 0, 0, 0, 0, 0,
0, 0, 0, 787, 0, 982, 982, 0, 0, 982,
0, 0, 0, 1030, 1040, 0, 1046, 0, 0, 0,
0, 0, 1040, 0, 1559, 0, 0, 0, 0, 0,
982, 0, 982, 0, 982, 1040, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 1237, 1237,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1559, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1567, 0, 0,
1567, 0, 1567, 0, 0, 0, 0, 1567, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1567, 0, 0, 0,
0, 0, 0, 0, 1567, 0, 0, 1279, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1567,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1567,
0, 1567, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1567, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 0, 0, 0, 0, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 1567, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1559, 0, 0, 0, 0, 1567, 0, 734, 0, 800,
800, 0, 800, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
800, 0, 0, 0, 800, 0, 0, 0, 0, 0,
800, 800, 0, 800, 0, 0, 0, 982, 0, 800,
0, 1139, 0, 0, 0, 0, 0, 0, 0, 1139,
0, 0, 800, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1567, 1559, 0, 0,
0, 0, 0, 1030, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1567, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1567, 0, 0, 0, 0, 1559, 0, 0,
0, 0, 1559, 1559, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1040, 1040, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1279, 0, 0, 0,
0, 982, 0, 0, 1567, 0, 0, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 0, 0, 0, 982, 982, 1559, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 0, 982, 0,
982, 0, 0, 982, 800, 0, 0, 1567, 982, 982,
982, 982, 0, 0, 982, 982, 982, 982, 982, 982,
982, 982, 982, 982, 0, 0, 0, 982, 982, 982,
0, 0, 1567, 0, 0, 0, 0, 982, 0, 0,
0, 0, 982, 0, 0, 0, 982, 0, 0, 0,
0, 0, 0, 0, 982, 0, 0, 982, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
982, 982, 0, 0, 0, 982, 982, 1328, 0, 0,
982, 1332, 982, 0, 0, 0, 0, 0, 0, 1367,
0, 0, 1369, 0, 982, 1374, 1375, 982, 1378, 0,
1381, 0, 0, 1387, 0, 1389, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1418, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1455, 0,
0, 0, 1459, 0, 0, 0, 0, 0, 0, 1471,
1472, 0, 0, 1478, 982, 1482, 1483, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 0, 0, 0, 0, 1279, 0, 1040, 0,
0, 0, 0, 0, 0, 0, 0, 1567, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 982,
0, 0, 1527, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1559, 0, 0, 0, 0,
0, 0, 0, 1593, 0, 1595, 0, 0, 0, 0,
0, 0, 0, 0, 1609, 1611, 0, 0, 0, 0,
0, 0, 0, 0, 1040, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1567, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1567, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
800, 0, 0, 0, 0, 0, 0, 1279, 0, 787,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1237, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 800, 800, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1947, 0,
0, 1948, 0, 1951, 0, 1567, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 982,
982, 0, 0, 800, 0, 0, 0, 0, 0, 0,
2011, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1567, 0, 0, 1567, 982, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2186, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2225, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2237, 0, 2238,
0, 0, 0, 0, 734, 0, 0, 0, 0, 2241,
0, 0, 0, 0, 0, 982, 2251, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2303, 0,
2305, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 0, 0, 982, 0, 0, 0, 0, 0, 0,
0, 982, 982, 0, 1567, 0, 0, 0, 982, 982,
0, 0, 0, 982, 0, 0, 0, 0, 0, 0,
982, 0, 0, 982, 982, 0, 0, 0, 0, 0,
982, 0, 1508, 800, 0, 800, 0, 0, 0, 734,
0, 0, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 800, 982, 0,
800, 800, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 734, 0, 1139, 0,
1139, 0, 0, 982, 0, 0, 734, 0, 0, 0,
800, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1567, 0, 0, 0, 0, 0, 2465, 0, 0,
0, 0, 1139, 1139, 0, 0, 734, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1567, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 800, 0, 800, 0, 0, 0,
0, 0, 0, 1567, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 982, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1567, 0, 0, 0, 0,
0, 734, 734, 0, 0, 1929, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 0, 0, 0, 787, 787, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
734, 0, 0, 0, 0, 0, 1237, 1609, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 787, 0, 1567, 0, 1567, 3144, 0,
0, 3144, 0, 0, 0, 0, 0, 0, 0, 3151,
0, 734, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3159, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 982,
0, 0, 982, 0, 0, 982, 982, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3247, 0, 0, 0,
0, 0, 982, 982, 0, 0, 982, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 0, 0, 0, 0, 0, 0, 982, 0,
0, 0, 0, 982, 0, 0, 982, 982, 0, 0,
0, 0, 0, 0, 982, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3337, 982, 0, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1567, 0, 0, 0, 0, 0, 0, 0, 800,
0, 800, 982, 0, 800, 0, 800, 0, 0, 800,
800, 800, 0, 0, 0, 2439, 0, 0, 0, 0,
0, 0, 800, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 800, 0, 800,
0, 0, 0, 0, 0, 800, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3467, 0,
1560, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1560, 0, 0, 0,
0, 0, 0, 3503, 0, 0, 0, 0, 982, 0,
0, 1567, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 3568,
0, 982, 0, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 982, 0, 0, 0, 3590, 0, 982, 0,
3017, 0, 982, 0, 0, 0, 0, 0, 1567, 982,
0, 0, 800, 800, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 734,
0, 0, 0, 0, 734, 734, 0, 0, 0, 1562,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3628, 0, 3629, 0, 0, 1567, 0,
0, 0, 0, 1567, 1567, 1562, 0, 0, 982, 1609,
3638, 0, 3639, 0, 982, 982, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
800, 0, 734, 0, 3660, 0, 0, 0, 0, 0,
982, 0, 3148, 0, 0, 0, 1609, 0, 982, 0,
1609, 1794, 1794, 0, 0, 1609, 0, 0, 1609, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 982, 0, 0, 3712,
0, 0, 0, 0, 734, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1567, 1567, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 982, 0, 0, 0, 0, 734, 0, 0,
0, 982, 982, 982, 0, 0, 982, 734, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1560, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 1560, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 982, 0, 1560, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
734, 0, 0, 734, 734, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2200, 2204, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1560, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 982, 0,
1562, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1562, 982, 0, 734, 0, 1567, 0, 0, 0,
0, 982, 0, 982, 0, 982, 0, 1562, 0, 0,
0, 0, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 982, 1560, 0, 0, 0,
0, 0, 0, 0, 0, 982, 0, 0, 0, 0,
1562, 0, 0, 982, 982, 0, 0, 0, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 982, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 800, 982, 800, 0, 0,
0, 800, 982, 800, 0, 0, 800, 0, 0, 0,
800, 0, 0, 0, 0, 3017, 0, 0, 0, 0,
982, 982, 0, 0, 0, 0, 0, 0, 0, 0,
982, 2497, 0, 0, 0, 982, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1562, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 982, 0,
0, 0, 0, 0, 0, 2516, 0, 0, 0, 0,
0, 0, 0, 0, 3893, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2535, 2536, 2537, 982, 2540, 0,
0, 982, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3005, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
982, 982, 0, 0, 982, 0, 0, 0, 982, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 982, 982, 0, 0, 0, 0, 0, 0, 0,
0, 1560, 0, 0, 0, 0, 0, 3091, 0, 0,
0, 3103, 3108, 0, 0, 0, 0, 0, 0, 0,
0, 1279, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3987, 3988, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4003, 4004, 0, 0,
0, 4007, 4008, 0, 0, 0, 4011, 4012, 0, 1560,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 4023, 0, 0, 0, 0, 0, 0, 4032, 0,
0, 0, 4035, 4036, 0, 0, 4039, 4040, 0, 0,
0, 0, 0, 4045, 0, 0, 1560, 0, 0, 0,
0, 0, 0, 0, 0, 4060, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4077, 0, 0,
0, 0, 4079, 0, 0, 0, 0, 0, 0, 1560,
0, 0, 0, 0, 0, 0, 0, 4085, 0, 0,
1562, 0, 0, 0, 0, 0, 4092, 0, 0, 4096,
0, 4098, 4101, 4103, 0, 0, 0, 0, 4111, 4114,
0, 0, 0, 0, 0, 0, 0, 0, 4127, 0,
0, 0, 0, 0, 4137, 0, 0, 0, 4140, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4150, 4151,
0, 0, 0, 4156, 0, 0, 0, 0, 0, 4165,
4166, 0, 0, 0, 0, 0, 0, 0, 1562, 0,
0, 0, 0, 4175, 0, 0, 4176, 0, 0, 0,
0, 0, 0, 4188, 4189, 0, 0, 0, 0, 4193,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1560,
0, 4200, 0, 0, 4203, 1562, 0, 0, 0, 4206,
1560, 0, 0, 0, 0, 4209, 4210, 0, 1609, 0,
1609, 0, 0, 4216, 1609, 0, 1560, 4218, 0, 0,
0, 4225, 4226, 4227, 4228, 0, 4230, 0, 1562, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 4255,
4256, 0, 4258, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4267, 4268, 4269, 0, 0, 0, 0,
2200, 2200, 2200, 0, 0, 0, 0, 0, 0, 0,
1560, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1560, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1560, 0, 0, 0, 0,
4321, 0, 0, 0, 0, 0, 0, 1560, 4345, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2439, 0, 0, 4357, 1562, 0,
0, 3894, 0, 0, 0, 0, 0, 0, 0, 1562,
0, 3148, 0, 0, 0, 0, 0, 1560, 1560, 0,
0, 0, 0, 0, 0, 1562, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4428, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1562,
0, 0, 0, 0, 0, 0, 0, 0, 4461, 0,
4463, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1562, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1562, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2997, 1562, 734, 0, 0,
1279, 0, 0, 3976, 0, 1929, 0, 0, 800, 0,
0, 0, 0, 0, 0, 1609, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1562, 1562, 0, 0,
0, 0, 0, 1560, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
734, 0, 0, 0, 0, 2997, 0, 0, 0, 4528,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3739, 0, 0, 0, 0,
0, 0, 0, 0, 3759, 3759, 3764, 3770, 0, 0,
0, 3775, 0, 3776, 0, 3778, 0, 0, 3792, 3795,
3800, 0, 0, 0, 0, 0, 3809, 0, 0, 3814,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3821, 3822, 3823, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3824, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1562, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 734, 0, 0, 0, 0, 0, 0, 0, 734,
0, 0, 734, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 734, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1343, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1377, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3831, 1396, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1417, 0, 0, 0,
0, 0, 1449, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3850, 0, 0, 0, 0, 1609, 0,
0, 0, 0, 4781, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4793, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4800, 2997, 0, 0, 4800, 2997, 3852, 0, 0, 4811,
4812, 4813, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4843, 4844, 4845, 4846, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4862, 0, 0, 0, 0,
0, 0, 0, 4865, 0, 4869, 4870, 4871, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 800, 2439, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 734, 0, 0, 0, 1832,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1856, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1876, 3859, 3860, 3861, 3862, 3863, 3864, 3865,
3866, 3867, 0, 3868, 0, 0, 0, 0, 0, 0,
0, 4954, 0, 0, 0, 1794, 0, 0, 2200, 0,
4960, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4970, 4971, 0, 0,
0, 4972, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 5014, 3824, 0, 0, 0, 3831, 0,
1560, 3850, 0, 3852, 1560, 1560, 3914, 0, 0, 0,
0, 0, 0, 2077, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2997, 0,
2536, 2537, 0, 0, 0, 0, 0, 1609, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2997, 5051, 0,
0, 3788, 0, 1040, 0, 0, 0, 0, 0, 5063,
0, 0, 0, 0, 1560, 0, 2997, 2997, 2997, 0,
1560, 2997, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3148, 0, 0, 0, 5102,
734, 0, 0, 0, 0, 0, 0, 0, 0, 1030,
0, 0, 1040, 0, 0, 0, 0, 0, 0, 0,
0, 1560, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2256,
0, 0, 0, 0, 0, 0, 0, 5132, 0, 5133,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1562,
0, 4037, 0, 1562, 1562, 0, 1609, 2290, 2293, 2294,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1562, 0, 0, 0, 0, 0, 1562,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1562, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1560, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1832, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1832, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4279, 4280, 2200, 0, 0, 0,
4284, 1560, 0, 0, 0, 1560, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4313, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5375, 0, 0, 5382, 0,
5383, 0, 0, 0, 0, 0, 0, 1562, 0, 0,
0, 0, 0, 5390, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5396, 0, 0, 0, 5399,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 734, 0, 0, 0, 5425, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3061, 0, 0, 5429, 0, 0, 0,
0, 0, 5433, 0, 1560, 0, 2997, 0, 0, 0,
1562, 0, 0, 0, 1562, 0, 0, 0, 0, 1560,
0, 0, 0, 0, 1560, 0, 0, 5468, 0, 0,
0, 5472, 0, 0, 0, 3124, 0, 0, 0, 0,
800, 0, 0, 0, 0, 0, 5482, 5483, 5484, 5485,
0, 0, 1560, 0, 0, 0, 5489, 5490, 5491, 5492,
0, 0, 0, 0, 0, 5494, 5495, 0, 0, 0,
0, 5502, 5503, 0, 5505, 5506, 5507, 5508, 5509, 5510,
5511, 0, 0, 0, 0, 0, 0, 0, 0, 800,
5520, 0, 2997, 0, 5523, 5524, 5525, 5526, 0, 0,
0, 0, 0, 0, 2997, 0, 0, 0, 0, 2997,
0, 0, 0, 0, 0, 0, 0, 0, 4800, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4533, 0, 0, 0, 5546, 4539, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1562, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1562, 0,
0, 0, 0, 1562, 0, 0, 0, 0, 0, 734,
0, 2540, 0, 0, 0, 0, 0, 3279, 0, 0,
0, 0, 3800, 0, 3800, 3800, 3302, 0, 0, 0,
0, 1562, 0, 0, 0, 0, 0, 0, 4620, 0,
0, 4623, 5628, 4625, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3338, 0, 0, 0, 0, 0,
3350, 3350, 0, 0, 3350, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4800, 0, 3368, 0, 4652,
3371, 4655, 0, 4657, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 5663, 0, 5664,
0, 0, 0, 0, 0, 0, 0, 1609, 1609, 1609,
1609, 1609, 0, 0, 0, 0, 1560, 0, 0, 1560,
0, 1560, 0, 0, 0, 0, 1560, 0, 5679, 0,
0, 0, 0, 0, 0, 0, 3424, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3091, 0, 0,
3443, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3108, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1560, 0, 0, 3465, 0,
0, 0, 0, 1560, 0, 0, 0, 0, 0, 3468,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1560, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3512, 3350, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3976, 0, 0, 4779, 0,
0, 0, 0, 0, 0, 0, 3547, 0, 0, 0,
0, 0, 0, 3560, 0, 1562, 0, 0, 1562, 0,
1562, 0, 0, 0, 0, 1562, 0, 0, 1560, 0,
1560, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1562, 0, 0, 0, 0, 0,
0, 0, 1562, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 734, 0, 0, 0,
0, 0, 0, 0, 5839, 5840, 5841, 1562, 0, 0,
5842, 5843, 5844, 5845, 0, 0, 0, 5847, 0, 0,
0, 0, 734, 0, 1560, 0, 0, 0, 0, 0,
0, 0, 0, 3649, 0, 0, 734, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 734, 0, 0,
0, 0, 0, 0, 0, 5867, 5868, 5869, 5870, 5871,
0, 5873, 5874, 0, 0, 0, 1560, 0, 0, 0,
0, 0, 0, 5883, 5884, 1832, 1832, 1562, 0, 1562,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1560, 0, 3711, 0, 0, 3713,
0, 0, 0, 0, 0, 0, 0, 5890, 0, 0,
0, 0, 0, 0, 0, 1609, 1609, 0, 1609, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2200, 0, 0, 0, 0, 0, 2200, 0, 0,
0, 0, 0, 0, 0, 1560, 0, 0, 0, 0,
0, 0, 0, 1562, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1560, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 5953,
0, 1560, 0, 734, 0, 1562, 0, 0, 0, 0,
2997, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 5041, 0, 0, 0,
2997, 0, 0, 1562, 0, 2997, 0, 0, 0, 0,
0, 2997, 0, 0, 0, 0, 2997, 2997, 0, 2997,
0, 0, 0, 0, 3788, 3788, 0, 4596, 0, 3788,
0, 0, 0, 2997, 0, 0, 2997, 0, 0, 0,
734, 2997, 0, 0, 0, 6007, 0, 0, 0, 0,
2997, 0, 0, 0, 0, 2997, 0, 0, 0, 0,
0, 0, 2997, 2997, 2997, 2997, 0, 0, 0, 3788,
3788, 0, 2997, 1560, 1562, 0, 0, 6013, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2997, 0, 2997, 0, 0, 1562, 0, 0, 0,
2997, 2997, 2997, 2997, 2997, 2997, 2997, 2997, 2997, 2997,
0, 0, 0, 0, 0, 0, 1560, 0, 0, 0,
1562, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1560, 0, 0, 0, 0, 0, 0, 1609, 0,
0, 0, 0, 0, 0, 2997, 0, 0, 0, 0,
0, 0, 0, 1609, 0, 0, 0, 0, 0, 0,
5179, 0, 0, 0, 0, 0, 0, 0, 0, 5183,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3759,
0, 0, 0, 3759, 3759, 0, 0, 0, 0, 3770,
0, 0, 0, 0, 0, 0, 0, 5201, 0, 5202,
0, 0, 0, 0, 0, 0, 3148, 0, 0, 0,
0, 0, 1562, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 5224, 5225, 5226, 0,
0, 0, 0, 0, 0, 6109, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3809, 0, 0, 0, 0,
0, 0, 0, 5250, 6119, 1562, 5253, 0, 5255, 0,
6125, 6126, 0, 0, 0, 0, 0, 0, 2997, 0,
6137, 0, 0, 0, 0, 0, 5261, 6139, 0, 0,
1562, 0, 0, 0, 5268, 5269, 0, 0, 0, 0,
0, 5274, 0, 734, 0, 0, 1560, 0, 0, 734,
0, 0, 0, 734, 0, 0, 0, 0, 0, 0,
0, 0, 6191, 6192, 0, 0, 5314, 0, 0, 0,
0, 0, 0, 0, 0, 6200, 0, 1040, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6217, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 5332, 0, 0, 0, 4800, 0, 0,
0, 0, 0, 0, 0, 0, 3888, 0, 6253, 0,
5346, 0, 0, 0, 0, 0, 1560, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3900, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1560, 0, 0, 0, 0, 1609, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1609, 0,
0, 0, 0, 0, 1876, 0, 0, 0, 0, 0,
0, 0, 0, 0, 6306, 1562, 0, 0, 0, 0,
0, 0, 1876, 1876, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 6326, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 6333,
0, 0, 0, 0, 0, 0, 1832, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1609, 0, 0, 0, 0,
2997, 2997, 0, 0, 0, 2997, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1562, 0, 0, 0, 0,
0, 0, 0, 0, 2997, 0, 6392, 0, 0, 0,
0, 0, 0, 0, 1560, 0, 0, 0, 0, 0,
0, 1562, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1560, 0, 0, 1560, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4800, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1609,
0, 0, 0, 0, 0, 0, 0, 4095, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4117, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 800, 0, 0,
0, 0, 4145, 0, 0, 0, 6500, 0, 0, 0,
0, 0, 0, 1562, 0, 0, 0, 5635, 5636, 0,
6513, 0, 0, 0, 0, 0, 0, 0, 5643, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
734, 0, 1562, 0, 0, 1562, 0, 0, 0, 0,
0, 0, 0, 0, 2997, 0, 0, 0, 0, 6552,
2997, 0, 0, 1560, 0, 0, 0, 0, 4223, 4224,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 5696, 0, 0, 0, 4596, 4596,
0, 0, 3788, 3788, 3788, 3788, 0, 3091, 3788, 3788,
3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 4596, 0,
0, 5714, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 800, 0, 0, 0, 0, 0,
0, 2997, 0, 0, 2997, 0, 2997, 0, 0, 4596,
4596, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5733, 5735, 6627, 0, 0, 0, 0, 5739, 5740, 4347,
0, 0, 5741, 2997, 3788, 3788, 2997, 0, 2997, 5744,
0, 0, 5747, 5748, 0, 0, 0, 0, 0, 5753,
0, 0, 0, 0, 6639, 0, 0, 0, 0, 0,
1560, 0, 0, 0, 0, 6649, 0, 0, 0, 0,
0, 0, 1562, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1560, 0, 0, 0, 0, 0, 0, 0, 0, 1794,
0, 0, 0, 0, 0, 0, 0, 5810, 0, 0,
0, 0, 1560, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5821, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2997, 0, 0, 0, 0, 0, 0, 6726, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 734,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1560, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1562,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5886, 0, 0, 0, 1562,
0, 0, 5888, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1562, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 734, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1560, 0, 0, 0,
5923, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1562, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3788,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 4673, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2997, 0, 0, 0, 0, 0, 0, 0,
0, 1876, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1562, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 6017, 0,
0, 0, 0, 0, 6021, 6022, 6023, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 6036, 6037, 0, 0, 6038, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1560, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2997, 0, 0, 6063, 2997, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2997, 2997, 0, 0, 0, 6082, 4596, 4596,
4596, 4596, 0, 0, 0, 4596, 4596, 4596, 4596, 4596,
4596, 4596, 4596, 4596, 4596, 2997, 2997, 2997, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2997, 0, 0, 2997, 0, 2997, 0, 0, 0,
0, 0, 2997, 0, 0, 4596, 4596, 0, 0, 2997,
2997, 0, 0, 0, 0, 2997, 0, 0, 0, 0,
1560, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4887, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3350, 1562,
0, 0, 0, 0, 0, 2997, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2997, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2997, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1560, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1560, 0, 0,
0, 0, 1560, 1560, 0, 0, 0, 0, 0, 0,
3809, 0, 0, 0, 0, 0, 0, 0, 0, 1562,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 6279, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 6297, 0,
0, 0, 0, 0, 0, 0, 0, 5018, 5019, 5020,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 5029, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1562, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 6340, 0, 0,
5054, 5056, 0, 0, 0, 5061, 1560, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4596, 0,
0, 0, 0, 0, 0, 0, 1562, 0, 0, 6376,
0, 1562, 1562, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2997, 2997, 0, 0,
0, 0, 0, 0, 2997, 0, 0, 0, 0, 0,
0, 6447, 0, 1832, 0, 0, 0, 0, 0, 0,
6454, 6454, 6454, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1562, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2540, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2997, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2997, 3788, 0, 0, 0,
0, 0, 0, 0, 0, 6502, 0, 0, 0, 0,
0, 0, 0, 0, 2997, 0, 2997, 0, 0, 0,
2997, 2997, 2997, 0, 0, 2997, 0, 0, 2997, 2997,
0, 0, 0, 0, 2997, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1560, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2997, 5281, 5282, 5283, 0, 0, 0, 0, 0,
0, 0, 2997, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 6454, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 6297, 0, 0, 0, 0, 0,
0, 0, 0, 0, 6615, 0, 0, 2997, 0, 2997,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1562, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2997, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 6657, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 6682, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6297, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2997, 0,
4596, 3788, 2997, 2997, 2997, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2997, 2997, 2997,
0, 0, 0, 0, 0, 0, 3788, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2997, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6454, 0, 0, 2997, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 5556, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 6791, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5588, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3560, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2200,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5647, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4596, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3788, 3649, 0, 4596, 0, 0, 0,
2997, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2997, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2997, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2997, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5757, 5758, 5759, 5760, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2997, 0,
0, 0, 0, 0, 0, 2997, 0, 0, 0, 0,
0, 0, 0, 0, 4596, 0, 3788, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2997, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2997, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2997, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2997, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3788, 0, 0, 0, 0, 3788,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4596, 0, 0, 4596,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 5982, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5992, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2997, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 6175, 0, 0, 0, 0,
1832, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 6205,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 6323, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 6399, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 6422, 340, 341, 342, 343, 344, 345,
346, 347, 348, 816, 349, 350, 351, 817, 818, 819,
820, 821, 822, 823, 352, 353, 354, 824, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 825, 368, 369, 370, 371, 372, 373, 374, 826,
827, 375, 376, 828, 377, 378, 829, 379, 380, 381,
382, 383, 830, 384, 831, 385, 386, 387, 388, 389,
390, 391, 392, 393, 832, 833, 394, 395, 396, 397,
398, 399, 834, 400, 401, 402, 835, 836, 837, 838,
404, 839, 840, 841, 406, 407, 408, 409, 779, 410,
411, 412, 413, 842, 414, 843, 415, 416, 417, 418,
419, 420, 421, 844, 422, 423, 424, 425, 845, 846,
426, 427, 428, 429, 430, 847, 431, 432, 433, 848,
434, 435, 436, 849, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 850, 447, 851, 448, 449, 450,
451, 452, 852, 453, 853, 454, 455, 456, 854, 457,
458, 459, 460, 461, 855, 462, 463, 856, 464, 465,
466, 857, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 858, 476, 477, 478, 479, 480, 481, 482,
483, 859, 484, 485, 486, 860, 487, 488, 489, 861,
490, 862, 491, 863, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
864, 865, 508, 509, 510, 511, 512, 866, 513, 514,
515, 867, 868, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 869, 545, 546, 547, 548, 870,
549, 550, 551, 552, 553, 554, 871, 555, 556, 872,
873, 557, 558, 559, 874, 875, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 876, 577, 578, 579, 580, 581, 582,
583, 584, 877, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 878, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 879, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 880, 631, 632, 633, 634, 635, 881, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 882,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 883, 662, 663, 884, 885,
664, 665, 666, 667, 668, 669, 670, 886, 671, 672,
673, 887, 888, 675, 676, 677, 678, 679, 889, 680,
681, 682, 683, 684, 685, 686, 687, 890, 891, 688,
689, 690, 691, 692, 892, 893, 693, 694, 695, 696,
697, 894, 698, 895, 699, 700, 701, 702, 703, 704,
896, 897, 705, 898, 899, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 786, 723, 724, 0, 0, 0, 0, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 1098, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 2194, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 2195, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 2196, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
2197, 0, 0, 0, 0, 0, 0, 1782, 2198, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 146, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 150,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 2538, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 159, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 160, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
0, 0, 0, 0, 0, 0, 0, 1782, 6477, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
0, 0, 0, 0, 0, 0, 0, 1782, 3790, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
0, 0, 0, 0, 0, 0, 0, 1782, 5203, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
0, 0, 0, 0, 0, 0, 0, 1782, 5271, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 0, 1528, 365, 1529,
1530, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 1531, 1532, 378, 0, 379, 380, 381,
382, 0, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 0,
404, 0, 0, 0, 406, 407, 408, 409, 779, 410,
1533, 1534, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 0, 442,
443, 444, 445, 0, 0, 447, 0, 448, 449, 450,
1536, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 0, 0, 0, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 3170, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 3171, 0, 487, 488, 489, 1538,
1539, 0, 1540, 0, 492, 493, 494, 495, 496, 497,
0, 0, 0, 0, 502, 503, 504, 505, 506, 507,
0, 0, 508, 0, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1541, 533, 1542, 535, 536, 537, 538, 539, 540,
541, 0, 0, 544, 0, 545, 546, 547, 548, 0,
0, 550, 1543, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 3173, 563,
564, 565, 0, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 0, 580, 0, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1544, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 0, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 3174, 640, 641, 642, 643, 644, 1546, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 0, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1547,
1548, 0, 0, 675, 676, 0, 678, 0, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 1549, 3175, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 786, 723, 724, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 809, 740, 741, 742,
743, 744, 745, 746, 0, 747, 748, 0, 3273, 749,
750, 751, 752, 753, 754, 810, 755, 756, 757, 811,
0, 758, 759, 760, 761, 812, 813, 762, 763, 764,
0, 765, 814, 815, 766, 767, 0, 0, 0, 768,
769, 0, 0, 0, 0, 770, 0, 0, 0, 0,
0, 0, 0, 0, 771, 0, 772, 0, 773, 774,
35, 0, 0, 0, 37, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
0, 349, 350, 351, 0, 0, 0, 0, 0, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 359,
360, 361, 362, 0, 1528, 365, 1529, 1530, 0, 368,
369, 370, 371, 372, 373, 374, 0, 0, 375, 376,
1531, 1532, 378, 0, 379, 380, 381, 382, 0, 0,
384, 0, 385, 386, 387, 388, 389, 390, 391, 392,
393, 777, 0, 394, 395, 396, 397, 398, 399, 0,
400, 401, 402, 0, 0, 0, 0, 404, 0, 0,
0, 406, 407, 408, 409, 779, 410, 1533, 1534, 413,
0, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 1535,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 0, 442, 443, 444, 445,
0, 0, 447, 0, 448, 449, 450, 1536, 452, 0,
453, 0, 454, 455, 456, 0, 457, 458, 459, 460,
461, 0, 462, 0, 0, 0, 465, 466, 0, 467,
468, 781, 469, 470, 471, 472, 473, 474, 475, 3170,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
485, 3171, 0, 487, 488, 489, 1538, 1539, 0, 1540,
0, 492, 493, 494, 495, 496, 497, 0, 0, 0,
0, 502, 503, 504, 505, 506, 507, 0, 0, 508,
0, 510, 511, 512, 0, 513, 514, 515, 0, 0,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 782, 527, 528, 783, 529, 530, 531, 1541, 533,
1542, 535, 536, 537, 538, 539, 540, 541, 0, 0,
544, 0, 545, 546, 547, 548, 0, 0, 550, 1543,
552, 553, 554, 0, 555, 556, 0, 0, 557, 558,
559, 0, 0, 560, 561, 3173, 563, 564, 565, 0,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 0, 580, 0, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
1544, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 615, 616, 617, 618, 619, 620, 0, 622,
623, 624, 625, 626, 627, 628, 629, 784, 630, 0,
631, 632, 633, 634, 635, 0, 637, 638, 3174, 640,
641, 642, 643, 644, 1546, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
0, 661, 0, 662, 663, 0, 0, 664, 665, 666,
667, 668, 669, 670, 0, 671, 1547, 1548, 0, 0,
675, 676, 0, 678, 0, 0, 680, 681, 682, 683,
684, 685, 686, 687, 0, 0, 688, 689, 690, 691,
692, 0, 0, 693, 694, 695, 696, 697, 0, 1549,
3175, 699, 700, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 786,
723, 724, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 4405, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 339, 0,
0, 37, 0, 38, 39, 0, 1707, 1708, 1709, 40,
1710, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 1711, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 1712, 365, 1713, 1714, 0, 368, 369, 370, 371,
372, 373, 374, 1715, 1716, 375, 376, 1717, 1718, 378,
0, 379, 380, 381, 382, 1719, 0, 1720, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407,
408, 409, 779, 410, 1728, 1729, 413, 1730, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 1535, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 1731, 442, 443, 444, 445, 1732, 1733, 447,
0, 448, 449, 450, 1734, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
1735, 0, 1736, 465, 466, 0, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 1538, 1737, 0, 1738, 0, 492, 493,
494, 495, 496, 497, 1739, 1740, 1741, 1742, 502, 503,
504, 505, 506, 507, 0, 0, 508, 1743, 510, 511,
512, 0, 513, 514, 515, 1744, 1745, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 1746, 533, 1747, 535, 536,
537, 538, 539, 540, 541, 542, 1748, 544, 1749, 545,
546, 547, 548, 1750, 1751, 550, 1752, 552, 553, 554,
0, 555, 556, 0, 0, 1753, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 1754, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
1755, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 1756, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 3756, 613, 614, 615,
616, 617, 618, 619, 620, 1757, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 146, 631, 632, 633,
634, 635, 1758, 637, 638, 639, 640, 641, 642, 643,
644, 1759, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 1760, 661, 0,
662, 663, 1761, 150, 664, 665, 666, 667, 668, 669,
670, 0, 671, 1762, 1763, 0, 0, 675, 676, 1764,
678, 1765, 1766, 680, 681, 682, 683, 684, 685, 686,
687, 0, 1767, 688, 689, 690, 691, 692, 1768, 0,
693, 694, 695, 696, 697, 2538, 1769, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 159, 706,
707, 708, 709, 710, 711, 712, 1770, 1771, 1772, 1773,
717, 1774, 1775, 1776, 1777, 722, 786, 723, 724, 0,
1778, 0, 160, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1779, 1780, 0, 0, 0, 0, 0, 0,
0, 1782, 809, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 810, 755, 756, 757, 811, 0, 758, 759, 760,
761, 812, 813, 762, 763, 764, 0, 765, 814, 815,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 38, 39, 0, 1707, 1708, 1709, 40, 1710,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 1711, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 359, 360, 361, 362, 363,
1712, 365, 1713, 1714, 0, 368, 369, 370, 371, 372,
373, 374, 1715, 1716, 375, 376, 1717, 1718, 378, 0,
379, 380, 381, 382, 1719, 0, 1720, 0, 385, 386,
387, 388, 389, 390, 391, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 400, 401, 402, 0,
1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408,
409, 779, 410, 1728, 1729, 413, 1730, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 1535, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 1731, 442, 443, 444, 445, 1732, 1733, 447, 0,
448, 449, 450, 1734, 452, 0, 453, 0, 454, 455,
456, 0, 457, 458, 459, 460, 461, 0, 462, 1735,
0, 1736, 465, 466, 0, 467, 468, 781, 469, 470,
471, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 485, 486, 0, 487,
488, 489, 1538, 1737, 0, 1738, 0, 492, 493, 494,
495, 496, 497, 1739, 1740, 1741, 1742, 502, 503, 504,
505, 506, 507, 0, 0, 508, 1743, 510, 511, 512,
0, 513, 514, 515, 1744, 1745, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 1746, 533, 1747, 535, 536, 537,
538, 539, 540, 541, 542, 1748, 544, 1749, 545, 546,
547, 548, 1750, 1751, 550, 1752, 552, 553, 554, 0,
555, 556, 0, 0, 1753, 558, 559, 0, 0, 560,
561, 562, 563, 564, 565, 1754, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 1755,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 1756, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 615, 616,
617, 618, 619, 620, 1757, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 146, 631, 632, 633, 634,
635, 1758, 637, 638, 639, 640, 641, 642, 643, 644,
1759, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 1760, 661, 0, 662,
663, 1761, 150, 664, 665, 666, 667, 668, 669, 670,
0, 671, 1762, 1763, 0, 0, 675, 676, 1764, 678,
1765, 1766, 680, 681, 682, 683, 684, 685, 686, 687,
0, 1767, 688, 689, 690, 691, 692, 1768, 0, 693,
694, 695, 696, 697, 2538, 1769, 0, 699, 700, 701,
702, 703, 704, 0, 0, 705, 0, 159, 706, 707,
708, 709, 710, 711, 712, 1770, 1771, 1772, 1773, 717,
1774, 1775, 1776, 1777, 722, 786, 723, 724, 0, 1778,
0, 160, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1779, 1780, 0, 0, 0, 0, 0, 0, 0,
1782, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 339, 0, 0, 37,
0, 38, 39, 0, 1707, 1708, 1709, 40, 1710, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 1711, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 1712,
365, 1713, 1714, 3796, 368, 369, 370, 371, 372, 373,
374, 1715, 1716, 375, 376, 1717, 1718, 378, 0, 379,
380, 381, 382, 1719, 0, 1720, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 1721,
1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409,
779, 410, 1728, 1729, 413, 1730, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
1731, 442, 443, 444, 445, 1732, 1733, 447, 0, 448,
449, 450, 1734, 452, 0, 453, 0, 454, 455, 456,
3797, 457, 458, 459, 460, 461, 0, 462, 1735, 0,
1736, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 1538, 1737, 0, 1738, 0, 492, 493, 494, 495,
496, 497, 1739, 1740, 1741, 1742, 502, 503, 504, 505,
506, 507, 0, 3798, 508, 1743, 510, 511, 512, 0,
513, 514, 515, 1744, 1745, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1746, 533, 1747, 535, 536, 537, 538,
539, 540, 541, 542, 1748, 544, 1749, 545, 546, 547,
548, 1750, 1751, 550, 1752, 552, 553, 554, 0, 555,
556, 0, 0, 1753, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 1754, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 1755, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1756, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 1757, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
1758, 637, 638, 639, 640, 641, 642, 643, 644, 1759,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 1760, 661, 0, 662, 663,
1761, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1762, 1763, 0, 3799, 675, 676, 1764, 678, 1765,
1766, 680, 681, 682, 683, 684, 685, 686, 687, 0,
1767, 688, 689, 690, 691, 692, 1768, 0, 693, 694,
695, 696, 697, 785, 1769, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774,
1775, 1776, 1777, 722, 786, 723, 724, 0, 1778, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1779, 1780, 0, 0, 0, 0, 0, 0, 0, 1782,
809, 740, 741, 742, 743, 744, 745, 746, 0, 747,
748, 0, 0, 749, 750, 751, 752, 753, 754, 810,
755, 756, 757, 811, 0, 758, 759, 760, 761, 812,
813, 762, 763, 764, 0, 765, 814, 815, 766, 767,
0, 0, 0, 768, 769, 0, 0, 0, 0, 770,
0, 0, 0, 0, 0, 0, 0, 0, 771, 0,
772, 0, 773, 774, 35, 339, 0, 0, 37, 0,
38, 39, 0, 1707, 1708, 1709, 40, 1710, 0, 0,
0, 0, 0, 0, 0, 340, 341, 342, 343, 344,
345, 346, 347, 348, -2230, 349, 350, 351, 0, 0,
0, -2230, 1711, 0, 0, 352, 353, 354, 0, 355,
356, 357, 358, 359, 360, 361, 362, 363, 1712, 365,
1713, 1714, 0, 368, 369, 370, 371, 372, 373, 374,
1715, 1716, 375, 376, 1717, 1718, 378, 0, 379, 380,
381, 382, 1719, 0, 1720, 0, 385, 386, 387, 388,
389, 390, 391, 392, 393, 777, 0, 394, 395, 396,
397, 398, 399, 0, 400, 401, 402, 0, 1721, 1722,
1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409, 779,
410, 1728, 1729, 413, 1730, 414, 0, 415, 416, 417,
418, 419, 420, 421, 0, 422, 423, 424, 425, 0,
0, 426, 427, 1535, 429, 430, 0, 431, 432, 433,
0, 434, 435, 436, 0, 437, 438, 439, 440, 1731,
442, 443, 444, 445, 1732, 1733, 447, 0, 448, 449,
450, 1734, 452, 0, 453, 0, 454, 455, 456, 0,
457, 458, 459, 460, 461, 0, 462, 1735, 0, 1736,
465, 466, 0, 467, 468, 781, 469, 470, 471, 472,
473, 474, 475, 0, 476, 477, 478, 479, 480, 481,
482, 483, 0, 484, 485, 486, 0, 487, 488, 489,
1538, 1737, 0, 1738, 0, 492, 493, 494, 495, 496,
497, 1739, 1740, 1741, 1742, 502, 503, 504, 505, 506,
507, 0, 0, 508, 1743, 510, 511, 512, 0, 513,
514, 515, 1744, 1745, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 782, 527, 528, 783, 529,
530, 531, 1746, 533, 1747, 535, 536, 537, 538, 539,
540, 541, 542, 1748, 544, 1749, 545, 546, 547, 548,
1750, 1751, 550, 1752, 552, 553, 554, 0, 555, 556,
0, 0, 1753, 558, 559, 0, 0, 560, 561, 562,
563, 564, 565, 1754, 567, 568, 569, 570, 571, 572,
573, 574, 575, 576, 0, 577, 578, 1755, 580, 581,
582, 583, 584, 0, 585, 586, 587, 588, 589, 590,
591, 592, 593, 594, 1756, 596, 597, 598, 599, 0,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 0, 613, 614, 615, 616, 617, 618,
619, 620, 1757, 622, 623, 624, 625, 626, 627, 628,
629, 784, 630, 0, 631, 632, 633, 634, 635, 1758,
637, 638, 639, 640, 641, 642, 643, 644, 1759, 646,
-2230, 647, 648, 649, 650, 651, 652, 653, 654, 655,
656, 657, 658, 659, 1760, 661, 0, 662, 663, 1761,
0, 664, 665, 666, 667, 668, 669, 670, 0, 671,
1762, 1763, 0, 0, 675, 676, 1764, 678, 1765, 1766,
680, 681, 682, 683, 684, 685, 686, 687, 0, 1767,
688, 689, 690, 691, 692, 1768, 0, 693, 694, 695,
696, 697, 785, 1769, 0, 699, 700, 701, 702, 703,
704, 0, 0, 705, 0, 0, 706, 707, 708, 709,
710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775,
1776, 1777, 722, 786, 723, 724, 0, 1778, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1779,
1780, 0, 0, 0, 0, 0, 0, 0, 1782, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, -2228, 349, 350, 351, 0, 0, 0,
-2228, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, -2228,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
0, 0, 0, 0, 0, 0, 0, 1782, 809, 740,
741, 742, 743, 744, 745, 746, 0, 747, 748, 0,
0, 749, 750, 751, 752, 753, 754, 810, 755, 756,
757, 811, 0, 758, 759, 760, 761, 812, 813, 762,
763, 764, 0, 765, 814, 815, 766, 767, 0, 0,
0, 768, 769, 0, 0, 0, 0, 770, 0, 0,
0, 0, 0, 0, 0, 0, 771, 0, 772, 0,
773, 774, 35, 339, 0, 0, 37, 0, 38, 39,
0, 1707, 1708, 1709, 40, 1710, 0, 0, 0, 0,
0, 0, 0, 340, 341, 342, 343, 344, 345, 346,
347, 348, 0, 349, 350, 351, 0, 0, 0, 0,
1711, 0, 0, 352, 353, 354, 0, 355, 356, 357,
358, 359, 360, 361, 362, 363, 1712, 365, 1713, 1714,
0, 368, 369, 370, 371, 372, 373, 374, 1715, 1716,
375, 376, 1717, 1718, 378, 0, 379, 380, 381, 382,
1719, 0, 1720, 0, 385, 386, 387, 388, 389, 390,
391, 392, 393, 777, 0, 394, 395, 396, 397, 398,
399, 0, 400, 401, 402, 0, 1721, 1722, 1723, 1724,
1725, 1726, 1727, 406, 407, 408, 409, 779, 410, 1728,
1729, 413, 1730, 414, 0, 415, 416, 417, 418, 419,
420, 421, 0, 422, 423, 424, 425, 0, 0, 426,
427, 1535, 429, 430, 0, 431, 432, 433, 0, 434,
435, 436, 0, 437, 438, 439, 440, 1731, 442, 443,
444, 445, 1732, 1733, 447, 0, 448, 449, 450, 1734,
452, 0, 453, 0, 454, 455, 456, 0, 457, 458,
459, 460, 461, 0, 462, 1735, 0, 1736, 465, 466,
0, 467, 468, 781, 469, 470, 471, 472, 473, 474,
475, 0, 476, 477, 478, 479, 480, 481, 482, 483,
0, 484, 485, 486, 0, 487, 488, 489, 1538, 1737,
0, 1738, 0, 492, 493, 494, 495, 496, 497, 1739,
1740, 1741, 1742, 502, 503, 504, 505, 506, 507, 0,
0, 508, 1743, 510, 511, 512, 0, 513, 514, 515,
1744, 1745, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 782, 527, 528, 783, 529, 530, 531,
1746, 533, 1747, 535, 536, 537, 538, 539, 540, 541,
542, 1748, 544, 1749, 545, 546, 547, 548, 1750, 1751,
550, 1752, 552, 553, 554, 0, 555, 556, 0, 0,
1753, 558, 559, 0, 0, 560, 561, 562, 563, 564,
565, 1754, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 0, 577, 578, 1755, 580, 581, 582, 583,
584, 0, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 1756, 596, 597, 598, 599, 0, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 0, 613, 614, 615, 616, 617, 618, 619, 620,
1757, 622, 623, 624, 625, 626, 627, 628, 629, 784,
630, 0, 631, 632, 633, 634, 635, 1758, 637, 638,
639, 640, 641, 642, 643, 644, 1759, 646, 0, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 1760, 661, 0, 662, 663, 1761, 0, 664,
665, 666, 667, 668, 669, 670, 0, 671, 1762, 1763,
0, 0, 675, 676, 1764, 678, 1765, 1766, 680, 681,
682, 683, 684, 685, 686, 687, 0, 1767, 688, 689,
690, 691, 692, 1768, 0, 693, 694, 695, 696, 697,
785, 1769, 0, 699, 700, 701, 702, 703, 704, 0,
0, 705, 0, 0, 706, 707, 708, 709, 710, 711,
712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776, 1777,
722, 786, 723, 724, 0, 1778, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1779, 1780, 0,
0, 0, 0, 0, 2494, 3732, 1782, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 38, 39, 0,
1707, 1708, 1709, 40, 1710, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 1711,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 1712, 365, 1713, 1714, 0,
368, 369, 370, 371, 372, 373, 374, 1715, 1716, 375,
376, 1717, 1718, 378, 0, 379, 380, 381, 382, 1719,
0, 1720, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 1721, 1722, 1723, 1724, 1725,
1726, 1727, 406, 407, 408, 409, 779, 410, 1728, 1729,
413, 1730, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
1535, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 1731, 442, 443, 444,
445, 1732, 1733, 447, 0, 448, 449, 450, 1734, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 1735, 0, 1736, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 1538, 1737, 0,
1738, 0, 492, 493, 494, 495, 496, 497, 1739, 1740,
1741, 1742, 502, 503, 504, 505, 506, 507, 0, 0,
508, 1743, 510, 511, 512, 0, 513, 514, 515, 1744,
1745, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 1746,
533, 1747, 535, 536, 537, 538, 539, 540, 541, 542,
1748, 544, 1749, 545, 546, 547, 548, 1750, 1751, 550,
1752, 552, 553, 554, 0, 555, 556, 0, 0, 1753,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
1754, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 1755, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 1756, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 1757,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 1758, 637, 638, 639,
640, 641, 642, 643, 644, 1759, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 1760, 661, 0, 662, 663, 1761, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 1762, 1763, 0,
0, 675, 676, 1764, 678, 1765, 1766, 680, 681, 682,
683, 684, 685, 686, 687, 0, 1767, 688, 689, 690,
691, 692, 1768, 0, 693, 694, 695, 696, 697, 785,
1769, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
1770, 1771, 1772, 1773, 717, 1774, 1775, 1776, 1777, 722,
786, 723, 724, 0, 1778, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1779, 1780, 1781, 0,
0, 0, 0, 0, 0, 1782, 809, 740, 741, 742,
743, 744, 745, 746, 0, 747, 748, 0, 0, 749,
750, 751, 752, 753, 754, 810, 755, 756, 757, 811,
0, 758, 759, 760, 761, 812, 813, 762, 763, 764,
0, 765, 814, 815, 766, 767, 0, 0, 0, 768,
769, 0, 0, 0, 0, 770, 0, 0, 0, 0,
0, 0, 0, 0, 771, 0, 772, 0, 773, 774,
35, 339, 0, 0, 37, 0, 38, 39, 0, 1707,
1708, 1709, 40, 1710, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
3101, 349, 350, 351, 0, 0, 0, 0, 1711, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 359,
360, 361, 362, 363, 1712, 365, 1713, 1714, 0, 368,
369, 370, 371, 372, 373, 374, 1715, 1716, 375, 376,
1717, 1718, 378, 0, 379, 380, 381, 382, 1719, 0,
1720, 0, 385, 386, 387, 388, 389, 390, 391, 392,
393, 777, 0, 394, 395, 396, 397, 398, 399, 0,
400, 401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726,
1727, 406, 407, 408, 409, 779, 410, 1728, 1729, 413,
1730, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 1535,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 1731, 442, 443, 444, 445,
1732, 1733, 447, 0, 448, 449, 450, 1734, 452, 0,
453, 0, 454, 455, 456, 0, 457, 458, 459, 460,
461, 0, 462, 1735, 0, 1736, 465, 466, 0, 467,
468, 781, 469, 470, 471, 472, 473, 474, 475, 0,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
485, 486, 0, 487, 488, 489, 1538, 1737, 0, 1738,
0, 492, 493, 494, 495, 496, 497, 1739, 1740, 1741,
1742, 502, 503, 504, 505, 506, 507, 0, 0, 508,
1743, 510, 511, 512, 0, 513, 514, 515, 1744, 1745,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 782, 527, 528, 783, 529, 530, 531, 1746, 533,
1747, 535, 536, 537, 538, 539, 540, 541, 542, 1748,
544, 1749, 545, 546, 547, 548, 1750, 1751, 550, 1752,
552, 553, 554, 0, 555, 556, 0, 0, 1753, 558,
559, 0, 0, 560, 561, 562, 563, 564, 565, 1754,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 1755, 580, 581, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
1756, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 615, 616, 617, 618, 619, 620, 1757, 622,
623, 624, 625, 626, 627, 628, 629, 784, 630, 0,
631, 632, 633, 634, 635, 1758, 637, 638, 639, 640,
641, 642, 643, 644, 1759, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
1760, 661, 0, 662, 663, 1761, 0, 664, 665, 666,
667, 668, 669, 670, 0, 671, 1762, 1763, 0, 0,
675, 676, 1764, 678, 1765, 1766, 680, 681, 682, 683,
684, 685, 686, 687, 0, 1767, 688, 689, 690, 691,
692, 1768, 0, 693, 694, 695, 696, 697, 785, 1769,
0, 699, 700, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 712, 1770,
1771, 1772, 1773, 717, 1774, 1775, 1776, 1777, 722, 786,
723, 724, 0, 1778, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1779, 1780, 0, 0, 0,
0, 0, 0, 0, 1782, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
339, 0, 0, 37, 0, 38, 39, 0, 1707, 1708,
1709, 40, 1710, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 1711, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 1712, 365, 1713, 1714, 0, 368, 369,
370, 371, 372, 373, 374, 1715, 1716, 375, 376, 1717,
1718, 378, 0, 379, 380, 381, 382, 1719, 0, 1720,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727,
406, 407, 408, 409, 779, 410, 1728, 1729, 413, 1730,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 1535, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 1731, 442, 443, 444, 445, 1732,
1733, 447, 0, 448, 449, 450, 1734, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 1735, 0, 1736, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 1538, 1737, 0, 1738, 0,
492, 493, 494, 495, 496, 497, 1739, 1740, 1741, 1742,
502, 503, 504, 505, 506, 507, 0, 0, 508, 1743,
510, 511, 512, 0, 513, 514, 515, 1744, 1745, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 1746, 533, 1747,
535, 536, 537, 538, 539, 540, 541, 542, 1748, 544,
1749, 545, 546, 547, 548, 1750, 1751, 550, 1752, 552,
553, 554, 0, 555, 556, 0, 0, 1753, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 1754, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 1755, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 1756,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 3756, 613,
614, 615, 616, 617, 618, 619, 620, 1757, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 1758, 637, 638, 639, 640, 641,
642, 643, 644, 1759, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 1760,
661, 0, 662, 663, 1761, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 1762, 1763, 0, 0, 675,
676, 1764, 678, 1765, 1766, 680, 681, 682, 683, 684,
685, 686, 687, 0, 1767, 688, 689, 690, 691, 692,
1768, 0, 693, 694, 695, 696, 697, 785, 1769, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 1770, 1771,
1772, 1773, 717, 1774, 1775, 1776, 1777, 722, 786, 723,
724, 0, 1778, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1779, 1780, 0, 0, 0, 0,
0, 0, 0, 1782, 809, 740, 741, 742, 743, 744,
745, 746, 0, 747, 748, 0, 0, 749, 750, 751,
752, 753, 754, 810, 755, 756, 757, 811, 0, 758,
759, 760, 761, 812, 813, 762, 763, 764, 0, 765,
814, 815, 766, 767, 0, 0, 0, 768, 769, 0,
0, 0, 0, 770, 0, 0, 0, 0, 0, 0,
0, 0, 771, 0, 772, 0, 773, 774, 35, 339,
0, 0, 37, 0, 38, 39, 0, 1707, 1708, 1709,
40, 1710, 0, 0, 0, 0, 0, 0, 0, 340,
341, 342, 343, 344, 345, 346, 347, 348, 0, 349,
350, 351, 0, 0, 0, 0, 1711, 0, 0, 352,
353, 354, 0, 355, 356, 357, 358, 359, 360, 361,
362, 363, 1712, 365, 1713, 1714, 0, 368, 369, 370,
371, 372, 373, 374, 1715, 1716, 375, 376, 1717, 1718,
378, 0, 379, 380, 381, 382, 1719, 0, 1720, 0,
385, 386, 387, 388, 389, 390, 391, 392, 393, 777,
0, 394, 395, 396, 397, 398, 399, 0, 400, 401,
402, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 406,
407, 408, 409, 779, 410, 1728, 1729, 413, 1730, 414,
0, 415, 416, 417, 418, 419, 420, 421, 0, 422,
423, 424, 425, 0, 0, 426, 427, 1535, 429, 430,
0, 431, 432, 433, 0, 434, 435, 436, 0, 437,
438, 439, 440, 1731, 442, 443, 444, 445, 1732, 1733,
447, 0, 448, 449, 450, 1734, 452, 0, 453, 0,
454, 455, 456, 0, 457, 458, 459, 460, 461, 0,
462, 1735, 0, 1736, 465, 466, 0, 467, 468, 781,
469, 470, 471, 472, 473, 474, 475, 0, 476, 477,
478, 479, 480, 481, 482, 483, 0, 484, 485, 486,
0, 487, 488, 489, 1538, 1737, 0, 1738, 0, 492,
493, 494, 495, 496, 497, 1739, 1740, 1741, 1742, 502,
503, 504, 505, 506, 507, 0, 0, 508, 1743, 510,
511, 512, 0, 513, 514, 515, 1744, 1745, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 782,
527, 528, 783, 529, 530, 531, 1746, 533, 1747, 535,
536, 537, 538, 539, 540, 541, 542, 1748, 544, 1749,
545, 546, 547, 548, 1750, 1751, 550, 1752, 552, 553,
554, 0, 555, 556, 0, 0, 1753, 558, 559, 0,
0, 560, 561, 562, 563, 564, 565, 1754, 567, 568,
569, 570, 571, 572, 573, 574, 575, 576, 0, 577,
578, 1755, 580, 581, 582, 583, 584, 0, 585, 586,
587, 588, 589, 590, 591, 592, 593, 594, 1756, 596,
597, 598, 599, 0, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 0, 613, 614,
615, 616, 617, 618, 619, 620, 1757, 622, 623, 624,
625, 626, 627, 628, 629, 784, 630, 0, 631, 632,
633, 634, 635, 1758, 637, 638, 639, 640, 641, 642,
643, 644, 1759, 646, 0, 647, 648, 649, 650, 651,
652, 653, 654, 655, 656, 657, 658, 659, 1760, 661,
0, 662, 663, 1761, 0, 664, 665, 666, 667, 668,
669, 670, 0, 671, 1762, 1763, 0, 0, 675, 676,
1764, 678, 1765, 1766, 680, 681, 682, 683, 684, 685,
686, 687, 0, 1767, 688, 689, 690, 691, 692, 1768,
0, 693, 694, 695, 696, 697, 785, 1769, 4281, 699,
700, 701, 702, 703, 704, 0, 0, 705, 0, 0,
706, 707, 708, 709, 710, 711, 712, 1770, 1771, 1772,
1773, 717, 1774, 1775, 1776, 1777, 722, 786, 723, 724,
0, 1778, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1779, 1780, 0, 0, 0, 0, 0,
0, 0, 1782, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 339, 0,
0, 37, 0, 38, 39, 0, 1707, 1708, 1709, 40,
1710, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 1711, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 1712, 365, 1713, 1714, 0, 368, 369, 370, 371,
372, 373, 374, 1715, 1716, 375, 376, 1717, 1718, 378,
0, 379, 380, 381, 382, 1719, 0, 1720, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407,
408, 409, 779, 410, 1728, 1729, 413, 1730, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 1535, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 1731, 442, 443, 444, 445, 1732, 1733, 447,
0, 448, 449, 450, 1734, 452, 0, 453, 0, 454,
455, 456, 3797, 457, 458, 459, 460, 461, 0, 462,
1735, 0, 1736, 465, 466, 0, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 1538, 1737, 0, 1738, 0, 492, 493,
494, 495, 496, 497, 1739, 1740, 1741, 1742, 502, 503,
504, 505, 506, 507, 0, 0, 508, 1743, 510, 511,
512, 0, 513, 514, 515, 1744, 1745, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 1746, 533, 1747, 535, 536,
537, 538, 539, 540, 541, 542, 1748, 544, 1749, 545,
546, 547, 548, 1750, 1751, 550, 1752, 552, 553, 554,
0, 555, 556, 0, 0, 1753, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 1754, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
1755, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 1756, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 1757, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 1758, 637, 638, 639, 640, 641, 642, 643,
644, 1759, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 1760, 661, 0,
662, 663, 1761, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 1762, 1763, 0, 0, 675, 676, 1764,
678, 1765, 1766, 680, 681, 682, 683, 684, 685, 686,
687, 0, 1767, 688, 689, 690, 691, 692, 1768, 0,
693, 694, 695, 696, 697, 785, 1769, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 1770, 1771, 1772, 1773,
717, 1774, 1775, 1776, 1777, 722, 786, 723, 724, 0,
1778, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1779, 1780, 0, 0, 0, 0, 0, 0,
0, 1782, 809, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 810, 755, 756, 757, 811, 0, 758, 759, 760,
761, 812, 813, 762, 763, 764, 0, 765, 814, 815,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 38, 39, 0, 1707, 1708, 1709, 40, 1710,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 1711, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 359, 360, 361, 362, 363,
1712, 365, 1713, 1714, 0, 368, 369, 370, 371, 372,
373, 374, 1715, 1716, 375, 376, 1717, 1718, 378, 0,
379, 380, 381, 382, 1719, 0, 1720, 0, 385, 386,
387, 388, 389, 390, 391, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 400, 401, 402, 0,
1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408,
409, 779, 410, 1728, 1729, 413, 1730, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 1535, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 1731, 442, 443, 444, 445, 1732, 1733, 447, 0,
448, 449, 450, 1734, 452, 0, 453, 0, 454, 455,
456, 0, 457, 458, 459, 460, 461, 0, 462, 1735,
0, 1736, 465, 466, 0, 467, 468, 781, 469, 470,
471, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 485, 486, 0, 487,
488, 489, 1538, 1737, 0, 1738, 0, 492, 493, 494,
495, 496, 497, 1739, 1740, 1741, 1742, 502, 503, 504,
505, 506, 507, 0, 0, 508, 1743, 510, 511, 512,
0, 513, 514, 515, 1744, 1745, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 1746, 533, 1747, 535, 536, 537,
538, 539, 540, 541, 542, 1748, 544, 1749, 545, 546,
547, 548, 1750, 1751, 550, 1752, 552, 553, 554, 0,
555, 556, 0, 0, 1753, 558, 559, 0, 0, 560,
561, 562, 563, 564, 565, 1754, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 1755,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 1756, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 615, 616,
617, 618, 619, 620, 1757, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 1758, 637, 638, 639, 640, 641, 642, 643, 644,
1759, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 1760, 661, 0, 662,
663, 1761, 0, 664, 665, 666, 667, 668, 669, 670,
0, 671, 1762, 1763, 3853, 0, 675, 676, 1764, 678,
1765, 1766, 680, 681, 682, 683, 684, 685, 686, 687,
0, 1767, 688, 689, 690, 691, 692, 1768, 0, 693,
694, 695, 696, 697, 785, 1769, 0, 699, 700, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 1770, 1771, 1772, 1773, 717,
1774, 1775, 1776, 1777, 722, 786, 723, 724, 0, 1778,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1779, 1780, 0, 0, 0, 0, 0, 0, 0,
1782, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 339, 0, 0, 37,
0, 38, 39, 0, 1707, 1708, 1709, 40, 1710, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 1711, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 1712,
365, 1713, 1714, 0, 368, 369, 370, 371, 372, 373,
374, 1715, 1716, 375, 376, 1717, 1718, 378, 0, 379,
380, 381, 382, 1719, 0, 1720, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 5331, 1721,
1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409,
779, 410, 1728, 1729, 413, 1730, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
1731, 442, 443, 444, 445, 1732, 1733, 447, 0, 448,
449, 450, 1734, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 1735, 0,
1736, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 1538, 1737, 0, 1738, 0, 492, 493, 494, 495,
496, 497, 1739, 1740, 1741, 1742, 502, 503, 504, 505,
506, 507, 0, 0, 508, 1743, 510, 511, 512, 0,
513, 514, 515, 1744, 1745, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1746, 533, 1747, 535, 536, 537, 538,
539, 540, 541, 542, 1748, 544, 1749, 545, 546, 547,
548, 1750, 1751, 550, 1752, 552, 553, 554, 0, 555,
556, 0, 0, 1753, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 1754, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 1755, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1756, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 1757, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
1758, 637, 638, 639, 640, 641, 642, 643, 644, 1759,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 1760, 661, 0, 662, 663,
1761, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1762, 1763, 0, 0, 675, 676, 1764, 678, 1765,
1766, 680, 681, 682, 683, 684, 685, 686, 687, 0,
1767, 688, 689, 690, 691, 692, 1768, 0, 693, 694,
695, 696, 697, 785, 1769, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774,
1775, 1776, 1777, 722, 786, 723, 724, 0, 1778, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1779, 1780, 0, 0, 0, 0, 0, 0, 0, 1782,
809, 740, 741, 742, 743, 744, 745, 746, 0, 747,
748, 0, 0, 749, 750, 751, 752, 753, 754, 810,
755, 756, 757, 811, 0, 758, 759, 760, 761, 812,
813, 762, 763, 764, 0, 765, 814, 815, 766, 767,
0, 0, 0, 768, 769, 0, 0, 0, 0, 770,
0, 0, 0, 0, 0, 0, 0, 0, 771, 0,
772, 0, 773, 774, 35, 339, 0, 0, 37, 0,
38, 39, 0, 1707, 1708, 1709, 40, 1710, 0, 0,
0, 0, 0, 0, 0, 340, 341, 342, 343, 344,
345, 346, 347, 348, 0, 349, 350, 351, 0, 0,
0, 0, 1711, 0, 0, 352, 353, 354, 0, 355,
356, 357, 358, 359, 360, 361, 362, 6451, 1712, 365,
1713, 1714, 0, 368, 369, 370, 371, 372, 373, 374,
1715, 1716, 375, 376, 1717, 1718, 378, 0, 379, 380,
381, 382, 1719, 0, 1720, 0, 385, 386, 387, 388,
389, 390, 391, 392, 393, 777, 0, 394, 395, 396,
397, 398, 399, 0, 400, 401, 402, 6452, 1721, 1722,
1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409, 779,
410, 1728, 1729, 413, 1730, 414, 0, 415, 416, 417,
418, 419, 420, 421, 0, 422, 423, 424, 425, 0,
0, 426, 427, 1535, 429, 430, 0, 431, 432, 433,
0, 434, 435, 436, 0, 437, 438, 439, 440, 1731,
442, 443, 444, 445, 1732, 1733, 447, 0, 448, 449,
450, 1734, 452, 0, 453, 0, 454, 455, 456, 0,
457, 458, 459, 460, 461, 0, 462, 1735, 0, 1736,
465, 466, 0, 467, 468, 781, 469, 470, 471, 472,
473, 474, 475, 0, 476, 477, 478, 479, 480, 481,
482, 483, 0, 484, 485, 486, 0, 487, 488, 489,
1538, 1737, 0, 1738, 0, 492, 493, 494, 495, 496,
497, 1739, 1740, 1741, 1742, 502, 503, 504, 505, 506,
507, 0, 0, 508, 1743, 510, 511, 512, 0, 513,
514, 515, 1744, 1745, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 782, 527, 528, 783, 529,
530, 531, 1746, 533, 1747, 535, 536, 537, 538, 539,
540, 541, 542, 1748, 544, 1749, 545, 546, 547, 548,
1750, 1751, 550, 1752, 552, 553, 554, 0, 555, 556,
0, 0, 1753, 558, 559, 0, 0, 560, 561, 562,
563, 564, 565, 1754, 567, 568, 569, 570, 571, 572,
573, 574, 575, 576, 0, 577, 578, 1755, 580, 581,
582, 583, 584, 0, 585, 586, 587, 588, 589, 590,
591, 592, 593, 594, 1756, 596, 597, 598, 599, 0,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 0, 613, 614, 615, 616, 617, 618,
619, 620, 1757, 622, 623, 624, 625, 626, 627, 628,
629, 784, 630, 0, 631, 632, 633, 634, 635, 1758,
637, 638, 639, 640, 641, 642, 643, 644, 1759, 646,
0, 647, 648, 649, 650, 651, 652, 653, 654, 655,
656, 657, 658, 659, 1760, 661, 0, 662, 663, 1761,
0, 664, 665, 666, 667, 668, 669, 670, 0, 671,
1762, 1763, 0, 0, 675, 676, 1764, 678, 1765, 1766,
680, 681, 682, 683, 684, 6453, 686, 687, 0, 1767,
688, 689, 690, 691, 692, 1768, 0, 693, 694, 695,
696, 697, 785, 1769, 0, 699, 700, 701, 702, 703,
704, 0, 0, 705, 0, 0, 706, 707, 708, 709,
710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775,
1776, 1777, 722, 786, 723, 724, 0, 1778, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1779,
1780, 0, 0, 0, 0, 0, 0, 0, 1782, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 1709, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 6452, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 1730, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 1749, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 1753, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 1757, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 6453, 686, 687, 0, 1767, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 1778, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1779, 1780,
0, 0, 0, 0, 0, 0, 0, 1782, 809, 740,
741, 742, 743, 744, 745, 746, 0, 747, 748, 0,
0, 749, 750, 751, 752, 753, 754, 810, 755, 756,
757, 811, 0, 758, 759, 760, 761, 812, 813, 762,
763, 764, 0, 765, 814, 815, 766, 767, 0, 0,
0, 768, 769, 0, 0, 0, 0, 770, 0, 0,
0, 0, 0, 0, 0, 0, 771, 0, 772, 0,
773, 774, 35, 339, 0, 0, 37, 0, 38, 39,
0, 1707, 1708, 1709, 40, 1710, 0, 0, 0, 0,
0, 0, 0, 340, 341, 342, 343, 344, 345, 346,
347, 348, 0, 349, 350, 351, 0, 0, 0, 0,
1711, 0, 0, 352, 353, 354, 0, 355, 356, 357,
358, 359, 360, 361, 362, 363, 1712, 365, 1713, 1714,
0, 368, 369, 370, 371, 372, 373, 374, 1715, 1716,
375, 376, 1717, 1718, 378, 0, 379, 380, 381, 382,
1719, 0, 1720, 0, 385, 386, 387, 388, 389, 390,
391, 392, 393, 777, 0, 394, 395, 396, 397, 398,
399, 0, 400, 401, 402, 0, 1721, 1722, 1723, 1724,
1725, 1726, 1727, 406, 407, 408, 409, 779, 410, 1728,
1729, 413, 1730, 414, 0, 415, 416, 417, 418, 419,
420, 421, 0, 422, 423, 424, 425, 0, 0, 426,
427, 1535, 429, 430, 0, 431, 432, 433, 0, 434,
435, 436, 0, 437, 438, 439, 440, 1731, 442, 443,
444, 445, 1732, 1733, 447, 0, 448, 449, 450, 1734,
452, 0, 453, 0, 454, 455, 456, 0, 457, 458,
459, 460, 461, 0, 462, 1735, 0, 1736, 465, 466,
0, 467, 468, 781, 469, 470, 471, 472, 473, 474,
475, 0, 476, 477, 478, 479, 480, 481, 482, 483,
0, 484, 485, 486, 0, 487, 488, 489, 1538, 1737,
0, 1738, 0, 492, 493, 494, 495, 496, 497, 1739,
1740, 1741, 1742, 502, 503, 504, 505, 506, 507, 0,
0, 508, 1743, 510, 511, 512, 0, 513, 514, 515,
1744, 1745, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 782, 527, 528, 783, 529, 530, 531,
1746, 533, 1747, 535, 536, 537, 538, 539, 540, 541,
542, 1748, 544, 1749, 545, 546, 547, 548, 1750, 1751,
550, 1752, 552, 553, 554, 0, 555, 556, 0, 0,
1753, 558, 559, 0, 0, 560, 561, 562, 563, 564,
565, 1754, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 0, 577, 578, 1755, 580, 581, 582, 583,
584, 0, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 1756, 596, 597, 598, 599, 0, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 0, 613, 614, 615, 616, 617, 618, 619, 620,
1757, 622, 623, 624, 625, 626, 627, 628, 629, 784,
630, 0, 631, 632, 633, 634, 635, 1758, 637, 638,
639, 640, 641, 642, 643, 644, 1759, 646, 0, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 1760, 661, 0, 662, 663, 1761, 0, 664,
665, 666, 667, 668, 669, 670, 0, 671, 1762, 1763,
0, 0, 675, 676, 1764, 678, 1765, 1766, 680, 681,
682, 683, 684, 685, 686, 687, 0, 1767, 688, 689,
690, 691, 692, 1768, 0, 693, 694, 695, 696, 697,
785, 1769, 0, 699, 700, 701, 702, 703, 704, 0,
0, 705, 0, 0, 706, 707, 708, 709, 710, 711,
712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776, 1777,
722, 786, 723, 724, 0, 1778, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1779, 1780, 0,
0, 0, 0, 0, 0, 0, 1782, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 38, 39, 0,
1707, 1708, 1709, 40, 1710, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 1711,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 1712, 365, 1713, 1714, 0,
368, 369, 370, 371, 372, 373, 374, 1715, 1716, 375,
376, 1717, 1718, 378, 0, 379, 380, 381, 382, 1719,
0, 1720, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 1721, 1722, 1723, 1724, 1725,
1726, 1727, 406, 407, 408, 409, 779, 410, 1728, 1729,
413, 1730, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
1535, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 1731, 442, 443, 444,
445, 1732, 1733, 447, 0, 448, 449, 450, 1734, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 1735, 0, 1736, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 1538, 1737, 0,
1738, 0, 492, 493, 494, 495, 496, 497, 1739, 1740,
1741, 1742, 502, 503, 504, 505, 506, 507, 0, 0,
508, 1743, 510, 511, 512, 0, 513, 514, 515, 1744,
1745, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 1746,
533, 1747, 535, 536, 537, 538, 539, 540, 541, 542,
1748, 544, 1749, 545, 546, 547, 548, 1750, 1751, 550,
1752, 552, 553, 554, 0, 555, 556, 0, 0, 1753,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
1754, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 1755, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 1756, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 1757,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 1758, 637, 638, 639,
640, 641, 642, 643, 644, 1759, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 1760, 661, 0, 662, 663, 1761, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 1762, 1763, 0,
0, 675, 676, 1764, 678, 1765, 1766, 680, 681, 682,
683, 684, 685, 686, 687, 0, 1767, 688, 689, 690,
691, 692, 1768, 0, 693, 694, 695, 696, 697, 785,
1769, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
1770, 1771, 1772, 1773, 717, 1774, 1775, 1776, 1777, 722,
786, 723, 724, 0, 1778, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3104, 3105, 0, 0,
0, 0, 0, 0, 0, 1782, 809, 740, 741, 742,
743, 744, 745, 746, 0, 747, 748, 0, 0, 749,
750, 751, 752, 753, 754, 810, 755, 756, 757, 811,
0, 758, 759, 760, 761, 812, 813, 762, 763, 764,
0, 765, 814, 815, 766, 767, 0, 0, 0, 768,
769, 0, 0, 0, 0, 770, 0, 0, 0, 0,
0, 0, 0, 0, 771, 0, 772, 0, 773, 774,
35, 339, 0, 0, 37, 0, 38, 39, 0, 1707,
1708, 1709, 40, 1710, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
0, 349, 350, 351, 0, 0, 0, 0, 1711, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 359,
360, 361, 362, 363, 1712, 365, 1713, 1714, 0, 368,
369, 370, 371, 372, 373, 374, 1715, 1716, 375, 376,
1717, 1718, 378, 0, 379, 380, 381, 382, 1719, 0,
1720, 0, 385, 386, 387, 388, 389, 390, 391, 392,
393, 777, 0, 394, 395, 396, 397, 398, 399, 0,
400, 401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726,
1727, 406, 407, 408, 409, 779, 410, 1728, 1729, 413,
1730, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 1535,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 1731, 442, 443, 444, 445,
1732, 1733, 447, 0, 448, 449, 450, 1734, 452, 0,
453, 0, 454, 455, 456, 0, 457, 458, 459, 460,
461, 0, 462, 1735, 0, 1736, 465, 466, 0, 467,
468, 781, 469, 470, 471, 472, 473, 474, 475, 0,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
485, 486, 0, 487, 488, 489, 1538, 1737, 0, 1738,
0, 492, 493, 494, 495, 496, 497, 1739, 1740, 1741,
1742, 502, 503, 504, 505, 506, 507, 0, 0, 508,
1743, 510, 511, 512, 0, 513, 514, 515, 1744, 1745,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 782, 527, 528, 783, 529, 530, 531, 1746, 533,
1747, 535, 536, 537, 538, 539, 540, 541, 542, 1748,
544, 1749, 545, 546, 547, 548, 1750, 1751, 550, 1752,
552, 553, 554, 0, 555, 556, 0, 0, 1753, 558,
559, 0, 0, 560, 561, 562, 563, 564, 565, 1754,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 1755, 580, 581, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
1756, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 615, 616, 617, 618, 619, 620, 1757, 622,
623, 624, 625, 626, 627, 628, 629, 784, 630, 0,
631, 632, 633, 634, 635, 1758, 637, 638, 639, 640,
641, 642, 643, 644, 1759, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
1760, 661, 0, 662, 663, 1761, 0, 664, 665, 666,
667, 668, 669, 670, 0, 671, 1762, 1763, 0, 0,
675, 676, 1764, 678, 1765, 1766, 680, 681, 682, 683,
684, 685, 686, 687, 0, 1767, 688, 689, 690, 691,
692, 1768, 0, 693, 694, 695, 696, 697, 785, 1769,
0, 699, 700, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 5722, 1770,
1771, 1772, 1773, 717, 1774, 1775, 1776, 1777, 722, 786,
723, 724, 0, 1778, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1779, 1780, 0, 0, 0,
0, 0, 0, 0, 1782, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
339, 0, 0, 37, 0, 38, 39, 0, 1707, 1708,
1709, 40, 1710, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 1711, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 1712, 365, 1713, 1714, 0, 368, 369,
370, 371, 372, 373, 374, 1715, 1716, 375, 376, 1717,
1718, 378, 0, 379, 380, 381, 382, 1719, 0, 1720,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727,
406, 407, 408, 409, 779, 410, 1728, 1729, 413, 1730,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 1535, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 1731, 442, 443, 444, 445, 1732,
1733, 447, 0, 448, 449, 450, 1734, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 1735, 0, 1736, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 1538, 1737, 0, 1738, 0,
492, 493, 494, 495, 496, 497, 1739, 1740, 1741, 1742,
502, 503, 504, 505, 506, 507, 0, 0, 508, 1743,
510, 511, 512, 0, 513, 514, 515, 1744, 1745, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 1746, 533, 1747,
535, 536, 537, 538, 539, 540, 5734, 542, 1748, 544,
1749, 545, 546, 547, 548, 1750, 1751, 550, 1752, 552,
553, 554, 0, 555, 556, 0, 0, 1753, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 1754, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 1755, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 1756,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 1757, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 1758, 637, 638, 639, 640, 641,
642, 643, 644, 1759, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 1760,
661, 0, 662, 663, 1761, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 1762, 1763, 0, 0, 675,
676, 1764, 678, 1765, 1766, 680, 681, 682, 683, 684,
685, 686, 687, 0, 1767, 688, 689, 690, 691, 692,
1768, 0, 693, 694, 695, 696, 697, 785, 1769, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 1770, 1771,
1772, 1773, 717, 1774, 1775, 1776, 1777, 722, 786, 723,
724, 0, 1778, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1779, 1780, 0, 0, 0, 0,
0, 0, 0, 1782, 809, 740, 741, 742, 743, 744,
745, 746, 0, 747, 748, 0, 0, 749, 750, 751,
752, 753, 754, 810, 755, 756, 757, 811, 0, 758,
759, 760, 761, 812, 813, 762, 763, 764, 0, 765,
814, 815, 766, 767, 0, 0, 0, 768, 769, 0,
0, 0, 0, 770, 0, 0, 0, 0, 0, 0,
0, 0, 771, 0, 772, 0, 773, 774, 35, 339,
0, 0, 37, 0, 38, 39, 0, 1707, 1708, 1709,
40, 1710, 0, 0, 0, 0, 0, 0, 0, 340,
341, 342, 343, 344, 345, 346, 347, 348, 0, 349,
350, 351, 0, 0, 0, 0, 1711, 0, 0, 352,
353, 354, 0, 355, 356, 357, 358, 359, 360, 361,
362, 363, 1712, 365, 1713, 1714, 0, 368, 369, 370,
371, 372, 373, 374, 1715, 1716, 375, 376, 1717, 1718,
378, 0, 379, 380, 381, 382, 1719, 0, 1720, 0,
385, 386, 387, 388, 389, 390, 391, 392, 393, 777,
0, 394, 395, 396, 397, 398, 399, 0, 400, 401,
6287, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 406,
407, 408, 409, 779, 410, 1728, 1729, 413, 1730, 414,
0, 415, 416, 417, 418, 419, 420, 421, 0, 422,
423, 424, 425, 0, 0, 426, 427, 1535, 429, 430,
0, 431, 432, 433, 0, 434, 435, 436, 0, 437,
438, 439, 440, 1731, 442, 443, 444, 445, 1732, 1733,
447, 0, 448, 449, 450, 1734, 452, 0, 453, 0,
454, 455, 456, 0, 457, 458, 459, 460, 461, 0,
462, 1735, 0, 6288, 465, 466, 0, 467, 468, 781,
469, 470, 471, 472, 473, 474, 475, 0, 476, 477,
478, 479, 480, 481, 482, 483, 0, 484, 485, 486,
0, 487, 488, 489, 1538, 1737, 0, 1738, 0, 492,
493, 494, 495, 496, 497, 1739, 1740, 1741, 1742, 502,
503, 504, 505, 506, 507, 0, 0, 508, 1743, 510,
511, 512, 0, 513, 514, 515, 1744, 1745, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 782,
527, 528, 783, 529, 530, 531, 1746, 533, 1747, 535,
536, 537, 538, 539, 540, 541, 542, 1748, 544, 1749,
545, 546, 547, 548, 1750, 1751, 550, 1752, 552, 553,
554, 0, 555, 556, 0, 0, 1753, 558, 559, 0,
0, 560, 561, 562, 563, 564, 565, 1754, 567, 568,
569, 570, 571, 572, 573, 574, 575, 576, 0, 577,
578, 1755, 580, 581, 582, 583, 584, 0, 585, 586,
587, 588, 589, 590, 591, 592, 593, 594, 1756, 596,
597, 598, 599, 0, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 0, 613, 614,
615, 616, 617, 6289, 619, 620, 1757, 622, 623, 624,
625, 626, 627, 628, 629, 784, 630, 0, 631, 632,
633, 634, 635, 1758, 637, 638, 639, 640, 641, 642,
643, 644, 1759, 646, 0, 647, 648, 649, 650, 651,
652, 653, 654, 655, 656, 657, 658, 659, 1760, 661,
0, 662, 663, 1761, 0, 664, 665, 666, 667, 668,
669, 670, 0, 671, 1762, 1763, 0, 0, 675, 676,
1764, 678, 1765, 1766, 680, 681, 682, 683, 684, 685,
686, 687, 0, 1767, 688, 689, 690, 691, 692, 1768,
0, 693, 694, 695, 696, 697, 785, 1769, 0, 699,
700, 701, 702, 703, 704, 0, 0, 705, 0, 0,
706, 707, 708, 709, 710, 711, 712, 1770, 1771, 1772,
1773, 717, 1774, 1775, 1776, 1777, 722, 786, 723, 724,
0, 1778, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1779, 1780, 0, 0, 0, 0, 0,
0, 0, 6290, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 339, 0,
0, 37, 0, 38, 39, 0, 1707, 1708, 1709, 40,
1710, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 1711, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
-3597, 1712, 365, 1713, 1714, 0, 368, 369, 370, 371,
372, 373, 374, 1715, 1716, 375, 376, 1717, 1718, 378,
0, 379, 380, 381, 382, 1719, 0, 1720, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
6452, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407,
408, 409, 779, 410, 1728, 1729, 413, 1730, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 1535, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 1731, 442, 443, 444, 445, 1732, 1733, 447,
0, 448, 449, 450, 1734, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
1735, 0, 1736, 465, 466, 0, 467, 468, 781, 469,
470, -3597, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 1538, 1737, 0, 1738, 0, 492, 0,
0, 495, 496, 497, 1739, 1740, 1741, 1742, 502, 503,
504, 505, 506, 507, 0, 0, 508, 1743, 510, 511,
-3597, 0, 513, 514, 515, 1744, 1745, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 1746, 533, 1747, 535, 536,
537, 538, 539, 540, 541, 542, 1748, 544, 1749, 545,
546, 0, 548, 1750, 1751, 550, 1752, 552, 553, 554,
0, 555, 556, 0, 0, 1753, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 1754, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
1755, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 1756, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 1757, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 1758, 637, 638, 639, 640, 641, -3597, 643,
644, 1759, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 1760, 661, 0,
662, 663, 1761, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 1762, 1763, 0, 0, 675, 676, 1764,
678, 1765, 1766, 680, 681, 682, 683, 684, 6453, 686,
687, 0, 1767, 688, 689, 690, 691, 692, 1768, 0,
693, 694, 695, 696, 697, 785, 1769, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 1770, 1771, 1772, 1773,
717, 1774, 1775, 1776, 1777, 722, 786, 723, 724, 0,
-3597, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1779, 1780, 0, 0, 0, 0, 0, 0,
0, 1782, 809, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 810, 755, 756, 757, 811, 0, 758, 759, 760,
761, 812, 813, 762, 763, 764, 0, 765, 814, 815,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 38, 39, 0, 1707, 1708, 1709, 40, 1710,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 1711, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 359, 360, 361, 362, 363,
1712, 365, 1713, 1714, 0, 368, 369, 370, 371, 372,
373, 374, 1715, 1716, 375, 376, 1717, 1718, 378, 0,
379, 380, 381, 382, 1719, 0, 1720, 0, 385, 386,
387, 388, 389, 390, 391, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 400, 401, 402, 0,
1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408,
409, 779, 410, 1728, 1729, 413, 6272, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 1535, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 1731, 442, 443, 444, 445, 1732, 1733, 447, 0,
448, 449, 450, 1734, 452, 0, 453, 0, 454, 455,
456, 0, 457, 458, 459, 460, 461, 0, 462, 1735,
0, 1736, 465, 466, 0, 467, 468, 781, 469, 470,
471, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 485, 486, 0, 487,
488, 489, 1538, 1737, 0, 1738, 0, 492, 493, 494,
495, 496, 497, 1739, 1740, 1741, 1742, 502, 503, 504,
505, 506, 507, 0, 0, 508, 1743, 510, 511, 512,
0, 513, 514, 515, 1744, 1745, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 1746, 533, 1747, 535, 536, 537,
538, 539, 540, 541, 542, 1748, 544, 0, 545, 546,
547, 548, 1750, 1751, 550, 1752, 552, 553, 554, 0,
555, 556, 0, 0, 1753, 558, 559, 0, 0, 560,
561, 562, 563, 564, 565, 1754, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 1755,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 1756, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 615, 616,
617, 618, 619, 620, 3782, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 1758, 637, 638, 639, 640, 641, 642, 643, 644,
1759, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 1760, 661, 0, 662,
663, 1761, 0, 664, 665, 666, 667, 668, 669, 670,
0, 671, 1762, 1763, 0, 0, 675, 676, 1764, 678,
1765, 1766, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 1768, 0, 693,
694, 695, 696, 697, 785, 1769, 0, 699, 700, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 1770, 1771, 1772, 1773, 717,
1774, 1775, 1776, 1777, 722, 786, 723, 724, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3783, 3784, 0, 0, 0, 0, 0, 0, 0,
3785, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 339, 0, 0, 37,
0, 38, 39, 0, 1707, 1708, 1709, 40, 1710, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 1711, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 1712,
365, 1713, 1714, 0, 368, 369, 370, 371, 372, 373,
374, 1715, 1716, 375, 376, 1717, 1718, 378, 0, 379,
380, 381, 382, 1719, 0, 1720, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 1721,
1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409,
779, 410, 1728, 1729, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
1731, 442, 443, 444, 445, 1732, 1733, 447, 0, 448,
449, 450, 1734, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 1735, 0,
1736, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 1538, 1737, 0, 1738, 0, 492, 493, 494, 495,
496, 497, 1739, 1740, 1741, 1742, 502, 503, 504, 505,
506, 507, 0, 0, 508, 1743, 510, 511, 512, 0,
513, 514, 515, 1744, 1745, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1746, 533, 1747, 535, 536, 537, 538,
539, 540, 541, 542, 1748, 544, 0, 545, 546, 547,
548, 1750, 1751, 550, 1752, 552, 553, 554, 0, 555,
556, 0, 0, 1753, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 1754, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 1755, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1756, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 3782, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
1758, 637, 638, 639, 640, 641, 642, 643, 644, 1759,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 1760, 661, 0, 662, 663,
1761, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1762, 1763, 0, 0, 675, 676, 1764, 678, 1765,
1766, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 1768, 0, 693, 694,
695, 696, 697, 785, 1769, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774,
1775, 1776, 1777, 722, 786, 723, 724, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3783, 3784, 0, 0, 0, 0, 0, 0, 0, 3785,
809, 740, 741, 742, 743, 744, 745, 746, 0, 747,
748, 0, 0, 749, 750, 751, 752, 753, 754, 810,
755, 756, 757, 811, 0, 758, 759, 760, 761, 812,
813, 762, 763, 764, 0, 765, 814, 815, 766, 767,
0, 0, 0, 768, 769, 0, 0, 0, 0, 770,
0, 0, 0, 0, 0, 0, 0, 0, 771, 0,
772, 0, 773, 774, 35, 339, 0, 0, 37, 0,
38, 39, 0, 1707, 1708, 0, 40, 1710, 0, 0,
0, 0, 0, 0, 0, 340, 341, 342, 343, 344,
345, 346, 347, 348, 0, 349, 350, 351, 0, 0,
0, 0, 1711, 0, 0, 352, 353, 354, 0, 355,
356, 357, 358, 359, 360, 361, 362, 363, 1712, 365,
1713, 1714, 0, 368, 369, 370, 371, 372, 373, 374,
1715, 1716, 375, 376, 1717, 1718, 378, 0, 379, 380,
381, 382, 1719, 0, 1720, 0, 385, 386, 387, 388,
389, 390, 391, 392, 393, 777, 0, 394, 395, 396,
397, 398, 399, 0, 400, 401, 402, 0, 1721, 1722,
1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409, 779,
410, 1728, 1729, 413, 0, 414, 0, 415, 416, 417,
418, 419, 420, 421, 0, 422, 423, 424, 425, 0,
0, 426, 427, 1535, 429, 430, 0, 431, 432, 433,
0, 434, 435, 436, 0, 437, 438, 439, 440, 1731,
442, 443, 444, 445, 1732, 1733, 447, 0, 448, 449,
450, 1734, 452, 0, 453, 0, 454, 455, 456, 0,
457, 458, 459, 460, 461, 0, 462, 1735, 0, 1736,
465, 466, 0, 467, 468, 781, 469, 470, 471, 472,
473, 474, 475, 0, 476, 477, 478, 479, 480, 481,
482, 483, 0, 484, 485, 486, 0, 487, 488, 489,
1538, 1737, 0, 1738, 0, 492, 493, 494, 495, 496,
497, 1739, 1740, 1741, 1742, 502, 503, 504, 505, 506,
507, 0, 0, 508, 1743, 510, 511, 512, 0, 513,
514, 515, 1744, 1745, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 782, 527, 528, 783, 529,
530, 531, 1746, 533, 1747, 535, 536, 537, 538, 539,
540, 541, 542, 1748, 544, 0, 545, 546, 547, 548,
1750, 1751, 550, 1752, 552, 553, 554, 0, 555, 556,
0, 0, 557, 558, 559, 0, 0, 560, 561, 562,
563, 564, 565, 1754, 567, 568, 569, 570, 571, 572,
573, 574, 575, 576, 0, 577, 578, 1755, 580, 581,
582, 583, 584, 0, 585, 586, 587, 588, 589, 590,
591, 592, 593, 594, 1756, 596, 597, 598, 599, 0,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 0, 613, 614, 615, 616, 617, 618,
619, 620, 3926, 3927, 623, 624, 625, 626, 627, 628,
629, 784, 630, 0, 631, 632, 633, 634, 635, 1758,
637, 638, 639, 640, 641, 642, 643, 644, 1759, 646,
0, 647, 648, 649, 650, 651, 652, 653, 654, 655,
656, 657, 658, 659, 1760, 661, 0, 662, 663, 1761,
0, 664, 665, 666, 667, 668, 669, 670, 0, 671,
1762, 1763, 0, 0, 675, 676, 1764, 678, 1765, 1766,
680, 681, 682, 683, 684, 685, 686, 687, 0, 0,
688, 689, 690, 691, 692, 1768, 0, 693, 694, 695,
696, 697, 785, 1769, 0, 699, 700, 701, 702, 703,
704, 0, 0, 705, 0, 0, 706, 707, 708, 709,
710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775,
1776, 1777, 722, 786, 723, 724, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3928,
3929, 0, 0, 0, 0, 0, 0, 0, 3785, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 339, 0, 0, 37, 0, 38,
39, 0, 1707, 1708, 0, 40, 1710, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 1711, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 1712, 365, 1713,
1714, 0, 368, 369, 370, 371, 372, 373, 374, 1715,
1716, 375, 376, 1717, 1718, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
1728, 1729, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 1731, 442,
443, 444, 445, 1732, 1733, 447, 0, 448, 449, 450,
1734, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 1736, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 1538,
1737, 0, 1738, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1746, 533, 1747, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 0, 545, 546, 547, 548, 1750,
1751, 550, 1752, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1756, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 3782, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 1759, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1762,
1763, 0, 0, 675, 676, 1764, 678, 1765, 1766, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 1769, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 3785, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
339, 0, 0, 37, 0, 38, 39, 0, 1707, 1708,
0, 40, 1710, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 1711, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 1712, 365, 1713, 1714, 0, 368, 5234,
370, 371, 372, 373, 374, 1715, 1716, 375, 376, 1717,
1718, 378, 0, 379, 380, 381, 382, 1719, 0, 1720,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727,
406, 407, 408, 409, 779, 410, 1728, 1729, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 1535, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 1731, 442, 443, 444, 445, 1732,
1733, 447, 0, 448, 449, 450, 1734, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 1735, 0, 1736, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 1538, 1737, 0, 1738, 0,
492, 493, 494, 495, 496, 497, 1739, 1740, 1741, 1742,
502, 503, 504, 505, 506, 507, 0, 0, 508, 1743,
510, 511, 512, 0, 513, 514, 515, 1744, 1745, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 1746, 533, 1747,
535, 536, 537, 538, 539, 540, 541, 542, 1748, 544,
0, 545, 546, 547, 548, 1750, 1751, 550, 1752, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 1754, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 1755, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 1756,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 3782, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 1758, 637, 638, 639, 640, 641,
642, 643, 644, 1759, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 1760,
661, 0, 662, 663, 1761, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 1762, 1763, 0, 0, 675,
676, 1764, 678, 1765, 1766, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
1768, 0, 693, 694, 695, 696, 697, 785, 1769, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 1770, 1771,
1772, 1773, 717, 1774, 1775, 1776, 1777, 722, 786, 723,
724, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 3785, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 339, 0, 0, 37,
0, 38, 39, 0, 1707, 1708, 0, 40, 1710, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 1711, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 1712,
365, 1713, 1714, 0, 368, 369, 370, 371, 372, 373,
374, 1715, 1716, 375, 376, 1717, 1718, 378, 0, 379,
380, 381, 382, 1719, 0, 1720, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 1721,
1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409,
779, 410, 1728, 1729, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
1731, 442, 443, 444, 445, 1732, 1733, 447, 0, 448,
449, 450, 1734, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 1735, 0,
1736, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 1538, 1737, 0, 1738, 0, 492, 493, 494, 495,
496, 497, 1739, 1740, 1741, 1742, 502, 503, 504, 505,
506, 507, 0, 0, 508, 1743, 510, 511, 512, 0,
513, 514, 515, 1744, 1745, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1746, 533, 1747, 535, 536, 537, 538,
539, 540, 541, 542, 1748, 544, 0, 545, 546, 547,
548, 1750, 1751, 550, 1752, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 1754, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 1755, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1756, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 3782, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
1758, 637, 638, 639, 640, 641, 642, 643, 644, 1759,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 1760, 661, 0, 662, 663,
1761, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1762, 1763, 0, 0, 675, 676, 1764, 678, 1765,
1766, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 1768, 0, 693, 694,
695, 696, 697, 785, 1769, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 1770, 1771, 1772, 1773, 5765, 1774,
1775, 1776, 1777, 722, 786, 723, 724, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 3785,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 1716, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 1719,
0, 1720, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 1721, 1722, 1723, 1724, 1725,
1726, 1727, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 1732, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 1735, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 493, 494, 495, 496, 497, 1739, 1740,
1741, 1742, 502, 503, 504, 505, 506, 507, 4677, 0,
508, 1743, 510, 511, 512, 0, 513, 514, 515, 1744,
1745, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
1748, 544, 0, 545, 546, 547, 548, 0, 1751, 550,
551, 552, 553, 554, 0, 555, 556, 0, 1220, 557,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
1754, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 1755, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 621,
4678, 623, 624, 625, 626, 627, 628, 629, 784, 630,
146, 631, 632, 633, 634, 635, 1758, 637, 638, 639,
640, 641, 642, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 1760, 661, 0, 662, 663, 1761, 150, 664, 665,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 1764, 678, 1765, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 1768, 0, 693, 694, 695, 696, 697, 2538,
698, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 159, 706, 707, 708, 709, 710, 711, 712,
1770, 1771, 1772, 1773, 717, 1774, 1775, 1776, 1777, 4679,
786, 723, 724, 0, 0, 0, 160, 0, 0, 0,
0, 0, 0, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 4680, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 1716, 375, 376, 776, 377, 378,
0, 379, 380, 381, 382, 1719, 0, 1720, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 406, 407,
408, 409, 779, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 1732, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
1735, 0, 464, 465, 466, 0, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 493,
494, 495, 496, 497, 1739, 1740, 1741, 1742, 502, 503,
504, 505, 506, 507, 4677, 0, 508, 1743, 510, 511,
512, 0, 513, 514, 515, 1744, 1745, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 1748, 544, 0, 545,
546, 547, 548, 0, 1751, 550, 551, 552, 553, 554,
0, 555, 556, 0, 1220, 557, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 1754, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
1755, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 621, 4678, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 1758, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 1760, 661, 0,
662, 663, 1761, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 1764,
678, 1765, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 1768, 0,
693, 694, 695, 696, 697, 785, 698, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 1770, 1771, 1772, 1773,
717, 1774, 1775, 1776, 1777, 4679, 786, 723, 724, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 4680, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
1716, 375, 376, 776, 377, 378, 0, 379, 380, 381,
382, 1719, 0, 1720, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 1721, 1722, 1723,
1724, 1725, 1726, 1727, 406, 407, 408, 409, 779, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 1732, 0, 447, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 1735, 0, 464, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 493, 494, 495, 496, 497,
1739, 1740, 1741, 1742, 502, 503, 504, 505, 506, 507,
0, 0, 508, 1743, 510, 511, 512, 0, 513, 514,
515, 1744, 1745, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 1748, 544, 0, 545, 546, 547, 548, 0,
1751, 550, 551, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 1754, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 1755, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 1758, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 1760, 661, 0, 662, 663, 1761, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 672,
673, 0, 0, 675, 676, 1764, 678, 1765, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 1768, 0, 693, 694, 695, 696,
697, 785, 698, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 1770, 1771, 1772, 1773, 717, 1774, 1775, 1776,
1777, 722, 786, 723, 724, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 4360, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 0, 368, 369,
370, 371, 372, 373, 374, 0, 1716, 375, 376, 776,
377, 378, 0, 379, 380, 381, 382, 1719, 0, 1720,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727,
406, 407, 408, 409, 779, 410, 411, 412, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 428, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 441, 442, 443, 444, 445, 1732,
0, 447, 0, 448, 449, 450, 451, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 1735, 0, 464, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 0, 490, 0, 491, 0,
492, 493, 494, 495, 496, 497, 1739, 1740, 1741, 1742,
502, 503, 504, 505, 506, 507, 0, 0, 508, 1743,
510, 511, 512, 0, 513, 514, 515, 1744, 1745, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 1748, 544,
0, 545, 546, 547, 548, 0, 1751, 550, 551, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 1754, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 1755, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 621, 4678, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 1758, 637, 638, 639, 640, 641,
642, 643, 644, 645, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 1760,
661, 0, 662, 663, 1761, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 672, 673, 0, 0, 675,
676, 1764, 678, 1765, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
1768, 0, 693, 694, 695, 696, 697, 785, 698, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 1770, 1771,
1772, 1773, 717, 1774, 1775, 1776, 1777, 4679, 786, 723,
724, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 161, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 1716, 375, 376, 776, 377, 378, 0, 379,
380, 381, 382, 1719, 0, 1720, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 1721,
1722, 1723, 1724, 1725, 1726, 1727, 406, 407, 408, 409,
779, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 1732, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 1735, 0,
464, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 493, 494, 495,
496, 497, 1739, 1740, 1741, 1742, 502, 503, 504, 505,
506, 507, 0, 0, 508, 1743, 510, 511, 512, 0,
513, 514, 515, 1744, 1745, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
539, 540, 541, 542, 1748, 544, 0, 545, 546, 547,
548, 0, 1751, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 1754, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 1755, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
1758, 637, 638, 639, 640, 641, 642, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 1760, 661, 0, 662, 663,
1761, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 1764, 678, 1765,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 1768, 0, 693, 694,
695, 696, 697, 785, 698, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 1770, 1771, 1772, 1773, 717, 1774,
1775, 1776, 1777, 722, 786, 723, 724, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 5366,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 1716, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 1719,
0, 1720, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 1721, 1722, 1723, 1724, 1725,
1726, 1727, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 1732, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 1735, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 493, 494, 495, 496, 497, 1739, 1740,
1741, 1742, 502, 503, 504, 505, 506, 507, 0, 0,
508, 1743, 510, 511, 512, 0, 513, 514, 515, 1744,
1745, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
1748, 544, 0, 545, 546, 547, 548, 0, 1751, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
1754, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 1755, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 1758, 637, 638, 639,
640, 641, 642, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 1760, 661, 0, 662, 663, 1761, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 1764, 678, 1765, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 1768, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
1770, 1771, 1772, 1773, 717, 1774, 1775, 1776, 1777, 722,
786, 723, 724, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 6558, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 776, 377, 378,
0, 379, 380, 381, 382, 383, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 0, 404, 0, 0, 0, 406, 407,
408, 409, 779, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 493,
494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 547, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 785, 698, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 786, 723, 724, 740,
741, 742, 743, 744, 745, 746, 0, 747, 748, 0,
0, 749, 750, 751, 752, 753, 754, 0, 755, 756,
757, 6111, 0, 758, 759, 760, 761, 0, 0, 762,
763, 764, 0, 765, 0, 0, 766, 767, 0, 0,
0, 768, 769, 0, 0, 0, 0, 770, 0, 0,
0, 0, 0, 0, 0, 0, 771, 0, 772, 0,
773, 774, 35, 0, 0, 0, 37, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 340, 341, 342, 343, 344, 345, 346,
347, 348, 0, 349, 350, 351, 0, 0, 0, 0,
0, 5292, 0, 352, 353, 354, 0, 355, 356, 357,
358, 0, 360, 361, 362, 363, 364, 0, 366, 367,
0, 368, 369, 370, 371, 372, 373, 374, 0, 0,
375, 376, 776, 377, 378, 0, 379, 380, 381, 382,
383, 0, 0, 0, 385, 386, 387, 388, 389, 390,
0, 392, 393, 777, 0, 394, 395, 396, 397, 398,
399, 0, -1826, 401, 402, 0, 0, 0, 0, 0,
0, 0, 0, 406, 407, 408, 409, 779, 410, 411,
412, 413, 0, 414, 0, 415, 416, 417, 418, 419,
420, 421, 0, 422, 423, 424, 425, 0, 0, 426,
427, 428, 429, 430, 0, 431, 432, 433, 0, 434,
435, 436, 0, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 0, 447, 0, 448, 449, 450, 451,
452, 0, 453, 0, 454, 455, 0, 0, -1826, 458,
459, 460, 461, 0, 462, 463, 0, 464, 465, 466,
0, 467, 468, 781, 469, 470, 0, 472, 473, 474,
475, 0, 476, 477, 478, 479, 480, 481, 482, 483,
0, 484, -1826, 486, 0, 487, 488, 489, 0, 490,
0, 491, 0, 492, 0, 0, 495, -1826, 497, 498,
499, 500, 501, 502, 503, 504, 505, 506, 507, 0,
0, 508, 509, -1826, 511, 0, 0, 513, 514, 515,
0, 0, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 782, 527, 528, 783, 529, 530, 531,
532, -1826, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 0, 545, 546, 0, 548, 0, 549,
550, 551, 552, 553, 554, 0, 555, 556, 0, 0,
557, 558, 559, 0, 0, 560, 561, 562, 0, 564,
0, 566, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 0, 577, 578, 579, 580, 581, 582, 583,
584, 0, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 595, 596, 597, 598, 599, 0, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 0, 613, 614, -1826, 616, 617, 618, 619, 620,
621, 622, 623, 624, 625, 626, 627, 628, 629, 784,
630, 0, 631, 632, 633, 634, 635, 0, 637, 638,
639, 640, 641, 0, 643, 644, 645, 646, 0, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 660, 661, 0, 662, 663, 0, 0, 664,
0, 666, 667, 668, 669, 670, 0, 671, 672, 673,
0, 0, 675, 676, 677, 678, 679, 0, 680, 681,
682, 683, 684, 685, 686, 687, 0, 0, 688, 689,
690, 691, 692, 0, 0, 693, 694, 695, 696, 697,
785, 698, 0, 699, 0, 701, 702, 703, 704, 0,
0, 705, 0, 0, 706, 707, 708, 709, 710, 711,
712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
722, 786, 723, 724, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 0, 755, 756, 757, 0, 1870, 758, 759,
760, 761, 0, 0, 762, 763, 764, 0, 765, 0,
0, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 339, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 0, 360, 361, 362,
363, 364, 0, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 776, 377, 378,
0, 379, 380, 381, 382, 383, 0, 0, 0, 385,
386, 387, 388, 389, 390, 0, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 0, 401, 402,
0, 0, 0, 0, 0, 0, 0, 0, 406, 407,
408, 409, 779, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 0, 0, 0, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 781, 469,
470, 0, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 0, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 0,
0, 495, 0, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 0, 511,
0, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 0, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 0, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 0, 564, 0, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 0,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 146, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 0, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 150, 664, 0, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 2538, 698, 0, 699, 0,
701, 702, 703, 704, 0, 0, 705, 0, 159, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 786, 723, 724, 0,
0, 0, 160, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 161, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 146, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 150, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 2538, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 159, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 0, 0,
0, 160, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
161, 755, 756, 757, 0, 0, 758, 759, 760, 761,
0, 0, 762, 763, 764, 0, 765, 0, 0, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 0, 360, 361, 362, 363, 364,
0, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 776, 377, 378, 0, 379,
380, 381, 382, 383, 0, 0, 0, 385, 386, 387,
388, 389, 390, 0, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 0, 401, 402, 0, 0,
0, 0, 3344, 0, 0, 0, 406, 407, 408, 409,
779, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 0,
0, 0, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 781, 469, 470, 0,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 0, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 0, 0, 495,
0, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 0, 511, 0, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 532, 0, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 0,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 1220, 557, 558, 559, 0, 0, 560, 561,
562, 0, 564, 0, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 0, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 639, 640, 641, 0, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 3345, 3346, 0, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 785, 698, 0, 699, 0, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 786, 723, 724, 740, 741, 742,
743, 744, 745, 746, 0, 747, 748, 0, 0, 749,
750, 751, 752, 753, 754, 0, 755, 756, 757, 2246,
0, 758, 759, 760, 761, 0, 0, 762, 763, 764,
0, 765, 0, 0, 766, 767, 0, 0, 0, 768,
769, 0, 0, 0, 0, 770, 0, 0, 0, 0,
0, 0, 0, 0, 771, 0, 772, 0, 773, 774,
35, 0, 0, 0, 37, 0, 0, 39, 0, 0,
0, 0, 40, 0, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
0, 349, 350, 351, 0, 0, 0, 0, 0, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 0,
360, 361, 362, 363, 364, 0, 366, 367, 0, 368,
369, 370, 371, 372, 373, 374, 0, 0, 375, 376,
776, 377, 378, 0, 379, 380, 381, 382, 383, 0,
0, 0, 385, 386, 387, 388, 389, 390, 0, 392,
393, 777, 0, 394, 395, 396, 397, 398, 399, 0,
0, 401, 402, 0, 0, 0, 0, 0, 0, 0,
0, 406, 407, 408, 409, 779, 410, 411, 412, 413,
0, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 428,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 0, 447, 0, 448, 449, 450, 451, 452, 0,
453, 0, 454, 455, 0, 0, 0, 458, 459, 460,
461, 0, 462, 463, 0, 464, 465, 466, 0, 467,
468, 781, 469, 470, 0, 472, 473, 474, 475, 0,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
0, 486, 0, 487, 488, 489, 0, 490, 0, 491,
0, 492, 0, 0, 495, 0, 497, 498, 499, 500,
501, 502, 503, 504, 505, 506, 507, 0, 0, 508,
509, 0, 511, 0, 0, 513, 514, 515, 0, 0,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 782, 527, 528, 783, 529, 530, 531, 532, 0,
534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
544, 0, 545, 546, 0, 548, 0, 549, 550, 551,
552, 553, 554, 0, 555, 556, 0, 0, 557, 558,
559, 0, 0, 560, 561, 562, 0, 564, 0, 566,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 579, 580, 581, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
595, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 0, 616, 617, 618, 619, 620, 621, 622,
623, 624, 625, 626, 627, 628, 629, 784, 630, 0,
631, 632, 633, 634, 635, 0, 637, 638, 639, 640,
641, 0, 643, 644, 645, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
660, 661, 0, 662, 663, 0, 0, 664, 0, 666,
667, 668, 669, 670, 0, 671, 672, 673, 0, 0,
675, 676, 677, 678, 679, 0, 680, 681, 682, 683,
684, 685, 686, 687, 0, 0, 688, 689, 690, 691,
692, 0, 0, 693, 694, 695, 696, 697, 785, 698,
0, 699, 0, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 712, 713,
714, 715, 716, 717, 718, 719, 720, 721, 722, 786,
723, 724, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 4450, 4451, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 39, 0, 0, 0, 0, 40, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
4451, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 1855, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
3960, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 4666, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 809, 740,
741, 742, 743, 744, 745, 746, 0, 747, 748, 0,
5782, 749, 750, 751, 752, 753, 754, 810, 755, 756,
757, 811, 0, 758, 759, 760, 761, 812, 813, 762,
763, 764, 0, 765, 814, 815, 766, 767, 0, 0,
0, 768, 769, 0, 0, 0, 0, 770, 0, 0,
0, 0, 0, 0, 0, 0, 771, 0, 772, 0,
773, 774, 35, 339, 0, 0, 37, 0, 38, 39,
0, 0, 0, 1346, 40, 0, 0, 0, 0, 0,
1347, 1348, 1349, 340, 341, 342, 343, 344, 345, 346,
347, 348, 816, 349, 350, 351, 817, 818, 819, 820,
821, 822, 823, 352, 353, 354, 824, 355, 356, 357,
358, 359, 360, 361, 362, 0, 1528, 365, 1529, 1530,
825, 368, 369, 370, 371, 372, 373, 374, 826, 827,
375, 376, 1531, 1532, 378, 829, 379, 380, 381, 382,
0, 830, 384, 831, 385, 386, 387, 388, 389, 390,
391, 392, 393, 777, 833, 394, 395, 396, 397, 398,
399, 834, 400, 401, 402, 0, 836, 837, 838, 404,
839, 840, 841, 406, 407, 408, 409, 779, 410, 1533,
1534, 413, 842, 414, 843, 415, 416, 417, 418, 419,
420, 421, 844, 422, 423, 424, 425, 845, 846, 426,
427, 1535, 429, 430, 847, 431, 432, 433, 848, 434,
435, 436, 849, 437, 438, 439, 440, 0, 442, 443,
444, 445, 0, 850, 447, 851, 448, 449, 450, 1536,
452, 852, 453, 853, 454, 455, 456, 854, 457, 458,
459, 460, 461, 855, 462, 0, 856, 0, 465, 466,
857, 467, 468, 781, 469, 470, 471, 472, 473, 474,
475, 858, 476, 477, 478, 479, 480, 481, 482, 483,
859, 484, 485, 0, 0, 487, 488, 489, 1538, 1539,
862, 1540, 863, 492, 493, 494, 495, 496, 497, 0,
0, 0, 0, 502, 503, 504, 505, 506, 507, 864,
865, 508, 0, 510, 511, 512, 866, 513, 514, 515,
867, 868, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 782, 527, 528, 783, 529, 530, 531,
1541, 533, 1542, 535, 536, 537, 538, 539, 540, 541,
4985, 0, 544, 869, 545, 546, 547, 548, 870, 0,
550, 1543, 552, 553, 554, 871, 555, 556, 872, 873,
4986, 558, 559, 874, 875, 560, 561, 0, 563, 564,
565, 0, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 876, 577, 578, 0, 580, 0, 582, 583,
584, 877, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 1544, 596, 597, 598, 599, 878, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 879, 613, 614, 615, 616, 617, 618, 619, 620,
0, 622, 623, 624, 625, 626, 627, 628, 629, 784,
630, 880, 631, 632, 633, 634, 635, 881, 637, 638,
3174, 640, 641, 642, 643, 644, 1546, 646, 882, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 0, 661, 883, 662, 663, 884, 885, 664,
665, 666, 667, 668, 669, 670, 886, 671, 1547, 1548,
0, 888, 675, 676, 0, 678, 0, 889, 680, 681,
682, 683, 684, 685, 686, 687, 0, 891, 688, 689,
690, 691, 692, 892, 893, 693, 694, 695, 696, 697,
0, 1549, 895, 699, 700, 701, 702, 703, 704, 896,
897, 705, 898, 899, 706, 707, 708, 709, 710, 711,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 786, 723, 724, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1352, 1353, 1354, 4987, 4988, 1357,
1358, 1359, 1360, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 339, 0,
0, 37, 0, 38, 39, 0, 0, 0, 1346, 40,
0, 0, 0, 0, 0, 1347, 1348, 1349, 340, 341,
342, 343, 344, 345, 346, 347, 348, 816, 349, 350,
351, 817, 818, 819, 820, 821, 822, 823, 352, 353,
354, 824, 355, 356, 357, 358, 359, 360, 361, 362,
0, 1528, 365, 1529, 1530, 825, 368, 369, 370, 371,
372, 373, 374, 826, 827, 375, 376, 1531, 1532, 378,
829, 379, 380, 381, 382, 0, 830, 384, 831, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 833,
394, 395, 396, 397, 398, 399, 834, 400, 401, 402,
0, 836, 837, 838, 404, 839, 840, 841, 406, 407,
408, 409, 779, 410, 1533, 1534, 413, 842, 414, 843,
415, 416, 417, 418, 419, 420, 421, 844, 422, 423,
424, 425, 845, 846, 426, 427, 1535, 429, 430, 847,
431, 432, 433, 848, 434, 435, 436, 849, 437, 438,
439, 440, 0, 442, 443, 444, 445, 0, 850, 447,
851, 448, 449, 450, 1536, 452, 852, 453, 853, 454,
455, 456, 854, 457, 458, 459, 460, 461, 855, 462,
0, 856, 0, 465, 466, 857, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 858, 476, 477, 478,
479, 480, 481, 482, 483, 859, 484, 485, 0, 0,
487, 488, 489, 1538, 1539, 862, 1540, 863, 492, 493,
494, 495, 496, 497, 0, 0, 0, 0, 502, 503,
504, 505, 506, 507, 864, 865, 508, 0, 510, 511,
512, 866, 513, 514, 515, 867, 868, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 1541, 533, 1542, 535, 536,
537, 538, 539, 540, 541, 5460, 0, 544, 869, 545,
546, 547, 548, 870, 0, 550, 1543, 552, 553, 554,
871, 555, 556, 872, 873, 4986, 558, 559, 874, 875,
560, 561, 0, 563, 564, 565, 0, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 876, 577, 578,
0, 580, 0, 582, 583, 584, 877, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 1544, 596, 597,
598, 599, 878, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 879, 613, 614, 615,
616, 617, 618, 619, 620, 0, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 880, 631, 632, 633,
634, 635, 881, 637, 638, 3174, 640, 641, 642, 643,
644, 1546, 646, 882, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 0, 661, 883,
662, 663, 884, 885, 664, 665, 666, 667, 668, 669,
670, 886, 671, 1547, 1548, 0, 888, 675, 676, 0,
678, 0, 889, 680, 681, 682, 683, 684, 685, 686,
687, 0, 891, 688, 689, 690, 691, 692, 892, 893,
693, 694, 695, 696, 697, 0, 1549, 895, 699, 700,
701, 702, 703, 704, 896, 897, 705, 898, 899, 706,
707, 708, 709, 710, 711, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 786, 723, 724, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1352,
1353, 1354, 4987, 4988, 1357, 1358, 1359, 1360, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 1346, 0, 0, 0, 0, 0, 0, 1347,
1348, 1349, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 1350, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 1351, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1352, 1353, 1354, 1355, 1356, 1357, 1358,
1359, 1360, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
0, 755, 756, 757, 0, 0, 758, 759, 760, 761,
0, 0, 762, 763, 764, 0, 765, 0, 0, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 1346, 0, 0, 0,
0, 0, 0, 1347, 1348, 1349, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 0, 360, 361, 362, 363, 364,
0, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 776, 377, 378, 0, 379,
1467, 381, 382, 383, 0, 0, 0, 385, 386, 387,
388, 389, 390, 0, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 0, 401, 402, 0, 0,
0, 0, 0, 0, 0, 0, 406, 407, 408, 409,
779, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 1468, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 0,
0, 0, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 781, 469, 470, 0,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 0, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 0, 0, 495,
0, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 0, 511, 0, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 532, 0, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 0,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 0, 564, 0, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 0, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 639, 640, 641, 0, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 0, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 785, 698, 0, 699, 0, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 786, 723, 724, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1352, 1353, 1354,
1355, 1356, 1357, 1358, 1359, 1360, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 0, 755, 756, 757, 0, 0,
758, 759, 760, 761, 0, 0, 762, 763, 764, 0,
765, 0, 0, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
1346, 0, 0, 0, 0, 0, 0, 1347, 1348, 1349,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 0, 360,
361, 362, 363, 364, 0, 366, 367, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 776,
377, 378, 0, 379, 1580, 381, 382, 383, 0, 0,
0, 385, 386, 387, 388, 389, 390, 0, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 0,
401, 402, 0, 0, 0, 0, 0, 0, 0, 0,
406, 407, 408, 409, 779, 410, 411, 412, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 428, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
0, 1581, 0, 448, 449, 450, 451, 452, 0, 453,
0, 454, 455, 0, 0, 0, 458, 459, 460, 461,
0, 462, 463, 0, 464, 465, 466, 0, 467, 468,
781, 469, 1582, 0, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 0,
486, 0, 487, 488, 489, 0, 490, 0, 491, 0,
492, 0, 0, 495, 0, 497, 498, 499, 500, 501,
502, 503, 504, 505, 506, 507, 0, 0, 508, 509,
0, 511, 0, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 532, 0, 534,
535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
0, 545, 546, 0, 548, 0, 549, 550, 551, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 562, 0, 564, 0, 566, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 579, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 0, 616, 617, 618, 619, 620, 621, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 0, 637, 638, 639, 640, 641,
0, 643, 644, 645, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
661, 0, 662, 663, 0, 0, 664, 0, 666, 667,
668, 669, 670, 0, 671, 672, 673, 0, 0, 675,
676, 677, 678, 679, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 785, 698, 0,
699, 0, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 713, 714,
715, 716, 717, 718, 719, 720, 721, 722, 786, 723,
724, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 0, 755,
756, 757, 0, 0, 758, 759, 760, 761, 0, 0,
762, 763, 764, 0, 765, 0, 0, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 1346, 0, 0, 0, 0, 0,
0, 1347, 1348, 1349, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 0, 360, 361, 362, 363, 364, 0, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 776, 377, 378, 0, 379, 2229, 381,
382, 383, 0, 0, 0, 385, 386, 387, 388, 389,
390, 0, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 0, 401, 402, 0, 0, 0, 0,
0, 0, 0, 0, 406, 407, 408, 409, 779, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 0, 2230, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 0, 0, 0,
458, 459, 460, 461, 0, 462, 463, 0, 464, 465,
466, 0, 467, 468, 781, 469, 470, 0, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 0, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 0, 0, 495, 0, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
0, 0, 508, 509, 0, 511, 0, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 532, 0, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 0, 545, 546, 0, 548, 0,
549, 550, 551, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 0,
564, 0, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 579, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 0, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 639, 640, 641, 0, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 0, 662, 663, 0, 0,
664, 0, 666, 667, 668, 669, 670, 0, 671, 672,
673, 0, 0, 675, 676, 677, 678, 679, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 785, 698, 0, 699, 0, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 786, 723, 724, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1352, 1353, 1354, 1355, 1356,
1357, 1358, 1359, 1360, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 0, 755, 756, 757, 0, 0, 758, 759,
760, 761, 0, 0, 762, 763, 764, 0, 765, 0,
0, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 1346, 0,
0, 0, 0, 0, 0, 1347, 1348, 1349, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 0, 360, 361, 362,
363, 364, 0, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 776, 377, 378,
0, 379, 380, 381, 382, 383, 0, 0, 0, 385,
386, 387, 388, 389, 390, 0, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 0, 401, 402,
0, 0, 0, 0, 0, 0, 0, 0, 406, 407,
408, 409, 779, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 0, 0, 0, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 781, 469,
470, 0, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 0, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 0,
0, 495, 0, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 0, 511,
0, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 0, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 0, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 0, 564, 0, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 0,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 0, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 0, 664, 0, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 785, 698, 0, 699, 0,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 786, 723, 724, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1352,
1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 1346, 0, 0, 0, 0, 0, 0, 1347,
1348, 1349, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 4052, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 4053, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1352, 1353, 1354, 1355, 1356, 1357, 1358,
1359, 1360, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
0, 755, 756, 757, 0, 0, 758, 759, 760, 761,
0, 0, 762, 763, 764, 0, 765, 0, 0, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 1346, 0, 0, 0,
0, 0, 0, 1347, 1348, 1349, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 0, 360, 361, 362, 363, 364,
0, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 776, 377, 378, 0, 379,
380, 381, 382, 383, 0, 0, 0, 385, 386, 387,
388, 389, 390, 0, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 0, 401, 402, 0, 0,
0, 0, 0, 0, 0, 0, 406, 407, 408, 409,
779, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 0,
0, 0, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 781, 469, 470, 0,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 0, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 0, 0, 495,
0, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 0, 511, 0, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 532, 0, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 0,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 6090, 558, 559, 0, 0, 560, 561,
562, 0, 564, 0, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 0, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 639, 640, 641, 0, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 0, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 785, 698, 0, 699, 0, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 786, 723, 724, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1352, 1353, 1354,
1355, 1356, 1357, 1358, 1359, 1360, 809, 740, 741, 742,
743, 744, 745, 746, 0, 747, 748, 0, 0, 749,
750, 751, 752, 753, 754, 810, 755, 756, 757, 811,
0, 758, 759, 760, 761, 812, 813, 762, 763, 764,
0, 765, 814, 815, 766, 767, 0, 0, 0, 768,
769, 0, 0, 0, 0, 770, 0, 0, 0, 0,
0, 0, 0, 0, 771, 0, 772, 0, 773, 774,
35, 0, 0, 0, 37, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
816, 349, 350, 351, 817, 818, 819, 820, 821, 822,
823, 352, 353, 354, 824, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 825, 368,
369, 370, 371, 372, 373, 374, 826, 827, 375, 376,
828, 377, 378, 829, 379, 380, 381, 382, 383, 830,
384, 831, 385, 386, 387, 388, 389, 390, 391, 392,
393, 832, 833, 394, 395, 396, 397, 398, 399, 834,
400, 401, 402, 835, 836, 837, 838, 404, 839, 840,
841, 406, 407, 408, 409, 779, 410, 411, 412, 413,
842, 414, 843, 415, 416, 417, 418, 419, 420, 421,
844, 422, 423, 424, 425, 845, 846, 426, 427, 428,
429, 430, 847, 431, 432, 433, 848, 434, 435, 436,
849, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 850, 447, 851, 448, 449, 450, 451, 452, 852,
453, 853, 454, 455, 456, 854, 457, 458, 459, 460,
461, 855, 462, 463, 856, 464, 465, 466, 857, 467,
468, 781, 469, 470, 471, 472, 473, 474, 475, 858,
476, 477, 478, 479, 480, 481, 482, 483, 859, 484,
485, 486, 860, 487, 488, 489, 861, 490, 862, 491,
863, 492, 493, 494, 495, 496, 497, 498, 499, 500,
501, 502, 503, 504, 505, 506, 507, 864, 865, 508,
509, 510, 511, 512, 866, 513, 514, 515, 867, 868,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 782, 527, 528, 783, 529, 530, 531, 532, 533,
534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
544, 869, 545, 546, 547, 548, 870, 549, 550, 551,
552, 553, 554, 871, 555, 556, 872, 873, 557, 558,
559, 874, 875, 560, 561, 562, 563, 564, 565, 566,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
876, 577, 578, 579, 580, 581, 582, 583, 584, 877,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
595, 596, 597, 598, 599, 878, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 879,
613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
623, 624, 625, 626, 627, 628, 629, 784, 630, 880,
631, 632, 633, 634, 635, 881, 637, 638, 639, 640,
641, 642, 643, 644, 645, 646, 882, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
660, 661, 883, 662, 663, 884, 885, 664, 665, 666,
667, 668, 669, 670, 886, 671, 672, 673, 887, 888,
675, 676, 677, 678, 679, 889, 680, 681, 682, 683,
684, 685, 686, 687, 890, 891, 688, 689, 690, 691,
692, 892, 893, 693, 694, 695, 696, 697, 894, 698,
895, 699, 700, 701, 702, 703, 704, 896, 897, 705,
898, 899, 706, 707, 708, 709, 710, 711, 712, 713,
714, 715, 716, 717, 718, 719, 720, 721, 722, 786,
723, 724, 0, 0, 0, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 2206, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 0, 1528, 365, 1529, 1530, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 1531,
1532, 378, 0, 379, 380, 381, 382, 0, 0, 384,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 0, 0, 0, 404, 0, 0, 0,
406, 407, 408, 409, 779, 410, 1533, 1534, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 1535, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 0, 442, 443, 444, 445, 0,
0, 447, 0, 448, 449, 450, 1536, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 0, 0, 0, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 3170, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
3171, 0, 487, 488, 489, 1538, 1539, 0, 1540, 0,
492, 493, 494, 495, 496, 497, 0, 0, 0, 0,
502, 503, 504, 505, 506, 507, 0, 0, 508, 0,
510, 511, 512, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 1541, 533, 1542,
535, 536, 537, 538, 539, 540, 541, 0, 0, 544,
0, 545, 546, 547, 548, 0, 0, 550, 1543, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 3172, 560, 561, 3173, 563, 564, 565, 0, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 0, 580, 0, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 1544,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 0, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 0, 637, 638, 3174, 640, 641,
642, 643, 644, 1546, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 0,
661, 0, 662, 663, 0, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 1547, 1548, 0, 0, 675,
676, 0, 678, 0, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 0, 1549, 3175,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 786, 723,
724, 0, 0, 0, 0, 740, 741, 742, 743, 744,
745, 746, 0, 747, 748, 0, 3176, 749, 750, 751,
752, 753, 754, 0, 755, 756, 757, 0, 0, 758,
759, 760, 761, 0, 0, 762, 763, 764, 0, 765,
0, 0, 766, 767, 0, 0, 0, 768, 769, 0,
0, 0, 0, 770, 0, 0, 0, 0, 0, 0,
0, 0, 771, 0, 772, 0, 773, 774, 35, 0,
0, 0, 37, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 340,
341, 342, 343, 344, 345, 346, 347, 348, 0, 349,
350, 351, 0, 0, 0, 0, 0, 0, 0, 352,
353, 354, 0, 355, 356, 357, 358, 0, 360, 361,
362, 363, 364, 0, 366, 367, 0, 368, 369, 370,
371, 372, 373, 374, 0, 0, 375, 376, 776, 377,
378, 0, 379, 380, 381, 382, 383, 0, 0, 0,
385, 386, 387, 388, 389, 390, 0, 392, 393, 777,
0, 394, 395, 396, 397, 398, 399, 0, 0, 401,
402, 0, 0, 0, 0, 0, 0, 0, 0, 406,
407, 408, 409, 779, 410, 411, 412, 413, 0, 414,
0, 415, 416, 417, 418, 419, 420, 421, 0, 422,
423, 424, 425, 0, 0, 426, 427, 428, 429, 430,
0, 431, 432, 433, 0, 434, 435, 436, 0, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 0,
447, 0, 448, 449, 450, 451, 452, 0, 453, 0,
454, 455, 0, 0, 0, 458, 459, 460, 461, 0,
462, 463, 0, 464, 465, 466, 0, 467, 468, 781,
469, 470, 0, 472, 473, 474, 475, 0, 476, 477,
478, 479, 480, 481, 482, 483, 0, 484, 0, 486,
0, 487, 488, 489, 0, 490, 0, 491, 0, 492,
0, 0, 495, 0, 497, 498, 499, 500, 501, 502,
503, 504, 505, 506, 507, 0, 0, 508, 509, 0,
511, 0, 0, 513, 514, 515, 0, 0, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 782,
527, 528, 783, 529, 530, 531, 532, 0, 534, 535,
536, 537, 538, 539, 540, 541, 542, 543, 544, 0,
545, 546, 0, 548, 0, 549, 550, 551, 552, 553,
554, 0, 555, 556, 0, 0, 557, 558, 559, 0,
0, 560, 561, 562, 0, 564, 0, 566, 567, 568,
569, 570, 571, 572, 573, 574, 575, 576, 0, 577,
578, 579, 580, 581, 582, 583, 584, 0, 585, 586,
587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
597, 598, 599, 0, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 0, 613, 614,
0, 616, 617, 618, 619, 620, 621, 622, 623, 624,
625, 626, 627, 628, 629, 784, 630, 0, 631, 632,
633, 634, 635, 0, 637, 638, 639, 640, 641, 0,
643, 644, 645, 646, 0, 647, 648, 649, 650, 651,
652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
0, 662, 663, 0, 0, 664, 0, 666, 667, 668,
669, 670, 0, 671, 672, 673, 0, 0, 675, 676,
677, 678, 679, 0, 680, 681, 682, 683, 684, 685,
686, 687, 0, 0, 688, 689, 690, 691, 692, 0,
0, 693, 694, 695, 696, 697, 785, 698, 0, 699,
0, 701, 702, 703, 704, 0, 0, 705, 0, 0,
706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
716, 717, 718, 719, 720, 721, 722, 786, 723, 724,
0, 0, 0, 0, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 1228, 749, 750, 751, 752,
753, 754, 0, 755, 756, 757, 0, 0, 758, 759,
760, 761, 0, 0, 762, 763, 764, 0, 765, 0,
0, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 0, 360, 361, 362,
363, 364, 0, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 776, 377, 378,
0, 379, 380, 381, 382, 383, 0, 0, 0, 385,
386, 387, 388, 389, 390, 0, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 0, 401, 402,
0, 0, 0, 0, 0, 0, 0, 0, 406, 407,
408, 409, 779, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 0, 0, 0, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 781, 469,
470, 0, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 0, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 0,
0, 495, 0, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 0, 511,
0, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 0, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 0, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 0, 564, 0, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 0,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 0, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 0, 664, 0, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 785, 698, 0, 699, 0,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 786, 723, 724, 0,
0, 0, 0, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 6528, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 40, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 1120,
343, 344, 345, 346, 347, 348, 1121, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 1122, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 1123, 451, 452, 0, 453, 0, 454, 1124,
0, 1125, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 1126, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 1127, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 1128, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 1129, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 1130, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 0, 0,
0, 740, 741, 742, 743, 744, 745, 746, 0, 747,
748, 1131, 1132, 749, 750, 751, 752, 753, 754, 0,
755, 756, 757, 0, 0, 758, 759, 760, 761, 0,
0, 762, 763, 764, 0, 765, 0, 0, 766, 767,
0, 0, 0, 768, 769, 0, 0, 0, 0, 770,
0, 0, 0, 0, 0, 0, 0, 0, 771, 0,
772, 0, 773, 774, 35, 339, 0, 0, 37, 0,
0, 0, 0, 0, 0, 0, 40, 0, 0, 0,
0, 0, 0, 0, 0, 340, 341, 1120, 343, 344,
345, 346, 347, 348, 1121, 349, 350, 351, 0, 0,
0, 0, 0, 0, 0, 352, 353, 354, 0, 355,
356, 357, 358, 0, 1156, 361, 362, 363, 364, 0,
366, 367, 0, 368, 369, 370, 371, 372, 373, 374,
0, 0, 375, 376, 776, 377, 378, 0, 379, 380,
381, 382, 383, 0, 0, 0, 385, 386, 387, 388,
389, 390, 0, 392, 393, 777, 0, 394, 395, 396,
397, 398, 399, 0, 0, 401, 402, 0, 0, 0,
0, 0, 0, 0, 0, 406, 407, 408, 409, 779,
410, 411, 412, 413, 0, 414, 0, 415, 416, 417,
418, 419, 420, 421, 0, 422, 423, 424, 425, 0,
0, 426, 427, 428, 429, 430, 0, 431, 432, 433,
0, 434, 435, 436, 0, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 0, 447, 0, 448, 449,
1123, 451, 452, 0, 453, 0, 454, 1157, 0, 1125,
0, 458, 459, 460, 461, 0, 462, 463, 0, 464,
465, 466, 0, 467, 468, 781, 469, 470, 0, 472,
473, 474, 475, 1126, 476, 477, 478, 479, 480, 481,
482, 483, 0, 484, 0, 486, 0, 487, 488, 489,
0, 490, 0, 491, 0, 492, 0, 0, 495, 0,
497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
1127, 0, 0, 508, 509, 0, 511, 0, 0, 513,
514, 515, 0, 0, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 782, 527, 528, 783, 529,
530, 531, 532, 0, 534, 535, 1128, 537, 538, 539,
540, 541, 542, 543, 544, 0, 545, 546, 0, 548,
0, 549, 550, 551, 552, 553, 554, 0, 555, 556,
0, 0, 557, 558, 559, 0, 0, 560, 561, 562,
0, 564, 0, 566, 567, 568, 569, 570, 571, 572,
573, 574, 575, 576, 0, 577, 578, 579, 580, 581,
582, 583, 584, 0, 1129, 586, 587, 588, 589, 590,
591, 592, 593, 594, 595, 596, 597, 598, 599, 0,
600, 601, 602, 1130, 604, 605, 606, 607, 608, 609,
610, 611, 612, 0, 613, 614, 0, 616, 617, 618,
619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
629, 784, 630, 0, 631, 632, 633, 634, 635, 0,
637, 638, 639, 640, 641, 0, 643, 644, 645, 646,
0, 647, 648, 649, 650, 651, 652, 653, 654, 655,
656, 657, 658, 659, 660, 661, 0, 662, 663, 0,
0, 664, 0, 666, 667, 668, 669, 670, 0, 671,
672, 673, 0, 0, 675, 676, 677, 678, 679, 0,
680, 681, 682, 683, 684, 685, 686, 687, 0, 0,
688, 689, 690, 691, 692, 0, 0, 693, 694, 695,
696, 697, 785, 698, 0, 699, 0, 701, 702, 703,
704, 0, 0, 705, 0, 0, 706, 707, 708, 709,
710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
720, 721, 722, 786, 723, 724, 0, 0, 0, 740,
741, 742, 743, 744, 745, 746, 0, 747, 748, 1131,
1132, 749, 750, 751, 752, 753, 754, 0, 755, 756,
757, 0, 0, 758, 759, 760, 761, 0, 0, 762,
763, 764, 0, 765, 0, 0, 766, 767, 0, 0,
0, 768, 769, 0, 0, 0, 0, 770, 0, 0,
0, 0, 0, 0, 0, 0, 771, 0, 772, 0,
773, 774, 35, 339, 0, 0, 37, 0, 0, 0,
0, 0, 0, 0, 40, 0, 0, 0, 0, 0,
0, 0, 0, 340, 341, 342, 343, 344, 345, 346,
347, 348, 1634, 349, 350, 351, 0, 0, 0, 0,
0, 0, 0, 352, 353, 354, 0, 355, 356, 357,
358, 0, 360, 361, 362, 363, 364, 0, 366, 367,
0, 368, 369, 370, 371, 372, 373, 374, 0, 0,
375, 376, 776, 377, 378, 0, 379, 380, 381, 382,
383, 0, 0, 0, 385, 386, 387, 388, 389, 390,
0, 392, 393, 777, 0, 394, 395, 396, 397, 398,
399, 0, 0, 401, 402, 0, 0, 0, 0, 0,
0, 0, 0, 406, 407, 408, 409, 779, 410, 411,
412, 413, 0, 414, 0, 415, 416, 417, 418, 419,
420, 421, 0, 422, 423, 424, 425, 0, 0, 426,
427, 428, 429, 430, 0, 431, 432, 433, 0, 434,
435, 436, 0, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 0, 447, 0, 448, 449, 450, 451,
452, 0, 453, 0, 454, 455, 0, 1125, 0, 458,
459, 460, 461, 0, 462, 463, 0, 464, 465, 466,
0, 467, 468, 781, 469, 470, 0, 472, 473, 474,
475, 1126, 476, 477, 478, 479, 480, 481, 482, 483,
0, 484, 0, 486, 0, 487, 488, 489, 0, 490,
0, 491, 0, 492, 0, 0, 495, 0, 497, 498,
499, 500, 501, 502, 503, 504, 505, 506, 507, 0,
0, 508, 509, 0, 511, 0, 0, 513, 514, 515,
0, 0, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 782, 527, 528, 783, 529, 530, 531,
532, 0, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 0, 545, 546, 0, 548, 0, 549,
550, 551, 552, 553, 554, 0, 555, 556, 0, 0,
557, 558, 559, 0, 0, 560, 561, 562, 0, 564,
0, 566, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 0, 577, 578, 579, 580, 581, 582, 583,
584, 0, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 595, 596, 597, 598, 599, 0, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 0, 613, 614, 0, 616, 617, 618, 619, 620,
621, 622, 623, 624, 625, 626, 627, 628, 629, 784,
630, 0, 631, 632, 633, 634, 635, 0, 637, 638,
639, 640, 641, 0, 643, 644, 645, 646, 0, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 660, 661, 0, 662, 663, 0, 0, 664,
0, 666, 667, 668, 669, 670, 0, 671, 672, 673,
0, 0, 675, 676, 677, 678, 679, 0, 680, 681,
682, 683, 684, 685, 686, 687, 0, 0, 688, 689,
690, 691, 692, 0, 0, 693, 694, 695, 696, 697,
785, 698, 0, 699, 0, 701, 702, 703, 704, 0,
0, 705, 0, 0, 706, 707, 708, 709, 710, 711,
712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
722, 786, 723, 724, 0, 0, 0, 740, 741, 742,
743, 744, 745, 746, 0, 747, 748, 1131, 1132, 749,
750, 751, 752, 753, 754, 0, 755, 756, 757, 0,
0, 758, 759, 760, 761, 0, 0, 762, 763, 764,
0, 765, 0, 0, 766, 767, 0, 0, 0, 768,
769, 0, 0, 0, 0, 770, 0, 0, 0, 0,
0, 0, 0, 0, 771, 0, 772, 0, 773, 774,
35, 339, 0, 0, 37, 0, 0, 0, 0, 0,
0, 0, 40, 0, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
1639, 349, 350, 351, 0, 0, 0, 0, 0, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 0,
360, 361, 362, 363, 364, 0, 366, 367, 0, 368,
369, 370, 371, 372, 373, 374, 0, 0, 375, 376,
776, 377, 378, 0, 379, 380, 381, 382, 383, 0,
0, 0, 385, 386, 387, 388, 389, 390, 0, 392,
393, 777, 0, 394, 395, 396, 397, 398, 399, 0,
0, 401, 402, 0, 0, 0, 0, 0, 0, 0,
0, 406, 407, 408, 409, 779, 410, 411, 412, 413,
0, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 428,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 0, 447, 0, 448, 449, 450, 451, 452, 0,
453, 0, 454, 455, 0, 1125, 0, 458, 459, 460,
461, 0, 462, 463, 0, 464, 465, 466, 0, 467,
468, 781, 469, 470, 0, 472, 473, 474, 475, 1126,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
0, 486, 0, 487, 488, 489, 0, 490, 0, 491,
0, 492, 0, 0, 495, 0, 497, 498, 499, 500,
501, 502, 503, 504, 505, 506, 507, 0, 0, 508,
509, 0, 511, 0, 0, 513, 514, 515, 0, 0,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 782, 527, 528, 783, 529, 530, 531, 532, 0,
534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
544, 0, 545, 546, 0, 548, 0, 549, 550, 551,
552, 553, 554, 0, 555, 556, 0, 0, 557, 558,
559, 0, 0, 560, 561, 562, 0, 564, 0, 566,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 579, 580, 581, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
595, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 0, 616, 617, 618, 619, 620, 621, 622,
623, 624, 625, 626, 627, 628, 629, 784, 630, 0,
631, 632, 633, 634, 635, 0, 637, 638, 639, 640,
641, 0, 643, 644, 645, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
660, 661, 0, 662, 663, 0, 0, 664, 0, 666,
667, 668, 669, 670, 0, 671, 672, 673, 0, 0,
675, 676, 677, 678, 679, 0, 680, 681, 682, 683,
684, 685, 686, 687, 0, 0, 688, 689, 690, 691,
692, 0, 0, 693, 694, 695, 696, 697, 785, 698,
0, 699, 0, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 712, 713,
714, 715, 716, 717, 718, 719, 720, 721, 722, 786,
723, 724, 0, 0, 0, 740, 741, 742, 743, 744,
745, 746, 0, 747, 748, 1131, 1132, 749, 750, 751,
752, 753, 754, 0, 755, 756, 757, 0, 0, 758,
759, 760, 761, 0, 0, 762, 763, 764, 0, 765,
0, 0, 766, 767, 0, 0, 0, 768, 769, 0,
0, 0, 0, 770, 0, 0, 0, 0, 0, 0,
0, 0, 771, 0, 772, 0, 773, 774, 35, 339,
0, 0, 37, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 340,
341, 342, 343, 344, 345, 346, 347, 348, 0, 349,
350, 351, 0, 0, 0, 0, 0, 0, 0, 352,
353, 354, 0, 355, 356, 357, 358, 0, 360, 361,
362, 363, 364, 0, 366, 367, 0, 368, 369, 370,
371, 372, 373, 374, 0, 0, 375, 376, 776, 377,
378, 0, 379, 380, 381, 382, 383, 0, 0, 0,
385, 386, 387, 388, 389, 390, 0, 392, 393, 777,
0, 394, 395, 396, 397, 398, 399, 0, 0, 401,
402, 0, 0, 0, 0, 0, 0, 0, 0, 406,
407, 408, 409, 779, 410, 411, 412, 413, 780, 414,
0, 415, 416, 417, 418, 419, 420, 421, 0, 422,
423, 424, 425, 0, 0, 426, 427, 428, 429, 430,
0, 431, 432, 433, 0, 434, 435, 436, 0, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 0,
447, 0, 448, 449, 450, 451, 452, 0, 453, 0,
454, 455, 0, 0, 0, 458, 459, 460, 461, 0,
462, 463, 0, 464, 465, 466, 0, 467, 468, 781,
469, 470, 0, 472, 473, 474, 475, 0, 476, 477,
478, 479, 480, 481, 482, 483, 0, 484, 0, 486,
0, 487, 488, 489, 0, 490, 0, 491, 0, 492,
0, 0, 495, 0, 497, 498, 499, 500, 501, 502,
503, 504, 505, 506, 507, 0, 0, 508, 509, 0,
511, 0, 0, 513, 514, 515, 0, 0, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 782,
527, 528, 783, 529, 530, 531, 532, 0, 534, 535,
536, 537, 538, 539, 540, 541, 542, 543, 544, 0,
545, 546, 0, 548, 0, 549, 550, 551, 552, 553,
554, 0, 555, 556, 0, 0, 557, 558, 559, 0,
0, 560, 561, 562, 0, 564, 0, 566, 567, 568,
569, 570, 571, 572, 573, 574, 575, 576, 0, 577,
578, 579, 580, 581, 582, 583, 584, 0, 585, 586,
587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
597, 598, 599, 0, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 0, 613, 614,
0, 616, 617, 618, 619, 620, 621, 622, 623, 624,
625, 626, 627, 628, 629, 784, 630, 0, 631, 632,
633, 634, 635, 0, 637, 638, 639, 640, 641, 0,
643, 644, 645, 646, 0, 647, 648, 649, 650, 651,
652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
0, 662, 663, 0, 0, 664, 0, 666, 667, 668,
669, 670, 0, 671, 672, 673, 1826, 0, 675, 676,
677, 678, 679, 0, 680, 681, 682, 683, 684, 685,
686, 687, 0, 0, 688, 689, 690, 691, 692, 0,
0, 693, 694, 695, 696, 697, 785, 698, 0, 699,
0, 701, 702, 703, 704, 0, 0, 705, 0, 0,
706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
716, 717, 718, 719, 720, 721, 722, 786, 723, 724,
1197, 0, 740, 741, 742, 743, 744, 745, 746, 1198,
747, 748, 1827, 0, 749, 750, 751, 752, 753, 754,
0, 755, 756, 757, 0, 0, 758, 759, 760, 761,
0, 0, 762, 763, 764, 0, 765, 0, 0, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 0, 360, 361, 362, 363, 364,
0, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 1199, 376, 1170, 377, 378, 0, 379,
380, 381, 382, 383, 0, 0, 0, 385, 386, 387,
388, 389, 390, 0, 392, 393, 1200, 0, 1201, 395,
396, 397, 398, 399, 0, 0, 401, 402, 0, 0,
0, 0, 0, 0, 0, 0, 406, 407, 408, 409,
779, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 0,
0, 0, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 781, 469, 470, 0,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 0, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 0, 0, 495,
0, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 0, 511, 0, 0,
513, 514, 1202, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 1203, 532, 0, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 0,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 0, 564, 0, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 0, 1204, 617,
618, 619, 620, 621, 622, 623, 624, 625, 1205, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 1206,
0, 637, 638, 639, 640, 641, 0, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 0, 666, 667, 668, 669, 670, 0,
671, 1207, 673, 0, 0, 1208, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 1174, 698, 0, 699, 0, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 1209, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 786, 723, 724, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 38, 39, 0,
0, 0, 0, 40, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 816, 349, 350, 351, 817, 818, 819, 820, 821,
822, 823, 352, 353, 354, 824, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 825,
368, 369, 370, 371, 372, 373, 374, 826, 827, 375,
376, 828, 377, 378, 829, 379, 380, 381, 382, 383,
830, 384, 831, 385, 386, 387, 388, 389, 390, 391,
392, 393, 832, 833, 394, 395, 396, 397, 398, 399,
834, 400, 401, 402, 835, 836, 837, 838, 404, 839,
840, 841, 406, 407, 408, 409, 779, 410, 411, 412,
413, 842, 414, 843, 415, 416, 417, 418, 419, 420,
421, 844, 422, 423, 424, 425, 845, 846, 426, 427,
428, 429, 430, 847, 431, 432, 433, 848, 434, 435,
436, 849, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 850, 447, 851, 448, 449, 450, 451, 452,
852, 453, 853, 454, 455, 456, 854, 457, 458, 459,
460, 461, 855, 462, 463, 856, 464, 465, 466, 857,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
858, 476, 477, 478, 479, 480, 481, 482, 483, 859,
484, 485, 486, 860, 487, 488, 489, 861, 490, 862,
491, 863, 492, 493, 494, 495, 496, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 864, 865,
508, 509, 510, 511, 512, 866, 513, 514, 515, 867,
868, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 869, 545, 546, 547, 548, 870, 549, 550,
551, 552, 553, 554, 871, 555, 556, 872, 873, 557,
558, 559, 874, 875, 560, 561, 562, 563, 564, 565,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 876, 577, 578, 579, 580, 581, 582, 583, 584,
877, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 878, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
879, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
880, 631, 632, 633, 634, 635, 881, 637, 638, 639,
640, 641, 642, 643, 644, 645, 646, 882, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 883, 662, 663, 884, 885, 664, 665,
666, 667, 668, 669, 670, 886, 671, 672, 673, 887,
888, 675, 676, 677, 678, 679, 889, 680, 681, 682,
683, 684, 685, 686, 687, 890, 891, 688, 689, 690,
691, 692, 892, 893, 693, 694, 695, 696, 697, 894,
698, 895, 699, 700, 701, 702, 703, 704, 896, 897,
705, 898, 899, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 816, 349, 350,
351, 817, 818, 819, 820, 821, 822, 823, 352, 353,
354, 824, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 825, 368, 369, 370, 371,
372, 373, 374, 826, 827, 375, 376, 828, 377, 378,
829, 379, 380, 381, 382, 383, 830, 384, 831, 385,
386, 387, 388, 389, 390, 391, 392, 393, 832, 833,
394, 395, 396, 397, 398, 399, 834, 400, 401, 402,
835, 836, 837, 838, 404, 839, 840, 841, 406, 407,
408, 409, 779, 410, 411, 412, 413, 842, 414, 843,
415, 416, 417, 418, 419, 420, 421, 844, 422, 423,
424, 425, 845, 846, 426, 427, 428, 429, 430, 847,
431, 432, 433, 848, 434, 435, 436, 849, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 850, 447,
851, 448, 449, 450, 451, 452, 852, 453, 853, 454,
455, 456, 854, 457, 458, 459, 460, 461, 855, 462,
463, 856, 464, 465, 466, 857, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 858, 476, 477, 478,
479, 480, 481, 482, 483, 859, 484, 485, 486, 860,
487, 488, 489, 861, 490, 862, 491, 863, 492, 493,
494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 864, 865, 508, 509, 510, 511,
512, 866, 513, 514, 515, 867, 868, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 869, 545,
546, 547, 548, 870, 549, 550, 551, 552, 553, 554,
871, 555, 556, 872, 873, 557, 558, 559, 874, 875,
560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 876, 577, 578,
579, 580, 581, 582, 583, 584, 877, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 878, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 879, 613, 614, 615,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 880, 631, 632, 633,
634, 635, 881, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 882, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 883,
662, 663, 884, 885, 664, 665, 666, 667, 668, 669,
670, 886, 671, 672, 673, 887, 888, 675, 676, 677,
678, 679, 889, 680, 681, 682, 683, 684, 685, 686,
687, 890, 891, 688, 689, 690, 691, 692, 892, 893,
693, 694, 695, 696, 697, 894, 698, 895, 699, 700,
701, 702, 703, 704, 896, 897, 705, 898, 899, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 786, 723, 724, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 4118,
346, 347, 348, 816, 349, 350, 351, 817, 818, 819,
820, 821, 822, 823, 352, 353, 354, 824, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 825, 368, 369, 370, 371, 372, 373, 374, 826,
827, 375, 376, 828, 377, 378, 829, 379, 380, 381,
382, 383, 830, 384, 831, 385, 386, 387, 388, 389,
390, 391, 392, 393, 832, 833, 394, 395, 396, 397,
398, 399, 834, 400, 401, 402, 835, 836, 837, 838,
404, 839, 840, 841, 406, 407, 408, 409, 779, 410,
411, 412, 413, 842, 414, 843, 415, 416, 417, 418,
419, 420, 421, 844, 422, 423, 424, 425, 845, 846,
426, 427, 428, 4119, 430, 847, 431, 432, 433, 848,
434, 435, 436, 849, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 850, 447, 851, 448, 449, 450,
451, 452, 852, 453, 853, 454, 455, 456, 854, 457,
458, 459, 460, 461, 855, 462, 463, 856, 464, 465,
466, 857, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 858, 476, 477, 478, 479, 480, 481, 482,
483, 859, 484, 485, 486, 860, 487, 488, 489, 861,
490, 862, 491, 863, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
864, 865, 508, 509, 510, 511, 512, 866, 513, 514,
515, 867, 868, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 869, 545, 546, 547, 548, 870,
549, 550, 551, 552, 553, 554, 871, 555, 556, 872,
873, 557, 558, 559, 874, 875, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 876, 577, 578, 579, 580, 581, 582,
583, 584, 877, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 878, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 879, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 880, 631, 632, 633, 634, 635, 881, 4120,
638, 639, 640, 641, 642, 643, 644, 645, 646, 882,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 883, 662, 663, 884, 885,
664, 665, 666, 667, 668, 669, 670, 886, 671, 672,
673, 887, 888, 675, 676, 677, 678, 679, 889, 680,
681, 682, 683, 684, 685, 686, 687, 890, 891, 688,
689, 690, 691, 692, 892, 893, 693, 694, 695, 696,
697, 894, 698, 895, 699, 700, 701, 702, 703, 704,
896, 897, 705, 898, 899, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 786, 723, 724, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 0, 368, 369,
370, 371, 372, 373, 374, 0, 1716, 375, 376, 776,
377, 378, 0, 379, 380, 381, 382, 1719, 0, 1720,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 1721, 1722, 1723, 1724, 1725, 1726, 1727,
406, 407, 408, 409, 779, 410, 411, 412, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 428, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 441, 442, 443, 444, 445, 1732,
0, 447, 0, 448, 449, 450, 451, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 1735, 0, 464, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 0, 490, 0, 491, 0,
492, 493, 494, 495, 496, 497, 1739, 1740, 1741, 1742,
502, 503, 504, 505, 506, 507, 0, 0, 508, 1743,
510, 511, 512, 0, 513, 514, 515, 1744, 1745, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 1748, 544,
0, 545, 546, 547, 548, 0, 1751, 550, 551, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 1754, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 1755, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 1758, 637, 638, 639, 640, 641,
642, 643, 644, 645, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 1760,
661, 0, 662, 663, 1761, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 672, 673, 0, 0, 675,
676, 1764, 678, 1765, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
1768, 0, 693, 694, 695, 696, 697, 785, 698, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 1770, 1771,
1772, 1773, 717, 1774, 1775, 1776, 1777, 722, 786, 723,
724, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 339, 0, 0, 37,
0, 38, 39, 0, 1707, 1708, 0, 40, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 1712,
365, 1713, 1714, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 1717, 1718, 378, 0, 379,
380, 381, 382, 383, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 0, 404, 0, 0, 0, 406, 407, 408, 409,
779, 410, 1728, 1729, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 1733, 447, 0, 448,
449, 450, 1734, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 1538, 1737, 0, 1738, 0, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1746, 533, 1747, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 547,
548, 1750, 549, 550, 1752, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1756, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 639, 640, 641, 642, 643, 644, 1759,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1762, 1763, 0, 0, 675, 676, 677, 678, 679,
1766, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 785, 1769, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 786, 723, 724, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 384, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 0, 0, 0, 404, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 493, 494, 495, 496, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 510, 511, 512, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 547, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 642, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 776, 377, 378,
0, 379, 380, 381, 382, 383, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 0, 404, 0, 0, 0, 406, 407,
408, 409, 779, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 781, 469,
1521, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 493,
494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 547, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 785, 698, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 786, 723, 724, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 776, 377, 378, 0, 379, 380, 381,
382, 383, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 0,
404, 0, 0, 0, 406, 407, 408, 409, 779, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 0, 447, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 463, 0, 464, 465,
466, 0, 467, 468, 781, 469, 1572, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
0, 0, 508, 509, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 0, 545, 546, 547, 548, 0,
549, 550, 551, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 579, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 672,
673, 0, 0, 675, 676, 677, 678, 679, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 785, 698, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 786, 723, 724, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 776,
377, 378, 0, 379, 380, 381, 382, 383, 0, 384,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 0, 0, 0, 404, 0, 0, 0,
406, 407, 408, 409, 779, 410, 411, 412, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 428, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
0, 447, 0, 448, 449, 450, 451, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 463, 0, 464, 465, 466, 0, 467, 468,
781, 469, 1586, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 0, 490, 0, 491, 0,
492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
502, 503, 504, 505, 506, 507, 0, 0, 508, 509,
510, 511, 512, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
0, 545, 546, 547, 548, 0, 549, 550, 551, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 566, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 579, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 0, 637, 638, 639, 640, 641,
642, 643, 644, 645, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
661, 0, 662, 663, 0, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 672, 673, 0, 0, 675,
676, 677, 678, 679, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 785, 698, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 713, 714,
715, 716, 717, 718, 719, 720, 721, 722, 786, 723,
724, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 776, 377, 378, 0, 379,
380, 381, 382, 383, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 0, 404, 0, 0, 0, 406, 407, 408, 409,
779, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 781, 469, 1590, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 547,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 639, 640, 641, 642, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 785, 698, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 786, 723, 724, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 0, 1528, 365, 1529, 1530, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 1531, 1532, 378, 0, 379, 380, 381, 382, 0,
0, 384, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 0, 0, 0, 404, 0,
0, 0, 406, 407, 408, 409, 779, 410, 1533, 1534,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
1535, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 0, 442, 443, 444,
445, 0, 0, 447, 0, 448, 449, 450, 1536, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 0, 0, 0, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
3170, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 3171, 0, 487, 488, 489, 1538, 1539, 0,
1540, 0, 492, 493, 494, 495, 496, 497, 0, 0,
0, 0, 502, 503, 504, 505, 506, 507, 0, 0,
508, 0, 510, 511, 512, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 1541,
533, 1542, 535, 536, 537, 538, 539, 540, 541, 0,
0, 544, 0, 545, 546, 547, 548, 0, 0, 550,
1543, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 3173, 563, 564, 565,
0, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 0, 580, 0, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 1544, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 0,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 3174,
640, 641, 642, 643, 644, 1546, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 0, 661, 0, 662, 663, 0, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 1547, 1548, 0,
0, 675, 676, 0, 678, 0, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 0,
1549, 3175, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
786, 723, 724, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
0, 1528, 365, 1529, 1530, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 1531, 1532, 378,
0, 379, 380, 381, 382, 0, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 0, 404, 0, 0, 0, 406, 407,
408, 409, 779, 410, 1533, 1534, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 1535, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 0, 442, 443, 444, 445, 0, 0, 447,
0, 448, 449, 450, 1536, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
0, 0, 0, 465, 466, 0, 467, 468, 781, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 0, 0,
487, 488, 489, 1538, 1539, 0, 1540, 0, 492, 493,
494, 495, 496, 497, 0, 0, 0, 0, 502, 503,
504, 505, 506, 507, 0, 0, 508, 0, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 1541, 533, 1542, 535, 536,
537, 538, 539, 540, 541, 0, 0, 544, 0, 545,
546, 547, 548, 3259, 0, 550, 1543, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 0, 563, 564, 565, 0, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
0, 580, 0, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 1544, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 0, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 3174, 640, 641, 642, 643,
644, 1546, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 0, 661, 0,
662, 663, 0, 5086, 664, 665, 666, 667, 668, 669,
670, 0, 671, 1547, 1548, 0, 0, 675, 676, 0,
678, 0, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 0, 1549, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 786, 723, 724, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 0, 1528, 365, 1529,
1530, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 1531, 1532, 378, 0, 379, 380, 381,
382, 0, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 0,
404, 0, 0, 0, 406, 407, 408, 409, 779, 410,
1533, 1534, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 0, 442,
443, 444, 445, 0, 0, 447, 0, 448, 449, 450,
1536, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 0, 0, 0, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 0, 0, 487, 488, 489, 1538,
1539, 0, 1540, 0, 492, 493, 494, 495, 496, 497,
0, 0, 0, 0, 502, 503, 504, 505, 506, 507,
0, 0, 508, 0, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1541, 533, 1542, 535, 536, 537, 538, 539, 540,
541, 3331, 0, 544, 0, 545, 546, 547, 548, 0,
0, 550, 1543, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 0, 563,
564, 565, 0, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 0, 580, 0, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1544, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 0, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 1545, 640, 641, 642, 643, 644, 1546, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 0, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1547,
1548, 0, 0, 675, 676, 0, 678, 0, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 1549, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 786, 723, 724, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 0, 1528, 365, 1529, 1530, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 1531,
1532, 378, 0, 379, 380, 381, 382, 0, 0, 384,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 0, 0, 0, 404, 0, 0, 0,
406, 407, 408, 409, 779, 410, 1533, 1534, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 1535, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 0, 442, 443, 444, 445, 0,
0, 447, 0, 448, 449, 450, 1536, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 0, 0, 0, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
0, 0, 487, 488, 489, 1538, 1539, 0, 1540, 0,
492, 493, 494, 495, 496, 497, 0, 0, 0, 0,
502, 503, 504, 505, 506, 507, 0, 0, 508, 0,
510, 511, 512, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 1541, 533, 1542,
535, 536, 537, 538, 539, 540, 541, 4882, 0, 544,
0, 545, 546, 547, 548, 0, 0, 550, 1543, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 0, 563, 564, 565, 0, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 0, 580, 0, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 1544,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 0, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 0, 637, 638, 1545, 640, 641,
642, 643, 644, 1546, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 0,
661, 0, 662, 663, 0, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 1547, 1548, 0, 0, 675,
676, 0, 678, 0, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 0, 1549, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 786, 723,
724, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 0, 1528,
365, 1529, 1530, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 1531, 1532, 378, 0, 379,
380, 381, 382, 0, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 0, 404, 0, 0, 0, 406, 407, 408, 409,
779, 410, 1533, 1534, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
0, 442, 443, 444, 445, 0, 0, 447, 0, 448,
449, 450, 1536, 452, 6601, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 0, 0,
0, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 0, 0, 487, 488,
489, 1538, 1539, 0, 1540, 0, 492, 493, 494, 495,
496, 497, 0, 0, 0, 0, 502, 503, 504, 505,
506, 507, 0, 0, 508, 0, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1541, 533, 1542, 535, 536, 537, 538,
539, 540, 541, 0, 0, 544, 0, 545, 546, 547,
548, 0, 0, 550, 1543, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
0, 563, 564, 565, 0, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 0, 580,
0, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1544, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 0, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 1545, 640, 641, 642, 643, 644, 1546,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 0, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1547, 1548, 0, 0, 675, 676, 0, 678, 0,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 0, 1549, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 786, 723, 724, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 0, 1528, 365, 1529, 1530, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 1531, 1532, 378, 0, 379, 380, 381, 382, 0,
0, 384, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 0, 0, 0, 404, 0,
0, 0, 406, 407, 408, 409, 779, 410, 1533, 1534,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
1535, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 0, 442, 443, 444,
445, 0, 0, 447, 0, 448, 449, 450, 1536, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 0, 0, 0, 465, 466, 0,
467, 468, 781, 469, 1537, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 0, 0, 487, 488, 489, 1538, 1539, 0,
1540, 0, 492, 493, 494, 495, 496, 497, 0, 0,
0, 0, 502, 503, 504, 505, 506, 507, 0, 0,
508, 0, 510, 511, 512, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 1541,
533, 1542, 535, 536, 537, 538, 539, 540, 541, 0,
0, 544, 0, 545, 546, 547, 548, 0, 0, 550,
1543, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 0, 563, 564, 565,
0, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 0, 580, 0, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 1544, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 0,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 1545,
640, 641, 642, 643, 644, 1546, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 0, 661, 0, 662, 663, 0, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 1547, 1548, 0,
0, 675, 676, 0, 678, 0, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 0,
1549, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
786, 723, 724, 809, 740, 741, 742, 743, 744, 745,
746, 0, 747, 748, 0, 0, 749, 750, 751, 752,
753, 754, 810, 755, 756, 757, 811, 0, 758, 759,
760, 761, 812, 813, 762, 763, 764, 0, 765, 814,
815, 766, 767, 0, 0, 0, 768, 769, 0, 0,
0, 0, 770, 0, 0, 0, 0, 0, 0, 0,
0, 771, 0, 772, 0, 773, 774, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
0, 1528, 365, 1529, 1530, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 1531, 1532, 378,
0, 379, 380, 381, 382, 0, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 777, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 0, 404, 0, 0, 0, 406, 407,
408, 409, 779, 410, 1533, 1534, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 1535, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 0, 442, 443, 444, 445, 0, 0, 447,
0, 448, 449, 450, 1536, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
0, 0, 0, 465, 466, 0, 467, 468, 781, 469,
1598, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 0, 0,
487, 488, 489, 1538, 1539, 0, 1540, 0, 492, 493,
494, 495, 496, 497, 0, 0, 0, 0, 502, 503,
504, 505, 506, 507, 0, 0, 508, 0, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 782, 527,
528, 783, 529, 530, 531, 1541, 533, 1542, 535, 536,
537, 538, 539, 540, 541, 0, 0, 544, 0, 545,
546, 547, 548, 0, 0, 550, 1543, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 0, 563, 564, 565, 0, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
0, 580, 0, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 1544, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 0, 622, 623, 624, 625,
626, 627, 628, 629, 784, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 1545, 640, 641, 642, 643,
644, 1546, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 0, 661, 0,
662, 663, 0, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 1547, 1548, 0, 0, 675, 676, 0,
678, 0, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 0, 1549, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 786, 723, 724, 809,
740, 741, 742, 743, 744, 745, 746, 0, 747, 748,
0, 0, 749, 750, 751, 752, 753, 754, 810, 755,
756, 757, 811, 0, 758, 759, 760, 761, 812, 813,
762, 763, 764, 0, 765, 814, 815, 766, 767, 0,
0, 0, 768, 769, 0, 0, 0, 0, 770, 0,
0, 0, 0, 0, 0, 0, 0, 771, 0, 772,
0, 773, 774, 35, 0, 0, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 0, 1528, 365, 1529,
1530, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 1531, 1532, 378, 0, 379, 380, 381,
382, 0, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 777, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 0,
404, 0, 0, 0, 406, 407, 408, 409, 779, 410,
1533, 1534, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 1535, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 0, 442,
443, 444, 445, 0, 0, 447, 0, 448, 449, 450,
1536, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 0, 0, 0, 465,
466, 0, 467, 468, 781, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 0, 0, 487, 488, 489, 1538,
1539, 0, 1540, 0, 492, 493, 494, 495, 496, 497,
0, 0, 0, 0, 502, 503, 504, 505, 506, 507,
0, 0, 508, 0, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 782, 527, 528, 783, 529, 530,
531, 1541, 533, 1542, 535, 536, 537, 538, 539, 540,
541, 0, 0, 544, 0, 545, 546, 547, 548, 0,
0, 550, 1543, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 0, 563,
564, 565, 0, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 0, 580, 0, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 1544, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 0, 622, 623, 624, 625, 626, 627, 628, 629,
784, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 1545, 640, 641, 642, 643, 644, 1546, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 0, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 1547,
1548, 0, 0, 675, 676, 0, 678, 0, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 1549, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 786, 723, 724, 809, 740, 741, 742, 743,
744, 745, 746, 0, 747, 748, 0, 0, 749, 750,
751, 752, 753, 754, 810, 755, 756, 757, 811, 0,
758, 759, 760, 761, 812, 813, 762, 763, 764, 0,
765, 814, 815, 766, 767, 0, 0, 0, 768, 769,
0, 0, 0, 0, 770, 0, 0, 0, 0, 0,
0, 0, 0, 771, 0, 772, 0, 773, 774, 35,
0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 0, 1528, 365, 1529, 1530, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 1531,
1532, 378, 0, 379, 380, 381, 382, 0, 0, 384,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
777, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 0, 0, 0, 404, 0, 0, 0,
406, 407, 408, 409, 779, 410, 1533, 1534, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 1535, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 0, 442, 443, 444, 445, 0,
0, 447, 0, 448, 449, 450, 1536, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 0, 0, 0, 465, 466, 0, 467, 468,
781, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
0, 0, 487, 488, 489, 1538, 1539, 0, 1540, 0,
492, 493, 494, 495, 496, 497, 0, 0, 0, 0,
502, 503, 504, 505, 506, 507, 0, 0, 508, 0,
510, 511, 512, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
782, 527, 528, 783, 529, 530, 531, 1541, 533, 1542,
535, 536, 537, 538, 539, 540, 541, 0, 0, 544,
0, 545, 546, 547, 548, 0, 0, 550, 1543, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 0, 563, 564, 565, 0, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 0, 580, 0, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 1544,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 0, 622, 623,
624, 625, 626, 627, 628, 629, 784, 630, 0, 631,
632, 633, 634, 635, 0, 637, 638, 3174, 640, 641,
642, 643, 644, 1546, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 0,
661, 0, 662, 663, 0, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 1547, 1548, 0, 0, 675,
676, 0, 678, 0, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 0, 1549, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 786, 723,
724, 809, 740, 741, 742, 743, 744, 745, 746, 0,
747, 748, 0, 0, 749, 750, 751, 752, 753, 754,
810, 755, 756, 757, 811, 0, 758, 759, 760, 761,
812, 813, 762, 763, 764, 0, 765, 814, 815, 766,
767, 0, 0, 0, 768, 769, 0, 0, 0, 0,
770, 0, 0, 0, 0, 0, 0, 0, 0, 771,
0, 772, 0, 773, 774, 35, 0, 0, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 0, 1528,
365, 1529, 1530, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 1531, 1532, 378, 0, 379,
380, 381, 382, 0, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 777, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 0, 404, 0, 0, 0, 406, 407, 408, 409,
779, 410, 1533, 1534, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 1535, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
0, 442, 443, 444, 445, 0, 0, 447, 0, 448,
449, 450, 1536, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 0, 0,
0, 465, 466, 0, 467, 468, 781, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 0, 0, 487, 488,
489, 1538, 1539, 0, 1540, 0, 492, 493, 494, 495,
496, 497, 0, 0, 0, 0, 502, 503, 504, 505,
506, 507, 0, 0, 508, 0, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 782, 527, 528, 783,
529, 530, 531, 1541, 533, 1542, 535, 536, 537, 538,
539, 540, 541, 0, 0, 544, 0, 545, 546, 547,
548, 0, 0, 550, 1543, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
0, 563, 564, 565, 0, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 0, 580,
0, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 1544, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 0, 622, 623, 624, 625, 626, 627,
628, 629, 784, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 0, 640, 641, 642, 643, 644, 1546,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 0, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 1547, 1548, 0, 0, 675, 676, 0, 678, 0,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 0, 1549, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 786, 723, 724, 809, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 810, 755, 756, 757,
811, 0, 758, 759, 760, 761, 812, 813, 762, 763,
764, 0, 765, 814, 815, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 0, 0, 365, 0, 0, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 0, 0, 378, 0, 379, 380, 381, 382, 0,
0, 384, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 0, 0, 0, 404, 0,
0, 0, 406, 407, 408, 409, 779, 410, 0, 0,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 0, 442, 443, 444,
445, 0, 0, 447, 0, 448, 449, 450, 0, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 0, 0, 0, 465, 466, 0,
467, 468, 781, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 0, 0, 487, 488, 489, 0, 0, 0,
0, 0, 492, 493, 494, 495, 496, 497, 0, 0,
0, 0, 502, 503, 504, 505, 506, 507, 0, 0,
508, 0, 510, 511, 512, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 0,
533, 0, 535, 536, 537, 538, 539, 540, 541, 0,
0, 544, 0, 545, 546, 547, 548, 0, 0, 550,
0, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 0, 563, 564, 565,
0, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 0, 580, 0, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 0, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 0,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 0,
640, 641, 642, 643, 644, 0, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 0, 661, 0, 662, 663, 0, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 0, 0, 0,
0, 675, 676, 0, 678, 0, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 0,
0, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 816, 349, 350, 351,
817, 818, 819, 820, 821, 822, 823, 352, 353, 354,
824, 355, 356, 357, 358, 359, 360, 361, 362, 363,
364, 365, 366, 367, 825, 368, 369, 370, 371, 372,
373, 374, 826, 827, 375, 376, 0, 377, 378, 829,
379, 380, 381, 382, 383, 830, 384, 831, 385, 386,
387, 388, 389, 390, 391, 392, 393, 832, 833, 394,
395, 396, 397, 398, 399, 834, 400, 401, 402, 0,
836, 837, 838, 404, 839, 840, 841, 406, 407, 408,
409, 0, 410, 411, 412, 413, 842, 414, 843, 415,
416, 417, 418, 419, 420, 421, 844, 422, 423, 424,
425, 845, 846, 426, 427, 428, 429, 430, 847, 431,
432, 433, 848, 434, 435, 436, 849, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 850, 447, 851,
448, 449, 450, 451, 452, 852, 453, 853, 454, 455,
456, 854, 457, 458, 459, 460, 461, 855, 462, 463,
856, 464, 465, 466, 857, 467, 468, 0, 469, 470,
471, 472, 473, 474, 475, 858, 476, 477, 478, 479,
480, 481, 482, 483, 859, 484, 485, 486, 0, 487,
488, 489, 0, 490, 862, 491, 863, 492, 493, 494,
495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 864, 865, 508, 509, 510, 511, 512,
866, 513, 514, 515, 867, 868, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 0, 527, 528,
0, 529, 530, 531, 532, 533, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 869, 545, 546,
547, 548, 870, 549, 550, 551, 552, 553, 554, 871,
555, 556, 872, 873, 557, 558, 559, 874, 875, 560,
561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 876, 577, 578, 579,
580, 581, 582, 583, 584, 877, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 878, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 879, 613, 614, 615, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 0, 630, 880, 631, 632, 633, 634,
635, 881, 637, 638, 639, 640, 641, 642, 643, 644,
645, 646, 882, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 883, 662,
663, 884, 885, 664, 665, 666, 667, 668, 669, 670,
886, 671, 672, 673, 0, 888, 675, 676, 677, 678,
679, 889, 680, 681, 682, 683, 684, 685, 686, 687,
0, 891, 688, 689, 690, 691, 692, 892, 893, 693,
694, 695, 696, 697, 0, 698, 895, 699, 700, 701,
702, 703, 704, 896, 897, 705, 898, 899, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 0, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 3211, 379, 380, 381, 382, 383,
0, 0, 3280, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 3212, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 3281, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 3214, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 3282, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
3215, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 3216, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 3211,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 3212, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 3281, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 3214, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 4331,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 3215, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 3216, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1140, 349, 1141, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
1142, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 1185, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 1143, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
1144, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 1140, 349, 1141, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 1142, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 4020, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 1143, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 1144, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 3211, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 3212, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 3281, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 3214, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
3215, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 3216, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 775, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 778,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 780, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1140, 349, 1141, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
1142, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 1143, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
1144, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 3513, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 3344, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 1220, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 3345, 3346, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 1037, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1038, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 1039, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 39, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 1282, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 2446, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 2447, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 2448,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 2449, 454, 455, 0, 0, 0, 2450, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 2451, 2452, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 2453, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 2454, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 2455, 620, 621,
622, 623, 624, 625, 2456, 627, 628, 629, 784, 630,
0, 2457, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 2458, 664, 0,
2459, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 2460,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 1141, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 1142, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 1143, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 1144, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 3344, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 1220, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 3345, 3346, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
2435, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 3881, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 3882, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 3145, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 3883, 664, 0, 666, 3884, 668, 3885, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 3886, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 802, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 780, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 984, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 39, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1384, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1385, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 1220, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 1510, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 4099, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 4100, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 4112, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 4113, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 1044, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 339, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 1101, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 339, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 1161, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 1220, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 1341, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1342,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1829, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 2018,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 1220, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 2075, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 2076, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 2307,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 2435, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 3145, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 39, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 40, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 5292, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
5306, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 5402, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 5474, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 5849, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 1167, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1169, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 1170, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 1171, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 1172, 673, 0,
0, 1173, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 1174,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 1214, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 1170, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 0, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
1215, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 1216, 673, 0, 0, 1217, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 1174, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 1234, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1366,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1376, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1379,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1395, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1453,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1458, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1474,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1477, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1479,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1526, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1592,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1594, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1604,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 1607, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 1610,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
1840, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 1199,
376, 1170, 377, 1841, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 1203, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 1204, 617, 618, 619, 620, 621,
622, 623, 624, 625, 1205, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 1833, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 1207, 673, 0,
0, 1208, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 1174,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 1209, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 1949, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 1950, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 1169, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 1170, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 1174,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 2255,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 2289, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 2291,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 2369, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 2371,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 2373, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 2489, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
3126, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 0, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 3558,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 3562, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 3648,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 4031, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 4088,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 4102, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 4104,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 4252, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 776, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 777, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 4292, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 531, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
635, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 785, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 5587, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 1199, 376, 1170, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 0, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 1203, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 1204,
617, 618, 619, 620, 621, 622, 623, 624, 625, 1205,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
1833, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 1207, 673, 0, 0, 1208, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 1174, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 1209, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 1170, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 1174,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 1199, 376, 1170, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 0, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 1203, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 1204,
617, 618, 619, 620, 621, 622, 623, 624, 625, 1205,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
1833, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 3198, 667, 668, 669, 670,
0, 671, 1207, 673, 0, 0, 1208, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 1174, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 1209, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 1199,
376, 1170, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 1203, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 1204, 617, 618, 619, 620, 621,
622, 623, 624, 625, 3263, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 3264, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 1207, 673, 0,
0, 3265, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 1174,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 1209, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 1199, 376, 1170, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 0, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 1203, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 1204,
617, 618, 619, 620, 621, 622, 623, 624, 625, 3341,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
3264, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 1207, 673, 0, 0, 3265, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 1174, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 1209, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 1199,
376, 1170, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 1203, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 1204, 617, 618, 619, 620, 621,
622, 623, 624, 625, 3365, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 3264, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 1207, 673, 0,
0, 3265, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 1174,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 1209, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 740, 741, 742, 743, 744, 745, 746,
0, 747, 748, 0, 0, 749, 750, 751, 752, 753,
754, 0, 755, 756, 757, 0, 0, 758, 759, 760,
761, 0, 0, 762, 763, 764, 0, 765, 0, 0,
766, 767, 0, 0, 0, 768, 769, 0, 0, 0,
0, 770, 0, 0, 0, 0, 0, 0, 0, 0,
771, 0, 772, 0, 773, 774, 35, 0, 0, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 0, 360, 361, 362, 363,
364, 0, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 1199, 376, 1170, 377, 378, 0,
379, 380, 381, 382, 383, 0, 0, 0, 385, 386,
387, 388, 389, 390, 0, 392, 393, 0, 0, 394,
395, 396, 397, 398, 399, 0, 0, 401, 402, 0,
0, 0, 0, 0, 0, 0, 0, 406, 407, 408,
409, 779, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
0, 0, 0, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 781, 469, 470,
0, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 0, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 0, 0,
495, 0, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 0, 511, 0,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 782, 527, 528,
783, 529, 530, 1203, 532, 0, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
0, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 0, 564, 0, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 0, 1204,
617, 618, 619, 620, 621, 622, 623, 624, 625, 1205,
627, 628, 629, 784, 630, 0, 631, 632, 633, 634,
3264, 0, 637, 638, 639, 640, 641, 0, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 0, 666, 667, 668, 669, 670,
0, 671, 1207, 673, 0, 0, 3265, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 1174, 698, 0, 699, 0, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 1209, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 786, 723, 724, 740, 741,
742, 743, 744, 745, 746, 0, 747, 748, 0, 0,
749, 750, 751, 752, 753, 754, 0, 755, 756, 757,
0, 0, 758, 759, 760, 761, 0, 0, 762, 763,
764, 0, 765, 0, 0, 766, 767, 0, 0, 0,
768, 769, 0, 0, 0, 0, 770, 0, 0, 0,
0, 0, 0, 0, 0, 771, 0, 772, 0, 773,
774, 35, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
0, 360, 361, 362, 363, 364, 0, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 776, 377, 378, 0, 379, 380, 381, 382, 383,
0, 0, 0, 385, 386, 387, 388, 389, 390, 0,
392, 393, 777, 0, 394, 395, 396, 397, 398, 399,
0, 0, 401, 402, 0, 0, 0, 0, 0, 0,
0, 0, 406, 407, 408, 409, 779, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 0, 0, 0, 458, 459,
460, 461, 0, 462, 463, 0, 464, 0, 466, 0,
467, 468, 781, 469, 470, 0, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 0, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 0, 0, 495, 0, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 0, 511, 0, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 782, 527, 528, 783, 529, 530, 531, 532,
0, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 0, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 0, 564, 0,
566, 567, 568, 569, 570, 571, 572, 573, 0, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 0,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 0, 616, 617, 618, 619, 620, 621,
0, 623, 624, 625, 626, 627, 628, 629, 784, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 0, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 0,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 785,
698, 0, 699, 0, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
786, 723, 724, 35, 339, 0, 0, 37, 0, 38,
39, 0, 0, 0, 0, 40, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 0, 377, 378, 0, 379, 380, 381,
382, 383, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 0, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 0,
404, 0, 0, 0, 406, 407, 408, 409, 0, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 2212, 447, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 463, 0, 464, 465,
466, 0, 467, 468, 0, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
0, 0, 508, 509, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 0, 527, 528, 0, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 0, 545, 546, 547, 548, 0,
549, 550, 551, 552, 553, 554, 0, 555, 556, 2213,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 579, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
0, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 672,
673, 0, 0, 675, 676, 677, 678, 679, 2214, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 698, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 0, 723, 724, 0, 0, 35, 0, 0,
0, 37, 0, 0, 0, 0, 0, 0, 1315, 1316,
6355, 0, 0, 0, 0, 0, 0, 6356, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 102, 103, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 0, 377, 378,
0, 379, 380, 381, 382, 383, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 0, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 0, 404, 0, 0, 0, 406, 407,
408, 409, 0, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 0, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 493,
494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 0, 527,
528, 0, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 547, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 0, 630, 146, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 150, 664, 665, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 157, 698, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 159, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 0, 723, 724, 1411,
0, 0, 160, 0, 35, 0, 0, 0, 37, 0,
0, 0, 0, 0, 0, 2546, 0, 0, 2547, 0,
0, 161, 2548, 2549, 2550, 2551, 2552, 2553, 2554, 2555,
2556, 2557, 2558, 2559, 2560, 2561, 2562, 2563, 2564, 2565,
2566, 2567, 0, 2568, 2569, 2570, 2571, 2572, 2573, 2574,
2575, 2576, 2577, 2578, 2579, 2580, 2581, 2582, 2583, 2584,
2585, 2586, 2587, 2588, 2589, 2590, 2591, 2592, 2593, 2594,
2595, 2596, 2597, 2598, 0, 0, 2599, 2600, 2601, 2602,
2603, 2604, 2605, 2606, 2607, 2608, 2609, 2610, 2611, 2612,
2613, 2614, 2615, 2616, 2617, 2618, 2619, 2620, 2621, 2622,
2623, 2624, 2625, 0, 2626, 2627, 2628, 2629, 2630, 2631,
2632, 2633, 2634, 2635, 2636, 2637, 2638, 2639, 2640, 0,
2641, 2642, 2643, 2644, 2645, 2646, 2647, 2648, 2649, 2650,
2651, 2652, 2653, 2654, 2655, 2656, 2657, 2658, 2659, 2660,
2661, 2662, 2663, 2664, 2665, 2666, 2667, 2668, 2669, 2670,
2671, 2672, 2673, 2674, 0, 2675, 2676, 2677, 2678, 2679,
2680, 2681, 2682, 2683, 2684, 2685, 2686, 0, 0, 2687,
2688, 2689, 2690, 0, 2691, 2692, 2693, 2694, 2695, 0,
2696, 2697, 2698, 2699, 2700, 0, 2701, 2702, 0, 2703,
2704, 2705, 0, 2706, 2707, 0, 2708, 2709, 2710, 2711,
2712, 2713, 2714, 2715, 2716, 2717, 2718, 2719, 2720, 2721,
2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, 2731,
2732, 2733, 0, 2734, 0, 2735, 2736, 2737, 2738, 2739,
2740, 2741, 2742, 2743, 2744, 2745, 2746, 2747, 2748, 2749,
2750, 2751, 2752, 2753, 2754, 2755, 2756, 2757, 0, 2758,
2759, 2760, 2761, 2762, 2763, 2764, 2765, 2766, 2767, 2768,
2769, 2770, 2771, 2772, 2773, 0, 2774, 2775, 0, 2776,
2777, 2778, 2779, 2780, 2781, 2782, 2783, 2784, 2785, 2786,
2787, 2788, 2789, 2790, 2791, 2792, 2793, 2794, 2795, 2796,
2797, 2798, 2799, 2800, 2801, 2802, 2803, 0, 2804, 2805,
0, 2806, 2807, 2808, 2809, 2810, 0, 2811, 2812, 2813,
2814, 0, 0, 2815, 2816, 2817, 2818, 2819, 2820, 2821,
2822, 2823, 2824, 2825, 2826, 2827, 2828, 2829, 2830, 0,
2831, 2832, 2833, 2834, 2835, 2836, 2837, 2838, 2839, 2840,
2841, 2842, 2843, 2844, 2845, 2846, 2847, 2848, 2849, 2850,
2851, 2852, 2853, 2854, 2855, 2856, 2857, 2858, 2859, 2860,
2861, 2862, 2863, 0, 2864, 2865, 2866, 2867, 2868, 2869,
2870, 2871, 2872, 2873, 2874, 2875, 2876, 2877, 2878, 2879,
2880, 0, 2881, 2882, 2883, 2884, 2885, 2886, 2887, 2888,
2889, 2890, 2891, 2892, 2893, 2894, 2895, 2896, 2897, 2898,
2899, 2900, 2901, 2902, 2903, 2904, 2905, 2906, 2907, 2908,
2909, 2910, 2911, 2912, 2913, 2914, 2915, 2916, 2917, 2918,
2919, 2920, 2921, 2922, 2923, 2924, 2925, 2926, 2927, 2928,
2929, 2930, 0, 2931, 2932, 2933, 2934, 2935, 2936, 2937,
2938, 2939, 2940, 2941, 2942, 2943, 2944, 2945, 0, 2946,
2947, 2948, 2949, 2950, 2951, 2952, 2953, 2954, 2955, 2956,
2957, 2958, 2959, 2960, 2961, 0, 2962, 2963, 2964, 2965,
2966, 2967, 0, 2968, 0, 0, 0, 0, 2969, 2970,
2971, 2972, 2973, 2974, 2975, 2976, 2977, 2978, 2979, 2980,
2981, 2982, 2983, 0, 2984, 2985, 0, 2986, 0, 0,
0, 0, 0, 0, 0, 0, 2987, 2988, 2989, 2990,
2991, 2992, 2993, 2994, 2995, 35, 339, 0, 0, 37,
0, 38, 39, 0, 0, 0, 0, 40, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 0, 377, 378, 0, 379,
380, 381, 382, 383, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 0, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 0, 404, 0, 0, 0, 406, 407, 408, 409,
0, 410, 411, 412, 413, 3051, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 2212, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 0, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 0, 527, 528, 0,
529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 547,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 2213, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 0, 630, 0, 631, 632, 633, 634, 635,
0, 637, 638, 639, 640, 641, 642, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
2214, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 0, 698, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 0, 723, 724, 35, 339, 0,
0, 37, 0, 38, 39, 0, 0, 0, 0, 40,
1315, 1316, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 0, 377, 378,
0, 379, 380, 381, 382, 383, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 0, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 0, 404, 0, 0, 0, 406, 407,
408, 409, 0, 410, 411, 412, 413, 3056, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 2212, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 0, 469,
470, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 493,
494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 0, 527,
528, 0, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 547, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 2213, 0, 557, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 0, 630, 0, 631, 632, 633,
634, 635, 0, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 2214, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 0, 698, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 0, 723, 724, 35,
339, 0, 0, 37, 0, 38, 39, 0, 0, 0,
0, 40, 1315, 1316, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 0,
377, 378, 0, 379, 380, 381, 382, 383, 0, 384,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
0, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 0, 0, 0, 404, 0, 0, 0,
406, 407, 408, 409, 0, 410, 411, 412, 413, 4013,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 428, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
2212, 447, 0, 448, 449, 450, 451, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 463, 0, 464, 465, 466, 0, 467, 468,
0, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 0, 490, 0, 491, 0,
492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
502, 503, 504, 505, 506, 507, 0, 0, 508, 509,
510, 511, 512, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
0, 527, 528, 0, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
0, 545, 546, 547, 548, 0, 549, 550, 551, 552,
553, 554, 0, 555, 556, 2213, 0, 557, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 566, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 579, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
624, 625, 626, 627, 628, 629, 0, 630, 0, 631,
632, 633, 634, 635, 0, 637, 638, 639, 640, 641,
642, 643, 644, 645, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
661, 0, 662, 663, 0, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 672, 673, 0, 0, 675,
676, 677, 678, 679, 2214, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 0, 698, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 713, 714,
715, 716, 717, 718, 719, 720, 721, 722, 0, 723,
724, 35, 339, 0, 0, 37, 0, 38, 39, 0,
0, 0, 0, 40, 1315, 1316, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 0, 377, 378, 0, 379, 380, 381, 382, 383,
0, 384, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 0, 0, 0, 404, 0,
0, 0, 406, 407, 408, 409, 0, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 2212, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 463, 0, 464, 465, 466, 0,
467, 468, 0, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 493, 494, 495, 496, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 510, 511, 512, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 0, 527, 528, 0, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 547, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 2213, 0, 557,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 0, 630,
0, 631, 632, 633, 634, 635, 0, 637, 638, 639,
640, 641, 642, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 2214, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 0,
698, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
35, 723, 724, 0, 37, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1315, 1316, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
0, 349, 350, 351, 102, 103, 0, 0, 0, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 0, 368,
369, 370, 371, 372, 373, 374, 0, 0, 375, 376,
0, 377, 378, 0, 379, 380, 381, 382, 383, 0,
384, 0, 385, 386, 387, 388, 389, 390, 391, 392,
393, 0, 0, 394, 395, 396, 397, 398, 399, 0,
400, 401, 402, 0, 0, 0, 0, 404, 0, 0,
0, 406, 407, 408, 409, 0, 410, 411, 412, 413,
0, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 428,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 0, 447, 0, 448, 449, 450, 451, 452, 0,
453, 0, 454, 455, 456, 0, 457, 458, 459, 460,
461, 0, 462, 463, 0, 464, 465, 466, 0, 467,
468, 0, 469, 470, 471, 472, 473, 474, 475, 0,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
485, 486, 0, 487, 488, 489, 0, 490, 0, 491,
0, 492, 493, 494, 495, 496, 497, 498, 499, 500,
501, 502, 503, 504, 505, 506, 507, 0, 0, 508,
509, 510, 511, 512, 0, 513, 514, 515, 0, 0,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 0, 527, 528, 0, 529, 530, 531, 532, 533,
534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
544, 0, 545, 546, 547, 548, 0, 549, 550, 551,
552, 553, 554, 0, 555, 556, 0, 0, 557, 558,
559, 0, 0, 560, 561, 562, 563, 564, 565, 566,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 579, 580, 581, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
595, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
623, 624, 625, 626, 627, 628, 629, 0, 630, 0,
631, 632, 633, 634, 635, 0, 637, 638, 639, 640,
641, 642, 643, 644, 645, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
660, 661, 0, 662, 663, 0, 0, 664, 665, 666,
667, 668, 669, 670, 0, 671, 672, 673, 0, 0,
675, 676, 677, 678, 679, 0, 680, 681, 682, 683,
684, 685, 686, 687, 0, 0, 688, 689, 690, 691,
692, 0, 0, 693, 694, 695, 696, 697, 0, 698,
0, 699, 700, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 712, 713,
714, 715, 716, 717, 718, 719, 720, 721, 722, 0,
723, 724, 1411, 35, 339, 0, 0, 37, 0, 0,
39, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 0, 377, 378, 0, 379, 380, 381,
382, 383, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 0, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 403,
404, 0, 0, 405, 406, 407, 408, 409, 0, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 0, 447, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 463, 0, 464, 465,
466, 0, 467, 468, 0, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
0, 0, 508, 509, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 0, 527, 528, 0, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 0, 545, 546, 547, 548, 0,
549, 550, 551, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 579, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
0, 630, 0, 631, 632, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 672,
673, 674, 0, 675, 676, 677, 678, 679, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 698, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 0, 723, 724, 35, 339, 0, 0, 37,
0, 0, 39, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 0, 377, 378, 0, 379,
380, 381, 382, 383, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 0, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 403, 404, 0, 0, 405, 406, 407, 408, 409,
0, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 0, 469, 470, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 520,
521, 522, 523, 524, 525, 526, 0, 527, 528, 0,
529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 547,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 0, 630, 0, 631, 632, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 0, 698, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 35, 723, 724, 0, 37, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 340, 341, 342, 343, 344,
345, 346, 347, 348, 1370, 349, 350, 351, 0, 0,
0, 0, 0, 0, 0, 352, 353, 354, 0, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 0, 368, 369, 370, 371, 372, 373, 374,
0, 0, 375, 376, 0, 377, 378, 0, 379, 380,
381, 382, 383, 0, 384, 0, 385, 386, 387, 388,
389, 390, 391, 392, 393, 0, 0, 394, 395, 396,
397, 398, 399, 0, 400, 401, 402, 0, 0, 0,
403, 404, 0, 0, 405, 406, 407, 408, 409, 0,
410, 411, 412, 413, 0, 414, 0, 415, 416, 417,
418, 419, 420, 421, 0, 422, 423, 424, 425, 0,
0, 426, 427, 428, 429, 430, 0, 431, 432, 433,
0, 434, 435, 436, 0, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 0, 447, 0, 448, 449,
450, 451, 452, 0, 453, 0, 454, 455, 456, 0,
457, 458, 459, 460, 461, 0, 462, 463, 0, 464,
465, 466, 0, 467, 468, 0, 469, 470, 471, 472,
473, 474, 475, 0, 476, 477, 478, 479, 480, 481,
482, 483, 0, 484, 485, 486, 0, 487, 488, 489,
0, 490, 0, 491, 0, 492, 493, 494, 495, 496,
497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
507, 0, 0, 508, 509, 510, 511, 512, 0, 513,
514, 515, 0, 0, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 0, 527, 528, 0, 529,
530, 531, 532, 533, 534, 535, 536, 537, 538, 539,
540, 541, 542, 543, 544, 0, 545, 546, 547, 548,
0, 549, 550, 551, 552, 553, 554, 0, 555, 556,
0, 0, 557, 558, 559, 0, 0, 560, 561, 562,
563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
573, 574, 575, 576, 0, 577, 578, 579, 580, 581,
582, 583, 584, 0, 585, 586, 587, 588, 589, 590,
591, 592, 593, 594, 595, 596, 597, 598, 599, 0,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 0, 613, 614, 615, 616, 617, 618,
619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
629, 0, 630, 0, 631, 632, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
0, 647, 648, 649, 650, 651, 652, 653, 654, 655,
656, 657, 658, 659, 660, 661, 0, 662, 663, 0,
0, 664, 665, 666, 667, 668, 669, 670, 0, 671,
672, 673, 0, 0, 675, 676, 677, 678, 679, 0,
680, 681, 682, 683, 684, 685, 686, 687, 0, 0,
688, 689, 690, 691, 692, 0, 0, 693, 694, 695,
696, 697, 0, 698, 0, 699, 700, 701, 702, 703,
704, 0, 0, 705, 0, 0, 706, 707, 708, 709,
710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
720, 721, 722, 35, 723, 724, 0, 37, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 1391, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 0, 377, 378, 0, 379, 380, 381,
382, 383, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 0, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 403,
404, 0, 0, 405, 406, 407, 408, 409, 0, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 0, 447, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 463, 0, 464, 465,
466, 0, 467, 468, 0, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
0, 0, 508, 509, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 1392, 521, 522,
523, 524, 525, 526, 0, 527, 528, 0, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 0, 545, 546, 547, 548, 0,
549, 550, 551, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 579, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
0, 630, 0, 631, 632, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 672,
673, 0, 0, 675, 676, 677, 678, 679, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 698, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 35, 723, 724, 0, 37, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 340, 341, 342, 343, 344, 345, 346,
347, 348, 0, 349, 350, 351, 0, 0, 0, 0,
0, 0, 0, 352, 353, 354, 0, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
0, 368, 369, 370, 371, 372, 373, 374, 0, 0,
375, 376, 0, 377, 378, 0, 379, 380, 381, 382,
383, 0, 384, 0, 385, 386, 387, 388, 389, 390,
391, 392, 393, 0, 0, 394, 395, 396, 397, 398,
399, 0, 400, 401, 402, 0, 0, 0, 403, 404,
0, 0, 405, 406, 407, 408, 409, 0, 410, 411,
412, 413, 0, 414, 0, 415, 416, 417, 418, 419,
420, 421, 0, 422, 423, 424, 425, 0, 0, 426,
427, 428, 429, 430, 0, 431, 432, 433, 0, 434,
435, 436, 0, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 0, 447, 0, 448, 449, 450, 451,
452, 0, 453, 0, 454, 455, 456, 0, 457, 458,
459, 460, 461, 0, 462, 463, 0, 464, 465, 466,
0, 467, 468, 0, 469, 470, 471, 472, 473, 474,
475, 0, 476, 477, 478, 479, 480, 481, 482, 483,
0, 484, 485, 486, 0, 487, 488, 489, 0, 490,
0, 491, 0, 492, 493, 494, 495, 496, 497, 498,
499, 500, 501, 502, 503, 504, 505, 506, 507, 0,
0, 508, 509, 510, 511, 512, 0, 513, 514, 515,
0, 0, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 0, 527, 528, 0, 529, 530, 531,
532, 533, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 0, 545, 546, 547, 548, 0, 549,
550, 551, 552, 553, 554, 0, 555, 556, 0, 0,
557, 558, 559, 0, 0, 560, 561, 562, 563, 564,
565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 0, 577, 578, 579, 580, 581, 582, 583,
584, 0, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 595, 596, 597, 598, 599, 0, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 0, 613, 614, 615, 616, 617, 618, 619, 620,
621, 622, 623, 624, 625, 626, 627, 628, 629, 0,
630, 0, 631, 632, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 643, 644, 645, 646, 0, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 660, 661, 0, 662, 663, 0, 0, 664,
665, 666, 667, 668, 669, 670, 0, 671, 672, 673,
0, 0, 675, 676, 677, 678, 679, 0, 680, 681,
682, 683, 684, 685, 686, 687, 0, 0, 688, 689,
690, 691, 692, 3437, 0, 693, 694, 695, 696, 697,
0, 698, 0, 699, 700, 701, 702, 703, 704, 0,
0, 705, 0, 0, 706, 707, 708, 709, 710, 711,
712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
722, 35, 723, 724, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 340, 341, 342, 343, 344, 345, 346, 347,
348, 0, 349, 350, 351, 0, 0, 0, 0, 0,
0, 0, 352, 353, 354, 0, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 0,
368, 369, 370, 371, 372, 373, 374, 0, 0, 375,
376, 0, 377, 378, 0, 379, 380, 381, 382, 383,
0, 384, 0, 385, 386, 387, 388, 389, 390, 391,
392, 393, 0, 0, 394, 395, 396, 397, 398, 399,
0, 400, 401, 402, 0, 0, 0, 403, 404, 0,
0, 405, 406, 407, 408, 409, 0, 410, 411, 412,
413, 0, 414, 0, 415, 416, 417, 418, 419, 420,
421, 0, 422, 423, 424, 425, 0, 0, 426, 427,
428, 429, 430, 0, 431, 432, 433, 0, 434, 435,
436, 0, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 0, 447, 0, 448, 449, 450, 451, 452,
0, 453, 0, 454, 455, 456, 0, 457, 458, 459,
460, 461, 0, 462, 463, 4493, 464, 465, 466, 0,
467, 468, 0, 469, 470, 471, 472, 473, 474, 475,
0, 476, 477, 478, 479, 480, 481, 482, 483, 0,
484, 485, 486, 0, 487, 488, 489, 0, 490, 0,
491, 0, 492, 493, 494, 495, 496, 497, 498, 499,
500, 501, 502, 503, 504, 505, 506, 507, 0, 0,
508, 509, 510, 511, 512, 0, 513, 514, 515, 0,
0, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 0, 527, 528, 0, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 0, 545, 546, 547, 548, 0, 549, 550,
551, 552, 553, 554, 0, 555, 556, 0, 0, 557,
558, 559, 0, 0, 560, 561, 562, 563, 564, 565,
566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
576, 0, 577, 578, 579, 580, 581, 582, 583, 584,
0, 585, 586, 587, 588, 589, 590, 591, 592, 593,
594, 595, 596, 597, 598, 599, 0, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
0, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 0, 630,
0, 631, 632, 633, 634, 635, 636, 637, 638, 639,
640, 641, 642, 643, 644, 645, 646, 0, 647, 648,
649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
659, 660, 661, 0, 662, 663, 0, 0, 664, 665,
666, 667, 668, 669, 670, 0, 671, 672, 673, 0,
0, 675, 676, 677, 678, 679, 0, 680, 681, 682,
683, 684, 685, 686, 687, 0, 0, 688, 689, 690,
691, 692, 0, 0, 693, 694, 695, 696, 697, 0,
698, 0, 699, 700, 701, 702, 703, 704, 0, 0,
705, 0, 0, 706, 707, 708, 709, 710, 711, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
35, 723, 724, 0, 37, 0, 0, 39, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
0, 349, 350, 351, 0, 0, 0, 0, 0, 0,
0, 352, 353, 354, 0, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 0, 368,
369, 370, 371, 372, 373, 374, 0, 0, 375, 376,
0, 377, 378, 0, 379, 380, 381, 382, 383, 0,
384, 0, 385, 386, 387, 388, 389, 390, 391, 392,
393, 0, 0, 394, 395, 396, 397, 398, 399, 0,
400, 401, 402, 0, 0, 0, 0, 404, 0, 0,
0, 406, 407, 408, 409, 0, 410, 411, 412, 413,
0, 414, 0, 415, 416, 417, 418, 419, 420, 421,
0, 422, 423, 424, 425, 0, 0, 426, 427, 428,
429, 430, 0, 431, 432, 433, 0, 434, 435, 436,
0, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 2212, 447, 0, 448, 449, 450, 451, 452, 0,
453, 0, 454, 455, 456, 0, 457, 458, 459, 460,
461, 0, 462, 463, 0, 464, 465, 466, 0, 467,
468, 0, 469, 470, 471, 472, 473, 474, 475, 0,
476, 477, 478, 479, 480, 481, 482, 483, 0, 484,
485, 486, 0, 487, 488, 489, 0, 490, 0, 491,
0, 492, 493, 494, 495, 496, 497, 498, 499, 500,
501, 502, 503, 504, 505, 506, 507, 0, 0, 508,
509, 510, 511, 512, 0, 513, 514, 515, 0, 0,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 0, 527, 528, 0, 529, 530, 531, 532, 533,
534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
544, 0, 545, 546, 547, 548, 0, 549, 550, 551,
552, 553, 554, 0, 555, 556, 2213, 0, 557, 558,
559, 0, 0, 560, 561, 562, 563, 564, 565, 566,
567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
0, 577, 578, 579, 580, 581, 582, 583, 584, 0,
585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
595, 596, 597, 598, 599, 0, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 0,
613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
623, 624, 625, 626, 627, 628, 629, 0, 630, 0,
631, 632, 633, 634, 635, 0, 637, 638, 639, 640,
641, 642, 643, 644, 645, 646, 0, 647, 648, 649,
650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
660, 661, 0, 662, 663, 0, 0, 664, 665, 666,
667, 668, 669, 670, 0, 671, 672, 673, 0, 0,
675, 676, 677, 678, 679, 2214, 680, 681, 682, 683,
684, 685, 686, 687, 0, 0, 688, 689, 690, 691,
692, 0, 0, 693, 694, 695, 696, 697, 0, 698,
0, 699, 700, 701, 702, 703, 704, 0, 0, 705,
0, 0, 706, 707, 708, 709, 710, 711, 712, 713,
714, 715, 716, 717, 718, 719, 720, 721, 722, 35,
723, 724, 0, 37, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340, 341, 342, 343, 344, 345, 346, 347, 348, 0,
349, 350, 351, 0, 0, 0, 0, 0, 0, 0,
352, 353, 354, 0, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 0, 368, 369,
370, 371, 372, 373, 374, 0, 0, 375, 376, 0,
377, 378, 0, 379, 380, 381, 382, 383, 0, 384,
0, 385, 386, 387, 388, 389, 390, 391, 392, 393,
0, 0, 394, 395, 396, 397, 398, 399, 0, 400,
401, 402, 0, 0, 0, 403, 404, 0, 0, 405,
406, 407, 408, 409, 0, 410, 411, 412, 413, 0,
414, 0, 415, 416, 417, 418, 419, 420, 421, 0,
422, 423, 424, 425, 0, 0, 426, 427, 428, 429,
430, 0, 431, 432, 433, 0, 434, 435, 436, 0,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
0, 447, 0, 448, 449, 450, 451, 452, 0, 453,
0, 454, 455, 456, 0, 457, 458, 459, 460, 461,
0, 462, 463, 0, 464, 465, 466, 0, 467, 468,
0, 469, 470, 471, 472, 473, 474, 475, 0, 476,
477, 478, 479, 480, 481, 482, 483, 0, 484, 485,
486, 0, 487, 488, 489, 0, 490, 0, 491, 0,
492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
502, 503, 504, 505, 506, 507, 0, 0, 508, 509,
510, 511, 512, 0, 513, 514, 515, 0, 0, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
0, 527, 528, 0, 529, 530, 531, 532, 533, 534,
535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
0, 545, 546, 547, 548, 0, 549, 550, 551, 552,
553, 554, 0, 555, 556, 0, 0, 557, 558, 559,
0, 0, 560, 561, 562, 563, 564, 565, 566, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 0,
577, 578, 579, 580, 581, 582, 583, 584, 0, 585,
586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
596, 597, 598, 599, 0, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 0, 613,
614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
624, 625, 626, 627, 628, 629, 0, 630, 0, 631,
632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
642, 643, 644, 645, 646, 0, 647, 648, 649, 650,
651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
661, 0, 662, 663, 0, 0, 664, 665, 666, 667,
668, 669, 670, 0, 671, 672, 673, 0, 0, 675,
676, 677, 678, 679, 0, 680, 681, 682, 683, 684,
685, 686, 687, 0, 0, 688, 689, 690, 691, 692,
0, 0, 693, 694, 695, 696, 697, 0, 698, 0,
699, 700, 701, 702, 703, 704, 0, 0, 705, 0,
0, 706, 707, 708, 709, 710, 711, 712, 713, 714,
715, 716, 717, 718, 719, 720, 721, 722, 35, 723,
724, 0, 37, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 340,
341, 342, 343, 344, 345, 346, 347, 348, 0, 349,
350, 351, 0, 0, 0, 0, 0, 0, 0, 352,
353, 354, 0, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 0, 368, 369, 370,
371, 372, 373, 374, 0, 0, 375, 376, 0, 377,
378, 0, 379, 380, 381, 382, 383, 0, 384, 0,
385, 386, 387, 388, 389, 390, 391, 392, 393, 0,
0, 394, 395, 396, 397, 398, 399, 0, 400, 401,
402, 0, 0, 0, 403, 404, 0, 0, 405, 406,
407, 408, 409, 0, 410, 411, 412, 413, 0, 414,
0, 415, 416, 417, 418, 419, 420, 421, 0, 422,
423, 424, 425, 0, 0, 426, 427, 428, 429, 430,
0, 431, 432, 433, 0, 434, 435, 436, 0, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 0,
447, 0, 448, 449, 450, 451, 452, 0, 453, 0,
454, 455, 456, 0, 457, 458, 459, 460, 461, 0,
462, 463, 0, 464, 465, 466, 0, 467, 468, 0,
469, 470, 471, 472, 473, 474, 475, 0, 476, 477,
478, 479, 480, 481, 482, 483, 0, 484, 485, 486,
0, 487, 488, 489, 0, 490, 0, 491, 0, 492,
493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
503, 504, 505, 506, 507, 0, 0, 508, 509, 510,
511, 512, 0, 513, 514, 515, 0, 0, 516, 517,
518, 519, 1486, 521, 522, 523, 524, 525, 526, 0,
527, 528, 0, 529, 530, 531, 532, 533, 534, 535,
536, 537, 538, 539, 540, 541, 542, 543, 544, 0,
545, 546, 547, 548, 0, 549, 550, 551, 552, 553,
554, 0, 555, 556, 0, 0, 557, 558, 559, 0,
0, 560, 561, 562, 563, 564, 565, 566, 567, 568,
569, 570, 571, 572, 573, 574, 575, 576, 0, 577,
578, 579, 580, 581, 582, 583, 584, 0, 585, 586,
587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
597, 598, 599, 0, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 0, 613, 614,
615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
625, 626, 627, 628, 629, 0, 630, 0, 631, 632,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
643, 644, 645, 646, 0, 647, 648, 649, 650, 651,
652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
0, 662, 663, 0, 0, 664, 665, 666, 667, 668,
669, 670, 0, 671, 672, 673, 0, 0, 675, 676,
677, 678, 679, 0, 680, 681, 682, 683, 684, 685,
686, 687, 0, 0, 688, 689, 690, 691, 692, 0,
0, 693, 694, 695, 696, 697, 0, 698, 0, 699,
700, 701, 702, 703, 704, 0, 0, 705, 0, 0,
706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
716, 717, 718, 719, 720, 721, 722, 35, 723, 724,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 340, 341,
342, 343, 344, 345, 346, 347, 348, 0, 349, 350,
351, 0, 0, 0, 0, 0, 0, 0, 352, 353,
354, 0, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 0, 368, 369, 370, 371,
372, 373, 374, 0, 0, 375, 376, 0, 377, 378,
0, 379, 380, 381, 382, 383, 0, 384, 0, 385,
386, 387, 388, 389, 390, 391, 392, 393, 0, 0,
394, 395, 396, 397, 398, 399, 0, 400, 401, 402,
0, 0, 0, 403, 404, 0, 0, 405, 406, 407,
408, 409, 0, 410, 411, 412, 413, 0, 414, 0,
415, 416, 417, 418, 419, 420, 421, 0, 422, 423,
424, 425, 0, 0, 426, 427, 428, 429, 430, 0,
431, 432, 433, 0, 434, 435, 436, 0, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 0, 447,
0, 448, 449, 450, 451, 452, 0, 453, 0, 454,
455, 456, 0, 457, 458, 459, 460, 461, 0, 462,
463, 0, 464, 465, 466, 0, 467, 468, 0, 469,
1575, 471, 472, 473, 474, 475, 0, 476, 477, 478,
479, 480, 481, 482, 483, 0, 484, 485, 486, 0,
487, 488, 489, 0, 490, 0, 491, 0, 492, 493,
494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 0, 0, 508, 509, 510, 511,
512, 0, 513, 514, 515, 0, 0, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 0, 527,
528, 0, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 0, 545,
546, 547, 548, 0, 549, 550, 551, 552, 553, 554,
0, 555, 556, 0, 0, 557, 558, 559, 0, 0,
560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
570, 571, 572, 573, 574, 575, 576, 0, 577, 578,
579, 580, 581, 582, 583, 584, 0, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 0, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 0, 613, 614, 615,
616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
626, 627, 628, 629, 0, 630, 0, 631, 632, 633,
634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
644, 645, 646, 0, 647, 648, 649, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 0,
662, 663, 0, 0, 664, 665, 666, 667, 668, 669,
670, 0, 671, 672, 673, 0, 0, 675, 676, 677,
678, 679, 0, 680, 681, 682, 683, 684, 685, 686,
687, 0, 0, 688, 689, 690, 691, 692, 0, 0,
693, 694, 695, 696, 697, 0, 698, 0, 699, 700,
701, 702, 703, 704, 0, 0, 705, 0, 0, 706,
707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
717, 718, 719, 720, 721, 722, 35, 723, 724, 0,
37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 340, 341, 342,
343, 344, 345, 346, 347, 348, 0, 349, 350, 351,
0, 0, 0, 0, 0, 0, 0, 352, 353, 354,
0, 355, 356, 357, 358, 359, 360, 361, 362, 363,
364, 365, 366, 367, 0, 368, 369, 370, 371, 372,
373, 374, 0, 0, 375, 376, 0, 377, 378, 0,
379, 380, 381, 382, 383, 0, 384, 0, 385, 386,
387, 388, 389, 390, 391, 392, 393, 0, 0, 394,
395, 396, 397, 398, 399, 0, 400, 401, 402, 0,
0, 0, 403, 404, 0, 0, 405, 406, 407, 408,
409, 0, 410, 411, 412, 413, 0, 414, 0, 415,
416, 417, 418, 419, 420, 421, 0, 422, 423, 424,
425, 0, 0, 426, 427, 428, 429, 430, 0, 431,
432, 433, 0, 434, 435, 436, 0, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 0, 447, 0,
448, 449, 450, 451, 452, 0, 453, 0, 454, 455,
456, 0, 457, 458, 459, 460, 461, 0, 462, 463,
0, 464, 465, 466, 0, 467, 468, 0, 469, 1588,
471, 472, 473, 474, 475, 0, 476, 477, 478, 479,
480, 481, 482, 483, 0, 484, 485, 486, 0, 487,
488, 489, 0, 490, 0, 491, 0, 492, 493, 494,
495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 0, 0, 508, 509, 510, 511, 512,
0, 513, 514, 515, 0, 0, 516, 517, 518, 519,
520, 521, 522, 523, 524, 525, 526, 0, 527, 528,
0, 529, 530, 531, 532, 533, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 0, 545, 546,
547, 548, 0, 549, 550, 551, 552, 553, 554, 0,
555, 556, 0, 0, 557, 558, 559, 0, 0, 560,
561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
571, 572, 573, 574, 575, 576, 0, 577, 578, 579,
580, 581, 582, 583, 584, 0, 585, 586, 587, 588,
589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
599, 0, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 0, 613, 614, 615, 616,
617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
627, 628, 629, 0, 630, 0, 631, 632, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
645, 646, 0, 647, 648, 649, 650, 651, 652, 653,
654, 655, 656, 657, 658, 659, 660, 661, 0, 662,
663, 0, 0, 664, 665, 666, 667, 668, 669, 670,
0, 671, 672, 673, 0, 0, 675, 676, 677, 678,
679, 0, 680, 681, 682, 683, 684, 685, 686, 687,
0, 0, 688, 689, 690, 691, 692, 0, 0, 693,
694, 695, 696, 697, 0, 698, 0, 699, 700, 701,
702, 703, 704, 0, 0, 705, 0, 0, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 35, 723, 724, 0, 37,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 340, 341, 342, 343,
344, 345, 346, 347, 348, 0, 349, 350, 351, 0,
0, 0, 0, 0, 0, 0, 352, 353, 354, 0,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 0, 368, 369, 370, 371, 372, 373,
374, 0, 0, 375, 376, 0, 377, 378, 0, 379,
380, 381, 382, 383, 0, 384, 0, 385, 386, 387,
388, 389, 390, 391, 392, 393, 0, 0, 394, 395,
396, 397, 398, 399, 0, 400, 401, 402, 0, 0,
0, 403, 404, 0, 0, 405, 406, 407, 408, 409,
0, 410, 411, 412, 413, 0, 414, 0, 415, 416,
417, 418, 419, 420, 421, 0, 422, 423, 424, 425,
0, 0, 426, 427, 428, 429, 430, 0, 431, 432,
433, 0, 434, 435, 436, 0, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 0, 447, 0, 448,
449, 450, 451, 452, 0, 453, 0, 454, 455, 456,
0, 457, 458, 459, 460, 461, 0, 462, 463, 0,
464, 465, 466, 0, 467, 468, 0, 469, 1600, 471,
472, 473, 474, 475, 0, 476, 477, 478, 479, 480,
481, 482, 483, 0, 484, 485, 486, 0, 487, 488,
489, 0, 490, 0, 491, 0, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 0, 0, 508, 509, 510, 511, 512, 0,
513, 514, 515, 0, 0, 516, 517, 518, 519, 1601,
521, 522, 523, 524, 525, 526, 0, 527, 528, 0,
529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 0, 545, 546, 547,
548, 0, 549, 550, 551, 552, 553, 554, 0, 555,
556, 0, 0, 557, 558, 559, 0, 0, 560, 561,
562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 0, 577, 578, 579, 580,
581, 582, 583, 584, 0, 585, 586, 587, 588, 589,
590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
0, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 0, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 0, 630, 0, 631, 632, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
646, 0, 647, 648, 649, 650, 651, 652, 653, 654,
655, 656, 657, 658, 659, 660, 661, 0, 662, 663,
0, 0, 664, 665, 666, 667, 668, 669, 670, 0,
671, 672, 673, 0, 0, 675, 676, 677, 678, 679,
0, 680, 681, 682, 683, 684, 685, 686, 687, 0,
0, 688, 689, 690, 691, 692, 0, 0, 693, 694,
695, 696, 697, 0, 698, 0, 699, 700, 701, 702,
703, 704, 0, 0, 705, 0, 0, 706, 707, 708,
709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
719, 720, 721, 722, 35, 723, 724, 0, 37, 0,
0, 39, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 340, 341, 342, 343, 344,
345, 346, 347, 348, 0, 349, 350, 351, 0, 0,
0, 0, 0, 0, 0, 352, 353, 354, 0, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 0, 368, 369, 370, 371, 372, 373, 374,
0, 0, 375, 376, 0, 377, 378, 0, 379, 380,
381, 382, 383, 0, 384, 0, 385, 386, 387, 388,
389, 390, 391, 392, 393, 0, 0, 394, 395, 396,
397, 398, 399, 0, 400, 401, 402, 0, 0, 0,
0, 404, 0, 0, 0, 406, 407, 408, 409, 0,
410, 411, 412, 413, 3036, 414, 0, 415, 416, 417,
418, 419, 420, 421, 0, 422, 423, 424, 425, 0,
0, 426, 427, 428, 429, 430, 0, 431, 432, 433,
0, 434, 435, 436, 0, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 0, 447, 0, 448, 449,
450, 451, 452, 0, 453, 0, 454, 455, 456, 0,
457, 458, 459, 460, 461, 0, 462, 463, 0, 464,
465, 466, 0, 467, 468, 0, 469, 470, 471, 472,
473, 474, 475, 0, 476, 477, 478, 479, 480, 481,
482, 483, 0, 484, 485, 486, 0, 487, 488, 489,
0, 490, 0, 491, 0, 492, 493, 494, 495, 496,
497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
507, 0, 0, 508, 509, 510, 511, 512, 0, 513,
514, 515, 0, 0, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 0, 527, 528, 0, 529,
530, 531, 532, 533, 534, 535, 536, 537, 538, 539,
540, 541, 542, 543, 544, 0, 545, 546, 547, 548,
0, 549, 550, 551, 552, 553, 554, 0, 555, 556,
0, 0, 557, 558, 559, 0, 0, 560, 561, 562,
563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
573, 574, 575, 576, 0, 577, 578, 579, 580, 581,
582, 583, 584, 0, 585, 586, 587, 588, 589, 590,
591, 592, 593, 594, 595, 596, 597, 598, 599, 0,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 0, 613, 614, 615, 616, 617, 618,
619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
629, 0, 630, 0, 631, 632, 633, 634, 635, 0,
637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
0, 647, 648, 649, 650, 651, 652, 653, 654, 655,
656, 657, 658, 659, 660, 661, 0, 662, 663, 0,
0, 664, 665, 666, 667, 668, 669, 670, 0, 671,
672, 673, 0, 0, 675, 676, 677, 678, 679, 0,
680, 681, 682, 683, 684, 685, 686, 687, 0, 0,
688, 689, 690, 691, 692, 0, 0, 693, 694, 695,
696, 697, 0, 698, 0, 699, 700, 701, 702, 703,
704, 0, 0, 705, 0, 0, 706, 707, 708, 709,
710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
720, 721, 722, 35, 723, 724, 0, 37, 0, 0,
39, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 340, 341, 342, 343, 344, 345,
346, 347, 348, 0, 349, 350, 351, 0, 0, 0,
0, 0, 0, 0, 352, 353, 354, 0, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 0, 368, 369, 370, 371, 372, 373, 374, 0,
0, 375, 376, 0, 377, 378, 0, 379, 380, 381,
382, 383, 0, 384, 0, 385, 386, 387, 388, 389,
390, 391, 392, 393, 0, 0, 394, 395, 396, 397,
398, 399, 0, 400, 401, 402, 0, 0, 0, 0,
404, 0, 0, 0, 406, 407, 408, 409, 0, 410,
411, 412, 413, 0, 414, 0, 415, 416, 417, 418,
419, 420, 421, 0, 422, 423, 424, 425, 0, 0,
426, 427, 428, 429, 430, 0, 431, 432, 433, 0,
434, 435, 436, 0, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 0, 447, 0, 448, 449, 450,
451, 452, 0, 453, 0, 454, 455, 456, 0, 457,
458, 459, 460, 461, 0, 462, 463, 0, 464, 465,
466, 0, 467, 468, 0, 469, 470, 471, 472, 473,
474, 475, 0, 476, 477, 478, 479, 480, 481, 482,
483, 0, 484, 485, 486, 0, 487, 488, 489, 0,
490, 0, 491, 0, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
0, 0, 508, 509, 510, 511, 512, 0, 513, 514,
515, 0, 0, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, 0, 527, 528, 0, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
541, 542, 543, 544, 0, 545, 546, 547, 548, 0,
549, 550, 551, 552, 553, 554, 0, 555, 556, 0,
0, 557, 558, 559, 0, 0, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
574, 575, 576, 0, 577, 578, 579, 580, 581, 582,
583, 584, 0, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 0, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 0, 613, 614, 615, 616, 617, 618, 619,
620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
0, 630, 0, 631, 632, 633, 634, 635, 0, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 0,
647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
657, 658, 659, 660, 661, 0, 662, 663, 0, 0,
664, 665, 666, 667, 668, 669, 670, 0, 671, 672,
673, 0, 0, 675, 676, 677, 678, 679, 0, 680,
681, 682, 683, 684, 685, 686, 687, 0, 0, 688,
689, 690, 691, 692, 0, 0, 693, 694, 695, 696,
697, 0, 698, 0, 699, 700, 701, 702, 703, 704,
0, 0, 705, 0, 0, 706, 707, 708, 709, 710,
711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 722, 35, 723, 724, 0, 37, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 340, 341, 342, 343, 344, 345, 346,
347, 348, 0, 349, 350, 351, 0, 0, 0, 0,
0, 0, 0, 352, 353, 354, 0, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
0, 368, 369, 370, 371, 372, 373, 374, 0, 0,
375, 376, 0, 377, 378, 0, 379, 380, 381, 382,
383, 0, 384, 0, 385, 386, 387, 388, 389, 390,
391, 392, 393, 0, 0, 394, 395, 396, 397, 398,
399, 0, 400, 401, 402, 0, 0, 0, 0, 404,
0, 0, 0, 406, 407, 408, 409, 0, 410, 411,
412, 413, 0, 414, 0, 415, 416, 417, 418, 419,
420, 421, 0, 422, 423, 424, 425, 0, 0, 426,
427, 428, 429, 430, 0, 431, 432, 433, 0, 434,
435, 436, 0, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 0, 447, 0, 448, 449, 450, 451,
452, 0, 453, 0, 454, 455, 456, 0, 457, 458,
459, 460, 461, 0, 462, 463, 0, 464, 465, 466,
0, 467, 468, 0, 469, 470, 471, 472, 473, 474,
475, 0, 476, 477, 478, 479, 480, 481, 482, 483,
0, 484, 485, 486, 0, 487, 488, 489, 0, 490,
0, 491, 0, 492, 493, 494, 495, 496, 497, 498,
499, 500, 501, 502, 503, 504, 505, 506, 507, 0,
0, 508, 509, 510, 511, 512, 0, 513, 514, 515,
0, 0, 516, 517, 518, 519, 520, 521, 522, 523,
524, 525, 526, 0, 527, 528, 0, 529, 530, 531,
532, 533, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 0, 545, 546, 547, 548, 0, 549,
550, 551, 552, 553, 554, 0, 555, 556, 0, 0,
557, 558, 559, 0, 0, 560, 561, 562, 563, 564,
565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
575, 576, 0, 577, 578, 579, 580, 581, 582, 583,
584, 0, 585, 586, 587, 588, 589, 590, 591, 592,
593, 594, 595, 596, 597, 598, 599, 0, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 0, 613, 614, 615, 616, 617, 618, 619, 620,
621, 622, 623, 624, 625, 626, 627, 628, 629, 0,
630, 0, 631, 632, 633, 634, 635, 0, 637, 638,
639, 640, 641, 642, 643, 644, 645, 646, 0, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 660, 661, 0, 662, 663, 0, 0, 664,
665, 666, 667, 668, 669, 670, 0, 671, 672, 673,
0, 0, 675, 676, 677, 678, 679, 0, 680, 681,
682, 683, 684, 685, 686, 687, 0, 0, 688, 689,
690, 691, 692, 0, 0, 693, 694, 695, 696, 697,
0, 698, 0, 699, 700, 701, 702, 703, 704, 0,
0, 705, 0, 0, 706, 707, 708, 709, 710, 711,
712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
722, 0, 723, 724
};
static const yytype_int16 yycheck[] =
{
2, 73, 73, 73, 73, 161, 73, 73, 73, 73,
73, 1406, 88, 73, 73, 73, 2, 73, 73, 1218,
73, 73, 73, 73, 115, 73, 117, 1008, 142, 1377,
949, 125, 2127, 1415, 305, 1252, 83, 305, 1658, 133,
1201, 987, 150, 152, 290, 136, 122, 1196, 1246, 928,
1248, 1578, 1545, 124, 2004, 124, 2066, 104, 944, 1378,
1233, 3216, 2487, 1326, 1054, 1404, 952, 114, 115, 955,
117, 1224, 2050, 1225, 2043, 88, 123, 1548, 154, 81,
3896, 1142, 1143, 1144, 2409, 949, 1975, 1148, 3506, 136,
1480, 1698, 1095, 807, 3717, 1410, 935, 3533, 1208, 2285,
2050, 1103, 3571, 3178, 3179, 1563, 4172, 4396, 1054, 122,
2520, 127, 114, 1533, 1534, 88, 2476, 119, 3950, 2510,
4092, 4369, 2055, 1543, 4065, 1290, 142, 1188, 141, 131,
3025, 3518, 1290, 1290, 147, 148, 1377, 2196, 2511, 1683,
4725, 154, 1469, 1687, 1008, 1386, 1690, 1691, 4118, 122,
4120, 3958, 2162, 2163, 2043, 1396, 4418, 2509, 1485, 3425,
808, 1107, 88, 3403, 1043, 1309, 1310, 1311, 104, 2092,
2093, 2494, 292, 2096, 5051, 2344, 88, 277, 84, 101,
86, 154, 989, 3960, 4318, 1338, 292, 2298, 1075, 4782,
141, 1078, 945, 5058, 1106, 4778, 122, 148, 3533, 1133,
1090, 954, 108, 1394, 4686, 5070, 2033, 1981, 1072, 2395,
122, 117, 1908, 1909, 1204, 968, 5074, 5057, 160, 1165,
147, 5804, 1343, 2156, 296, 296, 296, 296, 154, 296,
296, 296, 296, 296, 5019, 3019, 296, 296, 296, 5827,
296, 296, 154, 296, 296, 296, 296, 1368, 296, 125,
2183, 3816, 1373, 1006, 5062, 4860, 5618, 133, 1204, 1012,
3924, 5766, 2089, 5933, 1455, 3107, 1419, 3105, 1459, 3066,
5568, 1024, 3759, 1464, 3514, 1616, 5061, 1335, 4383, 2106,
1641, 1160, 1473, 3844, 3990, 1231, 1077, 3084, 1531, 1532,
1226, 338, 1763, 5613, 5847, 1249, 1487, 1243, 5371, 1542,
1091, 5782, 1565, 5784, 1249, 1285, 1286, 5969, 1728, 1729,
1368, 4685, 5981, 4687, 5963, 1373, 4747, 29, 6211, 5617,
9, 13, 76, 1037, 20, 4451, 83, 1098, 76, 2016,
5235, 3471, 1752, 3473, 3474, 76, 1527, 5890, 3478, 3479,
3480, 2264, 3482, 3483, 3484, 76, 148, 5626, 124, 76,
76, 6194, 76, 1287, 1288, 5168, 5169, 5170, 164, 5172,
5173, 5174, 5175, 5176, 83, 76, 5897, 5898, 76, 76,
108, 2482, 76, 91, 106, 70, 91, 13, 70, 919,
117, 85, 86, 75, 76, 76, 78, 79, 1449, 81,
76, 76, 155, 133, 85, 86, 115, 81, 188, 3964,
85, 86, 35, 133, 76, 105, 189, 113, 41, 42,
76, 133, 76, 85, 86, 48, 49, 76, 76, 85,
86, 54, 184, 238, 244, 191, 1625, 268, 102, 148,
63, 238, 65, 245, 67, 13, 161, 172, 113, 191,
73, 125, 107, 133, 244, 161, 189, 244, 189, 133,
70, 1624, 76, 133, 133, 75, 76, 6487, 78, 79,
251, 81, 133, 196, 28, 1344, 95, 4067, 1470, 1415,
70, 268, 5077, 99, 1717, 1718, 244, 91, 24, 133,
106, 81, 70, 222, 1198, 244, 1876, 75, 5922, 245,
69, 6093, 70, 81, 73, 365, 70, 76, 260, 6451,
6575, 75, 386, 244, 1747, 133, 1845, 81, 244, 273,
1429, 184, 146, 76, 244, 69, 70, 99, 253, 73,
6413, 75, 76, 244, 238, 405, 366, 81, 1512, 5406,
351, 5851, 268, 246, 386, 354, 1415, 442, 455, 2,
1426, 293, 204, 1858, 1430, 244, 1432, 379, 413, 83,
99, 6213, 412, 289, 187, 3890, 6109, 106, 330, 117,
6403, 70, 193, 35, 397, 1429, 75, 76, 330, 41,
42, 333, 81, 95, 3361, 182, 48, 49, 6059, 216,
209, 1420, 54, 216, 83, 193, 6764, 260, 497, 100,
83, 63, 122, 65, 6669, 67, 540, 99, 350, 118,
111, 73, 483, 236, 106, 184, 244, 1806, 5970, 1782,
121, 346, 194, 1368, 2267, 3950, 115, 244, 1373, 425,
2113, 1820, 141, 3958, 154, 211, 0, 674, 244, 385,
1783, 83, 143, 150, 2287, 189, 379, 355, 150, 520,
355, 102, 586, 462, 161, 5930, 6824, 738, 739, 148,
921, 1850, 1851, 921, 3441, 288, 408, 330, 1811, 290,
333, 526, 125, 115, 150, 150, 499, 150, 150, 586,
133, 6564, 674, 533, 446, 161, 150, 586, 583, 182,
93, 260, 290, 93, 446, 261, 426, 209, 350, 402,
150, 738, 739, 1677, 359, 527, 148, 121, 519, 583,
540, 283, 1636, 583, 426, 461, 93, 1641, 422, 499,
543, 6786, 442, 583, 1704, 187, 251, 281, 1630, 458,
6322, 485, 289, 6157, 93, 358, 4860, 4327, 1901, 363,
2045, 583, 6684, 540, 288, 251, 426, 6767, 497, 285,
303, 355, 5607, 540, 216, 586, 426, 426, 511, 423,
6412, 330, 4886, 543, 333, 426, 497, 523, 1704, 494,
807, 6654, 316, 437, 236, 439, 586, 1307, 583, 2096,
407, 583, 426, 446, 466, 481, 441, 502, 2019, 581,
586, 497, 5030, 585, 527, 521, 586, 1123, 521, 526,
573, 1127, 1128, 1129, 1585, 586, 558, 497, 426, 2194,
2195, 1137, 532, 5285, 530, 2492, 481, 583, 6651, 1886,
564, 565, 222, 4785, 2133, 194, 288, 6348, 586, 2146,
2147, 2441, 579, 5071, 5729, 521, 455, 4893, 502, 583,
466, 526, 573, 4899, 586, 583, 2077, 526, 6731, 465,
583, 917, 6204, 1614, 585, 583, 586, 95, 472, 473,
1840, 587, 583, 2192, 581, 963, 583, 583, 585, 583,
579, 526, 583, 496, 586, 1868, 448, 446, 586, 581,
2397, 586, 583, 4680, 1665, 583, 583, 5690, 485, 583,
513, 577, 574, 575, 6777, 558, 358, 586, 466, 6209,
519, 1682, 583, 6555, 1840, 528, 586, 583, 583, 6568,
564, 565, 1848, 1849, 917, 6554, 586, 586, 1699, 322,
5284, 583, 5286, 6583, 5345, 586, 465, 583, 3993, 583,
3995, 2448, 993, 993, 583, 583, 993, 993, 244, 993,
993, 2122, 586, 2460, 2125, 322, 1916, 519, 2265, 497,
1894, 2361, 928, 5077, 917, 583, 583, 6500, 1039, 1894,
536, 1107, 540, 322, 574, 575, 2077, 590, 586, 586,
6513, 209, 423, 465, 1843, 3134, 4353, 583, 526, 1848,
1849, 1907, 4212, 4213, 574, 575, 564, 4217, 251, 558,
497, 6462, 485, 2041, 2201, 497, 574, 575, 990, 3158,
1037, 917, 1039, 3162, 6656, 5121, 5122, 5123, 5124, 5125,
574, 575, 223, 427, 3899, 917, 1252, 583, 4980, 4570,
1110, 497, 497, 6086, 497, 497, 142, 1953, 194, 586,
574, 575, 95, 497, 496, 95, 1120, 437, 1122, 442,
1124, 5136, 2090, 99, 6319, 1106, 1130, 497, 4979, 6324,
6325, 513, 576, 577, 578, 579, 6408, 1155, 458, 2107,
289, 586, 1054, 1055, 1101, 442, 528, 1043, 1105, 4546,
346, 2422, 1156, 1157, 4770, 2406, 575, 2428, 6730, 112,
586, 289, 6660, 6661, 6627, 488, 5953, 576, 577, 578,
579, 574, 575, 576, 577, 578, 579, 2545, 3930, 1968,
289, 3929, 6390, 79, 220, 219, 1098, 2340, 2341, 24,
182, 488, 76, 2084, 517, 182, 133, 283, 107, 6407,
4350, 256, 1098, 368, 240, 2510, 3913, 1225, 590, 488,
289, 1241, 574, 575, 576, 577, 578, 579, 76, 542,
517, 455, 6411, 381, 93, 1241, 209, 244, 244, 209,
519, 6811, 2021, 194, 133, 246, 1043, 244, 517, 1257,
69, 1198, 2031, 1200, 73, 542, 4296, 91, 442, 1161,
2333, 268, 268, 287, 36, 5106, 38, 219, 235, 189,
583, 268, 420, 542, 1160, 5960, 122, 3961, 158, 76,
4745, 497, 289, 289, 194, 6690, 158, 1189, 76, 1202,
189, 6779, 289, 1206, 6556, 205, 583, 1199, 1104, 350,
205, 1203, 1204, 1205, 355, 95, 244, 455, 400, 2016,
5042, 101, 540, 2412, 583, 222, 1122, 6800, 1124, 425,
2084, 201, 4886, 266, 455, 168, 1334, 2542, 1134, 201,
5823, 381, 283, 2294, 1995, 2114, 194, 13, 2117, 2118,
365, 160, 289, 4318, 928, 370, 1122, 371, 1124, 455,
1156, 1157, 194, 1226, 289, 406, 1328, 573, 586, 5864,
371, 313, 586, 1160, 1200, 2211, 367, 540, 6851, 585,
420, 93, 398, 559, 341, 1202, 524, 328, 283, 1206,
1156, 1157, 521, 1285, 1286, 5767, 6565, 289, 1290, 3178,
142, 110, 1234, 93, 213, 1631, 2457, 2458, 1634, 583,
1226, 1637, 3280, 1639, 1290, 124, 1642, 250, 381, 93,
1646, 381, 95, 586, 6191, 536, 3249, 263, 101, 209,
2493, 2494, 268, 6200, 390, 283, 5615, 2500, 583, 1315,
1316, 230, 1408, 2506, 2507, 355, 4411, 189, 6203, 2512,
256, 283, 4677, 519, 100, 4680, 4782, 420, 2521, 2228,
420, 337, 521, 5601, 2527, 586, 6221, 346, 1344, 1043,
285, 180, 6202, 322, 256, 6223, 312, 585, 6176, 1382,
1383, 366, 371, 3783, 3784, 452, 6253, 5639, 3788, 371,
525, 355, 455, 6662, 450, 455, 2539, 586, 514, 513,
6175, 583, 3325, 5365, 93, 1408, 248, 2400, 6206, 426,
319, 3460, 80, 485, 384, 83, 3517, 355, 98, 87,
88, 89, 384, 1415, 521, 521, 3190, 189, 3828, 3829,
6205, 355, 365, 489, 521, 491, 209, 105, 138, 1415,
346, 1382, 1383, 2510, 2511, 1408, 1120, 426, 1122, 3135,
1124, 3137, 3269, 2520, 2447, 142, 1130, 4782, 2451, 2339,
6729, 458, 2529, 2456, 346, 3550, 2459, 2376, 355, 497,
189, 6740, 381, 282, 161, 928, 455, 355, 519, 368,
158, 161, 1156, 1157, 521, 586, 1160, 2364, 350, 2365,
587, 587, 1408, 442, 2323, 428, 521, 2248, 2422, 5296,
587, 381, 2379, 5300, 2428, 2382, 1408, 191, 350, 6778,
322, 6084, 2392, 355, 456, 2417, 448, 300, 366, 519,
490, 2375, 2376, 201, 460, 6392, 245, 7, 490, 521,
10, 11, 322, 220, 93, 93, 6805, 346, 284, 488,
420, 21, 22, 23, 189, 25, 26, 2518, 322, 6404,
30, 31, 32, 240, 13, 540, 398, 505, 6146, 253,
6148, 6830, 587, 346, 6152, 6153, 246, 991, 517, 1630,
371, 519, 414, 2450, 184, 455, 5343, 2454, 2455, 488,
184, 490, 93, 380, 573, 437, 2367, 519, 350, 110,
1043, 1503, 581, 542, 583, 584, 585, 586, 583, 397,
2381, 455, 584, 124, 586, 5565, 109, 540, 381, 293,
3569, 1285, 1286, 2394, 194, 504, 1290, 5043, 365, 525,
420, 1613, 1614, 291, 1616, 408, 168, 3012, 5087, 209,
442, 360, 351, 322, 583, 444, 1782, 1613, 1614, 183,
1616, 583, 1679, 525, 346, 1098, 346, 420, 237, 365,
260, 584, 442, 246, 587, 455, 260, 386, 455, 180,
366, 497, 360, 105, 2518, 366, 350, 1120, 442, 1122,
1344, 1124, 514, 1097, 437, 458, 488, 1130, 1131, 1132,
442, 587, 455, 1675, 1945, 6552, 3565, 1945, 386, 268,
3569, 3174, 5971, 97, 357, 2492, 199, 545, 488, 367,
182, 499, 182, 1156, 1157, 517, 384, 1160, 250, 3014,
247, 398, 1704, 3018, 488, 69, 120, 5042, 5043, 73,
330, 540, 402, 333, 408, 6308, 330, 517, 191, 273,
542, 583, 586, 95, 379, 6575, 519, 1633, 432, 1635,
5864, 1415, 1638, 517, 1640, 543, 6321, 1643, 1644, 1645,
586, 3910, 542, 442, 256, 24, 519, 108, 69, 439,
1656, 282, 73, 322, 322, 34, 1190, 586, 542, 1879,
1880, 583, 1882, 1863, 367, 1671, 2414, 1673, 5, 130,
464, 223, 6649, 1879, 1880, 586, 1882, 69, 134, 1826,
1827, 73, 1784, 583, 5050, 4860, 142, 24, 1896, 488,
1898, 1793, 521, 448, 393, 161, 49, 34, 247, 583,
80, 322, 490, 83, 5044, 395, 1808, 87, 88, 89,
500, 4886, 502, 525, 67, 346, 506, 514, 517, 6669,
181, 99, 3204, 189, 540, 189, 446, 1290, 4968, 540,
485, 420, 446, 4973, 346, 424, 6434, 209, 1840, 160,
192, 1843, 1844, 542, 583, 335, 1848, 1849, 521, 6726,
1313, 5006, 1315, 1316, 346, 581, 403, 1843, 249, 585,
139, 3060, 1848, 1849, 219, 583, 455, 1914, 160, 381,
284, 474, 527, 442, 442, 583, 249, 232, 300, 184,
35, 1344, 355, 238, 583, 540, 41, 42, 442, 436,
1826, 1827, 213, 571, 572, 573, 574, 575, 576, 577,
578, 579, 139, 450, 394, 1981, 260, 202, 420, 564,
271, 6496, 264, 444, 1916, 360, 360, 212, 73, 488,
488, 442, 214, 6212, 346, 316, 204, 255, 583, 483,
330, 485, 287, 333, 1907, 326, 6786, 455, 558, 486,
455, 386, 386, 316, 240, 6193, 1932, 1933, 517, 517,
381, 540, 1415, 6561, 6562, 260, 2093, 3118, 313, 2096,
316, 5296, 99, 583, 5771, 5300, 327, 488, 1981, 5776,
331, 208, 5779, 542, 542, 564, 330, 381, 1914, 1992,
1953, 1907, 1968, 275, 350, 346, 350, 436, 268, 420,
432, 355, 3157, 189, 443, 380, 517, 369, 319, 3157,
3157, 450, 5077, 192, 4564, 4565, 285, 362, 1981, 232,
192, 291, 76, 525, 583, 583, 371, 507, 3095, 380,
2033, 542, 485, 3371, 455, 330, 2098, 1953, 333, 157,
226, 2103, 187, 191, 95, 2021, 458, 486, 3279, 412,
101, 272, 83, 3533, 2152, 2031, 446, 380, 285, 83,
235, 455, 424, 425, 238, 1981, 437, 5998, 5681, 508,
381, 216, 583, 420, 425, 261, 250, 204, 586, 1981,
455, 586, 6665, 4498, 115, 264, 2089, 80, 520, 407,
83, 236, 264, 455, 268, 4645, 381, 367, 449, 3616,
313, 4516, 446, 2106, 3421, 416, 388, 519, 489, 420,
491, 3990, 4197, 424, 485, 2177, 234, 148, 469, 2181,
438, 4000, 115, 4082, 148, 346, 489, 6406, 491, 122,
305, 204, 455, 206, 6732, 420, 517, 2264, 2114, 2131,
3371, 2117, 2118, 288, 455, 293, 168, 2139, 583, 583,
497, 446, 583, 531, 517, 148, 73, 380, 209, 5567,
1613, 1614, 583, 1616, 350, 5591, 188, 4548, 513, 1843,
533, 381, 6424, 4554, 1848, 1849, 181, 488, 3409, 490,
2246, 4581, 4582, 4583, 4584, 21, 5992, 4587, 4588, 4589,
4590, 4591, 4592, 4593, 4594, 4595, 4596, 1107, 5606, 6782,
4563, 223, 350, 4082, 5817, 583, 5819, 124, 3351, 5586,
420, 4553, 3443, 358, 6174, 4557, 4558, 497, 219, 4532,
3537, 3538, 3539, 3540, 217, 3542, 4275, 245, 521, 540,
512, 232, 4281, 584, 70, 531, 581, 238, 520, 584,
585, 523, 1916, 2246, 161, 455, 219, 3454, 3455, 3456,
3567, 326, 2228, 4653, 4654, 1165, 430, 4170, 6055, 232,
408, 279, 346, 558, 6226, 238, 5591, 497, 3204, 369,
263, 439, 128, 583, 439, 268, 294, 350, 6557, 412,
2272, 381, 239, 2246, 2276, 381, 287, 583, 583, 163,
583, 232, 310, 573, 1968, 4471, 4219, 238, 3349, 371,
3351, 571, 572, 573, 574, 575, 576, 577, 578, 579,
219, 381, 313, 3424, 287, 302, 449, 6248, 275, 312,
420, 1231, 327, 232, 420, 5555, 331, 5557, 424, 238,
2246, 3240, 206, 1243, 502, 3204, 420, 502, 5764, 189,
313, 4264, 198, 573, 2246, 18, 19, 2021, 191, 6155,
420, 496, 485, 365, 381, 585, 2417, 2031, 370, 455,
244, 362, 2508, 3239, 37, 3241, 3242, 40, 513, 2467,
371, 4721, 313, 445, 367, 292, 6655, 6199, 287, 296,
191, 2485, 5808, 528, 268, 455, 3240, 521, 238, 362,
1843, 232, 4392, 420, 416, 1848, 1849, 5823, 371, 5529,
533, 5531, 5532, 5533, 313, 424, 3399, 3236, 3401, 3590,
3890, 221, 3405, 431, 2406, 2476, 2476, 2409, 232, 2476,
2476, 362, 2476, 2476, 238, 408, 448, 238, 6666, 3592,
2406, 99, 532, 2409, 277, 5320, 455, 6493, 421, 5764,
2114, 420, 80, 2117, 2118, 83, 5771, 2090, 3152, 583,
381, 5776, 246, 362, 5779, 3903, 499, 422, 131, 437,
270, 581, 371, 485, 2107, 585, 277, 460, 451, 540,
3950, 537, 313, 1926, 3608, 442, 455, 115, 3958, 1932,
1933, 142, 2488, 5808, 122, 153, 280, 148, 156, 420,
169, 164, 470, 564, 162, 437, 3277, 439, 5823, 313,
161, 6307, 2568, 346, 471, 527, 3375, 350, 80, 3560,
148, 83, 513, 2505, 3383, 1968, 587, 3386, 540, 499,
586, 362, 190, 2419, 455, 2421, 325, 3519, 189, 2425,
191, 2427, 205, 3276, 2430, 346, 6498, 6499, 2434, 350,
513, 583, 564, 115, 5861, 161, 102, 238, 362, 80,
122, 350, 83, 448, 2228, 5981, 87, 88, 89, 587,
502, 583, 381, 543, 425, 2568, 245, 169, 2021, 562,
6808, 262, 2098, 129, 105, 540, 148, 2103, 2031, 217,
248, 574, 575, 576, 577, 578, 579, 248, 5905, 412,
485, 4001, 424, 261, 455, 95, 381, 416, 4998, 564,
279, 420, 80, 540, 513, 2568, 274, 573, 581, 87,
88, 89, 585, 540, 3757, 294, 277, 3360, 238, 585,
181, 586, 3785, 455, 326, 263, 449, 564, 586, 540,
268, 310, 527, 249, 3797, 420, 455, 564, 80, 238,
75, 83, 262, 245, 540, 217, 81, 340, 350, 587,
587, 2177, 2568, 564, 589, 2181, 5981, 273, 6620, 338,
160, 2114, 485, 262, 2117, 2118, 2568, 39, 564, 3832,
455, 364, 169, 115, 312, 586, 97, 279, 239, 540,
122, 497, 1372, 3676, 521, 3892, 365, 70, 583, 350,
4224, 263, 294, 6839, 355, 6841, 268, 3440, 81, 120,
316, 1391, 202, 564, 1394, 521, 148, 150, 310, 209,
533, 15, 212, 3876, 275, 6861, 3783, 3784, 161, 69,
70, 3788, 564, 565, 80, 586, 587, 83, 150, 367,
6055, 87, 88, 89, 285, 5150, 338, 398, 3991, 161,
312, 583, 581, 581, 583, 497, 585, 4832, 245, 105,
588, 5166, 431, 414, 370, 497, 6718, 564, 565, 4068,
291, 3828, 3829, 365, 584, 80, 327, 587, 83, 6228,
331, 4381, 87, 88, 89, 2228, 583, 448, 497, 69,
5910, 578, 279, 73, 80, 4094, 583, 83, 585, 576,
105, 87, 88, 89, 581, 367, 583, 294, 585, 5864,
497, 3901, 5408, 471, 3065, 583, 474, 3065, 6614, 5415,
3679, 5192, 108, 310, 485, 69, 70, 5198, 5199, 73,
586, 263, 460, 497, 590, 581, 268, 81, 105, 431,
4830, 587, 4832, 35, 584, 400, 367, 587, 4069, 41,
42, 338, 521, 6269, 502, 361, 48, 49, 3724, 365,
3726, 3727, 54, 514, 4822, 576, 527, 2310, 6088, 124,
581, 63, 583, 65, 585, 67, 6096, 6097, 4173, 540,
312, 73, 578, 489, 6199, 491, 5052, 583, 6491, 585,
3851, 381, 6308, 586, 2337, 4808, 502, 590, 460, 367,
359, 4770, 3721, 564, 2347, 582, 2349, 533, 514, 586,
582, 517, 2355, 445, 586, 170, 2359, 574, 575, 576,
577, 578, 583, 489, 4145, 491, 416, 584, 4515, 5984,
420, 6111, 139, 140, 562, 367, 6116, 6117, 33, 3796,
195, 3798, 3799, 303, 431, 291, 574, 575, 576, 577,
578, 579, 2531, 4866, 6269, 2534, 586, 587, 213, 576,
577, 578, 217, 2406, 583, 455, 2409, 3661, 342, 343,
344, 345, 462, 574, 575, 576, 577, 578, 3904, 329,
489, 582, 491, 583, 239, 585, 291, 6783, 243, 4359,
584, 502, 586, 6308, 6410, 187, 4447, 4448, 445, 584,
562, 586, 584, 258, 586, 291, 583, 3851, 4315, 581,
326, 583, 574, 575, 576, 577, 578, 579, 3067, 422,
584, 367, 586, 80, 216, 584, 83, 586, 460, 165,
87, 88, 89, 85, 86, 584, 4019, 586, 540, 583,
542, 585, 80, 5348, 236, 3904, 6842, 584, 326, 586,
571, 572, 573, 574, 575, 576, 577, 578, 579, 2502,
2503, 3043, 367, 204, 584, 206, 586, 584, 273, 586,
2513, 2514, 588, 3123, 5064, 70, 4046, 584, 470, 586,
3924, 367, 489, 584, 491, 586, 993, 470, 584, 230,
586, 584, 584, 586, 586, 6410, 288, 540, 470, 542,
355, 2544, 329, 571, 572, 573, 574, 575, 576, 577,
578, 579, 3206, 584, 3208, 586, 540, 584, 542, 586,
4046, 584, 584, 586, 586, 3152, 584, 4168, 586, 5059,
562, 5080, 4173, 584, 3190, 586, 103, 104, 3104, 3105,
437, 438, 574, 575, 576, 577, 578, 579, 379, 262,
4321, 406, 6568, 6551, 295, 584, 584, 586, 586, 3141,
3248, 584, 584, 586, 586, 584, 358, 586, 584, 489,
586, 491, 437, 438, 584, 3157, 586, 157, 3160, 3161,
584, 502, 586, 4783, 4784, 533, 584, 4787, 586, 129,
584, 3157, 586, 445, 3160, 3161, 584, 3190, 586, 1106,
1107, 342, 343, 344, 345, 586, 587, 4677, 349, 350,
4680, 5080, 303, 584, 355, 586, 584, 448, 586, 584,
589, 586, 3204, 437, 438, 571, 572, 573, 574, 575,
576, 577, 578, 579, 291, 437, 438, 3190, 3204, 584,
584, 586, 586, 6659, 583, 4016, 4017, 81, 584, 6665,
586, 564, 565, 6568, 485, 3311, 584, 3345, 586, 584,
584, 586, 586, 540, 483, 542, 571, 572, 573, 574,
575, 576, 577, 578, 579, 584, 3269, 586, 584, 3335,
586, 3263, 5830, 5831, 3190, 571, 572, 573, 574, 575,
576, 577, 578, 579, 531, 584, 527, 586, 3190, 204,
584, 206, 586, 584, 496, 586, 4347, 6265, 6266, 540,
367, 584, 4782, 586, 3307, 584, 365, 586, 3311, 442,
584, 513, 586, 583, 3398, 5715, 584, 2, 586, 4624,
584, 129, 586, 564, 1241, 584, 528, 586, 584, 584,
586, 586, 3335, 584, 6659, 586, 584, 5422, 586, 584,
6665, 586, 583, 4323, 3307, 4325, 6457, 6458, 3311, 3341,
584, 586, 586, 504, 533, 3358, 6782, 4767, 118, 584,
4502, 586, 80, 560, 515, 83, 293, 585, 3434, 87,
88, 89, 3335, 3365, 584, 4368, 586, 584, 584, 586,
586, 4162, 368, 365, 584, 4714, 586, 4323, 584, 4325,
586, 3307, 584, 238, 586, 3311, 81, 365, 584, 3375,
586, 560, 4183, 88, 584, 3307, 586, 3383, 368, 3311,
3386, 118, 584, 4576, 586, 584, 584, 586, 586, 3335,
584, 106, 586, 560, 584, 6570, 586, 293, 243, 114,
4410, 3434, 5400, 3335, 3500, 576, 584, 122, 586, 584,
3432, 586, 584, 586, 586, 80, 584, 4610, 83, 584,
4755, 586, 87, 88, 89, 583, 141, 6782, 108, 352,
584, 129, 147, 148, 4318, 244, 584, 3141, 586, 154,
584, 3434, 586, 584, 4410, 586, 584, 3469, 586, 3471,
130, 3473, 3474, 3157, 289, 289, 3478, 3479, 3480, 583,
3482, 3483, 3484, 5103, 4487, 587, 4563, 3500, 576, 584,
4663, 586, 589, 589, 571, 572, 573, 574, 575, 576,
577, 578, 579, 285, 4581, 4582, 4583, 4584, 3434, 215,
4587, 4588, 4589, 4590, 4591, 4592, 4593, 4594, 4595, 4596,
3204, 181, 3434, 584, 584, 586, 586, 3500, 584, 584,
586, 586, 108, 584, 3536, 586, 4689, 4800, 4615, 351,
352, 584, 584, 586, 586, 448, 584, 4338, 586, 4340,
129, 285, 5042, 5043, 584, 584, 586, 586, 584, 3561,
586, 291, 3025, 291, 584, 584, 586, 586, 584, 5301,
586, 5303, 446, 1896, 3500, 1898, 4653, 4654, 497, 333,
586, 583, 485, 544, 80, 6010, 585, 83, 3500, 583,
583, 87, 88, 89, 420, 268, 224, 583, 224, 365,
585, 268, 365, 420, 3606, 204, 224, 206, 224, 105,
6020, 271, 268, 224, 3661, 365, 3692, 238, 69, 115,
80, 420, 73, 83, 527, 6780, 122, 224, 587, 3785,
311, 230, 191, 521, 365, 4954, 448, 540, 583, 367,
4831, 3104, 3105, 359, 4523, 96, 238, 142, 584, 350,
108, 108, 148, 350, 544, 115, 583, 365, 350, 118,
350, 564, 122, 118, 507, 350, 160, 327, 381, 533,
533, 331, 130, 485, 157, 502, 3832, 238, 401, 3692,
583, 584, 588, 224, 587, 224, 346, 583, 148, 224,
530, 3375, 583, 3679, 3157, 394, 295, 3160, 3161, 3383,
583, 224, 3386, 1630, 107, 583, 544, 224, 224, 160,
224, 586, 224, 224, 3398, 527, 224, 224, 224, 3692,
380, 224, 367, 181, 224, 238, 224, 4518, 540, 365,
485, 3807, 224, 224, 583, 108, 311, 3813, 365, 238,
76, 3204, 583, 342, 343, 344, 345, 4964, 238, 5638,
349, 76, 564, 583, 5247, 583, 355, 217, 238, 583,
583, 583, 583, 214, 583, 425, 3692, 263, 76, 76,
583, 583, 268, 583, 583, 3884, 3885, 3886, 583, 583,
3692, 583, 583, 583, 1711, 4976, 583, 583, 583, 449,
248, 583, 583, 583, 3807, 291, 292, 76, 3954, 583,
3813, 3533, 583, 263, 1731, 583, 5296, 357, 268, 469,
5300, 583, 583, 271, 583, 583, 312, 268, 103, 104,
541, 583, 583, 583, 275, 3288, 583, 233, 377, 172,
586, 108, 311, 289, 3807, 586, 289, 291, 108, 586,
3813, 238, 362, 571, 572, 573, 574, 575, 576, 577,
578, 579, 312, 238, 455, 1782, 360, 353, 576, 285,
188, 520, 6272, 573, 586, 13, 586, 138, 583, 327,
584, 367, 583, 331, 370, 132, 583, 497, 587, 584,
497, 3807, 442, 168, 497, 532, 442, 3813, 346, 497,
497, 585, 497, 313, 442, 3807, 149, 497, 573, 497,
161, 3813, 3904, 188, 497, 504, 442, 367, 224, 447,
167, 497, 3375, 365, 308, 497, 515, 355, 3904, 197,
3383, 4998, 380, 3386, 497, 520, 571, 572, 573, 574,
575, 576, 577, 578, 579, 3398, 488, 388, 223, 386,
365, 360, 3928, 3929, 437, 583, 497, 261, 583, 161,
497, 197, 1879, 1880, 586, 1882, 5576, 381, 268, 224,
497, 197, 183, 521, 460, 497, 521, 425, 497, 497,
497, 228, 497, 497, 197, 497, 497, 129, 497, 674,
129, 432, 497, 335, 405, 80, 369, 497, 83, 405,
405, 449, 87, 88, 89, 3679, 4860, 386, 5313, 488,
460, 117, 386, 117, 584, 586, 365, 4886, 265, 497,
105, 469, 497, 497, 588, 5965, 497, 291, 291, 497,
115, 497, 4886, 5338, 497, 497, 497, 122, 291, 291,
365, 482, 291, 291, 497, 291, 291, 291, 507, 291,
583, 108, 224, 365, 4046, 224, 350, 189, 224, 224,
532, 308, 224, 148, 521, 319, 365, 350, 350, 350,
5233, 512, 108, 108, 238, 583, 562, 444, 303, 520,
107, 224, 523, 495, 583, 571, 572, 573, 574, 575,
576, 577, 578, 579, 6094, 495, 497, 584, 80, 497,
224, 83, 588, 350, 521, 224, 224, 583, 585, 13,
244, 5591, 562, 521, 581, 4118, 4119, 4120, 583, 359,
497, 581, 586, 354, 574, 575, 576, 577, 578, 579,
584, 583, 4124, 115, 536, 382, 335, 335, 83, 495,
122, 416, 497, 583, 583, 5138, 5139, 5140, 5141, 5142,
586, 253, 3605, 3606, 583, 4118, 4119, 4120, 376, 586,
244, 499, 586, 584, 261, 261, 148, 287, 3890, 5236,
573, 458, 300, 448, 366, 521, 108, 424, 263, 426,
521, 33, 429, 268, 9, 374, 129, 586, 532, 4181,
521, 438, 586, 584, 5333, 583, 355, 300, 355, 300,
447, 442, 4118, 4119, 4120, 497, 291, 292, 455, 497,
485, 497, 583, 238, 355, 365, 4118, 4119, 4120, 118,
467, 5288, 311, 5077, 350, 464, 3679, 312, 3950, 476,
3904, 311, 917, 480, 365, 217, 3958, 311, 329, 497,
437, 197, 365, 5024, 5025, 268, 586, 586, 365, 365,
935, 4317, 527, 488, 365, 455, 531, 420, 4250, 944,
945, 540, 262, 497, 452, 540, 371, 952, 353, 954,
955, 408, 108, 497, 584, 5144, 291, 303, 573, 404,
224, 263, 367, 968, 5764, 370, 268, 360, 535, 564,
238, 5771, 521, 6693, 521, 533, 5776, 108, 6698, 5779,
486, 4399, 987, 4384, 4296, 240, 405, 583, 583, 224,
583, 224, 452, 224, 4317, 223, 4308, 4309, 360, 540,
521, 1006, 350, 108, 365, 4385, 4318, 1012, 5808, 350,
312, 4323, 97, 4325, 365, 4395, 303, 259, 360, 1024,
577, 259, 4318, 5823, 238, 108, 239, 4384, 560, 581,
6229, 584, 4433, 5324, 4317, 560, 5537, 333, 452, 1044,
238, 584, 584, 303, 584, 584, 365, 350, 268, 1054,
268, 268, 268, 4433, 1059, 460, 268, 586, 586, 1064,
586, 585, 4374, 1068, 1069, 367, 544, 129, 497, 583,
1075, 586, 1077, 1078, 244, 332, 4433, 365, 359, 586,
584, 4317, 584, 584, 4502, 1090, 1091, 540, 561, 244,
584, 371, 526, 1098, 584, 4317, 584, 4409, 4410, 586,
377, 204, 1107, 584, 584, 4661, 244, 497, 584, 584,
584, 583, 387, 584, 321, 584, 326, 584, 586, 584,
349, 563, 537, 519, 537, 560, 3899, 583, 6533, 3902,
537, 3904, 527, 583, 583, 365, 583, 129, 365, 4451,
573, 273, 368, 573, 365, 224, 587, 497, 497, 355,
5324, 281, 227, 497, 586, 3928, 3929, 562, 460, 586,
1165, 497, 350, 224, 584, 583, 571, 572, 573, 574,
575, 576, 577, 578, 579, 474, 584, 583, 447, 584,
2417, 5981, 583, 5496, 5497, 5556, 5499, 224, 455, 224,
1195, 1196, 311, 4659, 447, 273, 447, 1202, 227, 1204,
365, 1206, 573, 497, 521, 227, 442, 537, 388, 313,
388, 518, 227, 497, 4680, 497, 323, 471, 497, 497,
442, 1226, 323, 323, 5413, 497, 1231, 4523, 1233, 5756,
197, 4617, 350, 442, 108, 497, 497, 442, 1243, 2476,
442, 497, 224, 582, 455, 117, 584, 497, 497, 497,
4669, 4670, 4671, 4672, 497, 6055, 130, 497, 497, 584,
562, 584, 256, 291, 291, 586, 584, 369, 584, 238,
507, 2508, 574, 575, 576, 577, 578, 579, 5786, 118,
1285, 1286, 156, 182, 584, 586, 238, 584, 583, 2526,
108, 224, 224, 5802, 4617, 6132, 5397, 6134, 497, 573,
238, 360, 256, 224, 238, 442, 521, 181, 182, 442,
583, 582, 452, 583, 4626, 189, 442, 521, 442, 442,
586, 222, 222, 1328, 4318, 291, 291, 291, 5715, 291,
291, 291, 291, 291, 4617, 291, 581, 215, 295, 428,
4721, 4721, 365, 129, 4721, 4721, 365, 4721, 4721, 365,
83, 365, 586, 377, 244, 532, 349, 514, 244, 584,
514, 584, 253, 428, 526, 494, 159, 238, 507, 564,
108, 521, 521, 6303, 248, 303, 584, 1382, 1383, 281,
583, 4617, 573, 584, 584, 497, 5487, 573, 6318, 586,
586, 584, 586, 129, 584, 4617, 583, 271, 488, 6199,
224, 1406, 1407, 1408, 156, 471, 248, 447, 507, 497,
1415, 227, 442, 497, 420, 1420, 497, 497, 584, 583,
1425, 1426, 442, 497, 584, 1430, 584, 1432, 129, 540,
583, 1436, 488, 527, 6364, 6365, 238, 148, 365, 224,
182, 584, 291, 507, 291, 291, 291, 1452, 583, 300,
276, 6143, 497, 327, 5963, 583, 583, 331, 544, 365,
108, 586, 584, 386, 507, 363, 586, 583, 365, 6269,
114, 5942, 346, 4859, 80, 4861, 350, 586, 2715, 497,
452, 250, 182, 5584, 251, 583, 582, 584, 244, 584,
1495, 291, 1497, 1498, 213, 355, 4900, 584, 355, 4885,
355, 355, 584, 244, 129, 538, 380, 4911, 6308, 586,
377, 584, 584, 538, 584, 584, 386, 301, 301, 294,
583, 294, 375, 257, 584, 583, 583, 129, 372, 4523,
584, 4854, 487, 5824, 573, 360, 4859, 507, 4861, 5120,
1545, 494, 5120, 6026, 540, 4318, 497, 244, 4860, 148,
275, 425, 262, 262, 355, 129, 355, 6040, 488, 142,
573, 497, 4885, 224, 4860, 586, 497, 227, 4341, 586,
291, 4854, 497, 497, 4886, 449, 4859, 584, 4861, 583,
1585, 196, 246, 108, 189, 5876, 268, 452, 360, 4901,
4886, 108, 4904, 583, 4906, 469, 6526, 471, 240, 521,
474, 350, 4885, 223, 452, 360, 129, 154, 1613, 1614,
6410, 1616, 488, 108, 540, 244, 238, 365, 4854, 1624,
540, 415, 278, 4859, 368, 4861, 289, 244, 468, 129,
526, 539, 4854, 6020, 583, 4677, 586, 4859, 4680, 4861,
4952, 584, 584, 584, 6127, 6128, 583, 5876, 583, 4885,
5824, 294, 161, 445, 205, 584, 4968, 365, 6045, 269,
1665, 4973, 80, 4885, 6356, 83, 584, 583, 583, 414,
584, 4444, 584, 108, 497, 1680, 224, 1682, 4451, 5875,
224, 6611, 6612, 497, 238, 108, 355, 521, 5068, 583,
5864, 4987, 4988, 324, 1699, 583, 583, 115, 583, 1704,
583, 583, 5876, 583, 122, 584, 583, 182, 224, 583,
1715, 108, 452, 244, 369, 584, 6374, 507, 584, 466,
466, 573, 272, 238, 5920, 584, 108, 151, 181, 526,
148, 536, 261, 583, 488, 6048, 238, 488, 346, 521,
4782, 273, 583, 76, 1749, 583, 6059, 583, 583, 365,
4523, 584, 231, 544, 583, 438, 142, 5137, 438, 368,
5072, 142, 205, 540, 5865, 5077, 5152, 587, 6568, 540,
210, 536, 525, 1778, 1779, 1780, 80, 1782, 584, 583,
583, 5077, 108, 526, 235, 583, 235, 455, 105, 1794,
586, 586, 325, 488, 244, 355, 488, 1802, 411, 217,
6283, 275, 365, 365, 583, 452, 108, 6290, 108, 5121,
5122, 5123, 5124, 5125, 269, 368, 368, 583, 246, 246,
583, 223, 220, 6136, 586, 437, 583, 493, 129, 5152,
129, 129, 497, 583, 475, 1840, 3073, 194, 1843, 76,
519, 452, 210, 1848, 1849, 263, 105, 584, 5144, 584,
268, 583, 372, 108, 421, 5167, 5168, 5169, 5170, 6659,
5172, 5173, 5174, 5175, 5176, 6665, 4860, 493, 583, 5152,
94, 437, 586, 6129, 586, 373, 1881, 355, 437, 583,
1885, 1886, 351, 455, 244, 6272, 3123, 6143, 151, 583,
497, 351, 4886, 223, 312, 466, 1901, 466, 189, 586,
527, 540, 1907, 540, 246, 583, 4900, 526, 246, 527,
583, 1916, 584, 296, 5991, 2180, 5152, 4911, 521, 1383,
1849, 3320, 526, 3904, 4094, 3409, 4859, 95, 1340, 4834,
5152, 6517, 3435, 101, 3489, 4309, 5918, 6354, 6635, 5363,
5965, 5022, 4832, 6635, 5546, 4832, 5941, 4023, 1953, 367,
3666, 6497, 6323, 5823, 6143, 5335, 5336, 6623, 6384, 6383,
6537, 6659, 4027, 5591, 5043, 5069, 5054, 6280, 6328, 3503,
1975, 3503, 1382, 5012, 4854, 4119, 1981, 5038, 146, 4357,
1378, 5585, 6782, 4756, 5948, 4404, 5105, 1992, 6241, 6741,
1995, 6474, 6854, 6476, 1999, 6835, 5932, 6549, 4317, 5076,
5042, 5043, 5878, 5407, 2258, 5317, 6114, 6337, 5320, 5321,
5881, 120, 989, 5417, 133, 4491, 1666, 5149, 5152, 6083,
6737, 3519, 4000, 2302, 5320, 3179, 5080, 2299, 2033, 6320,
2320, 4415, 5991, 2375, 202, 6229, 5348, 1088, 2043, 4251,
3434, 209, 460, 1055, 212, 6554, 4885, 4170, 6786, 6575,
1219, 5111, 5348, 3465, 5113, 1999, 2211, 3085, 6802, 5337,
4752, 6080, 6490, 3650, 5191, 1820, 3921, 3121, 3936, 4693,
3095, 239, 6606, 6478, 1889, 2080, 1888, 1627, 6465, 5318,
3120, 4680, 5285, 5077, 2089, 5302, 6056, 4860, 4677, 1867,
6269, 6268, 4753, 4677, 6790, 6600, 6696, 6024, 6465, 4619,
6356, 2106, 3003, 5790, 6479, 3874, 6480, 275, 2113, 3004,
3856, 2522, 3737, 4886, 3464, 35, 1891, 5413, 6823, 39,
3854, 41, 42, 3844, 3771, 4556, 3009, 4900, 48, 49,
4430, 674, 1507, 3579, 54, 2312, 3141, 6444, 4911, 129,
306, 1308, 3132, 63, 562, 65, 6320, 67, 68, 1679,
5144, 71, 1100, 73, 1288, 1909, 574, 575, 576, 577,
578, 579, 3157, 1903, 3149, 3898, 3150, 1288, 4759, 1823,
5319, 4718, 4760, 2178, 336, 3161, 3662, 2439, 346, 2,
5802, -1, 350, -1, -1, 1613, 1133, -1, -1, 2194,
2195, 2196, 360, -1, -1, -1, -1, -1, -1, -1,
-1, 369, -1, -1, 5516, 5517, 2211, -1, -1, 6596,
-1, -1, -1, 381, 4987, 4988, -1, 5529, 2223, 5531,
5532, 5533, -1, -1, -1, -1, -1, -1, -1, 2234,
-1, -1, -1, -1, -1, -1, -1, -1, 6721, -1,
-1, 2246, 5565, 2248, -1, 2250, -1, -1, -1, -1,
-1, -1, 420, -1, 5296, 423, 424, -1, 5300, -1,
-1, 6517, -1, -1, 2269, -1, -1, 187, -1, -1,
-1, -1, 2277, -1, -1, -1, -1, -1, -1, -1,
2285, -1, 5565, -1, -1, 5597, -1, 455, -1, -1,
-1, -1, -1, -1, -1, -1, 216, -1, -1, 2304,
-1, -1, -1, -1, 5077, -1, 6693, -1, 6504, -1,
6837, 6698, -1, -1, -1, 2320, 236, -1, 2323, -1,
-1, 2326, -1, -1, -1, 5637, -1, -1, 2333, 5565,
-1, -1, -1, -1, 2339, -1, -1, -1, -1, -1,
-1, -1, -1, 5565, 6827, -1, 2351, -1, 5121, 5122,
5123, 5124, 5125, 6724, 6725, -1, 524, -1, -1, 2364,
2365, -1, 2367, 2368, -1, -1, -1, -1, 288, -1,
-1, 5144, -1, -1, 2379, -1, 2381, 2382, 5690, 6635,
6576, 6577, -1, -1, -1, -1, 2391, 2392, -1, 2394,
2395, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2406, -1, 35, 2409, -1, -1, 39, -1, 41,
42, -1, -1, 5407, -1, -1, 48, 49, -1, 5413,
-1, -1, 54, 5417, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, -1, 358, 71,
-1, 73, -1, -1, -1, 2450, -1, -1, -1, 2454,
2455, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 80, -1,
-1, 83, -1, -1, -1, 87, 88, 89, 2493, 2494,
-1, -1, -1, -1, 2499, 2500, 5792, -1, -1, -1,
2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, -1, -1,
2515, -1, 2517, 115, 2519, 2520, 2521, 2522, 2523, 2524,
122, -1, 2527, -1, 2529, 2530, -1, -1, 2533, 5915,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2547, 2548, 2549, 2550, 148, 5320, 3785, 5591,
-1, -1, 5864, -1, -1, 187, -1, 5958, -1, -1,
-1, 2566, 5980, 2568, -1, -1, 5946, -1, 5864, -1,
-1, -1, -1, -1, -1, 5348, 496, -1, -1, 5959,
-1, -1, -1, -1, 216, 5801, -1, -1, -1, -1,
-1, -1, 5915, 513, -1, 3832, -1, 5977, 5910, -1,
-1, 5958, -1, -1, 236, -1, -1, 5919, 528, 5991,
5991, 5991, 5991, -1, 5991, 5991, 5991, 5991, 5991, 3856,
-1, 5991, 5991, 5991, -1, 5991, 5991, -1, 5991, 5991,
5991, 5991, 5915, 5991, 5407, 3872, -1, -1, -1, -1,
5413, -1, -1, -1, 5417, -1, -1, -1, 6844, 6845,
-1, -1, -1, 3890, -1, -1, 288, -1, -1, -1,
-1, 263, -1, -1, -1, -1, 268, -1, -1, -1,
-1, 5444, 5445, -1, -1, -1, 5449, 5450, -1, 5915,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 291,
292, -1, 95, 5915, -1, -1, -1, -1, 101, -1,
-1, -1, -1, -1, -1, 2710, -1, -1, -1, -1,
312, -1, -1, 3950, -1, -1, -1, 3954, -1, -1,
93, 3958, 5764, -1, -1, 98, 358, -1, -1, 5771,
-1, -1, -1, -1, 5776, -1, -1, 5779, -1, -1,
-1, -1, -1, 146, -1, -1, -1, -1, -1, -1,
-1, 353, 2757, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 136, -1, 367, 5808, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 149, 150, -1, -1,
-1, 5823, -1, -1, -1, -1, -1, -1, 161, -1,
-1, -1, 165, -1, -1, -1, -1, -1, -1, 202,
-1, -1, -1, -1, -1, 2810, 209, -1, -1, 212,
183, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6201, -1, -1, 6290, -1, -1, -1, -1, -1,
-1, 6143, -1, -1, 207, 6147, 239, -1, -1, -1,
-1, -1, -1, -1, -1, 218, -1, 6143, -1, -1,
-1, 6174, -1, -1, 227, -1, -1, -1, 460, -1,
-1, -1, -1, -1, 496, -1, -1, 240, -1, -1,
5864, -1, 275, 246, -1, -1, -1, -1, -1, -1,
-1, 513, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6174, -1, -1, -1, -1, 528, -1, -1, -1,
273, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6305, -1, -1, -1, -1,
-1, 304, -1, -1, -1, -1, -1, -1, 6174, 5981,
-1, -1, -1, 346, -1, -1, -1, 350, -1, -1,
-1, -1, 6174, 326, -1, -1, -1, 360, -1, -1,
562, -1, -1, -1, -1, -1, 369, -1, 6354, 571,
572, 573, 574, 575, 576, 577, 578, 579, 381, -1,
-1, -1, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994,
2995, -1, 2997, -1, 367, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3009, -1, -1, 3012, -1, -1,
-1, -1, -1, 6055, -1, -1, -1, 420, 391, 5792,
423, 424, -1, -1, -1, -1, -1, -1, 401, 402,
-1, 6354, 405, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6356, -1, -1, -1, 6360, -1,
6362, -1, 455, -1, 6366, 6367, -1, -1, -1, 432,
-1, -1, 435, 3068, -1, -1, 439, 3072, -1, 442,
3075, 6354, 3077, -1, -1, 3080, 449, -1, -1, 452,
6466, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3095, 5864, -1, -1, -1, -1, -1, -1, 471, 3104,
3105, -1, -1, -1, -1, 478, -1, -1, -1, -1,
-1, -1, 485, -1, -1, 488, -1, -1, 6354, 492,
-1, 524, -1, -1, -1, -1, -1, 500, -1, 502,
-1, -1, 6354, -1, 507, -1, 3141, -1, -1, -1,
-1, -1, -1, 6466, -1, -1, -1, -1, 4385, 6143,
-1, -1, -1, -1, -1, 3160, 3161, 6199, 4395, -1,
533, -1, 3167, -1, -1, -1, -1, -1, -1, 3174,
6550, -1, -1, 3178, 3179, -1, -1, -1, -1, -1,
3185, -1, -1, 6466, -1, 3190, 3191, 95, -1, -1,
3195, -1, -1, 101, 6575, 6575, 4433, -1, 6575, 3204,
-1, 6575, 6575, 6669, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3222, -1, -1,
3225, -1, -1, -1, -1, -1, -1, 6269, -1, -1,
6466, 3236, -1, 3238, 3239, -1, 3241, 3242, 146, 3244,
-1, -1, -1, -1, 6466, 3, -1, -1, -1, -1,
8, 3256, -1, -1, 12, -1, 14, 6251, 16, 17,
-1, -1, -1, -1, 3269, -1, 6308, -1, -1, 27,
-1, 3276, 3277, -1, -1, -1, -1, -1, -1, -1,
3285, -1, -1, -1, -1, 43, 44, -1, 6669, 6669,
-1, -1, 6669, -1, 202, 6669, 6669, -1, -1, -1,
-1, 209, 3307, 3308, 212, -1, 3311, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6635, -1, -1, -1, -1, 3333, -1,
3335, 239, 90, -1, 3339, -1, -1, -1, -1, -1,
-1, -1, -1, 101, -1, 103, 104, -1, 3353, -1,
-1, -1, -1, 3358, -1, 3360, 3361, -1, 3363, -1,
-1, -1, -1, 121, 3369, -1, -1, 275, 6410, -1,
6143, -1, -1, 131, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3389, 143, -1, 145, 146, -1,
3395, -1, -1, -1, 152, -1, 154, 3402, -1, -1,
-1, -1, -1, 6789, -1, 6786, 6786, -1, 166, 6786,
168, 3416, 6786, 6786, -1, -1, -1, -1, -1, -1,
-1, -1, 4659, -1, 3429, 183, -1, 185, -1, 3434,
188, -1, -1, -1, -1, 3440, 3441, -1, 346, -1,
4677, -1, 350, 4680, -1, 203, -1, 205, -1, 6835,
-1, 209, 360, 3458, 3459, 3460, -1, 215, -1, 3464,
-1, 369, -1, -1, -1, 223, 6789, 225, 6854, -1,
-1, -1, -1, 381, 232, -1, -1, 6789, 6251, -1,
-1, -1, 6794, -1, 4721, -1, 3491, 3492, -1, -1,
-1, -1, 250, 6789, -1, 3500, -1, -1, -1, -1,
-1, -1, 3507, -1, -1, -1, 6789, -1, -1, 267,
-1, 3516, 6835, -1, -1, 423, 424, -1, -1, -1,
-1, -1, -1, 6835, -1, -1, 6568, -1, 3533, -1,
-1, 6854, -1, -1, -1, -1, -1, -1, -1, 6835,
-1, 3546, 6854, -1, -1, 6857, -1, 455, -1, -1,
-1, -1, 6835, 6789, -1, -1, 314, 315, 6854, -1,
3565, -1, 320, -1, 3569, -1, -1, 6789, -1, -1,
-1, 6854, -1, 6346, -1, -1, 334, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3592, -1, -1,
-1, -1, -1, -1, 352, -1, -1, -1, -1, 6835,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6835, -1, -1, 524, 6659, 6854, -1,
-1, -1, -1, 6665, -1, -1, -1, -1, 80, -1,
-1, 83, 6854, -1, -1, 87, 88, 89, 396, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 410, 105, -1, -1, -1, -1, 416, 417,
-1, 419, -1, 115, -1, -1, 424, -1, -1, -1,
122, 80, 430, -1, 83, 433, -1, -1, 87, 88,
89, -1, 440, -1, -1, 3690, -1, 3692, -1, 447,
448, -1, -1, -1, -1, -1, 148, 455, -1, -1,
-1, 459, -1, 3708, -1, 3710, 115, -1, -1, -1,
-1, 469, 3717, 122, -1, -1, 3721, -1, 3723, 3724,
-1, 3726, 3727, 3728, -1, -1, -1, 485, -1, -1,
-1, 3736, -1, -1, -1, -1, 3741, -1, -1, 148,
6782, -1, -1, -1, -1, -1, -1, 505, -1, 507,
-1, 3756, -1, -1, -1, -1, -1, -1, 516, -1,
-1, -1, -1, -1, 522, -1, -1, -1, -1, 527,
-1, -1, -1, -1, 81, -1, -1, -1, 3783, 3784,
3785, -1, 540, 3788, -1, -1, -1, -1, -1, -1,
-1, 3796, 3797, 3798, 3799, -1, -1, -1, -1, -1,
-1, -1, 3807, -1, -1, 5042, 564, 3812, 3813, -1,
3815, 263, 3817, -1, -1, -1, 268, -1, -1, -1,
-1, -1, -1, 3828, 3829, 583, -1, 3832, -1, 587,
-1, 5068, -1, -1, -1, -1, -1, -1, -1, 291,
292, -1, -1, -1, -1, -1, -1, -1, 3853, -1,
3855, -1, 3857, -1, 263, -1, -1, -1, -1, 268,
312, -1, -1, 936, 937, -1, -1, 940, -1, -1,
-1, 3876, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 291, 292, -1, 3890, 95, 960, -1, -1,
-1, -1, 101, -1, 967, -1, -1, -1, -1, 3904,
5137, 353, -1, 312, -1, -1, -1, 116, -1, -1,
-1, -1, -1, -1, -1, 367, 3921, -1, 370, -1,
-1, -1, -1, 996, -1, 998, -1, -1, 1001, -1,
-1, 3936, 95, -1, -1, -1, -1, 146, 101, -1,
-1, -1, 1015, -1, 353, 3950, -1, 80, 1021, -1,
83, -1, -1, 3958, 87, 88, 89, -1, 367, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 115, 146, -1, 3990, -1, -1, 3993, 122,
3995, 200, -1, 202, -1, 4000, -1, -1, -1, -1,
209, -1, -1, 212, -1, -1, -1, -1, 460, -1,
-1, 4016, 4017, -1, -1, 148, 6789, 4022, -1, -1,
-1, -1, -1, -1, 108, -1, -1, -1, -1, -1,
239, -1, -1, -1, -1, -1, -1, -1, 4043, 202,
-1, 4046, -1, -1, 4049, -1, 209, -1, 132, 212,
-1, 460, 4057, -1, -1, -1, -1, -1, -1, 5296,
-1, -1, 6835, 5300, -1, -1, 275, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 239, 4082, -1, -1,
-1, 6854, -1, 167, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5335, 5336,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
562, -1, 275, 4118, 4119, 4120, -1, -1, -1, 571,
572, 573, 574, 575, 576, 577, 578, 579, -1, -1,
263, -1, 584, -1, 586, 268, -1, 346, 4143, -1,
-1, 350, -1, -1, 228, -1, -1, 4152, -1, 4154,
-1, 360, -1, 562, 81, -1, -1, 4162, 291, 292,
369, 88, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, 381, -1, -1, -1, -1, -1, 4183, 312,
-1, 265, -1, 346, -1, -1, -1, 350, -1, -1,
-1, -1, -1, -1, -1, 122, -1, 360, -1, -1,
-1, -1, -1, -1, -1, -1, 369, -1, -1, -1,
-1, 420, -1, -1, 423, 424, -1, -1, 381, 303,
353, -1, -1, -1, 308, -1, -1, 154, -1, -1,
-1, -1, -1, -1, 367, -1, -1, 370, -1, -1,
-1, -1, -1, 4248, -1, -1, 455, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 420, -1, -1,
423, 424, -1, -1, 80, 4270, 350, 83, -1, -1,
4275, 87, 88, 89, -1, -1, 4281, 1350, 1351, -1,
-1, -1, -1, -1, -1, 4290, -1, -1, -1, 105,
-1, -1, 455, -1, 80, -1, -1, 83, 382, 115,
-1, 87, 88, 89, -1, -1, 122, -1, -1, -1,
-1, -1, 4317, 4318, -1, 524, -1, -1, 4323, 105,
4325, -1, -1, -1, -1, -1, -1, 460, -1, 115,
-1, -1, 148, 4338, -1, 4340, 122, -1, -1, -1,
424, -1, -1, 4348, -1, 429, -1, -1, -1, 1422,
-1, -1, -1, -1, 438, 4360, -1, -1, -1, -1,
-1, 524, 148, 447, 1437, -1, -1, -1, -1, -1,
-1, 455, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 467, 4389, -1, -1, -1, -1, -1,
-1, -1, 476, -1, 1467, 1468, 480, -1, -1, -1,
-1, -1, -1, -1, -1, 4410, 4411, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 500, -1, -1, -1,
1493, -1, -1, -1, -1, -1, -1, -1, -1, 562,
4435, -1, -1, -1, -1, -1, -1, -1, 571, 572,
573, 574, 575, 576, 577, 578, 579, 263, -1, -1,
-1, 535, 268, 586, -1, 539, -1, -1, -1, -1,
-1, -1, -1, -1, 1064, -1, 4471, -1, -1, -1,
-1, -1, -1, -1, -1, 291, 292, 263, -1, -1,
-1, -1, 268, -1, -1, -1, -1, -1, 4493, -1,
1090, -1, 4497, -1, -1, -1, 312, -1, -1, -1,
108, -1, -1, -1, -1, 291, 292, 1580, 1581, -1,
-1, -1, -1, 4518, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 132, -1, 312, -1, -1, 4534,
-1, -1, 4537, -1, 5771, -1, -1, 353, 4543, 5776,
-1, -1, 5779, -1, -1, -1, -1, -1, 4553, -1,
-1, 367, 4557, 4558, 370, -1, -1, -1, 4563, 167,
-1, -1, -1, -1, -1, -1, 4571, 353, 4573, -1,
-1, 4576, -1, -1, -1, 4580, 4581, 4582, 4583, 4584,
-1, 367, 4587, 4588, 4589, 4590, 4591, 4592, 4593, 4594,
4595, 4596, -1, -1, -1, 4600, 4601, 4602, -1, -1,
4605, -1, -1, -1, -1, 4610, -1, -1, -1, -1,
4615, -1, 4617, -1, 4619, -1, -1, -1, -1, -1,
228, 80, 4627, -1, 83, 4630, -1, 4632, 87, 88,
89, -1, -1, -1, -1, -1, -1, -1, 945, -1,
-1, -1, -1, -1, 460, 4650, 105, 954, 4653, 4654,
-1, -1, -1, 4658, 4659, -1, 115, 265, 4663, -1,
4665, 968, -1, 122, -1, -1, -1, -1, -1, -1,
-1, -1, 4677, -1, 460, 4680, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4690, -1, -1, -1, 148,
-1, -1, -1, -1, -1, 303, -1, -1, -1, 1006,
308, -1, -1, -1, -1, 1012, -1, -1, -1, 5946,
-1, -1, -1, -1, -1, -1, -1, 1024, -1, -1,
-1, -1, 5959, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4737, -1, -1, -1, -1, -1, -1, -1,
5977, -1, 350, -1, -1, -1, 562, -1, -1, 4754,
-1, -1, -1, -1, 5991, 571, 572, 573, 574, 575,
576, 577, 578, 579, -1, 4770, -1, -1, -1, -1,
586, -1, -1, -1, 382, -1, 562, 4782, -1, -1,
-1, -1, -1, -1, -1, 571, 572, 573, 574, 575,
576, 577, 578, 579, -1, -1, -1, -1, 4803, -1,
-1, -1, -1, -1, 263, -1, -1, -1, -1, 268,
-1, -1, -1, -1, -1, -1, 424, -1, 6055, -1,
-1, 429, -1, -1, -1, 1425, -1, -1, -1, -1,
438, -1, 291, 292, -1, -1, 1436, -1, -1, 447,
-1, -1, -1, -1, -1, -1, -1, 455, -1, 4854,
-1, -1, 1452, 312, 4859, 4860, 4861, -1, -1, 467,
-1, -1, -1, -1, -1, -1, -1, -1, 476, -1,
-1, -1, 480, -1, -1, -1, -1, -1, -1, -1,
4885, 4886, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 500, -1, 353, -1, -1, -1, -1, -1,
1550, -1, -1, -1, -1, -1, -1, -1, 367, -1,
-1, 370, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1573, -1, -1, 4931, 535, -1, 4934,
-1, 539, -1, 1583, -1, -1, -1, 1587, -1, -1,
-1, 1591, -1, 1593, -1, -1, -1, -1, -1, 1599,
-1, -1, -1, -1, -1, 1605, -1, -1, 1608, -1,
-1, -1, 6199, 2036, 6201, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1285, 1286,
-1, -1, -1, -1, -1, -1, -1, -1, 2061, -1,
917, -1, -1, 4998, -1, -1, -1, -1, -1, -1,
-1, 460, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 95, 944, 945, 5024,
5025, -1, 101, 5028, -1, 952, -1, 954, 955, 108,
5035, -1, -1, -1, -1, -1, -1, 5042, 5043, -1,
-1, 968, -1, -1, -1, -1, -1, 5052, -1, -1,
-1, 130, -1, 6290, -1, -1, -1, -1, -1, -1,
987, 2134, -1, -1, -1, -1, -1, 146, 6305, -1,
-1, 5076, 5077, -1, -1, 5080, 5081, 5082, -1, 1006,
1680, -1, -1, -1, -1, 1012, -1, 5092, -1, -1,
-1, 2164, 2165, 2166, 2167, -1, -1, 1024, -1, -1,
-1, -1, 181, 562, -1, -1, -1, -1, -1, -1,
-1, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, -1, 202, -1, 584, -1, 1054, -1, -1,
209, -1, -1, 212, -1, -1, -1, -1, -1, -1,
-1, 1068, 1069, -1, 5149, -1, 80, 5152, 1075, 83,
1077, 1078, -1, 87, 88, 89, 2229, 2230, -1, -1,
239, -1, -1, -1, 1091, -1, -1, -1, -1, -1,
-1, -1, 2245, 5178, -1, -1, -1, -1, -1, -1,
1107, 115, -1, -1, -1, -1, 5191, -1, 122, -1,
-1, -1, 271, -1, -1, -1, 275, -1, -1, -1,
5205, -1, -1, -1, -1, -1, 2279, 2280, 2281, 2282,
-1, -1, -1, -1, 148, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5233, -1,
-1, 5236, -1, -1, -1, -1, -1, -1, 1165, 5244,
5245, -1, 5247, -1, -1, -1, 5251, 5252, 327, -1,
-1, 5256, 331, -1, -1, -1, -1, -1, 5263, -1,
-1, 5266, 5267, -1, -1, -1, -1, 346, 5273, -1,
-1, 350, -1, -1, -1, -1, -1, 1204, -1, -1,
-1, 360, -1, 5288, -1, -1, -1, -1, -1, -1,
369, 5296, -1, -1, -1, 5300, -1, -1, -1, 1226,
-1, 380, 381, -1, 1231, -1, -1, -1, -1, -1,
-1, -1, -1, 6550, -1, -1, 1243, -1, -1, -1,
-1, -1, -1, -1, -1, 2398, -1, -1, 5333, 263,
-1, 2404, -1, -1, 268, -1, 5341, -1, 6575, -1,
-1, 420, -1, 5348, 423, 424, 425, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1285, 1286,
-1, 5366, -1, -1, -1, -1, -1, -1, -1, -1,
449, -1, 3, -1, -1, -1, 455, 8, 312, 5384,
-1, 12, -1, 14, -1, 16, 17, -1, -1, -1,
469, -1, 5397, -1, -1, -1, 27, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 43, 44, -1, -1, -1, -1, -1, 5424,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6669, 367, -1, -1, 5441, -1, -1, -1,
-1, 5446, -1, -1, -1, 524, -1, -1, 5453, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 90,
-1, -1, -1, -1, 5469, -1, -1, -1, -1, -1,
101, 5476, 103, 104, -1, -1, -1, -1, -1, -1,
2080, 1408, 5487, -1, -1, -1, -1, -1, 1415, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1426,
131, -1, -1, 1430, -1, 1432, -1, -1, -1, -1,
-1, -1, 143, 5518, 145, 146, -1, -1, -1, -1,
-1, 152, -1, 154, -1, -1, 460, -1, -1, -1,
-1, -1, -1, 2606, -1, 166, -1, 168, -1, 5544,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6786,
-1, -1, 183, -1, 185, 5560, -1, 188, -1, -1,
5565, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 203, -1, 205, -1, -1, -1, 209, 5584,
-1, -1, -1, -1, 215, -1, 5591, -1, -1, -1,
-1, -1, 223, -1, 225, -1, -1, -1, -1, -1,
-1, 232, -1, -1, -1, -1, -1, -1, 81, 1916,
-1, -1, -1, -1, -1, 88, -1, -1, -1, 250,
-1, -1, -1, 2223, -1, -1, -1, -1, 562, -1,
-1, -1, -1, 5638, 2234, 5640, 267, 571, 572, 573,
574, 575, 576, 577, 578, 579, 1064, -1, -1, 122,
2250, -1, -1, -1, -1, -1, -1, -1, 1585, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 141, -1,
-1, -1, 1090, -1, 147, 148, 5681, -1, -1, -1,
-1, 154, -1, 314, 315, -1, -1, -1, -1, 320,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 334, 2304, -1, -1, 5712, -1, -1,
5715, -1, -1, 5718, 5719, 5720, -1, -1, -1, -1,
2370, 352, -1, -1, -1, -1, 2326, -1, 2378, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1665, 2339,
5745, 5746, -1, -1, 5749, -1, -1, -1, -1, -1,
-1, 2351, -1, -1, -1, 1682, -1, -1, -1, 5764,
-1, -1, -1, -1, -1, 396, 5771, -1, -1, -1,
-1, 5776, 1699, -1, 5779, 5780, -1, 1704, -1, 410,
-1, -1, 5787, -1, -1, 416, 417, -1, 419, -1,
-1, 2391, 2392, 424, -1, -1, 427, -1, -1, 430,
-1, -1, 433, 5808, -1, -1, 5811, -1, -1, 440,
-1, -1, 5817, -1, 5819, -1, 447, 448, 5823, -1,
-1, -1, -1, -1, 455, -1, -1, -1, 459, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 469, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 485, -1, -1, -1, -1, 5864,
5865, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5875, 2178, 80, -1, 505, 83, 507, -1, 95, 87,
88, 89, -1, -1, 101, 516, -1, -1, -1, -1,
-1, 522, -1, -1, -1, -1, 527, 105, -1, 116,
-1, -1, -1, -1, -1, -1, -1, 115, -1, 540,
5915, -1, -1, 1840, 122, 5920, -1, -1, -1, -1,
-1, 1848, 1849, -1, -1, -1, -1, -1, -1, 146,
-1, -1, -1, 564, -1, -1, -1, -1, -1, -1,
148, -1, -1, -1, -1, -1, -1, 2547, -1, -1,
-1, -1, 583, -1, -1, -1, 587, -1, -1, -1,
-1, 113, 2269, -1, -1, -1, -1, -1, -1, -1,
2277, -1, -1, -1, -1, -1, 5981, -1, 2285, 5984,
1907, -1, -1, 200, -1, 202, -1, -1, -1, 1916,
-1, -1, 209, -1, -1, 212, -1, -1, 3071, -1,
-1, -1, -1, -1, -1, -1, -1, 1425, -1, -1,
-1, 168, -1, -1, -1, 6020, 168, -1, 1436, 6024,
-1, 6026, 239, -1, -1, -1, 1953, -1, -1, -1,
-1, -1, -1, -1, 1452, 6040, -1, -1, -1, -1,
6045, -1, -1, -1, -1, -1, 6051, -1, -1, -1,
6055, -1, -1, -1, 1981, 263, 6061, 6062, 275, -1,
268, 2368, 219, -1, -1, -1, -1, 219, -1, -1,
-1, -1, -1, -1, -1, 232, -1, -1, -1, -1,
232, 238, -1, 291, 292, -1, 238, 244, 2395, -1,
-1, -1, 244, 250, -1, -1, 253, -1, 250, -1,
257, 253, -1, -1, 312, 257, 6111, -1, -1, -1,
-1, 6116, 6117, -1, -1, -1, 6121, -1, -1, -1,
-1, -1, 6127, 6128, 6129, -1, -1, 1545, -1, 346,
287, -1, -1, 350, -1, 287, -1, 289, 6143, -1,
-1, -1, -1, 360, -1, 353, -1, -1, -1, -1,
-1, -1, 369, -1, -1, -1, 313, -1, 6163, 367,
-1, 313, 370, -1, 381, -1, 6171, -1, -1, 6174,
-1, -1, 3245, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6199, -1, -1, -1, -1, -1,
-1, -1, -1, 420, -1, 362, 423, 424, 365, -1,
362, -1, -1, 365, 371, -1, -1, -1, -1, 371,
-1, -1, -1, -1, 6229, 6230, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 455, -1,
-1, -1, -1, -1, -1, -1, 6251, -1, -1, -1,
6255, 2178, 460, -1, -1, -1, -1, -1, -1, 6264,
6265, 6266, 1680, -1, 6269, -1, -1, 6272, -1, -1,
-1, 428, -1, -1, -1, -1, 428, -1, 6283, -1,
-1, -1, -1, -1, 2211, 6290, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6308, -1, -1, -1, 524, 3381, -1,
-1, 3384, -1, -1, -1, -1, -1, -1, -1, 2246,
132, -1, -1, -1, 6329, -1, -1, -1, 485, 481,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2269, -1, -1, -1, -1, -1, -1, 6354,
2277, 6356, -1, -1, 562, 167, 513, -1, 2285, -1,
-1, 513, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, -1, -1, -1, -1, 584, -1, -1, -1,
537, -1, 539, 540, -1, 537, -1, 539, 540, -1,
-1, -1, -1, -1, -1, -1, 95, -1, -1, 3472,
-1, -1, 101, -1, 561, 6410, -1, -1, -1, 561,
-1, -1, 3485, -1, 3064, -1, 228, 116, -1, -1,
3493, -1, -1, -1, 581, 1843, -1, 584, 585, -1,
587, -1, 584, -1, 586, 587, -1, 2364, 2365, -1,
2367, 2368, -1, -1, 917, -1, 6451, 146, -1, -1,
-1, -1, 2379, 265, 2381, 2382, -1, -1, -1, 3532,
6465, 6466, -1, -1, 6469, -1, -1, 2394, 2395, 6474,
-1, 6476, 945, 6478, -1, -1, -1, -1, -1, -1,
3553, 954, -1, 6488, -1, -1, 6491, -1, -1, -1,
-1, -1, -1, -1, -1, 968, 308, -1, -1, 6504,
-1, -1, -1, 202, -1, -1, -1, -1, -1, -1,
209, -1, 6517, 212, 987, -1, -1, -1, -1, -1,
-1, -1, -1, 2450, -1, -1, -1, 2454, 2455, -1,
-1, -1, -1, 1006, 346, -1, -1, -1, 350, 1012,
239, -1, -1, -1, -1, 3618, -1, 3620, -1, -1,
-1, 1024, -1, 6558, 81, -1, -1, 1975, -1, -1,
-1, 88, -1, 6568, -1, -1, -1, -1, -1, 381,
382, 6576, 6577, -1, -1, -1, 275, 6582, -1, -1,
-1, 1054, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6596, -1, -1, -1, 122, 1069, 6602, -1, -1,
-1, 6606, -1, -1, 1077, -1, -1, -1, 420, -1,
-1, -1, 424, -1, 141, -1, -1, 429, 1091, -1,
147, 148, -1, -1, -1, 2043, 438, 154, -1, -1,
6635, -1, -1, -1, 1107, 447, -1, -1, 3238, -1,
-1, 2568, -1, 455, 3244, -1, -1, 346, -1, 3722,
-1, 350, -1, -1, 6659, 467, 3729, -1, -1, -1,
6665, 360, 2080, -1, 476, -1, -1, -1, 480, -1,
369, -1, -1, -1, -1, -1, -1, -1, 6683, 6684,
-1, -1, 381, -1, -1, 3285, -1, -1, 6693, -1,
-1, 6696, 1165, 6698, -1, 2113, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6721, -1, -1, -1,
-1, 420, -1, 535, 423, 424, -1, -1, -1, 1202,
-1, 1204, -1, 1206, -1, -1, -1, -1, 95, -1,
-1, -1, -1, -1, 101, -1, -1, -1, -1, -1,
-1, -1, -1, 1226, -1, 6760, 455, -1, 1231, 6764,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1243, -1, -1, -1, -1, -1, -1, 6782, -1, -1,
-1, -1, -1, -1, 6789, -1, -1, -1, -1, 146,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2223, -1, -1, -1, -1,
-1, -1, 1285, 1286, -1, -1, 2234, -1, 6823, 6824,
-1, -1, 6827, -1, -1, 524, 6831, -1, 80, -1,
6835, 83, 2250, -1, 3141, 87, 88, 89, -1, 6844,
6845, -1, -1, -1, -1, 202, -1, -1, -1, 6854,
-1, -1, 209, 105, -1, 212, -1, 93, -1, -1,
3167, -1, -1, 115, 80, -1, -1, 83, -1, -1,
122, 87, 88, 89, -1, 111, -1, -1, 3185, -1,
-1, -1, 239, -1, 3191, -1, 2304, -1, 3195, 105,
-1, -1, 3492, -1, -1, -1, 148, -1, -1, 115,
136, -1, -1, -1, -1, -1, 122, -1, 2326, 1382,
1383, -1, -1, 149, -1, 3222, -1, -1, 275, -1,
-1, 2339, -1, -1, -1, -1, -1, -1, -1, 165,
-1, -1, 148, 2351, -1, 1408, -1, 3587, -1, -1,
-1, -1, 1415, -1, -1, 3595, -1, 183, -1, 3256,
-1, -1, -1, 189, -1, -1, -1, -1, -1, -1,
-1, -1, 3612, -1, -1, -1, -1, -1, -1, 3276,
-1, 207, 3622, 2391, 2392, 3625, -1, 3627, 3628, 4052,
4053, 3631, 218, -1, -1, 3635, -1, 3637, -1, 346,
3640, 227, -1, 350, -1, -1, -1, -1, -1, -1,
-1, 3308, -1, 360, 240, -1, -1, -1, -1, -1,
-1, 263, 369, 249, -1, -1, 268, 253, -1, -1,
-1, -1, -1, -1, 381, -1, 3333, -1, -1, -1,
-1, -1, 3339, -1, -1, -1, -1, 273, -1, 291,
292, -1, -1, -1, -1, -1, 3353, 263, -1, -1,
-1, -1, 268, 3360, -1, -1, 3363, -1, -1, -1,
312, -1, 3369, 420, -1, -1, 423, 424, 3718, -1,
-1, -1, -1, -1, -1, 291, 292, -1, -1, -1,
316, -1, 3389, -1, -1, -1, -1, -1, 3395, -1,
326, -1, -1, -1, -1, 3402, 312, -1, 455, -1,
-1, 353, -1, -1, -1, -1, -1, -1, 3708, 3416,
-1, -1, 1585, -1, -1, 367, -1, -1, 370, -1,
-1, -1, 3429, 3723, -1, -1, -1, -1, 3728, 2547,
-1, 367, -1, 3440, 370, -1, -1, 353, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 367, -1, -1, 370, 391, 3756, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 524, -1, 405,
-1, -1, -1, -1, -1, -1, 412, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1665, -1, -1, -1, 432, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 442, -1, 460, 1682,
-1, -1, -1, 449, 3141, -1, 452, -1, -1, 4292,
-1, -1, -1, -1, -1, -1, 1699, 106, -1, -1,
-1, 1704, -1, -1, -1, 471, -1, -1, -1, -1,
3167, -1, 478, -1, 460, -1, -1, -1, -1, 485,
-1, -1, 488, 489, -1, 491, 492, -1, 3185, -1,
-1, -1, -1, 3190, 3191, -1, -1, -1, 3195, -1,
-1, 507, -1, -1, -1, -1, -1, 3204, 514, 95,
-1, 517, -1, -1, 520, 101, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3222, -1, 533, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
562, -1, 3239, -1, 3241, 3242, -1, -1, -1, 571,
572, 573, 574, 575, 576, 577, 578, 579, -1, 3256,
146, -1, 584, -1, -1, -1, -1, 95, -1, -1,
-1, -1, -1, 101, -1, -1, 562, -1, -1, 3276,
3277, -1, -1, -1, -1, 571, 572, 573, 574, 575,
576, 577, 578, 579, -1, -1, -1, 1840, 584, -1,
-1, -1, -1, -1, -1, 1848, 1849, -1, -1, -1,
3307, 3308, 4032, 3690, 3311, -1, 202, -1, 146, -1,
917, -1, -1, 209, -1, -1, 212, -1, -1, -1,
-1, 4474, -1, 3710, -1, -1, 3333, -1, 3335, -1,
3717, -1, 3339, -1, -1, -1, -1, -1, 945, -1,
-1, -1, -1, 239, -1, -1, 3353, 954, -1, -1,
-1, -1, -1, 3360, 1907, -1, 3363, -1, -1, -1,
-1, 968, 3369, 1916, 202, -1, -1, -1, -1, 4049,
-1, 209, -1, 4103, 212, 4105, -1, 4057, -1, 275,
987, -1, 3389, -1, -1, -1, -1, -1, 3395, -1,
-1, -1, -1, -1, -1, 3402, -1, -1, -1, 1006,
1953, 239, -1, -1, -1, 1012, -1, -1, -1, 3416,
-1, -1, -1, -1, -1, -1, -1, 1024, -1, -1,
-1, -1, 3429, -1, -1, -1, -1, 3434, 1981, -1,
-1, -1, -1, 3440, -1, -1, -1, 275, -1, 1992,
-1, -1, -1, -1, -1, -1, -1, 1054, -1, -1,
346, -1, 80, -1, 350, 83, -1, -1, -1, 87,
88, 89, 1069, 95, 360, -1, -1, -1, -1, 101,
1077, -1, 4152, 369, 4154, -1, 108, 105, -1, -1,
2033, -1, -1, -1, 1091, 381, -1, 115, -1, -1,
-1, -1, -1, 3500, 122, -1, -1, -1, 130, -1,
1107, -1, -1, -1, -1, -1, -1, -1, 346, -1,
-1, -1, 350, -1, 146, -1, -1, 4247, -1, -1,
148, -1, 360, 4253, 420, -1, -1, 423, 424, -1,
-1, 369, -1, -1, -1, -1, 2089, -1, -1, -1,
-1, -1, -1, 381, -1, -1, -1, -1, -1, 181,
-1, -1, -1, 2106, -1, -1, -1, -1, 1165, 455,
-1, -1, -1, -1, -1, -1, -1, -1, 4248, -1,
202, -1, -1, -1, -1, -1, -1, 209, -1, -1,
212, -1, 420, -1, -1, 423, 424, -1, -1, -1,
-1, -1, -1, -1, -1, 1202, -1, 1204, -1, 1206,
-1, -1, -1, -1, -1, -1, -1, 239, -1, -1,
4290, -1, -1, -1, -1, -1, -1, 455, -1, 1226,
-1, -1, -1, -1, 1231, 2178, -1, -1, 524, -1,
-1, -1, -1, -1, -1, 263, 1243, -1, -1, 271,
268, -1, -1, 275, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4043, -1, 2211, -1,
-1, -1, -1, 291, 292, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3174, -1, 1285, 1286,
3178, 3179, -1, 3690, 312, 3692, 524, -1, -1, -1,
-1, -1, -1, 2246, -1, 327, -1, -1, -1, 331,
-1, -1, -1, 3710, -1, -1, -1, -1, -1, 4389,
3717, -1, -1, -1, 346, -1, 2269, 3724, 350, 3726,
3727, -1, -1, -1, 2277, 353, -1, -1, 360, 4459,
-1, 4461, 2285, 4463, -1, -1, -1, 369, -1, 367,
3238, -1, 370, -1, -1, -1, 3244, -1, 380, 381,
-1, -1, -1, -1, -1, 4435, 4143, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 1382, 1383, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3285, 420, -1,
-1, 423, 424, 425, -1, -1, -1, -1, -1, -1,
3807, 1408, -1, -1, -1, -1, 3813, -1, 1415, -1,
-1, -1, -1, -1, 2367, 2368, -1, 449, -1, -1,
-1, 95, -1, 455, -1, -1, -1, 101, 2381, 4982,
-1, 80, 460, -1, 83, -1, -1, 469, 87, 88,
89, 2394, 2395, 4996, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 105, 4537, -1, -1,
-1, -1, -1, -1, -1, -1, 115, -1, -1, -1,
-1, 80, 146, 122, 83, -1, -1, -1, 87, 88,
89, -1, -1, 4270, -1, -1, -1, -1, -1, -1,
-1, -1, 524, -1, -1, -1, 105, 3904, -1, 148,
4580, -1, -1, -1, -1, -1, 115, -1, -1, -1,
-1, -1, -1, 122, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4605, -1, -1, 202, -1,
-1, -1, -1, -1, 562, 209, -1, -1, 212, 148,
-1, -1, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, -1, -1, -1, -1, 584, -1, -1, -1,
-1, -1, -1, -1, -1, 239, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 935, -1, 1585, -1,
-1, -1, -1, -1, -1, 944, -1, -1, -1, -1,
-1, -1, -1, 952, 3492, -1, 955, -1, -1, -1,
-1, 275, -1, -1, -1, -1, -1, -1, -1, 4016,
4017, -1, -1, -1, 263, 2568, -1, -1, -1, 268,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4043, -1, -1, 4046,
-1, -1, 291, 292, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 263, -1, -1, -1, 1665, 268,
-1, -1, -1, 312, -1, -1, -1, 3565, -1, -1,
-1, 3569, 346, -1, -1, 1682, 350, -1, -1, -1,
-1, -1, 291, 292, 4471, -1, 360, -1, -1, -1,
-1, -1, 1699, -1, -1, 369, -1, 1704, -1, -1,
1059, -1, -1, 312, 353, -1, 4493, 381, -1, 1068,
4497, 4118, 4119, 4120, -1, -1, 1075, -1, 367, 1078,
-1, 370, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4143, -1, -1, -1,
-1, -1, -1, -1, 353, -1, 420, -1, -1, 423,
424, -1, -1, -1, -1, 4162, -1, -1, 367, -1,
-1, 370, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4183, -1, -1, -1,
-1, 455, -1, -1, -1, -1, -1, -1, -1, 80,
-1, -1, 83, -1, -1, -1, 87, 88, 89, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3708, 460, -1, -1, 105, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 115, 3723, -1, -1, -1, -1,
3728, 122, -1, 1840, -1, -1, 80, -1, -1, 83,
-1, 1848, 1849, 87, 88, 89, -1, -1, -1, -1,
524, 460, -1, -1, -1, -1, -1, 148, 3756, -1,
-1, 105, -1, 4270, -1, -1, -1, -1, -1, -1,
-1, 115, -1, -1, -1, -1, -1, -1, 122, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1907, -1, -1, -1, 148, -1, -1, -1, -1, 1916,
4317, -1, -1, 562, -1, -1, 4323, -1, 4325, -1,
-1, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, 4338, -1, 4340, -1, 584, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5498, 1953, -1, 5028, -1,
-1, -1, -1, 562, -1, -1, -1, -1, -1, -1,
5513, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, 263, -1, 1981, 584, -1, 268, -1, -1,
-1, -1, -1, -1, -1, 1992, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
291, 292, 5132, 4410, -1, 5135, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4803, -1, -1, 263,
-1, 312, -1, -1, 268, -1, 2033, -1, -1, -1,
-1, -1, -1, -1, -1, 5165, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 291, 292, -1,
-1, 5604, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1420, 353, -1, 4471, -1, -1, 1426, 312, -1,
-1, 1430, -1, 1432, -1, -1, 367, -1, -1, 370,
80, -1, 2089, 83, -1, -1, 4493, 87, 88, 89,
4497, -1, 3990, -1, -1, 3993, -1, 3995, -1, 2106,
-1, -1, 4000, -1, -1, 105, -1, -1, -1, 353,
-1, 4518, -1, -1, -1, 115, -1, -1, -1, -1,
-1, -1, 122, 367, -1, -1, 370, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1495, -1, 1497, 1498,
-1, -1, -1, -1, 4931, -1, -1, 4934, 148, -1,
-1, 4049, -1, -1, -1, -1, -1, -1, -1, 4057,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 460,
-1, 2178, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4082, -1, -1, -1, 3141, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2211, -1, -1, -1, -1, -1,
4617, -1, -1, -1, 3167, -1, 460, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3185, -1, -1, -1, -1, 3190, 3191, 2246,
-1, -1, 3195, -1, -1, -1, -1, -1, 5035, -1,
-1, 3204, 5382, -1, 4152, -1, 4154, -1, -1, -1,
-1, -1, 2269, 263, -1, 5052, -1, -1, 268, 3222,
2277, 562, 5825, -1, 5827, -1, -1, -1, 2285, -1,
571, 572, 573, 574, 575, 576, 577, 578, 579, -1,
-1, 291, 292, 584, -1, 5425, 5426, -1, -1, -1,
-1, -1, -1, 3256, 5384, -1, -1, -1, -1, -1,
-1, -1, 312, -1, -1, -1, 3269, -1, 562, -1,
-1, -1, -1, 3276, 3277, -1, -1, 571, 572, 573,
574, 575, 576, 577, 578, 579, -1, -1, -1, -1,
584, -1, -1, -1, 5424, -1, -1, -1, -1, -1,
4248, -1, -1, 353, 3307, 3308, -1, -1, 3311, -1,
2367, 2368, 5149, -1, -1, -1, 5446, 367, -1, -1,
370, -1, -1, -1, 2381, -1, -1, -1, -1, -1,
3333, -1, 3335, -1, -1, -1, 3339, 2394, 2395, 5519,
5520, -1, 4290, -1, -1, -1, 4803, -1, -1, -1,
3353, -1, -1, -1, -1, 3358, -1, 3360, -1, -1,
3363, -1, -1, -1, -1, 80, 3369, -1, 83, -1,
4318, -1, 87, 88, 89, -1, 5979, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3389, -1, 5518, -1,
105, -1, 3395, -1, -1, -1, -1, 4854, -1, 3402,
115, -1, 4859, -1, 4861, -1, -1, 122, -1, -1,
460, 132, -1, 3416, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3429, -1, 4885, -1,
-1, 3434, -1, 148, -1, -1, -1, 3440, -1, -1,
-1, 4389, -1, -1, -1, -1, 167, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4411, -1, -1, -1, -1, -1, -1,
-1, -1, 5652, -1, 4931, -1, -1, 4934, -1, -1,
-1, -1, -1, 5663, 5664, -1, -1, 4435, -1, 93,
-1, -1, -1, -1, 98, -1, -1, 3500, -1, -1,
-1, -1, -1, 5683, -1, -1, -1, 228, -1, -1,
5640, 2568, 562, -1, 1064, -1, -1, -1, -1, -1,
-1, 571, 572, 573, 574, 575, 576, 577, 578, 579,
6133, -1, 6135, -1, 584, -1, -1, -1, -1, -1,
1090, -1, -1, -1, 265, 149, 150, -1, 263, -1,
-1, -1, -1, 268, -1, -1, 80, -1, -1, 83,
-1, 165, -1, 87, 88, 89, -1, 5024, 5025, -1,
-1, -1, -1, -1, -1, -1, 291, 292, 5035, 183,
-1, 105, -1, -1, -1, -1, -1, 308, -1, 4537,
-1, 115, -1, -1, -1, 5052, -1, 312, 122, -1,
-1, -1, -1, 207, 5441, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 218, -1, 5453, -1, -1, 88,
-1, -1, -1, 227, 148, 346, -1, -1, -1, 350,
-1, -1, 4580, -1, -1, -1, 240, 106, 353, -1,
-1, -1, 246, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 367, 122, -1, 370, -1, 4605, -1, -1,
381, 382, -1, -1, -1, -1, -1, -1, -1, 273,
-1, -1, 141, -1, -1, -1, -1, -1, 147, 148,
-1, -1, -1, -1, -1, 154, -1, 3690, -1, 3692,
-1, -1, 5149, -1, -1, 5152, -1, -1, -1, 420,
304, -1, -1, 424, -1, -1, -1, 3710, 429, -1,
-1, -1, 80, -1, 3717, 83, -1, 438, -1, 87,
88, 89, 326, -1, -1, -1, 447, -1, -1, -1,
-1, -1, -1, -1, 455, -1, -1, 105, -1, 263,
-1, -1, -1, -1, 268, 460, 467, 115, -1, -1,
-1, 168, -1, -1, 122, 476, -1, -1, -1, 480,
-1, -1, -1, -1, -1, -1, -1, 291, 292, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
148, -1, -1, -1, -1, -1, -1, -1, 312, -1,
-1, -1, 6395, -1, -1, -1, -1, 401, 402, -1,
-1, 405, 219, -1, 3807, -1, -1, -1, -1, -1,
3813, -1, -1, -1, 535, 232, -1, -1, -1, -1,
-1, 238, 4770, -1, -1, -1, -1, 244, 432, 353,
-1, 435, -1, 250, -1, -1, 253, -1, 442, -1,
257, -1, -1, 367, 5681, 449, 370, 562, 452, -1,
-1, -1, -1, -1, -1, -1, 571, 572, 573, 574,
575, 576, 577, 578, 579, -1, -1, 471, -1, 584,
287, -1, -1, -1, 478, 1425, -1, -1, -1, -1,
-1, 485, -1, -1, 488, -1, 1436, -1, 492, -1,
-1, -1, -1, -1, -1, 263, 313, -1, -1, -1,
268, 3904, 1452, 507, -1, 6085, -1, -1, -1, -1,
-1, 2320, 4860, -1, 2323, -1, 6519, -1, -1, -1,
-1, -1, -1, 291, 292, -1, -1, -1, -1, 533,
-1, 6061, -1, -1, -1, -1, 460, -1, 4886, -1,
5397, -1, -1, -1, 312, 362, -1, -1, 365, -1,
-1, -1, -1, -1, 371, 2364, 2365, -1, 6138, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2379, -1, -1, 2382, -1, -1, -1, -1, -1, -1,
5817, 6111, 5819, -1, 5441, 353, 6116, 6117, -1, -1,
-1, -1, -1, -1, -1, 1545, 5453, -1, -1, 367,
-1, -1, 370, -1, -1, -1, -1, -1, -1, -1,
-1, 428, -1, 4016, 4017, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6629, -1, -1, -1,
5487, -1, -1, -1, -1, -1, -1, -1, 562, -1,
4043, 2450, -1, 4046, -1, 2454, 2455, 571, 572, 573,
574, 575, 576, 577, 578, 579, -1, 6660, 6661, -1,
584, -1, -1, -1, -1, -1, -1, -1, 485, -1,
-1, -1, -1, -1, 6254, -1, -1, -1, -1, -1,
5028, -1, -1, -1, 3141, -1, -1, -1, -1, -1,
-1, -1, 460, -1, -1, -1, 513, -1, -1, -1,
6230, -1, -1, -1, -1, -1, -1, -1, 5565, -1,
3167, -1, -1, -1, -1, 4118, 4119, 4120, -1, -1,
537, -1, 539, 540, -1, -1, -1, 5584, 3185, 5077,
1680, -1, 5080, 3190, 3191, -1, -1, -1, 3195, -1,
4143, -1, -1, -1, 561, -1, -1, 3204, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4162,
-1, -1, -1, -1, 581, 3222, -1, 584, 585, -1,
587, -1, -1, -1, -1, -1, 6779, -1, -1, -1,
4183, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 562, -1, -1, -1, -1, 3256,
-1, -1, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, 3269, -1, -1, -1, 584, -1, -1, 3276,
3277, -1, -1, -1, 5681, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 80,
3307, 3308, 83, -1, 3311, -1, 87, 88, 89, -1,
-1, -1, -1, -1, -1, -1, -1, 4270, -1, -1,
-1, -1, -1, -1, 105, -1, 3333, -1, 3335, -1,
-1, -1, 3339, -1, 115, -1, -1, -1, -1, -1,
-1, 122, -1, -1, -1, -1, 3353, -1, -1, 5247,
-1, 3358, -1, 3360, -1, -1, 3363, -1, -1, -1,
-1, -1, 3369, -1, 4317, -1, -1, 148, -1, -1,
4323, 80, 4325, -1, 83, -1, -1, -1, 87, 88,
89, -1, 3389, -1, -1, 4338, -1, 4340, 3395, 6469,
-1, -1, -1, -1, -1, 3402, 105, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 115, -1, -1, 3416,
5817, -1, 5819, 122, -1, -1, -1, -1, -1, -1,
-1, 80, 3429, -1, 83, -1, -1, 3434, 87, 88,
89, -1, -1, 3440, -1, -1, -1, -1, -1, 148,
-1, -1, -1, -1, -1, -1, 105, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 115, 4410, 5865, -1,
-1, -1, -1, 122, -1, -1, -1, -1, 5875, -1,
-1, -1, -1, -1, -1, 1975, -1, -1, -1, -1,
-1, -1, 263, -1, -1, -1, 5384, 268, 6618, 148,
-1, -1, -1, 3500, -1, -1, -1, -1, 917, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5915, -1,
291, 292, -1, 5920, -1, -1, 935, -1, 4471, -1,
-1, -1, -1, -1, -1, 944, 5424, -1, -1, -1,
-1, 312, -1, 952, -1, -1, 955, -1, -1, -1,
4493, -1, -1, 2043, 4497, -1, -1, -1, 5446, -1,
-1, -1, -1, -1, 263, -1, -1, -1, -1, 268,
-1, -1, -1, -1, -1, 4518, -1, -1, -1, -1,
-1, -1, 353, -1, -1, -1, -1, -1, -1, -1,
2080, -1, 291, 292, -1, -1, 367, -1, -1, 370,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 312, 263, -1, -1, -1, -1, 268,
-1, -1, -1, 2113, -1, -1, -1, -1, -1, -1,
5518, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 291, 292, -1, -1, -1, -1, -1, -1,
1059, -1, -1, -1, 353, 1064, -1, -1, -1, 1068,
-1, -1, -1, 312, -1, -1, 1075, -1, 367, 1078,
-1, 370, -1, -1, 4617, -1, -1, -1, -1, -1,
-1, 1090, -1, -1, -1, -1, -1, -1, -1, 460,
-1, -1, -1, 3690, -1, 3692, -1, -1, -1, -1,
-1, -1, -1, -1, 353, -1, -1, -1, -1, -1,
-1, -1, -1, 3710, 6491, -1, -1, -1, 367, -1,
3717, 370, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6129, 2223, -1, -1, 132, -1, -1, -1,
-1, -1, -1, -1, 2234, -1, 6143, -1, -1, -1,
-1, -1, 5640, -1, -1, -1, -1, -1, -1, -1,
2250, 460, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 167, -1, -1, -1, -1, -1, 6174, -1, -1,
-1, -1, -1, -1, -1, -1, 1195, 1196, -1, -1,
-1, 562, -1, 1202, -1, -1, -1, 1206, -1, -1,
571, 572, 573, 574, 575, 576, 577, 578, 579, -1,
3807, 460, -1, 584, 2304, -1, 3813, -1, -1, -1,
-1, -1, -1, -1, 1233, -1, -1, -1, -1, -1,
-1, -1, 228, -1, -1, -1, 2326, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2339,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4803, 2351, -1, 562, -1, -1, -1, -1, -1, 265,
-1, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, -1, -1, -1, 584, -1, 3236, -1, -1,
3239, -1, 3241, 3242, -1, -1, -1, -1, -1, -1,
-1, 2391, 2392, -1, -1, -1, -1, 3904, -1, -1,
-1, 4854, 308, 562, -1, -1, 4859, -1, 4861, -1,
-1, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, -1, -1, -1, 584, -1, -1, -1, -1,
-1, -1, 4885, -1, -1, -1, -1, -1, -1, -1,
346, -1, -1, -1, 350, -1, -1, 6354, -1, 6356,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1382, 1383, -1, 5864, -1, -1, -1,
-1, -1, -1, -1, -1, 381, 382, 80, 4931, -1,
83, 4934, -1, -1, 87, 88, 89, 1406, 1407, 1408,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1420, 105, -1, -1, -1, 1425, 1426, -1, 4016,
4017, 1430, 115, 1432, 420, -1, -1, 1436, 424, 122,
-1, -1, -1, 429, -1, -1, -1, -1, -1, -1,
-1, -1, 438, 1452, -1, -1, 4043, -1, -1, 4046,
-1, 447, -1, -1, -1, 148, -1, 2547, -1, 455,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6466,
-1, 467, -1, -1, -1, -1, -1, -1, -1, -1,
476, 5024, 5025, -1, 480, -1, 1495, -1, 1497, 1498,
-1, -1, 5035, -1, 6491, -1, 5984, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6504, -1, 5052,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6517, 4118, 4119, 4120, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 80, -1, 1545, 83, -1, 535,
-1, 87, 88, 89, -1, -1, 4143, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
-1, -1, -1, -1, -1, 4162, -1, -1, -1, 115,
263, -1, -1, 6061, -1, 268, 122, -1, -1, 6576,
6577, -1, -1, -1, 3533, -1, 4183, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 291, 292,
-1, -1, 148, -1, -1, -1, 5149, -1, -1, 5152,
-1, -1, -1, -1, -1, 1624, -1, 80, -1, 312,
83, -1, -1, 6111, 87, 88, 89, -1, 6116, 6117,
-1, -1, -1, -1, -1, -1, -1, -1, 6635, -1,
-1, -1, 105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 115, -1, -1, -1, -1, -1, -1, 122,
353, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1680, -1, 4270, 367, -1, -1, 370, -1, -1,
-1, -1, -1, 80, -1, 148, 83, -1, -1, -1,
87, 88, 89, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1715, -1, 105, -1,
-1, -1, 109, -1, -1, -1, -1, 263, 115, -1,
4317, -1, 268, -1, -1, 122, 4323, -1, 4325, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1749, 4338, 6230, 4340, -1, 291, 292, -1, -1, -1,
-1, 148, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 312, 460, -1, 1778,
1779, 1780, 3721, 1782, -1, 3724, -1, 3726, 3727, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6789, 1802, -1, -1, -1, -1, -1, -1,
263, -1, 199, -1, -1, 268, -1, 353, -1, -1,
-1, -1, -1, 4410, -1, -1, -1, -1, -1, -1,
-1, 367, -1, -1, 370, -1, -1, -1, 291, 292,
-1, -1, -1, -1, -1, -1, -1, -1, 6835, -1,
-1, -1, -1, -1, -1, -1, -1, 6844, 6845, 312,
-1, -1, -1, -1, 5397, -1, -1, 6854, -1, -1,
-1, -1, -1, -1, -1, -1, 263, -1, -1, 562,
-1, 268, 1881, -1, 4471, -1, 1885, 1886, 571, 572,
573, 574, 575, 576, 577, 578, 579, -1, -1, -1,
353, 584, 1901, -1, 291, 292, 4493, -1, 5441, -1,
4497, -1, -1, -1, 367, -1, -1, 370, -1, -1,
5453, -1, -1, -1, 460, 312, -1, 80, -1, -1,
83, 4518, -1, -1, 87, 88, 89, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3890, 105, -1, 5487, -1, -1, -1, -1, -1,
-1, -1, 115, -1, -1, -1, 353, -1, -1, 122,
-1, -1, -1, -1, -1, -1, 1975, -1, -1, -1,
367, -1, 1981, 370, -1, -1, -1, -1, -1, -1,
-1, 6469, -1, 1992, -1, 148, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 460, -1, -1,
-1, 3950, -1, -1, -1, -1, -1, -1, -1, 3958,
-1, -1, -1, -1, -1, -1, 562, -1, -1, -1,
4617, -1, 5565, -1, 2033, 571, 572, 573, 574, 575,
576, 577, 578, 579, 2043, -1, -1, -1, 584, -1,
-1, 5584, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 460, -1, -1, -1, -1, -1, -1,
-1, 2080, -1, -1, -1, -1, -1, -1, -1, -1,
2089, -1, -1, -1, 3174, -1, -1, -1, 3178, 3179,
-1, -1, -1, -1, -1, -1, -1, 2106, -1, 562,
263, -1, -1, -1, 2113, 268, -1, -1, 571, 572,
573, 574, 575, 576, 577, 578, 579, -1, -1, -1,
-1, 584, -1, -1, 521, -1, -1, -1, 291, 292,
-1, -1, -1, -1, -1, -1, -1, -1, 5681, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3238, 312,
-1, -1, -1, -1, 3244, -1, -1, -1, -1, -1,
-1, -1, -1, 80, -1, 562, 83, -1, -1, -1,
87, 88, 89, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, -1, -1, 2194, 2195, 2196, 105, -1,
353, -1, -1, 80, -1, 3285, 83, -1, 115, -1,
87, 88, 89, -1, 367, 122, 4803, 370, -1, -1,
-1, -1, -1, -1, 2223, -1, -1, -1, 105, -1,
-1, 108, -1, -1, -1, 2234, -1, -1, 115, -1,
-1, 148, -1, -1, -1, 122, -1, 2246, -1, -1,
-1, 2250, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4854, -1, -1,
-1, 148, 4859, -1, 4861, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5817, -1, 5819, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4885, -1,
-1, -1, -1, 80, -1, 2304, 83, 460, -1, -1,
87, 88, 89, -1, -1, -1, -1, -1, -1, -1,
-1, 2320, -1, -1, 2323, -1, -1, 2326, 105, -1,
-1, -1, 5865, -1, 2333, -1, -1, -1, 115, -1,
2339, -1, -1, -1, 4931, 122, -1, 4934, -1, -1,
-1, -1, 2351, -1, -1, -1, 263, -1, -1, -1,
-1, 268, -1, -1, -1, 2364, 2365, -1, -1, -1,
-1, 148, -1, -1, -1, -1, -1, -1, -1, -1,
2379, -1, 5915, 2382, 291, 292, 263, -1, -1, -1,
-1, 268, 2391, 2392, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 312, -1, -1, -1, 562,
-1, -1, 3492, -1, 291, 292, -1, -1, 571, 572,
573, 574, 575, 576, 577, 578, 579, -1, -1, -1,
-1, 584, -1, -1, -1, 312, -1, 5024, 5025, -1,
-1, -1, -1, -1, -1, -1, 353, -1, 5035, -1,
-1, 2450, -1, -1, -1, 2454, 2455, -1, -1, -1,
367, 238, -1, 370, -1, 5052, -1, 244, -1, -1,
-1, -1, -1, -1, -1, -1, 353, -1, -1, -1,
-1, -1, -1, -1, -1, 3565, 263, -1, -1, 3569,
367, 268, -1, 370, 2493, 2494, -1, -1, -1, -1,
2499, 2500, -1, -1, -1, -1, -1, 2506, 2507, 2508,
2509, 2510, 2511, 2512, 291, 292, 2515, -1, 2517, -1,
2519, 2520, 2521, 2522, 2523, 2524, -1, -1, 2527, -1,
2529, 2530, -1, -1, 2533, 312, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2547, 2548,
2549, 2550, 80, 460, -1, 83, -1, -1, -1, 87,
88, 89, 5149, -1, -1, 5152, -1, 2566, -1, 2568,
-1, -1, -1, -1, -1, -1, 353, 105, -1, -1,
-1, -1, -1, 460, -1, -1, -1, 115, -1, -1,
367, -1, -1, 370, 122, -1, 6129, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6143, -1, -1, -1, -1, -1, -1, -1, -1, -1,
148, -1, -1, -1, -1, -1, -1, -1, 3708, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6174, -1, 3723, -1, -1, -1, -1, 3728, -1,
-1, -1, -1, -1, -1, 562, -1, -1, -1, -1,
-1, -1, -1, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, -1, -1, 582, 3756, -1, -1, -1,
-1, -1, -1, 460, -1, 562, -1, -1, -1, -1,
-1, -1, -1, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, -1, -1, -1, -1, -1, -1, 237,
-1, 2710, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 263, -1, -1, 4677, -1,
268, 4680, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2757, -1,
-1, -1, -1, 291, 292, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 312, 562, -1, -1, -1, -1,
-1, -1, -1, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, -1, -1, -1, -1, -1, -1, -1,
5397, 2810, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6354, -1, 6356, -1, 353, -1, 5, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 367,
-1, -1, 370, 4782, -1, -1, 24, -1, -1, -1,
-1, -1, -1, -1, 5441, -1, 34, 35, -1, -1,
-1, 39, -1, 41, 42, 393, 5453, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
68, 69, -1, 71, -1, 73, -1, 75, 76, -1,
5487, -1, -1, 81, -1, -1, -1, -1, -1, -1,
3990, -1, -1, 3993, -1, 3995, -1, -1, -1, -1,
4000, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 460, 6466, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6491, -1,
-1, 139, -1, -1, -1, -1, -1, -1, -1, 4049,
-1, -1, -1, -1, -1, -1, -1, 4057, 5565, -1,
-1, -1, -1, -1, 6517, -1, -1, -1, 2987, 2988,
2989, 2990, 2991, 2992, 2993, 2994, 2995, 5584, 2997, -1,
-1, -1, 4082, -1, -1, -1, -1, -1, -1, -1,
3009, -1, -1, 3012, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 562, -1, -1, -1, 216, -1,
-1, -1, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, -1, -1, -1, -1, -1, -1, 236, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3068,
-1, -1, 4152, 3072, 4154, -1, 3075, -1, 3077, -1,
-1, 3080, 260, 80, -1, -1, 83, -1, -1, -1,
87, 88, 89, -1, 5681, -1, 3095, -1, -1, -1,
-1, -1, 6635, 5042, 5043, 3104, 3105, 285, 105, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 115, -1,
-1, -1, -1, -1, -1, 122, -1, -1, -1, -1,
-1, -1, -1, -1, 80, -1, -1, 83, -1, -1,
-1, 87, 88, 89, -1, -1, -1, -1, -1, -1,
-1, 148, 330, -1, -1, 333, -1, -1, -1, 105,
-1, -1, -1, -1, -1, -1, -1, -1, 4248, 115,
-1, -1, -1, -1, -1, 3174, 122, 355, -1, 3178,
3179, 80, -1, -1, 83, -1, -1, -1, 87, 88,
89, 3190, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 148, -1, -1, -1, 105, -1, -1, -1,
4290, -1, -1, -1, -1, -1, 115, -1, -1, -1,
-1, -1, -1, 122, -1, -1, 3225, -1, -1, -1,
5817, -1, 5819, -1, -1, -1, -1, 3236, 4318, 3238,
3239, -1, 3241, 3242, -1, 3244, -1, -1, -1, 148,
-1, -1, -1, -1, -1, -1, 6789, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 263, -1, 446, -1,
3269, 268, -1, -1, -1, -1, -1, -1, 5865, -1,
-1, -1, -1, -1, -1, -1, 3285, -1, -1, -1,
-1, -1, -1, -1, 291, 292, -1, -1, -1, -1,
-1, -1, 6835, -1, -1, -1, -1, -1, 3307, 4389,
-1, -1, 3311, -1, -1, 312, -1, 263, -1, 497,
-1, 6854, 268, -1, -1, -1, -1, -1, 5915, -1,
-1, 4411, -1, -1, -1, 513, 3335, -1, -1, -1,
-1, -1, -1, -1, -1, 291, 292, -1, -1, -1,
528, -1, -1, -1, -1, 4435, 353, 5296, -1, 3358,
-1, 5300, -1, -1, 263, -1, 312, -1, -1, 268,
367, -1, -1, 370, -1, -1, -1, -1, -1, -1,
558, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 291, 292, -1, 573, 574, 575, 576, 577,
578, -1, -1, 581, 582, 583, 584, 353, 586, 587,
588, 589, 590, 312, -1, -1, -1, -1, -1, -1,
-1, 367, -1, -1, 370, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3434, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 395,
-1, -1, -1, -1, 353, -1, -1, 4537, -1, 3458,
3459, 3460, -1, 460, -1, 3464, -1, -1, 367, -1,
-1, 370, -1, 80, -1, -1, 83, -1, -1, -1,
87, 88, 89, -1, -1, -1, -1, -1, -1, -1,
389, -1, 3491, 3492, -1, -1, -1, -1, 105, -1,
4580, 3500, -1, -1, -1, -1, -1, -1, 115, -1,
-1, -1, -1, -1, 460, 122, -1, -1, -1, -1,
80, -1, -1, 83, -1, 4605, -1, 87, 88, 89,
-1, 477, -1, -1, 3533, -1, -1, -1, -1, -1,
-1, 148, 6129, -1, -1, 105, -1, -1, 108, -1,
-1, -1, -1, -1, -1, 115, 6143, -1, -1, -1,
-1, 460, 122, -1, 561, 562, 3565, -1, -1, -1,
3569, -1, -1, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, -1, -1, -1, -1, 6174, 148, -1,
-1, -1, -1, 3592, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 562, -1, -1, -1,
-1, 5560, -1, -1, -1, 571, 572, 573, 574, 575,
576, 577, 578, 579, -1, -1, -1, 244, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5591, -1, -1, -1, 263, -1, -1, -1,
-1, 268, -1, 562, -1, -1, -1, -1, -1, -1,
-1, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, -1, -1, 291, 292, -1, -1, -1, -1,
4770, -1, -1, 3692, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 263, -1, 312, -1, -1, 268, 3708,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3721, -1, 3723, 3724, -1, 3726, 3727, 3728,
-1, 291, 292, -1, -1, -1, -1, 3736, -1, -1,
-1, -1, 3741, -1, -1, -1, 353, -1, -1, -1,
-1, -1, 312, -1, -1, -1, -1, 3756, -1, -1,
367, -1, -1, 370, -1, -1, -1, 6354, -1, 6356,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4860, -1, -1, -1, 3783, 3784, 3785, -1, -1, 3788,
-1, -1, -1, 353, -1, -1, -1, 3796, 3797, 3798,
3799, -1, -1, -1, -1, -1, 4886, 367, 3807, -1,
370, -1, -1, 3812, 3813, -1, 3815, -1, 3817, -1,
-1, -1, -1, -1, -1, 5764, -1, -1, -1, 3828,
3829, -1, 5771, 3832, -1, -1, -1, 5776, -1, -1,
5779, 5780, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 460, 3853, -1, 3855, 80, 3857, -1,
83, -1, -1, -1, 87, 88, 89, -1, -1, 5808,
-1, -1, -1, -1, -1, -1, -1, 3876, -1, 6466,
-1, -1, 105, -1, 5823, 108, -1, -1, -1, -1,
-1, 3890, 115, -1, -1, -1, -1, -1, -1, 122,
460, -1, -1, -1, 6491, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3921, -1, -1, 148, -1, -1, -1, -1,
6517, -1, -1, -1, -1, -1, 5875, 3936, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5028, -1,
-1, 3950, -1, -1, -1, 562, -1, -1, -1, 3958,
-1, -1, -1, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, -1, -1, -1, -1, -1, -1, -1,
-1, 5920, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3990, -1, -1, 3993, -1, 3995, 5077, -1, -1,
5080, 4000, 562, -1, -1, -1, -1, -1, -1, -1,
-1, 571, 572, 573, 574, 575, 576, 577, 578, 579,
-1, -1, 80, 4022, -1, 83, -1, -1, -1, 87,
88, 89, -1, -1, -1, -1, -1, -1, -1, -1,
263, -1, 5981, -1, -1, 268, -1, 105, 6635, -1,
4049, -1, -1, -1, -1, -1, -1, 115, 4057, -1,
-1, -1, -1, -1, 122, -1, -1, -1, 291, 292,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4082, -1, -1, -1, -1, -1, 312,
148, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6055, -1, -1, 4118,
4119, 4120, -1, -1, -1, -1, -1, -1, -1, -1,
353, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 367, -1, -1, 370, -1, -1,
-1, -1, -1, 4152, -1, 4154, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5247, -1, -1,
-1, -1, -1, -1, -1, -1, 80, -1, -1, 83,
-1, -1, -1, 87, 88, 89, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 105, 6789, -1, 108, 263, -1, -1, -1, -1,
268, 115, -1, -1, -1, -1, -1, -1, 122, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6171, 291, 292, -1, -1, 460, -1, -1,
-1, -1, -1, -1, 148, -1, -1, -1, 6835, 4248,
-1, -1, -1, -1, 312, -1, -1, -1, -1, -1,
6199, -1, -1, -1, -1, -1, -1, 6854, -1, -1,
-1, -1, -1, -1, -1, -1, 4275, -1, -1, -1,
-1, -1, 4281, -1, -1, -1, -1, -1, -1, -1,
-1, 4290, -1, -1, -1, 353, -1, -1, -1, -1,
-1, -1, -1, -1, 5384, -1, -1, -1, -1, 367,
-1, -1, 370, -1, -1, -1, -1, -1, 4317, 4318,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6269, -1, -1, -1, -1, -1, -1, -1, -1, 562,
-1, -1, -1, -1, 5424, -1, -1, -1, 571, 572,
573, 574, 575, 576, 577, 578, 579, -1, -1, 263,
-1, 4360, -1, -1, 268, -1, 5446, -1, -1, 6308,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 291, 292, -1,
4389, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 460, -1, -1, -1, -1, -1, 312, -1,
-1, -1, 4411, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5, -1, -1, 493, 4435, -1, 5518, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
-1, 24, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 34, 35, 367, -1, -1, 370, -1, 41, 42,
-1, 6410, 45, 46, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
63, 64, 65, 66, 67, 68, 69, -1, -1, -1,
73, -1, 75, 76, 562, -1, -1, -1, 81, -1,
-1, -1, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4534, -1, -1, 4537, -1,
-1, -1, -1, -1, 4543, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4553, -1, 460, -1, 4557, 4558,
5640, -1, -1, -1, 4563, 6504, 139, -1, -1, -1,
-1, -1, 4571, -1, 4573, -1, -1, 4576, -1, -1,
-1, 4580, 4581, 4582, 4583, 4584, -1, -1, 4587, 4588,
4589, 4590, 4591, 4592, 4593, 4594, 4595, 4596, -1, -1,
-1, 4600, 4601, 4602, -1, -1, 4605, -1, -1, -1,
-1, 4610, -1, -1, -1, -1, 4615, -1, 4617, -1,
4619, -1, -1, -1, -1, -1, -1, -1, 4627, 6568,
-1, 4630, -1, 4632, -1, -1, -1, 6576, 6577, -1,
-1, -1, -1, 216, -1, -1, -1, -1, -1, -1,
-1, 4650, -1, -1, 4653, 4654, -1, -1, 562, 4658,
4659, -1, -1, 236, 4663, -1, 4665, 571, 572, 573,
574, 575, 576, 577, 578, 579, -1, -1, 4677, -1,
-1, 4680, -1, -1, -1, -1, -1, 260, -1, -1,
-1, 4690, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 80, -1, -1, 83,
-1, -1, 285, 87, 88, 89, -1, -1, -1, -1,
6659, -1, -1, -1, -1, -1, 6665, -1, -1, -1,
-1, 105, -1, -1, -1, -1, -1, -1, 4737, -1,
-1, 115, -1, -1, 6683, -1, -1, -1, 122, -1,
-1, -1, -1, -1, 98, 4754, -1, 330, -1, -1,
333, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4770, -1, -1, 148, -1, -1, -1, -1, -1,
-1, -1, 355, 4782, 5864, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 149, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 165, -1, -1, -1, 6764, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 183,
-1, -1, -1, 6782, -1, 189, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4854, -1, -1, -1, -1,
4859, 4860, 4861, 207, -1, -1, -1, -1, -1, -1,
244, -1, -1, 446, 218, -1, -1, -1, -1, -1,
-1, -1, -1, 227, -1, 6824, 4885, 4886, -1, 263,
-1, -1, 6831, -1, 268, -1, 240, -1, -1, -1,
-1, -1, 246, -1, 5984, 6844, 6845, -1, -1, 253,
-1, -1, -1, -1, -1, -1, -1, 291, 292, -1,
-1, -1, -1, -1, 497, -1, -1, -1, -1, 273,
-1, -1, -1, -1, -1, -1, -1, -1, 312, -1,
513, -1, -1, -1, -1, 80, -1, -1, 83, -1,
-1, -1, 87, 88, 89, 528, -1, -1, -1, -1,
304, -1, -1, -1, -1, -1, -1, -1, -1, -1,
105, -1, -1, -1, -1, -1, -1, -1, -1, 353,
115, 6061, 326, -1, -1, 558, -1, 122, -1, -1,
-1, -1, -1, 367, -1, -1, 370, -1, -1, 4998,
573, 574, 575, 576, 577, 578, -1, -1, 581, 582,
583, -1, -1, 148, -1, 588, 589, -1, -1, -1,
-1, -1, -1, 367, -1, -1, -1, -1, -1, 5028,
-1, 6111, -1, -1, -1, -1, 6116, 6117, -1, -1,
-1, -1, -1, 5042, 5043, -1, -1, 391, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 401, 402, -1,
-1, 405, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5077, -1,
-1, 5080, 5081, 5082, -1, -1, 460, -1, 432, -1,
-1, 435, -1, 5092, -1, 439, -1, -1, 442, -1,
-1, -1, -1, -1, -1, 449, -1, -1, 452, 244,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 471, 263, -1,
-1, -1, -1, 268, 478, -1, -1, -1, -1, 483,
-1, 485, -1, -1, 488, -1, 1064, -1, 492, -1,
6230, -1, -1, 5152, -1, -1, 291, 292, 502, -1,
-1, -1, -1, 507, -1, -1, -1, -1, -1, -1,
-1, -1, 1090, -1, -1, -1, 520, 312, -1, 5178,
-1, -1, -1, -1, -1, -1, -1, -1, 562, 533,
-1, -1, 5191, -1, -1, -1, -1, 571, 572, 573,
574, 575, 576, 577, 578, 579, 5205, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 93, -1, 353, -1,
-1, 98, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 367, -1, 5233, 370, -1, 5236, -1, -1,
-1, -1, -1, -1, -1, 5244, 5245, -1, 5247, -1,
-1, -1, 5251, 5252, -1, -1, -1, 5256, -1, 136,
-1, -1, -1, -1, 5263, -1, -1, 5266, 5267, -1,
-1, -1, 149, -1, 5273, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 165, 5288,
-1, -1, -1, -1, -1, -1, -1, 5296, -1, -1,
-1, 5300, -1, -1, -1, -1, 183, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 460, -1, -1, -1, -1,
207, -1, -1, -1, 5333, -1, -1, -1, -1, -1,
-1, 218, 5341, -1, -1, -1, -1, -1, -1, -1,
227, -1, -1, -1, -1, -1, -1, -1, 5, -1,
-1, -1, -1, 240, -1, -1, -1, 5366, -1, 246,
-1, -1, -1, -1, -1, -1, 253, 24, -1, -1,
-1, -1, -1, -1, -1, 5384, -1, 34, 35, 6469,
-1, -1, -1, -1, 41, 42, 273, -1, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
67, 68, 69, -1, -1, 5424, 73, 562, 75, 76,
-1, -1, -1, -1, 81, -1, 571, 572, 573, 574,
575, 576, 577, 578, 579, -1, -1, 5446, -1, 326,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 80, -1, -1, 83, -1, -1,
5469, 87, 88, 89, -1, -1, -1, 5476, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1406, 105,
367, -1, 139, -1, -1, -1, -1, -1, -1, 115,
-1, -1, -1, 380, -1, -1, 122, 1425, -1, -1,
-1, -1, -1, -1, 391, -1, -1, -1, 1436, 5518,
-1, -1, -1, -1, 401, 402, -1, -1, 405, -1,
-1, -1, 148, -1, 1452, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5544, -1, -1, -1, 106,
-1, -1, -1, -1, -1, 432, -1, -1, 435, -1,
-1, 5560, 439, -1, -1, 442, 5565, -1, -1, 216,
127, -1, 449, 130, -1, 452, -1, 134, -1, -1,
-1, -1, -1, 140, -1, 142, -1, 144, -1, 236,
-1, -1, 5591, 150, 471, 168, -1, -1, 155, -1,
-1, 478, -1, -1, -1, -1, -1, -1, 485, -1,
-1, 488, -1, 260, -1, 492, -1, -1, -1, -1,
-1, -1, 238, 500, -1, 502, -1, 1545, -1, -1,
507, -1, -1, -1, -1, -1, -1, -1, 285, 5638,
-1, 5640, -1, 520, -1, -1, 219, 263, -1, -1,
-1, -1, 268, -1, -1, -1, 533, -1, -1, 232,
-1, -1, -1, -1, -1, 238, -1, -1, -1, -1,
-1, 244, -1, -1, -1, 291, 292, 250, -1, -1,
253, -1, -1, 330, 257, -1, 333, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 312, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 355, -1,
-1, -1, -1, 5712, 287, -1, 5715, -1, -1, 5718,
5719, 5720, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 353, -1, -1,
313, -1, -1, -1, -1, -1, 5745, 5746, -1, -1,
5749, 367, -1, -1, 370, -1, -1, -1, -1, -1,
-1, -1, 1680, -1, -1, 5764, -1, -1, -1, -1,
-1, -1, 5771, -1, -1, -1, -1, 5776, -1, -1,
5779, 5780, -1, -1, -1, -1, -1, -1, 5787, 362,
-1, -1, 365, -1, -1, -1, -1, -1, 371, 446,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5808,
-1, -1, 5811, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5823, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 460, -1, -1, -1, -1, -1,
497, -1, -1, -1, 80, 428, -1, 83, -1, -1,
-1, 87, 88, 89, -1, 5864, 513, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5875, -1, -1, 105,
-1, 528, -1, -1, -1, -1, -1, -1, -1, 115,
-1, -1, -1, -1, -1, -1, 122, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 558, 485, -1, -1, -1, 5915, -1, -1, -1,
-1, 5920, 148, -1, -1, -1, 573, 574, 575, 576,
577, 578, -1, -1, 581, 582, 583, 584, -1, -1,
513, 588, -1, -1, -1, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, 571, 572, 573, 574, 575,
576, 577, 578, 579, 537, -1, 539, 540, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5981, -1, -1, 5984, -1, -1, 561, -1,
-1, 217, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 581, -1,
-1, 584, 585, -1, 587, -1, -1, -1, -1, -1,
-1, 6020, -1, -1, -1, 6024, -1, 6026, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 263, -1, -1,
-1, 6040, 268, -1, -1, -1, 6045, -1, -1, -1,
-1, -1, 6051, -1, -1, -1, 6055, 1975, -1, -1,
-1, -1, 6061, 6062, -1, 291, 292, -1, -1, 80,
-1, -1, 83, -1, -1, -1, 87, 88, 89, -1,
-1, -1, -1, -1, -1, -1, 312, -1, -1, -1,
-1, -1, -1, -1, 105, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 115, -1, -1, -1, -1, -1,
-1, 122, 6111, -1, -1, -1, -1, 6116, 6117, -1,
-1, -1, 6121, -1, -1, 2043, -1, 353, 6127, 6128,
-1, 1064, -1, -1, -1, -1, -1, 148, -1, -1,
-1, 367, -1, -1, 370, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1090, -1, -1,
-1, -1, 2080, -1, 6163, -1, -1, -1, -1, -1,
-1, -1, 6171, -1, -1, 6174, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2113, -1, -1, -1, -1,
6199, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 80, -1, -1, 83, -1, -1, -1, 87, 88,
89, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6229, 6230, -1, -1, 460, -1, 105, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 115, -1, -1, -1,
-1, -1, 263, 122, -1, -1, 6255, 268, -1, -1,
-1, -1, -1, -1, -1, 6264, 6265, 6266, -1, -1,
6269, -1, -1, 6272, -1, -1, 2194, 2195, 2196, 148,
291, 292, -1, -1, 6283, -1, -1, -1, -1, -1,
-1, 6290, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 312, -1, -1, -1, 2223, -1, -1, -1, 6308,
-1, -1, -1, -1, -1, -1, 2234, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6329, -1, 2250, -1, -1, -1, 562, -1, -1, -1,
-1, -1, 353, -1, -1, 571, 572, 573, 574, 575,
576, 577, 578, 579, -1, 6354, 367, -1, -1, 370,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 238,
-1, -1, -1, -1, -1, -1, -1, -1, 935, 936,
937, -1, -1, 940, -1, -1, 2304, 944, -1, 946,
-1, -1, 949, -1, 263, 952, -1, -1, 955, 268,
-1, 958, -1, 960, -1, -1, 963, -1, 2326, -1,
967, 6410, 969, -1, -1, -1, -1, -1, -1, -1,
-1, 2339, 291, 292, -1, -1, -1, -1, -1, -1,
-1, 988, -1, 2351, -1, -1, -1, 994, -1, 996,
-1, 998, -1, 312, 1001, -1, -1, -1, -1, 460,
-1, 1008, 6451, -1, -1, -1, 1013, -1, 1015, -1,
-1, -1, -1, -1, 1021, -1, 6465, 6466, -1, -1,
6469, -1, -1, 2391, 2392, 6474, -1, 6476, -1, 6478,
-1, -1, -1, -1, 353, -1, -1, -1, -1, 6488,
-1, -1, 1425, -1, -1, -1, -1, -1, 367, -1,
-1, 370, 1059, 1436, -1, 6504, -1, -1, -1, -1,
-1, 1068, -1, -1, -1, 1072, -1, -1, 1075, 1452,
-1, 1078, -1, -1, -1, 536, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1094, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 562, -1, -1, -1, -1, -1, -1, -1, 6558,
571, 572, 573, 574, 575, 576, 577, 578, 579, 6568,
-1, -1, -1, -1, -1, -1, -1, 6576, 6577, -1,
-1, -1, -1, 6582, -1, -1, -1, -1, -1, -1,
-1, 460, 2510, -1, -1, -1, -1, 6596, 1155, -1,
-1, 2519, -1, -1, 2522, -1, -1, 6606, -1, -1,
1167, -1, 1545, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2547,
-1, -1, -1, -1, -1, -1, -1, -1, 1195, 1196,
-1, -1, -1, -1, 1201, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6659, -1, -1, 1220, -1, -1, 6665, -1, 1225, -1,
-1, -1, -1, -1, -1, -1, 1233, -1, -1, -1,
-1, -1, -1, -1, 6683, 6684, -1, 1244, -1, -1,
-1, -1, -1, 562, 6693, -1, -1, -1, -1, 6698,
1257, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, 80, -1, -1, 83, -1, -1, -1, 87, 88,
89, -1, 6721, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 105, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 115, 1680, -1, -1,
-1, -1, -1, 122, -1, -1, -1, -1, -1, -1,
-1, 6760, -1, -1, -1, 6764, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1334, -1, 148,
-1, -1, -1, 6782, 93, -1, -1, -1, 1345, 98,
6789, -1, -1, 1350, 1351, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6823, 6824, -1, 136, 6827, -1,
-1, -1, 6831, -1, -1, -1, 6835, -1, -1, -1,
149, -1, -1, -1, -1, 6844, 6845, -1, -1, 1406,
1407, -1, -1, -1, -1, 6854, 165, -1, -1, -1,
-1, -1, -1, 1420, -1, 1422, -1, -1, -1, 1426,
-1, -1, 1429, 1430, 183, 1432, -1, -1, -1, -1,
1437, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 263, -1, -1, -1, 207, 268,
-1, -1, -1, -1, 1461, -1, -1, -1, -1, 218,
1467, 1468, -1, -1, -1, -1, -1, -1, 227, -1,
-1, -1, 291, 292, -1, -1, -1, -1, -1, -1,
-1, 240, 1489, 1490, 1491, -1, 1493, 246, 1495, -1,
1497, 1498, -1, 312, -1, -1, -1, 1504, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 273, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 353, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 367, -1,
-1, 370, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 326, -1, -1,
-1, 1578, -1, 1580, 1581, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1975, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 367, -1,
-1, -1, -1, -1, -1, -1, -1, 1624, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 460, 401, 402, 3012, -1, 405, -1, -1, -1,
-1, 1658, -1, 1660, -1, -1, -1, 1664, -1, 1666,
2043, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 432, -1, -1, 435, -1, -1, -1,
-1, -1, -1, 442, -1, -1, -1, -1, -1, 1696,
449, 1698, -1, 452, -1, 1702, -1, 2080, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1715, -1,
-1, -1, 471, -1, -1, -1, -1, -1, -1, 478,
-1, -1, -1, -1, -1, -1, 485, -1, -1, 488,
2113, -1, -1, 492, -1, -1, -1, -1, -1, -1,
-1, 500, 1749, 562, -1, -1, -1, -1, 507, -1,
-1, -1, 571, 572, 573, 574, 575, 576, 577, 578,
579, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1778, 1779, 1780, 533, 1782, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 1802, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3174, -1, -1, -1,
3178, 3179, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2223, -1, -1, -1, -1, -1, -1, -1, 1855, -1,
-1, 2234, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2250, -1, -1,
3238, -1, -1, -1, 1881, -1, 3244, -1, 1885, 1886,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1896,
1897, 1898, 1899, -1, 1901, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3285, -1, -1,
-1, 2304, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2326, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2339, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2351, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2391, 2392,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2028, -1, -1, -1, -1, -1, -1, -1, 2036,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2049, 2050, -1, -1, -1, -1, -1, -1,
-1, 2058, -1, -1, 2061, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2084, -1, 2086,
-1, -1, -1, -1, -1, 2092, 2093, -1, -1, 2096,
-1, -1, 3460, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2109, -1, -1, 2112, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3492, -1, -1, 2134, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2152, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2164, 2165, 2166,
2167, 2168, -1, -1, 2547, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2182, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2194, 2195, 2196,
-1, -1, -1, -1, -1, -1, -1, 3565, -1, -1,
-1, 3569, -1, 2210, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2221, -1, -1, -1, -1, -1,
-1, -1, 2229, 2230, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2245, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2263, 2264, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2279, 2280, 2281, 2282, -1, -1, -1, -1,
-1, 2288, -1, -1, -1, -1, -1, -1, 2295, -1,
-1, 2298, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2320, -1, -1, 2323, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2333, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3708, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3723, -1, 2364, 2365, -1,
3728, -1, -1, -1, -1, -1, -1, -1, 2375, 2376,
-1, -1, 2379, -1, -1, 2382, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3756, -1,
2397, 2398, -1, -1, -1, -1, -1, 2404, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2415, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2441, -1, -1, -1, -1, -1,
-1, 2448, -1, 2450, -1, -1, 2453, 2454, 2455, -1,
2457, 2458, -1, 2460, -1, -1, -1, -1, -1, -1,
2467, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2478, -1, -1, 2481, 2482, -1, -1, 2485, -1,
-1, 2488, 2489, -1, -1, -1, 2493, 2494, -1, -1,
-1, -1, 2499, 2500, -1, -1, -1, -1, -1, 2506,
2507, 2508, 2509, 2510, 2511, 2512, -1, -1, 2515, -1,
2517, 2518, 2519, 2520, 2521, 2522, 2523, 2524, -1, -1,
2527, -1, 2529, 2530, -1, -1, 2533, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2548, 2549, 2550, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2566,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2606,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3990, -1, -1, 3993, -1, 3995, -1, -1,
-1, -1, 4000, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5, -1, -1, -1, -1,
-1, 4049, -1, -1, -1, -1, -1, -1, -1, 4057,
-1, -1, -1, -1, 24, -1, -1, -1, -1, -1,
-1, -1, -1, 2710, 34, 35, -1, -1, -1, -1,
-1, 41, 42, -1, 4082, 45, 46, 47, 48, 49,
50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
-1, -1, -1, 73, -1, 75, 76, -1, -1, -1,
2757, 81, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5, -1,
-1, -1, -1, -1, 4152, -1, 4154, -1, -1, -1,
-1, 3174, -1, -1, -1, 3178, 3179, 24, -1, -1,
-1, -1, -1, 2810, -1, -1, -1, 34, 35, 139,
-1, -1, -1, -1, 41, 42, -1, -1, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
67, 68, 69, -1, -1, -1, 73, -1, 75, 76,
-1, -1, -1, -1, 81, 3238, -1, -1, -1, -1,
-1, 3244, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4248, -1, -1, -1, -1, -1, 216, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3285, -1, -1, -1, 236, 4275, -1, -1,
-1, -1, 139, 4281, -1, -1, -1, -1, -1, -1,
-1, -1, 4290, -1, -1, -1, -1, -1, -1, -1,
260, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4318, -1, -1, -1, -1, 285, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 216,
2997, -1, -1, -1, -1, -1, -1, -1, -1, -1,
330, 3008, 3009, 333, -1, 3012, -1, -1, -1, 236,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4389, -1, -1, -1, 355, -1, 3034, -1, -1,
-1, -1, -1, 260, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4411, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 285, 3066,
-1, 3068, -1, -1, 3071, 3072, -1, 4435, 3075, -1,
3077, -1, -1, 3080, -1, -1, -1, 3084, 3085, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3095, -1,
-1, -1, -1, -1, -1, -1, -1, 3104, 3105, -1,
-1, -1, -1, 330, -1, -1, 333, -1, -1, 3492,
-1, 3118, -1, -1, -1, -1, 446, -1, -1, 3126,
-1, 3128, -1, -1, -1, -1, -1, -1, 355, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 497, -1, 4537,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3565, 513, -1, -1, 3569, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 528, 3206,
-1, 3208, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4580, -1, -1, -1, -1, -1, 3225, 446,
-1, -1, -1, -1, -1, -1, -1, -1, 558, 3236,
-1, -1, 3239, 3240, 3241, 3242, -1, 4605, 3245, -1,
-1, 3248, -1, 573, 574, 575, 576, 577, 578, -1,
-1, 581, 582, 583, 584, -1, -1, -1, 588, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
497, -1, -1, 3280, -1, -1, -1, -1, -1, -1,
-1, 3288, 3289, -1, -1, -1, 513, -1, 3295, -1,
-1, -1, -1, -1, -1, -1, -1, 3304, -1, -1,
-1, 528, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3324, -1, -1,
-1, -1, -1, -1, -1, 3708, -1, -1, -1, -1,
-1, 558, -1, -1, -1, -1, -1, -1, 3345, -1,
3723, -1, -1, -1, -1, 3728, 573, 574, 575, 576,
577, 578, -1, -1, 581, 582, 583, -1, -1, -1,
-1, 588, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3756, 3381, -1, -1, 3384, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4770, 3410, 3411, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3425, -1,
3427, 3428, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3458, 3459, 3460, -1, -1, -1, 3464, -1, -1,
-1, -1, -1, -1, -1, 3472, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3485, -1,
-1, -1, -1, -1, 3491, -1, 3493, -1, -1, -1,
-1, -1, 4860, -1, -1, -1, -1, -1, -1, 3506,
-1, -1, -1, -1, 3511, -1, -1, -1, -1, -1,
3517, -1, -1, 3520, -1, -1, -1, -1, 4886, -1,
-1, -1, -1, -1, -1, 3532, 3533, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3543, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3553, -1, 3555, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3579, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3592, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3606,
-1, -1, -1, -1, -1, -1, -1, 3990, -1, 3616,
3993, 3618, 3995, 3620, -1, -1, -1, 4000, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3666,
5028, -1, -1, -1, -1, -1, 4049, -1, -1, -1,
-1, -1, -1, -1, 4057, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4082,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5077,
-1, -1, 5080, -1, 3721, 3722, -1, 3724, -1, 3726,
3727, -1, 3729, -1, -1, -1, -1, -1, -1, 3736,
-1, -1, -1, -1, 3741, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4152,
-1, 4154, -1, -1, -1, -1, 3783, 3784, 3785, -1,
-1, 3788, -1, -1, -1, -1, -1, -1, -1, 3796,
3797, 3798, 3799, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3812, -1, -1, 3815, -1,
3817, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3828, 3829, -1, -1, 3832, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3851, -1, 3853, -1, 3855, -1,
3857, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4248, -1, -1, -1, 3876,
-1, -1, 3879, -1, -1, -1, 3883, -1, -1, 5247,
-1, -1, -1, 3890, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3913, 4290, -1, -1,
-1, -1, -1, -1, 3921, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3936,
-1, -1, -1, -1, -1, 4318, -1, -1, -1, -1,
-1, -1, -1, 3950, -1, -1, -1, 3954, -1, -1,
3957, 3958, -1, 3960, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4389, -1, -1, -1,
-1, -1, -1, -1, -1, 4022, 5384, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4411, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4052, 4053, -1, -1, -1,
-1, -1, 4435, -1, -1, -1, 5424, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5446, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5518, -1, -1, 4160, 4537, -1, -1, -1, -1, -1,
-1, -1, -1, 4170, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4580, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4605, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4275, -1,
5638, -1, 5640, -1, 4281, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4292, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4329, 4330, 4331, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4346,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4360, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4381, 4382, 4383, -1, -1, -1,
4387, -1, -1, -1, -1, -1, -1, 4770, -1, -1,
-1, -1, 4399, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4451, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4474, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4860, -1, -1,
-1, -1, -1, -1, 4491, 4492, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4502, 5864, -1, -1, -1,
-1, -1, -1, 4886, -1, -1, -1, -1, 4515, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4534, -1, -1,
-1, -1, -1, -1, -1, -1, 4543, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4553, -1, -1, -1,
4557, 4558, -1, -1, -1, -1, 4563, -1, -1, -1,
-1, -1, -1, -1, 4571, -1, 4573, -1, -1, 4576,
-1, -1, -1, -1, 4581, 4582, 4583, 4584, -1, -1,
4587, 4588, 4589, 4590, 4591, 4592, 4593, 4594, 4595, 4596,
-1, -1, -1, 4600, 4601, 4602, -1, -1, -1, -1,
-1, -1, -1, 4610, -1, -1, -1, -1, 4615, -1,
-1, -1, 4619, -1, -1, -1, 5984, -1, -1, -1,
4627, -1, -1, 4630, -1, 4632, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4650, -1, 5028, 4653, 4654, -1, -1,
-1, 4658, 4659, -1, -1, -1, 4663, -1, 4665, 4666,
-1, -1, -1, -1, -1, -1, -1, 4674, 4675, 4676,
4677, -1, -1, 4680, 4681, -1, -1, -1, 4685, 4686,
4687, -1, -1, 4690, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6061, 5077, -1, -1, 5080, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4737, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6111, -1, 4752, -1, 4754, 6116, 6117,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4782, 4783, 4784, -1, -1,
4787, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4822, 4823, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4841, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 106, -1, -1, -1, -1, -1, -1,
-1, 6229, 6230, -1, 5247, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4894, 141, -1,
-1, -1, -1, -1, 147, 148, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4949, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4982, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4996,
-1, 4998, -1, -1, -1, -1, -1, -1, 5005, -1,
-1, 5384, -1, -1, 5011, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5022, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5037, -1, -1, -1, -1, 5042, 5043, -1, -1, -1,
-1, 5424, -1, 5050, -1, -1, -1, -1, -1, -1,
-1, -1, 5059, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5069, 5446, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5081, 5082, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5092, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5103, 5104, -1, -1,
-1, 6469, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5121, 5122, 5123, 5124, 5125, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5136,
-1, -1, -1, -1, -1, 5518, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5178, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5191, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5205, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5233, -1, -1, 5236,
-1, -1, -1, -1, -1, -1, -1, 5244, 5245, -1,
-1, -1, -1, -1, 5251, 5252, -1, -1, -1, 5256,
-1, -1, -1, -1, -1, -1, 5263, 5640, -1, 5266,
5267, -1, -1, -1, -1, -1, 5273, -1, -1, -1,
5277, 5278, 5279, 5280, -1, -1, -1, 5284, 5285, 5286,
-1, 5288, 5289, -1, -1, 5292, -1, -1, -1, 5296,
-1, -1, -1, 5300, -1, -1, -1, -1, -1, 5306,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5324, -1, -1,
-1, -1, -1, -1, -1, -1, 5333, -1, -1, -1,
5337, -1, -1, -1, 5341, -1, 5343, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5363, -1, -1, 5366,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5400, -1, -1, -1, 5404, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6823, -1, -1, -1, -1,
-1, -1, 5469, -1, -1, -1, -1, -1, -1, 5476,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5864, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5498, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5513, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5544, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5560, -1, -1, -1, -1, -1, -1,
5567, -1, -1, -1, -1, -1, -1, -1, -1, 5576,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5591, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5604, -1, 5606,
-1, 5984, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5633, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5644, -1, -1,
-1, -1, -1, 5650, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6061, -1,
-1, -1, 935, -1, -1, -1, -1, -1, -1, -1,
-1, 944, -1, -1, -1, -1, -1, -1, -1, 952,
-1, -1, 955, -1, -1, 5712, -1, -1, 5715, -1,
-1, 5718, 5719, 5720, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6111, -1,
-1, -1, -1, 6116, 6117, -1, -1, -1, 5745, 5746,
-1, -1, 5749, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5764, -1, -1,
5767, -1, -1, -1, 5771, -1, -1, -1, -1, 5776,
-1, -1, 5779, 5780, -1, 5782, -1, 5784, -1, -1,
5787, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5808, -1, -1, 5811, -1, 1059, -1, -1, -1,
-1, 1064, -1, -1, -1, 1068, 5823, 5824, 5825, -1,
5827, -1, 1075, -1, -1, 1078, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1090, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6230, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5875, 5876,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5920, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5932, -1, -1, -1, -1,
5937, -1, -1, -1, -1, 5942, -1, -1, -1, -1,
-1, -1, 1195, 1196, 5951, -1, -1, -1, -1, 1202,
-1, -1, -1, 1206, 5961, -1, -1, -1, 5965, -1,
-1, 5968, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5979, 5980, 5981, -1, -1, -1, -1, -1,
1233, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6020, -1, -1, -1, 6024, -1, 6026,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6040, -1, -1, -1, -1, 6045, -1,
-1, -1, -1, -1, 6051, -1, -1, -1, 6055, -1,
-1, -1, 6059, -1, -1, 6062, -1, 6064, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6469, -1, 6095, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6121, -1, -1, -1, -1, -1,
6127, 6128, -1, -1, -1, 6132, 6133, 6134, 6135, 1382,
1383, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1406, 1407, -1, 6163, -1, -1, -1,
-1, -1, -1, -1, 6171, -1, -1, 1420, -1, -1,
-1, -1, 1425, 1426, -1, -1, -1, 1430, -1, 1432,
-1, -1, -1, 1436, -1, -1, -1, -1, -1, 6196,
-1, -1, 6199, -1, -1, -1, -1, -1, -1, 1452,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6225, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1495, -1, 1497, 1498, -1, -1, 6255, -1,
-1, -1, -1, -1, -1, -1, -1, 6264, 6265, 6266,
-1, -1, 6269, -1, -1, 6272, -1, -1, -1, 6276,
-1, -1, -1, -1, -1, -1, 6283, -1, -1, -1,
-1, -1, -1, 6290, -1, -1, -1, -1, -1, -1,
-1, -1, 1545, -1, -1, -1, 6303, -1, -1, -1,
-1, 6308, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6318, -1, 6320, -1, -1, -1, -1, -1, -1,
-1, -1, 6329, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6364, 6365, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1624, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6395, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6410, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1680, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6444, -1, -1,
-1, -1, -1, -1, 6451, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6462, -1, -1, 6465, -1,
-1, -1, 1715, -1, -1, -1, -1, 6474, -1, 6476,
-1, 6478, 6479, -1, -1, -1, -1, -1, -1, -1,
6487, 6488, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1749, 6504, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6519, -1, -1, -1, -1, -1, -1, 6526,
-1, -1, -1, -1, -1, 1778, 1779, 1780, -1, 1782,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6551, -1, -1, -1, -1, 1802,
-1, 6558, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6568, -1, -1, -1, -1, -1, -1, -1, 6576,
6577, 6578, -1, -1, -1, 6582, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6596,
-1, -1, -1, 6600, -1, -1, -1, -1, -1, 6606,
-1, -1, -1, -1, 6611, 6612, 6613, -1, -1, -1,
1064, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6629, -1, -1, -1, -1, -1, 1881, -1,
-1, -1, 1885, 1886, -1, -1, 1090, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1901, -1,
-1, -1, 6659, 6660, 6661, -1, -1, -1, 6665, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6683, 6684, -1, -1,
-1, -1, -1, -1, -1, -1, 6693, -1, -1, -1,
-1, 6698, 6699, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6721, -1, -1, -1, -1, -1,
-1, -1, 1975, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1992,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6760, -1, 6762, 6763, 6764, 6765, -1,
6767, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6779, -1, -1, 6782, -1, -1, -1, -1,
2033, -1, -1, 6790, -1, -1, -1, -1, -1, -1,
2043, -1, -1, -1, -1, 6802, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6823, 6824, -1, -1,
6827, -1, -1, -1, 6831, -1, -1, 2080, -1, -1,
-1, -1, -1, -1, -1, -1, 2089, 6844, 6845, -1,
-1, 6848, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2106, -1, -1, -1, -1, -1, -1,
2113, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2194, 2195, 2196, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2223, 1425, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2234, 1436, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2250, 1452, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2304, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2320, -1, -1,
2323, -1, -1, 2326, -1, -1, -1, -1, -1, -1,
2333, -1, -1, -1, -1, -1, 2339, -1, -1, -1,
-1, 1545, -1, -1, -1, -1, -1, -1, 2351, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2364, 2365, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2379, -1, -1, 2382,
-1, -1, -1, -1, -1, -1, -1, -1, 2391, 2392,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2450, -1, -1,
-1, 2454, 2455, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1680, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2493, 2494, -1, -1, -1, -1, 2499, 2500, -1, -1,
-1, -1, -1, 2506, 2507, 2508, 2509, 2510, 2511, 2512,
-1, -1, 2515, -1, 2517, -1, 2519, 2520, 2521, 2522,
2523, 2524, -1, -1, 2527, -1, 2529, 2530, -1, -1,
2533, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2547, 2548, 2549, 2550, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2566, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2710, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2757, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1975, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2810, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2043,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2080, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2113,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, -1, 2997, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3009, -1, -1, 3012,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2223,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2234, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2250, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3068, -1, -1, -1, 3072,
-1, -1, 3075, -1, 3077, -1, -1, 3080, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3095, -1, -1, -1, -1, -1, -1, -1,
2304, 3104, 3105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2326, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2339, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2351, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3174, -1, -1, -1, 3178, 3179, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2391, 2392, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3225, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3236, -1, 3238, 3239, -1, 3241, 3242,
-1, 3244, -1, -1, -1, -1, -1, 3, -1, -1,
-1, -1, 8, -1, -1, -1, 12, -1, 14, -1,
16, 17, -1, -1, -1, -1, 3269, -1, -1, -1,
-1, 27, -1, -1, -1, -1, -1, -1, -1, 35,
-1, -1, 3285, -1, -1, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, -1, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, -1, -1, -1, -1, -1,
-1, -1, -1, 2547, -1, 101, -1, 103, 104, -1,
-1, -1, -1, -1, -1, 3358, -1, -1, -1, 115,
-1, -1, -1, -1, -1, 121, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 131, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 143, -1, 145,
146, -1, -1, -1, -1, -1, 152, -1, 154, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
166, -1, 168, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 183, -1, 185,
-1, 187, 188, -1, -1, -1, -1, -1, 194, -1,
-1, -1, -1, -1, -1, -1, -1, 203, -1, 205,
-1, -1, -1, 209, -1, 3458, 3459, 3460, -1, 215,
216, 3464, -1, -1, -1, -1, -1, 223, -1, 225,
-1, -1, -1, -1, -1, -1, 232, -1, -1, -1,
236, -1, -1, -1, -1, -1, -1, -1, 3491, 3492,
-1, -1, -1, -1, 250, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 267, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 283, -1, -1,
3533, -1, 288, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 314, 315,
-1, -1, 3565, -1, 320, -1, 3569, -1, -1, -1,
-1, -1, 328, -1, -1, -1, -1, -1, 334, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3592,
-1, -1, -1, -1, -1, -1, 352, -1, -1, -1,
-1, -1, 358, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
396, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 410, -1, -1, -1, -1, -1,
416, 417, -1, 419, -1, -1, -1, -1, 424, -1,
-1, -1, -1, -1, 430, -1, -1, 433, -1, -1,
-1, -1, -1, -1, 440, -1, -1, -1, -1, -1,
-1, 447, 448, -1, -1, -1, -1, -1, -1, 455,
-1, -1, -1, 459, -1, 3708, -1, -1, -1, -1,
-1, -1, -1, 469, -1, -1, -1, -1, 3721, -1,
3723, 3724, -1, 3726, 3727, 3728, -1, -1, -1, 485,
-1, -1, -1, 3736, -1, -1, -1, -1, 3741, -1,
496, -1, -1, -1, -1, -1, -1, -1, -1, 505,
-1, 507, -1, 3756, -1, -1, -1, 513, -1, -1,
516, -1, -1, 519, -1, -1, 522, -1, -1, -1,
-1, 527, 528, -1, -1, -1, -1, -1, -1, -1,
3783, 3784, 3785, -1, 540, 3788, -1, -1, -1, -1,
-1, -1, -1, 3796, 3797, 3798, 3799, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 564, 3812,
-1, -1, 3815, -1, 3817, -1, -1, -1, -1, -1,
1064, -1, -1, -1, -1, 3828, 3829, 583, -1, 3832,
-1, 587, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1090, -1, -1, -1,
3853, -1, 3855, -1, 3857, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3876, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3890, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3921, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3936, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3950, -1, -1,
-1, -1, -1, -1, -1, 3958, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3174, -1, -1, -1, 3178, 3179, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3990, -1, -1,
3993, -1, 3995, -1, -1, -1, -1, 4000, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4022,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3238, -1, -1, -1, -1, -1,
3244, -1, -1, -1, -1, -1, 4049, -1, -1, -1,
-1, -1, -1, -1, 4057, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4082,
-1, 3285, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4152,
-1, 4154, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1425, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1436, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1452, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4248, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4275, -1, -1, -1, -1, -1, 4281, -1,
-1, -1, -1, -1, -1, -1, -1, 4290, 3492, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1545, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4318, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4360, -1, -1,
-1, 3565, -1, -1, -1, 3569, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4389, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4411, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4435, -1, -1, -1, 1680, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3708, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3723,
-1, -1, -1, -1, 3728, -1, -1, -1, -1, -1,
-1, 4534, -1, 106, 4537, -1, -1, -1, -1, -1,
4543, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4553, -1, 3756, -1, 4557, 4558, -1, -1, -1, -1,
4563, -1, -1, -1, -1, -1, -1, -1, 4571, -1,
4573, -1, -1, 4576, -1, -1, -1, 4580, 4581, 4582,
4583, 4584, -1, -1, 4587, 4588, 4589, 4590, 4591, 4592,
4593, 4594, 4595, 4596, -1, -1, -1, 4600, 4601, 4602,
-1, -1, 4605, -1, -1, -1, -1, 4610, -1, -1,
-1, -1, 4615, -1, -1, -1, 4619, -1, -1, -1,
-1, -1, -1, -1, 4627, -1, -1, 4630, -1, 4632,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4650, -1, -1,
4653, 4654, -1, -1, -1, 4658, 4659, -1, -1, -1,
4663, -1, 4665, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4677, -1, -1, 4680, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4690, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1975, -1, -1, 4737, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4754, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4770, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4782,
-1, -1, -1, -1, -1, -1, 3990, -1, -1, 3993,
-1, 3995, -1, -1, -1, -1, 4000, -1, -1, 2043,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2080, -1, -1, -1,
-1, -1, -1, -1, -1, 4049, -1, -1, -1, -1,
-1, -1, -1, 4057, -1, -1, -1, 4860, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2113,
-1, -1, -1, -1, -1, -1, -1, -1, 4082, -1,
-1, -1, -1, 4886, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4152, -1,
4154, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2223,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2234, -1, -1, -1, -1, 4998, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2250, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5028, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5042,
5043, -1, -1, -1, 4248, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2304, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5077, -1, -1, 5080, 5081, 5082,
-1, -1, 2326, -1, -1, -1, 4290, -1, -1, 5092,
-1, -1, -1, -1, -1, 2339, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2351, -1, -1,
-1, -1, -1, -1, 4318, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2391, 2392, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5178, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4389, -1, -1, 5191, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5205, -1, -1, -1, -1, 4411, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5233, 4435, -1, 5236, -1, -1, -1, -1, -1, -1,
-1, 5244, 5245, -1, 5247, -1, -1, -1, 5251, 5252,
-1, -1, -1, 5256, -1, -1, -1, -1, -1, -1,
5263, -1, -1, 5266, 5267, -1, -1, -1, -1, -1,
5273, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5288, -1, -1, -1, -1,
-1, -1, -1, 5296, -1, -1, -1, 5300, -1, -1,
-1, -1, -1, 2547, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5333, -1, -1, 4537, -1, -1, -1, -1, 5341, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 935, 5366, -1, -1, -1, -1, -1, -1,
-1, 944, -1, -1, -1, -1, 4580, -1, -1, 952,
-1, 5384, 955, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4605, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5424, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5446, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5469, -1, -1, -1,
-1, -1, -1, 5476, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1059, -1, -1, -1,
-1, 1064, -1, -1, -1, 1068, -1, -1, -1, -1,
-1, -1, 1075, -1, -1, 1078, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5518, -1, 1090, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5544, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5560, -1, -1,
-1, -1, -1, -1, -1, -1, 4770, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5591, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1195, 1196, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5638, -1, 5640, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4860, -1, -1, -1,
1233, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4886, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5712,
-1, -1, 5715, -1, -1, 5718, 5719, 5720, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5745, 5746, -1, -1, 5749, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5764, -1, -1, -1, -1, -1, -1, 5771, -1,
-1, -1, -1, 5776, -1, -1, 5779, 5780, -1, -1,
-1, -1, -1, -1, 5787, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5808, -1, -1, 5811, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5823, -1, -1, -1, 5028, -1, -1, -1, -1, -1,
-1, -1, -1, 1406, 1407, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1420, -1, -1,
-1, -1, 1425, 1426, -1, -1, -1, 1430, -1, 1432,
-1, 5864, -1, 1436, -1, -1, -1, -1, -1, -1,
-1, -1, 5875, 5077, -1, -1, 5080, -1, -1, 1452,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5920, -1, -1,
-1, -1, 1495, -1, 1497, 1498, -1, -1, -1, -1,
3174, -1, -1, -1, 3178, 3179, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1545, -1, -1, -1, -1, -1, 5981, -1,
-1, 5984, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3238, -1, -1, -1, -1, -1,
3244, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6020, -1, -1,
-1, 6024, -1, 6026, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6040, -1, -1,
-1, 3285, 6045, 5247, -1, -1, -1, -1, 6051, -1,
-1, 1624, 6055, -1, -1, -1, -1, -1, 6061, 6062,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1680, 6111, -1,
-1, -1, -1, 6116, 6117, -1, -1, -1, 6121, -1,
-1, -1, -1, -1, 6127, 6128, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1715, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6163, -1, -1, -1, -1, -1, -1, -1, 6171, -1,
-1, -1, -1, -1, -1, -1, 1749, -1, -1, -1,
5384, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6199, -1, -1, -1,
-1, -1, -1, -1, -1, 1778, 1779, 1780, -1, 1782,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5424, -1, -1, -1, -1, -1, 6229, 6230, -1, 1802,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5446, -1, -1, -1, -1, -1, 3492, -1,
-1, -1, 6255, -1, -1, -1, -1, -1, -1, -1,
-1, 6264, 6265, 6266, -1, -1, 6269, -1, -1, 6272,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6283, -1, -1, -1, -1, -1, -1, 6290, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6308, -1, -1, 1881, -1,
-1, -1, 1885, 1886, 5518, -1, -1, -1, -1, -1,
-1, 3565, -1, -1, -1, 3569, 6329, -1, 1901, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1975, -1, -1, -1, -1, 6410, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5640, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6451, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6465, -1, 3708, -1, 6469, -1, -1, -1,
2043, 6474, -1, 6476, -1, 6478, -1, -1, -1, 3723,
-1, -1, -1, -1, 3728, 6488, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6504, -1, -1, -1, -1, -1, 2080, -1, -1,
-1, -1, 3756, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2113, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6558, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6568, -1, -1, -1, -1,
-1, -1, -1, 6576, 6577, -1, -1, -1, -1, 6582,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6596, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6606, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2194, 2195, 2196, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2223, -1, -1, -1, -1, -1, 6659, -1, -1, -1,
5864, 2234, 6665, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2250, -1, -1,
6683, 6684, -1, -1, -1, -1, -1, -1, -1, -1,
6693, -1, -1, -1, -1, 6698, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6721, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2304, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3990, 2320, -1, 3993,
2323, 3995, -1, 2326, -1, -1, 4000, 6760, -1, -1,
2333, 6764, -1, -1, -1, -1, 2339, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2351, 6782,
5984, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2364, 2365, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4049, 2379, -1, -1, 2382,
-1, -1, -1, 4057, -1, -1, -1, -1, 2391, 2392,
6823, 6824, -1, -1, 6827, -1, -1, -1, 6831, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4082, -1,
-1, 6844, 6845, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6061, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2450, -1, -1,
-1, 2454, 2455, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6111, 4152, -1,
4154, -1, 6116, 6117, -1, -1, -1, -1, -1, -1,
2493, 2494, -1, -1, -1, -1, 2499, 2500, -1, -1,
-1, -1, -1, 2506, 2507, 2508, 2509, 2510, 2511, 2512,
-1, -1, 2515, -1, 2517, -1, 2519, 2520, 2521, 2522,
2523, 2524, -1, -1, 2527, -1, 2529, 2530, -1, -1,
2533, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2547, 2548, 2549, 2550, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2566, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4248, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6230, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4290, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4318, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2710, -1, -1,
-1, -1, -1, -1, -1, 4389, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4411, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2757, -1, -1, -1, -1, -1,
-1, 4435, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2810, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6469, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4537, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4580, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4605, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2987, 2988, 2989, 2990, 2991, 2992,
2993, 2994, 2995, -1, 2997, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3009, -1, -1, 3012,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3068, -1, -1, -1, 3072,
-1, -1, 3075, -1, 3077, -1, -1, 3080, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3095, -1, -1, -1, 4770, -1, -1, -1,
-1, 3104, 3105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3174, -1, -1, -1, 3178, 3179, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4860, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4886, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3225, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3236, -1, 3238, 3239, -1, 3241, 3242,
-1, 3244, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3285, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5028, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5077, -1, -1, 5080, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3458, 3459, 3460, -1, -1,
-1, 3464, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3491, 3492,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3533, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3565, -1, -1, -1, 3569, -1, -1, -1,
-1, -1, -1, 5247, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3592,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3708, -1, -1, -1, -1,
5384, -1, -1, -1, -1, -1, -1, -1, 3721, -1,
3723, 3724, -1, 3726, 3727, 3728, -1, -1, -1, -1,
-1, -1, -1, 3736, -1, -1, -1, -1, 3741, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5424, -1, -1, 3756, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5446, -1, -1, -1, -1, -1, -1, -1,
3783, 3784, 3785, -1, -1, 3788, -1, -1, -1, -1,
-1, -1, -1, 3796, 3797, 3798, 3799, -1, -1, -1,
-1, -1, 83, -1, -1, -1, -1, -1, -1, 3812,
-1, -1, 3815, -1, 3817, -1, -1, -1, -1, -1,
-1, -1, -1, 104, -1, 3828, 3829, -1, -1, 3832,
-1, -1, -1, 114, 115, -1, 117, -1, -1, -1,
-1, -1, 123, -1, 5518, -1, -1, -1, -1, -1,
3853, -1, 3855, -1, 3857, 136, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3876, -1, -1, -1, -1, 159, 160,
-1, -1, -1, -1, -1, -1, -1, 3890, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3921, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3936, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3950, -1, -1,
-1, -1, -1, -1, -1, 3958, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5640, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3990, -1, -1,
3993, -1, 3995, -1, -1, -1, -1, 4000, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4022,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4049, -1, -1, -1,
-1, -1, -1, -1, 4057, -1, -1, 338, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4082,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4152,
-1, 4154, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5864, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4248, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4275, -1, -1, -1, -1, -1, 4281, -1,
-1, -1, -1, -1, -1, -1, -1, 4290, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5984, -1, -1, -1, -1, 4318, -1, 81, -1, 83,
84, -1, 86, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
104, -1, -1, -1, 108, -1, -1, -1, -1, -1,
114, 115, -1, 117, -1, -1, -1, 4360, -1, 123,
-1, 125, -1, -1, -1, -1, -1, -1, -1, 133,
-1, -1, 136, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4389, 6061, -1, -1,
-1, -1, -1, 674, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4411, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4435, -1, -1, -1, -1, 6111, -1, -1,
-1, -1, 6116, 6117, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 738, 739, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 807, -1, -1, -1,
-1, 4534, -1, -1, 4537, -1, -1, -1, -1, -1,
4543, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4553, -1, -1, -1, 4557, 4558, 6230, -1, -1, -1,
4563, -1, -1, -1, -1, -1, -1, -1, 4571, -1,
4573, -1, -1, 4576, 338, -1, -1, 4580, 4581, 4582,
4583, 4584, -1, -1, 4587, 4588, 4589, 4590, 4591, 4592,
4593, 4594, 4595, 4596, -1, -1, -1, 4600, 4601, 4602,
-1, -1, 4605, -1, -1, -1, -1, 4610, -1, -1,
-1, -1, 4615, -1, -1, -1, 4619, -1, -1, -1,
-1, -1, -1, -1, 4627, -1, -1, 4630, -1, 4632,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4650, -1, -1,
4653, 4654, -1, -1, -1, 4658, 4659, 938, -1, -1,
4663, 942, 4665, -1, -1, -1, -1, -1, -1, 950,
-1, -1, 953, -1, 4677, 956, 957, 4680, 959, -1,
961, -1, -1, 964, -1, 966, -1, 4690, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 988, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 999, -1,
-1, -1, 1003, -1, -1, -1, -1, -1, -1, 1010,
1011, -1, -1, 1014, 4737, 1016, 1017, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4754, -1, -1, -1, -1, 1037, -1, 1039, -1,
-1, -1, -1, -1, -1, -1, -1, 4770, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4782,
-1, -1, 1063, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6469, -1, -1, -1, -1,
-1, -1, -1, 1084, -1, 1086, -1, -1, -1, -1,
-1, -1, -1, -1, 1095, 1096, -1, -1, -1, -1,
-1, -1, -1, -1, 1105, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4860, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4886, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
674, -1, -1, -1, -1, -1, -1, 1198, -1, 1200,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1234, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 738, 739, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4998, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1299, -1,
-1, 1302, -1, 1304, -1, 5028, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5042,
5043, -1, -1, 807, -1, -1, -1, -1, -1, -1,
1331, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5077, -1, -1, 5080, 5081, 5082,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5092,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1397, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1423, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1438, -1, 1440,
-1, -1, -1, -1, 928, -1, -1, -1, -1, 1450,
-1, -1, -1, -1, -1, 5178, 1457, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5191, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5205, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1499, -1,
1501, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5233, -1, -1, 5236, -1, -1, -1, -1, -1, -1,
-1, 5244, 5245, -1, 5247, -1, -1, -1, 5251, 5252,
-1, -1, -1, 5256, -1, -1, -1, -1, -1, -1,
5263, -1, -1, 5266, 5267, -1, -1, -1, -1, -1,
5273, -1, 1036, 1037, -1, 1039, -1, -1, -1, 1043,
-1, -1, -1, -1, -1, 5288, -1, -1, -1, -1,
-1, -1, -1, 5296, -1, -1, -1, 5300, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5333, -1, -1, -1, -1, -1, -1, 1101, 5341, -1,
1104, 1105, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1120, -1, 1122, -1,
1124, -1, -1, 5366, -1, -1, 1130, -1, -1, -1,
1134, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5384, -1, -1, -1, -1, -1, 1668, -1, -1,
-1, -1, 1156, 1157, -1, -1, 1160, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5424, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1198, -1, 1200, -1, -1, -1,
-1, -1, -1, 5446, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5469, -1, -1, -1,
-1, -1, -1, 5476, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5518, -1, -1, -1, -1,
-1, 1285, 1286, -1, -1, 1289, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5544, -1, -1, -1, 1826, 1827, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5560, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1344, -1, -1, -1, -1, -1, 1867, 1868, 5591, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1914, -1, 5638, -1, 5640, 1919, -1,
-1, 1922, -1, -1, -1, -1, -1, -1, -1, 1930,
-1, 1415, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 1946, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5712,
-1, -1, 5715, -1, -1, 5718, 5719, 5720, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2017, -1, -1, -1,
-1, -1, 5745, 5746, -1, -1, 5749, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5764, -1, -1, -1, -1, -1, -1, 5771, -1,
-1, -1, -1, 5776, -1, -1, 5779, 5780, -1, -1,
-1, -1, -1, -1, 5787, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2085, 5808, -1, -1, 5811, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5823, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5864, -1, -1, -1, -1, -1, -1, -1, 1633,
-1, 1635, 5875, -1, 1638, -1, 1640, -1, -1, 1643,
1644, 1645, -1, -1, -1, 1649, -1, -1, -1, -1,
-1, -1, 1656, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1671, -1, 1673,
-1, -1, -1, -1, -1, 1679, -1, 5920, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2219, -1,
1064, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1090, -1, -1, -1,
-1, -1, -1, 2254, -1, -1, -1, -1, 5981, -1,
-1, 5984, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6020, -1, 2300,
-1, 6024, -1, 6026, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6040, -1, -1,
-1, -1, 6045, -1, -1, -1, 2327, -1, 6051, -1,
1814, -1, 6055, -1, -1, -1, -1, -1, 6061, 6062,
-1, -1, 1826, 1827, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1843,
-1, -1, -1, -1, 1848, 1849, -1, -1, -1, 1064,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2384, -1, 2386, -1, -1, 6111, -1,
-1, -1, -1, 6116, 6117, 1090, -1, -1, 6121, 2400,
2401, -1, 2403, -1, 6127, 6128, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1914, -1, 1916, -1, 2435, -1, -1, -1, -1, -1,
6163, -1, 1926, -1, -1, -1, 2447, -1, 6171, -1,
2451, 1195, 1196, -1, -1, 2456, -1, -1, 2459, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6199, -1, -1, 2480,
-1, -1, -1, -1, 1968, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6229, 6230, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6255, -1, -1, -1, -1, 2021, -1, -1,
-1, 6264, 6265, 6266, -1, -1, 6269, 2031, -1, 6272,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6283, -1, -1, -1, -1, -1, -1, 6290, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1425, -1, -1, -1, 6308, -1, -1, -1, -1,
-1, -1, 1436, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6329, -1, 1452, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2114, -1, -1, 2117, 2118, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1406, 1407, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6410, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1545, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6451, -1,
1425, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 1436, 6465, -1, 2228, -1, 6469, -1, -1, -1,
-1, 6474, -1, 6476, -1, 6478, -1, 1452, -1, -1,
-1, -1, -1, -1, -1, 6488, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6504, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6558, 1680, -1, -1, -1,
-1, -1, -1, -1, -1, 6568, -1, -1, -1, -1,
1545, -1, -1, 6576, 6577, -1, -1, -1, -1, 6582,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6596, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6606, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2419, 6659, 2421, -1, -1,
-1, 2425, 6665, 2427, -1, -1, 2430, -1, -1, -1,
2434, -1, -1, -1, -1, 2439, -1, -1, -1, -1,
6683, 6684, -1, -1, -1, -1, -1, -1, -1, -1,
6693, 1715, -1, -1, -1, 6698, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 1680, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6721, -1,
-1, -1, -1, -1, -1, 1749, -1, -1, -1, -1,
-1, -1, -1, -1, 3015, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1778, 1779, 1780, 6760, 1782, -1,
-1, 6764, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1802, 6782,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6823, 6824, -1, -1, 6827, -1, -1, -1, 6831, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6844, 6845, -1, -1, -1, -1, -1, -1, -1,
-1, 1975, -1, -1, -1, -1, -1, 1881, -1, -1,
-1, 1885, 1886, -1, -1, -1, -1, -1, -1, -1,
-1, 3152, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3168, 3169, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3187, 3188, -1, -1,
-1, 3192, 3193, -1, -1, -1, 3197, 3198, -1, 2043,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3212, -1, -1, -1, -1, -1, -1, 3219, -1,
-1, -1, 3223, 3224, -1, -1, 3227, 3228, -1, -1,
-1, -1, -1, 3234, -1, -1, 2080, -1, -1, -1,
-1, -1, -1, -1, -1, 3246, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3258, -1, -1,
-1, -1, 3263, -1, -1, -1, -1, -1, -1, 2113,
-1, -1, -1, -1, -1, -1, -1, 3278, -1, -1,
1975, -1, -1, -1, -1, -1, 3287, -1, -1, 3290,
-1, 3292, 3293, 3294, -1, -1, -1, -1, 3299, 3300,
-1, -1, -1, -1, -1, -1, -1, -1, 3309, -1,
-1, -1, -1, -1, 3315, -1, -1, -1, 3319, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3329, 3330,
-1, -1, -1, 3334, -1, -1, -1, -1, -1, 3340,
3341, -1, -1, -1, -1, -1, -1, -1, 2043, -1,
-1, -1, -1, 3354, -1, -1, 3357, -1, -1, -1,
-1, -1, -1, 3364, 3365, -1, -1, -1, -1, 3370,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2223,
-1, 3382, -1, -1, 3385, 2080, -1, -1, -1, 3390,
2234, -1, -1, -1, -1, 3396, 3397, -1, 3399, -1,
3401, -1, -1, 3404, 3405, -1, 2250, 3408, -1, -1,
-1, 3412, 3413, 3414, 3415, -1, 3417, -1, 2113, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3430,
3431, -1, 3433, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3444, 3445, 3446, -1, -1, -1, -1,
2194, 2195, 2196, -1, -1, -1, -1, -1, -1, -1,
2304, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2326, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2339, -1, -1, -1, -1,
3501, -1, -1, -1, -1, -1, -1, 2351, 3509, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3008, -1, -1, 3528, 2223, -1,
-1, 3015, -1, -1, -1, -1, -1, -1, -1, 2234,
-1, 3025, -1, -1, -1, -1, -1, 2391, 2392, -1,
-1, -1, -1, -1, -1, 2250, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3578, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2304,
-1, -1, -1, -1, -1, -1, -1, -1, 3619, -1,
3621, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2326, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2339, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 1794, 2351, 3141, -1, -1,
3661, -1, -1, 3147, -1, 3149, -1, -1, 3152, -1,
-1, -1, -1, -1, -1, 3676, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2391, 2392, -1, -1,
-1, -1, -1, 2547, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3204, -1, -1, -1, -1, 1864, -1, -1, -1, 3730,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2499, -1, -1, -1, -1,
-1, -1, -1, -1, 2508, 2509, 2510, 2511, -1, -1,
-1, 2515, -1, 2517, -1, 2519, -1, -1, 2522, 2523,
2524, -1, -1, -1, -1, -1, 2530, -1, -1, 2533,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2548, 2549, 2550, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2566, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2547, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3375, -1, -1, -1, -1, -1, -1, -1, 3383,
-1, -1, 3386, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3398, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 946, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 958, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 2710, 969, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 988, -1, -1, -1,
-1, -1, 994, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 2757, -1, -1, -1, -1, 4019, -1,
-1, -1, -1, 4024, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4044, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4061, 2200, -1, -1, 4065, 2204, 2810, -1, -1, 4070,
4071, 4072, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4106, 4107, 4108, 4109, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4136, -1, -1, -1, -1,
-1, -1, -1, 4144, -1, 4146, 4147, 4148, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3661, 3662, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3679, -1, -1, -1, 1201,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1220, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1244, 2987, 2988, 2989, 2990, 2991, 2992, 2993,
2994, 2995, -1, 2997, -1, -1, -1, -1, -1, -1,
-1, 4262, -1, -1, -1, 3009, -1, -1, 3012, -1,
4271, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4297, 4298, -1, -1,
-1, 4302, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4324, 3068, -1, -1, -1, 3072, -1,
3174, 3075, -1, 3077, 3178, 3179, 3080, -1, -1, -1,
-1, -1, -1, 1345, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2497, -1,
3104, 3105, -1, -1, -1, -1, -1, 4368, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2516, 4379, -1,
-1, 2520, -1, 4384, -1, -1, -1, -1, -1, 4390,
-1, -1, -1, -1, 3238, -1, 2535, 2536, 2537, -1,
3244, 2540, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3899, -1, -1, -1, 4420,
3904, -1, -1, -1, -1, -1, -1, -1, -1, 4430,
-1, -1, 4433, -1, -1, -1, -1, -1, -1, -1,
-1, 3285, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1461,
-1, -1, -1, -1, -1, -1, -1, 4468, -1, 4470,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3174,
-1, 3225, -1, 3178, 3179, -1, 4487, 1489, 1490, 1491,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3238, -1, -1, -1, -1, -1, 3244,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3285, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3492, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1664, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1698, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3458, 3459, 3460, -1, -1, -1,
3464, 3565, -1, -1, -1, 3569, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3491, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4786, -1, -1, 4789, -1,
4791, -1, -1, -1, -1, -1, -1, 3492, -1, -1,
-1, -1, -1, 4804, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4816, -1, -1, -1, 4820,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4318, -1, -1, -1, 4839, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1855, -1, -1, 4857, -1, -1, -1,
-1, -1, 4863, -1, 3708, -1, 3005, -1, -1, -1,
3565, -1, -1, -1, 3569, -1, -1, -1, -1, 3723,
-1, -1, -1, -1, 3728, -1, -1, 4888, -1, -1,
-1, 4892, -1, -1, -1, 1897, -1, -1, -1, -1,
4384, -1, -1, -1, -1, -1, 4907, 4908, 4909, 4910,
-1, -1, 3756, -1, -1, -1, 4917, 4918, 4919, 4920,
-1, -1, -1, -1, -1, 4926, 4927, -1, -1, -1,
-1, 4932, 4933, -1, 4935, 4936, 4937, 4938, 4939, 4940,
4941, -1, -1, -1, -1, -1, -1, -1, -1, 4433,
4951, -1, 3091, -1, 4955, 4956, 4957, 4958, -1, -1,
-1, -1, -1, -1, 3103, -1, -1, -1, -1, 3108,
-1, -1, -1, -1, -1, -1, -1, -1, 4979, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3736, -1, -1, -1, 4997, 3741, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3708, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3723, -1,
-1, -1, -1, 3728, -1, -1, -1, -1, -1, 4523,
-1, 3785, -1, -1, -1, -1, -1, 2049, -1, -1,
-1, -1, 3796, -1, 3798, 3799, 2058, -1, -1, -1,
-1, 3756, -1, -1, -1, -1, -1, -1, 3812, -1,
-1, 3815, 5073, 3817, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2086, -1, -1, -1, -1, -1,
2092, 2093, -1, -1, 2096, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5106, -1, 2109, -1, 3853,
2112, 3855, -1, 3857, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5128, -1, 5130,
-1, -1, -1, -1, -1, -1, -1, 5138, 5139, 5140,
5141, 5142, -1, -1, -1, -1, 3990, -1, -1, 3993,
-1, 3995, -1, -1, -1, -1, 4000, -1, 5159, -1,
-1, -1, -1, -1, -1, -1, 2168, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3921, -1, -1,
2182, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3936, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4049, -1, -1, 2210, -1,
-1, -1, -1, 4057, -1, -1, -1, -1, -1, 2221,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4082, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 2263, 2264, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4759, -1, -1, 4022, -1,
-1, -1, -1, -1, -1, -1, 2288, -1, -1, -1,
-1, -1, -1, 2295, -1, 3990, -1, -1, 3993, -1,
3995, -1, -1, -1, -1, 4000, -1, -1, 4152, -1,
4154, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4049, -1, -1, -1, -1, -1,
-1, -1, 4057, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4860, -1, -1, -1,
-1, -1, -1, -1, 5385, 5386, 5387, 4082, -1, -1,
5391, 5392, 5393, 5394, -1, -1, -1, 5398, -1, -1,
-1, -1, 4886, -1, 4248, -1, -1, -1, -1, -1,
-1, -1, -1, 2415, -1, -1, 4900, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4911, -1, -1,
-1, -1, -1, -1, -1, 5436, 5437, 5438, 5439, 5440,
-1, 5442, 5443, -1, -1, -1, 4290, -1, -1, -1,
-1, -1, -1, 5454, 5455, 2457, 2458, 4152, -1, 4154,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4318, -1, 2478, -1, -1, 2481,
-1, -1, -1, -1, -1, -1, -1, 5488, -1, -1,
-1, -1, -1, -1, -1, 5496, 5497, -1, 5499, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4275, -1, -1, -1, -1, -1, 4281, -1, -1,
-1, -1, -1, -1, -1, 4389, -1, -1, -1, -1,
-1, -1, -1, 4248, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4411, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5590,
-1, 4435, -1, 5077, -1, 4290, -1, -1, -1, -1,
3739, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4360, -1, -1, -1,
3759, -1, -1, 4318, -1, 3764, -1, -1, -1, -1,
-1, 3770, -1, -1, -1, -1, 3775, 3776, -1, 3778,
-1, -1, -1, -1, 3783, 3784, -1, 3786, -1, 3788,
-1, -1, -1, 3792, -1, -1, 3795, -1, -1, -1,
5144, 3800, -1, -1, -1, 5666, -1, -1, -1, -1,
3809, -1, -1, -1, -1, 3814, -1, -1, -1, -1,
-1, -1, 3821, 3822, 3823, 3824, -1, -1, -1, 3828,
3829, -1, 3831, 4537, 4389, -1, -1, 5698, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3850, -1, 3852, -1, -1, 4411, -1, -1, -1,
3859, 3860, 3861, 3862, 3863, 3864, 3865, 3866, 3867, 3868,
-1, -1, -1, -1, -1, -1, 4580, -1, -1, -1,
4435, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4605, -1, -1, -1, -1, -1, -1, 5769, -1,
-1, -1, -1, -1, -1, 3914, -1, -1, -1, -1,
-1, -1, -1, 5784, -1, -1, -1, -1, -1, -1,
4534, -1, -1, -1, -1, -1, -1, -1, -1, 4543,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4553,
-1, -1, -1, 4557, 4558, -1, -1, -1, -1, 4563,
-1, -1, -1, -1, -1, -1, -1, 4571, -1, 4573,
-1, -1, -1, -1, -1, -1, 5320, -1, -1, -1,
-1, -1, 4537, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4600, 4601, 4602, -1,
-1, -1, -1, -1, -1, 5866, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4619, -1, -1, -1, -1,
-1, -1, -1, 4627, 5885, 4580, 4630, -1, 4632, -1,
5891, 5892, -1, -1, -1, -1, -1, -1, 4037, -1,
5901, -1, -1, -1, -1, -1, 4650, 5908, -1, -1,
4605, -1, -1, -1, 4658, 4659, -1, -1, -1, -1,
-1, 4665, -1, 5407, -1, -1, 4770, -1, -1, 5413,
-1, -1, -1, 5417, -1, -1, -1, -1, -1, -1,
-1, -1, 5943, 5944, -1, -1, 4690, -1, -1, -1,
-1, -1, -1, -1, -1, 5956, -1, 5958, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5973, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4737, -1, -1, -1, 5998, -1, -1,
-1, -1, -1, -1, -1, -1, 3008, -1, 6009, -1,
4754, -1, -1, -1, -1, -1, 4860, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3034, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4886, -1, -1, -1, -1, 6048, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6059, -1,
-1, -1, -1, -1, 3066, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6075, 4770, -1, -1, -1, -1,
-1, -1, 3084, 3085, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6099, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6110,
-1, -1, -1, -1, -1, -1, 3118, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6136, -1, -1, -1, -1,
4279, 4280, -1, -1, -1, 4284, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4860, -1, -1, -1, -1,
-1, -1, -1, -1, 4313, -1, 6177, -1, -1, -1,
-1, -1, -1, -1, 5028, -1, -1, -1, -1, -1,
-1, 4886, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5077, -1, -1, 5080, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6248, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6280,
-1, -1, -1, -1, -1, -1, -1, 3289, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3304, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5801, -1, -1,
-1, -1, 3324, -1, -1, -1, 6327, -1, -1, -1,
-1, -1, -1, 5028, -1, -1, -1, 5081, 5082, -1,
6341, -1, -1, -1, -1, -1, -1, -1, 5092, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5864, -1, 5077, -1, -1, 5080, -1, -1, -1, -1,
-1, -1, -1, -1, 4533, -1, -1, -1, -1, 6400,
4539, -1, -1, 5247, -1, -1, -1, -1, 3410, 3411,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5178, -1, -1, -1, 4577, 4578,
-1, -1, 4581, 4582, 4583, 4584, -1, 5191, 4587, 4588,
4589, 4590, 4591, 4592, 4593, 4594, 4595, 4596, 4597, -1,
-1, 5205, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5958, -1, -1, -1, -1, -1,
-1, 4620, -1, -1, 4623, -1, 4625, -1, -1, 4628,
4629, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5244, 5245, 6503, -1, -1, -1, -1, 5251, 5252, 3511,
-1, -1, 5256, 4652, 4653, 4654, 4655, -1, 4657, 5263,
-1, -1, 5266, 5267, -1, -1, -1, -1, -1, 5273,
-1, -1, -1, -1, 6535, -1, -1, -1, -1, -1,
5384, -1, -1, -1, -1, 6546, -1, -1, -1, -1,
-1, -1, 5247, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5424, -1, -1, -1, -1, -1, -1, -1, -1, 5333,
-1, -1, -1, -1, -1, -1, -1, 5341, -1, -1,
-1, -1, 5446, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5366, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4779, -1, -1, -1, -1, -1, -1, 6648, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6143,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5518, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5384,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5469, -1, -1, -1, 5424,
-1, -1, 5476, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5446, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6251, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5640, -1, -1, -1,
5544, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5518, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4998,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 3883, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5041, -1, -1, -1, -1, -1, -1, -1,
-1, 3913, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5640, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5712, -1,
-1, -1, -1, -1, 5718, 5719, 5720, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5745, 5746, -1, -1, 5749, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5864, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5179, -1, -1, 5787, 5183, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5201, 5202, -1, -1, -1, 5811, 5207, 5208,
5209, 5210, -1, -1, -1, 5214, 5215, 5216, 5217, 5218,
5219, 5220, 5221, 5222, 5223, 5224, 5225, 5226, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5250, -1, -1, 5253, -1, 5255, -1, -1, -1,
-1, -1, 5261, -1, -1, 5264, 5265, -1, -1, 5268,
5269, -1, -1, -1, -1, 5274, -1, -1, -1, -1,
5984, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4160, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4170, 5864,
-1, -1, -1, -1, -1, 5314, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5332, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5346, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6061, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6111, -1, -1,
-1, -1, 6116, 6117, -1, -1, -1, -1, -1, -1,
6024, -1, -1, -1, -1, -1, -1, -1, -1, 5984,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6051, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6062, -1,
-1, -1, -1, -1, -1, -1, -1, 4329, 4330, 4331,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4346, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6061, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6121, -1, -1,
4382, 4383, -1, -1, -1, 4387, 6230, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5547, -1,
-1, -1, -1, -1, -1, -1, 6111, -1, -1, 6163,
-1, 6116, 6117, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5635, 5636, -1, -1,
-1, -1, -1, -1, 5643, -1, -1, -1, -1, -1,
-1, 6255, -1, 4515, -1, -1, -1, -1, -1, -1,
6264, 6265, 6266, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6230, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6290, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5696, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5714, 5715, -1, -1, -1,
-1, -1, -1, -1, -1, 6329, -1, -1, -1, -1,
-1, -1, -1, -1, 5733, -1, 5735, -1, -1, -1,
5739, 5740, 5741, -1, -1, 5744, -1, -1, 5747, 5748,
-1, -1, -1, -1, 5753, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 6469, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5810, 4674, 4675, 4676, -1, -1, -1, -1, -1,
-1, -1, 5821, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6451, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6478, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6488, -1, -1, 5886, -1, 5888,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6469, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 5923, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6558, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6582, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6606, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6017, -1,
6019, 6020, 6021, 6022, 6023, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6036, 6037, 6038,
-1, -1, -1, -1, -1, -1, 6045, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6063, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6684, -1, -1, 6082, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5005, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6760, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5037, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5069, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 6823,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5104, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6256, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6272, 5136, -1, 6275, -1, -1, -1,
6279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6297, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 6340, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 6376, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5277, 5278, 5279, 5280, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6447, -1,
-1, -1, -1, -1, -1, 6454, -1, -1, -1, -1,
-1, -1, -1, -1, 6463, -1, 6465, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6502, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6615, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 6657, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6682, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 6693, -1, -1, -1, -1, 6698,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 6755, -1, -1, 6758,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5633, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 5644, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 6791, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5937, -1, -1, -1, -1,
5942, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5961,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6095, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, 6196, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6225, 90, 91, 92, 93, 94, 95,
96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, -1, -1, -1, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 589, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, 99, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, 204, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
576, -1, -1, -1, -1, -1, -1, 583, 584, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, 485,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, 540, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, 564, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
-1, -1, -1, -1, -1, -1, -1, 583, 584, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
-1, -1, -1, -1, -1, -1, -1, 583, 584, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
-1, -1, -1, -1, -1, -1, -1, 583, 584, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
-1, -1, -1, -1, -1, -1, -1, 583, 584, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, -1, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, -1, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, -1,
176, -1, -1, -1, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, -1, 225,
226, 227, 228, -1, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, -1, -1, -1, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
-1, -1, -1, -1, 300, 301, 302, 303, 304, 305,
-1, -1, 308, -1, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, -1, -1, 349, -1, 351, 352, 353, 354, -1,
-1, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, -1, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, -1, 393, -1, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, -1, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, -1, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, -1, 502, -1, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, 529, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 558, 559, 560, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 5, 6, 7, 8,
9, 10, 11, 12, -1, 14, 15, -1, 584, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
-1, 30, 31, 32, 33, 34, 35, 36, 37, 38,
-1, 40, 41, 42, 43, 44, -1, -1, -1, 48,
49, -1, -1, -1, -1, 54, -1, -1, -1, -1,
-1, -1, -1, -1, 63, -1, 65, -1, 67, 68,
69, -1, -1, -1, 73, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
-1, 100, 101, 102, -1, -1, -1, -1, -1, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, 118,
119, 120, 121, -1, 123, 124, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, -1, -1, 137, 138,
139, 140, 141, -1, 143, 144, 145, 146, -1, -1,
149, -1, 151, 152, 153, 154, 155, 156, 157, 158,
159, 160, -1, 162, 163, 164, 165, 166, 167, -1,
169, 170, 171, -1, -1, -1, -1, 176, -1, -1,
-1, 180, 181, 182, 183, 184, 185, 186, 187, 188,
-1, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, -1, 225, 226, 227, 228,
-1, -1, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, 243, -1, 245, 246, 247, 248,
249, -1, 251, -1, -1, -1, 255, 256, -1, 258,
259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
279, 280, -1, 282, 283, 284, 285, 286, -1, 288,
-1, 290, 291, 292, 293, 294, 295, -1, -1, -1,
-1, 300, 301, 302, 303, 304, 305, -1, -1, 308,
-1, 310, 311, 312, -1, 314, 315, 316, -1, -1,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, -1, -1,
349, -1, 351, 352, 353, 354, -1, -1, 357, 358,
359, 360, 361, -1, 363, 364, -1, -1, 367, 368,
369, -1, -1, 372, 373, 374, 375, 376, 377, -1,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, -1, 393, -1, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, 431, 432, 433, 434, 435, 436, -1, 438,
439, 440, 441, 442, 443, 444, 445, 446, 447, -1,
449, 450, 451, 452, 453, -1, 455, 456, 457, 458,
459, 460, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
-1, 480, -1, 482, 483, -1, -1, 486, 487, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, -1, 502, -1, -1, 505, 506, 507, 508,
509, 510, 511, 512, -1, -1, 515, 516, 517, 518,
519, -1, -1, 522, 523, 524, 525, 526, -1, 528,
529, 530, 531, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 558,
559, 560, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, 584, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, 70, -1,
-1, 73, -1, 75, 76, -1, 78, 79, 80, 81,
82, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, 107, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, 173, 174, 175, 176, 177, 178, 179, 180, 181,
182, 183, 184, 185, 186, 187, 188, 189, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, 285, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, 317, 318, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, -1, 514, 515, 516, 517, 518, 519, 520, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, 540, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
562, -1, 564, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 574, 575, -1, -1, -1, -1, -1, -1,
-1, 583, 5, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 28, -1, 30, 31, 32,
33, 34, 35, 36, 37, 38, -1, 40, 41, 42,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, 75, 76, -1, 78, 79, 80, 81, 82,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, 107, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, 135, 136, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, 149, -1, 151, 152,
153, 154, 155, 156, 157, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, 169, 170, 171, -1,
173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 230, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
243, -1, 245, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
263, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, 279, 280, -1, 282,
283, 284, 285, 286, -1, 288, -1, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, 310, 311, 312,
-1, 314, 315, 316, 317, 318, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, 431, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
-1, 514, 515, 516, 517, 518, 519, 520, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, 531, 532,
533, 534, 535, -1, -1, 538, -1, 540, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, -1, 562,
-1, 564, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 574, 575, -1, -1, -1, -1, -1, -1, -1,
583, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, 70, -1, -1, 73,
-1, 75, 76, -1, 78, 79, 80, 81, 82, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, 107, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
134, 135, 136, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, 173,
174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
184, 185, 186, 187, 188, 189, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
244, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, 307, 308, 309, 310, 311, 312, -1,
314, 315, 316, 317, 318, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
484, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, 498, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, -1,
514, 515, 516, 517, 518, 519, 520, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, 562, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
574, 575, -1, -1, -1, -1, -1, -1, -1, 583,
5, 6, 7, 8, 9, 10, 11, 12, -1, 14,
15, -1, -1, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, -1, 30, 31, 32, 33, 34,
35, 36, 37, 38, -1, 40, 41, 42, 43, 44,
-1, -1, -1, 48, 49, -1, -1, -1, -1, 54,
-1, -1, -1, -1, -1, -1, -1, -1, 63, -1,
65, -1, 67, 68, 69, 70, -1, -1, 73, -1,
75, 76, -1, 78, 79, 80, 81, 82, -1, -1,
-1, -1, -1, -1, -1, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, -1, -1,
-1, 106, 107, -1, -1, 110, 111, 112, -1, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
135, 136, 137, 138, 139, 140, 141, -1, 143, 144,
145, 146, 147, -1, 149, -1, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, -1, 162, 163, 164,
165, 166, 167, -1, 169, 170, 171, -1, 173, 174,
175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
185, 186, 187, 188, 189, 190, -1, 192, 193, 194,
195, 196, 197, 198, -1, 200, 201, 202, 203, -1,
-1, 206, 207, 208, 209, 210, -1, 212, 213, 214,
-1, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, -1, 233, 234,
235, 236, 237, -1, 239, -1, 241, 242, 243, -1,
245, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, -1, 269, 270, 271, 272, 273, 274,
275, 276, -1, 278, 279, 280, -1, 282, 283, 284,
285, 286, -1, 288, -1, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, -1, -1, 308, 309, 310, 311, 312, -1, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, -1, 367, 368, 369, -1, -1, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, -1, 390, 391, 392, 393, 394,
395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 447, -1, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, -1, 482, 483, 484,
-1, 486, 487, 488, 489, 490, 491, 492, -1, 494,
495, 496, -1, -1, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, -1, 514,
515, 516, 517, 518, 519, 520, -1, 522, 523, 524,
525, 526, 527, 528, -1, 530, 531, 532, 533, 534,
535, -1, -1, 538, -1, -1, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 558, 559, 560, -1, 562, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 574,
575, -1, -1, -1, -1, -1, -1, -1, 583, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, 99, 100, 101, 102, -1, -1, -1,
106, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
-1, -1, -1, -1, -1, -1, -1, 583, 5, 6,
7, 8, 9, 10, 11, 12, -1, 14, 15, -1,
-1, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, -1, 30, 31, 32, 33, 34, 35, 36,
37, 38, -1, 40, 41, 42, 43, 44, -1, -1,
-1, 48, 49, -1, -1, -1, -1, 54, -1, -1,
-1, -1, -1, -1, -1, -1, 63, -1, 65, -1,
67, 68, 69, 70, -1, -1, 73, -1, 75, 76,
-1, 78, 79, 80, 81, 82, -1, -1, -1, -1,
-1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
97, 98, -1, 100, 101, 102, -1, -1, -1, -1,
107, -1, -1, 110, 111, 112, -1, 114, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
-1, 128, 129, 130, 131, 132, 133, 134, 135, 136,
137, 138, 139, 140, 141, -1, 143, 144, 145, 146,
147, -1, 149, -1, 151, 152, 153, 154, 155, 156,
157, 158, 159, 160, -1, 162, 163, 164, 165, 166,
167, -1, 169, 170, 171, -1, 173, 174, 175, 176,
177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
187, 188, 189, 190, -1, 192, 193, 194, 195, 196,
197, 198, -1, 200, 201, 202, 203, -1, -1, 206,
207, 208, 209, 210, -1, 212, 213, 214, -1, 216,
217, 218, -1, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, -1, 233, 234, 235, 236,
237, -1, 239, -1, 241, 242, 243, -1, 245, 246,
247, 248, 249, -1, 251, 252, -1, 254, 255, 256,
-1, 258, 259, 260, 261, 262, 263, 264, 265, 266,
267, -1, 269, 270, 271, 272, 273, 274, 275, 276,
-1, 278, 279, 280, -1, 282, 283, 284, 285, 286,
-1, 288, -1, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
-1, 308, 309, 310, 311, 312, -1, 314, 315, 316,
317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
357, 358, 359, 360, 361, -1, 363, 364, -1, -1,
367, 368, 369, -1, -1, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, -1, 390, 391, 392, 393, 394, 395, 396,
397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, -1, 429, 430, 431, 432, 433, 434, 435, 436,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
447, -1, 449, 450, 451, 452, 453, 454, 455, 456,
457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, 479, 480, -1, 482, 483, 484, -1, 486,
487, 488, 489, 490, 491, 492, -1, 494, 495, 496,
-1, -1, 499, 500, 501, 502, 503, 504, 505, 506,
507, 508, 509, 510, 511, 512, -1, 514, 515, 516,
517, 518, 519, 520, -1, 522, 523, 524, 525, 526,
527, 528, -1, 530, 531, 532, 533, 534, 535, -1,
-1, 538, -1, -1, 541, 542, 543, 544, 545, 546,
547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
557, 558, 559, 560, -1, 562, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 574, 575, -1,
-1, -1, -1, -1, 581, 582, 583, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, 75, 76, -1,
78, 79, 80, 81, 82, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, 107,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, 173, 174, 175, 176, 177,
178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
188, 189, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, 285, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, 484, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, -1, 514, 515, 516, 517,
518, 519, 520, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, -1, 562, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 574, 575, 576, -1,
-1, -1, -1, -1, -1, 583, 5, 6, 7, 8,
9, 10, 11, 12, -1, 14, 15, -1, -1, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
-1, 30, 31, 32, 33, 34, 35, 36, 37, 38,
-1, 40, 41, 42, 43, 44, -1, -1, -1, 48,
49, -1, -1, -1, -1, 54, -1, -1, -1, -1,
-1, -1, -1, -1, 63, -1, 65, -1, 67, 68,
69, 70, -1, -1, 73, -1, 75, 76, -1, 78,
79, 80, 81, 82, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
99, 100, 101, 102, -1, -1, -1, -1, 107, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
139, 140, 141, -1, 143, 144, 145, 146, 147, -1,
149, -1, 151, 152, 153, 154, 155, 156, 157, 158,
159, 160, -1, 162, 163, 164, 165, 166, 167, -1,
169, 170, 171, -1, 173, 174, 175, 176, 177, 178,
179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
189, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, 243, -1, 245, 246, 247, 248,
249, -1, 251, 252, -1, 254, 255, 256, -1, 258,
259, 260, 261, 262, 263, 264, 265, 266, 267, -1,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
279, 280, -1, 282, 283, 284, 285, 286, -1, 288,
-1, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, -1, -1, 308,
309, 310, 311, 312, -1, 314, 315, 316, 317, 318,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
359, 360, 361, -1, 363, 364, -1, -1, 367, 368,
369, -1, -1, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, 392, 393, 394, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 447, -1,
449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
459, 460, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, -1, 482, 483, 484, -1, 486, 487, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, -1, 514, 515, 516, 517, 518,
519, 520, -1, 522, 523, 524, 525, 526, 527, 528,
-1, 530, 531, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
559, 560, -1, 562, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 574, 575, -1, -1, -1,
-1, -1, -1, -1, 583, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
70, -1, -1, 73, -1, 75, 76, -1, 78, 79,
80, 81, 82, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, 107, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, 173, 174, 175, 176, 177, 178, 179,
180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, 285, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, 317, 318, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, 484, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, -1, 514, 515, 516, 517, 518, 519,
520, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, -1, 562, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 574, 575, -1, -1, -1, -1,
-1, -1, -1, 583, 5, 6, 7, 8, 9, 10,
11, 12, -1, 14, 15, -1, -1, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, -1, 30,
31, 32, 33, 34, 35, 36, 37, 38, -1, 40,
41, 42, 43, 44, -1, -1, -1, 48, 49, -1,
-1, -1, -1, 54, -1, -1, -1, -1, -1, -1,
-1, -1, 63, -1, 65, -1, 67, 68, 69, 70,
-1, -1, 73, -1, 75, 76, -1, 78, 79, 80,
81, 82, -1, -1, -1, -1, -1, -1, -1, 90,
91, 92, 93, 94, 95, 96, 97, 98, -1, 100,
101, 102, -1, -1, -1, -1, 107, -1, -1, 110,
111, 112, -1, 114, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
141, -1, 143, 144, 145, 146, 147, -1, 149, -1,
151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
-1, 162, 163, 164, 165, 166, 167, -1, 169, 170,
171, -1, 173, 174, 175, 176, 177, 178, 179, 180,
181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
-1, 192, 193, 194, 195, 196, 197, 198, -1, 200,
201, 202, 203, -1, -1, 206, 207, 208, 209, 210,
-1, 212, 213, 214, -1, 216, 217, 218, -1, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
231, -1, 233, 234, 235, 236, 237, -1, 239, -1,
241, 242, 243, -1, 245, 246, 247, 248, 249, -1,
251, 252, -1, 254, 255, 256, -1, 258, 259, 260,
261, 262, 263, 264, 265, 266, 267, -1, 269, 270,
271, 272, 273, 274, 275, 276, -1, 278, 279, 280,
-1, 282, 283, 284, 285, 286, -1, 288, -1, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, -1, -1, 308, 309, 310,
311, 312, -1, 314, 315, 316, 317, 318, 319, 320,
321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
361, -1, 363, 364, -1, -1, 367, 368, 369, -1,
-1, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, -1, 390,
391, 392, 393, 394, 395, 396, 397, -1, 399, 400,
401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
421, 422, 423, 424, 425, 426, 427, -1, 429, 430,
431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 447, -1, 449, 450,
451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
461, 462, 463, 464, -1, 466, 467, 468, 469, 470,
471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
-1, 482, 483, 484, -1, 486, 487, 488, 489, 490,
491, 492, -1, 494, 495, 496, -1, -1, 499, 500,
501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
511, 512, -1, 514, 515, 516, 517, 518, 519, 520,
-1, 522, 523, 524, 525, 526, 527, 528, 529, 530,
531, 532, 533, 534, 535, -1, -1, 538, -1, -1,
541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
-1, 562, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 574, 575, -1, -1, -1, -1, -1,
-1, -1, 583, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, 70, -1,
-1, 73, -1, 75, 76, -1, 78, 79, 80, 81,
82, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, 107, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, 173, 174, 175, 176, 177, 178, 179, 180, 181,
182, 183, 184, 185, 186, 187, 188, 189, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, 244, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, 285, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, 317, 318, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, 484, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, -1, 514, 515, 516, 517, 518, 519, 520, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
562, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 574, 575, -1, -1, -1, -1, -1, -1,
-1, 583, 5, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 28, -1, 30, 31, 32,
33, 34, 35, 36, 37, 38, -1, 40, 41, 42,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, 75, 76, -1, 78, 79, 80, 81, 82,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, 107, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, 135, 136, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, 149, -1, 151, 152,
153, 154, 155, 156, 157, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, 169, 170, 171, -1,
173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 230, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
243, -1, 245, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
263, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, 279, 280, -1, 282,
283, 284, 285, 286, -1, 288, -1, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, 310, 311, 312,
-1, 314, 315, 316, 317, 318, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, 431, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, 484, -1, 486, 487, 488, 489, 490, 491, 492,
-1, 494, 495, 496, 497, -1, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
-1, 514, 515, 516, 517, 518, 519, 520, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, 531, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, -1, 562,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 574, 575, -1, -1, -1, -1, -1, -1, -1,
583, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, 70, -1, -1, 73,
-1, 75, 76, -1, 78, 79, 80, 81, 82, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, 107, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, 135, 136, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, 172, 173,
174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
184, 185, 186, 187, 188, 189, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, 317, 318, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
484, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, -1,
514, 515, 516, 517, 518, 519, 520, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, 562, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
574, 575, -1, -1, -1, -1, -1, -1, -1, 583,
5, 6, 7, 8, 9, 10, 11, 12, -1, 14,
15, -1, -1, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, -1, 30, 31, 32, 33, 34,
35, 36, 37, 38, -1, 40, 41, 42, 43, 44,
-1, -1, -1, 48, 49, -1, -1, -1, -1, 54,
-1, -1, -1, -1, -1, -1, -1, -1, 63, -1,
65, -1, 67, 68, 69, 70, -1, -1, 73, -1,
75, 76, -1, 78, 79, 80, 81, 82, -1, -1,
-1, -1, -1, -1, -1, 90, 91, 92, 93, 94,
95, 96, 97, 98, -1, 100, 101, 102, -1, -1,
-1, -1, 107, -1, -1, 110, 111, 112, -1, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
135, 136, 137, 138, 139, 140, 141, -1, 143, 144,
145, 146, 147, -1, 149, -1, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, -1, 162, 163, 164,
165, 166, 167, -1, 169, 170, 171, 172, 173, 174,
175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
185, 186, 187, 188, 189, 190, -1, 192, 193, 194,
195, 196, 197, 198, -1, 200, 201, 202, 203, -1,
-1, 206, 207, 208, 209, 210, -1, 212, 213, 214,
-1, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, -1, 233, 234,
235, 236, 237, -1, 239, -1, 241, 242, 243, -1,
245, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, -1, 269, 270, 271, 272, 273, 274,
275, 276, -1, 278, 279, 280, -1, 282, 283, 284,
285, 286, -1, 288, -1, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, -1, -1, 308, 309, 310, 311, 312, -1, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, -1, 367, 368, 369, -1, -1, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, -1, 390, 391, 392, 393, 394,
395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 447, -1, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
-1, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, -1, 482, 483, 484,
-1, 486, 487, 488, 489, 490, 491, 492, -1, 494,
495, 496, -1, -1, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, -1, 514,
515, 516, 517, 518, 519, 520, -1, 522, 523, 524,
525, 526, 527, 528, -1, 530, 531, 532, 533, 534,
535, -1, -1, 538, -1, -1, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 558, 559, 560, -1, 562, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 574,
575, -1, -1, -1, -1, -1, -1, -1, 583, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, 80, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, 172, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, 514, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, 562, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 574, 575,
-1, -1, -1, -1, -1, -1, -1, 583, 5, 6,
7, 8, 9, 10, 11, 12, -1, 14, 15, -1,
-1, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, -1, 30, 31, 32, 33, 34, 35, 36,
37, 38, -1, 40, 41, 42, 43, 44, -1, -1,
-1, 48, 49, -1, -1, -1, -1, 54, -1, -1,
-1, -1, -1, -1, -1, -1, 63, -1, 65, -1,
67, 68, 69, 70, -1, -1, 73, -1, 75, 76,
-1, 78, 79, 80, 81, 82, -1, -1, -1, -1,
-1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
97, 98, -1, 100, 101, 102, -1, -1, -1, -1,
107, -1, -1, 110, 111, 112, -1, 114, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
-1, 128, 129, 130, 131, 132, 133, 134, 135, 136,
137, 138, 139, 140, 141, -1, 143, 144, 145, 146,
147, -1, 149, -1, 151, 152, 153, 154, 155, 156,
157, 158, 159, 160, -1, 162, 163, 164, 165, 166,
167, -1, 169, 170, 171, -1, 173, 174, 175, 176,
177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
187, 188, 189, 190, -1, 192, 193, 194, 195, 196,
197, 198, -1, 200, 201, 202, 203, -1, -1, 206,
207, 208, 209, 210, -1, 212, 213, 214, -1, 216,
217, 218, -1, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, -1, 233, 234, 235, 236,
237, -1, 239, -1, 241, 242, 243, -1, 245, 246,
247, 248, 249, -1, 251, 252, -1, 254, 255, 256,
-1, 258, 259, 260, 261, 262, 263, 264, 265, 266,
267, -1, 269, 270, 271, 272, 273, 274, 275, 276,
-1, 278, 279, 280, -1, 282, 283, 284, 285, 286,
-1, 288, -1, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
-1, 308, 309, 310, 311, 312, -1, 314, 315, 316,
317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
357, 358, 359, 360, 361, -1, 363, 364, -1, -1,
367, 368, 369, -1, -1, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, -1, 390, 391, 392, 393, 394, 395, 396,
397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, -1, 429, 430, 431, 432, 433, 434, 435, 436,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
447, -1, 449, 450, 451, 452, 453, 454, 455, 456,
457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, 479, 480, -1, 482, 483, 484, -1, 486,
487, 488, 489, 490, 491, 492, -1, 494, 495, 496,
-1, -1, 499, 500, 501, 502, 503, 504, 505, 506,
507, 508, 509, 510, 511, 512, -1, 514, 515, 516,
517, 518, 519, 520, -1, 522, 523, 524, 525, 526,
527, 528, -1, 530, 531, 532, 533, 534, 535, -1,
-1, 538, -1, -1, 541, 542, 543, 544, 545, 546,
547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
557, 558, 559, 560, -1, 562, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 574, 575, -1,
-1, -1, -1, -1, -1, -1, 583, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, 75, 76, -1,
78, 79, 80, 81, 82, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, 107,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, 173, 174, 175, 176, 177,
178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
188, 189, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, 285, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, 484, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, -1, 514, 515, 516, 517,
518, 519, 520, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, -1, 562, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 574, 575, -1, -1,
-1, -1, -1, -1, -1, 583, 5, 6, 7, 8,
9, 10, 11, 12, -1, 14, 15, -1, -1, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
-1, 30, 31, 32, 33, 34, 35, 36, 37, 38,
-1, 40, 41, 42, 43, 44, -1, -1, -1, 48,
49, -1, -1, -1, -1, 54, -1, -1, -1, -1,
-1, -1, -1, -1, 63, -1, 65, -1, 67, 68,
69, 70, -1, -1, 73, -1, 75, 76, -1, 78,
79, 80, 81, 82, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
-1, 100, 101, 102, -1, -1, -1, -1, 107, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
139, 140, 141, -1, 143, 144, 145, 146, 147, -1,
149, -1, 151, 152, 153, 154, 155, 156, 157, 158,
159, 160, -1, 162, 163, 164, 165, 166, 167, -1,
169, 170, 171, -1, 173, 174, 175, 176, 177, 178,
179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
189, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, 243, -1, 245, 246, 247, 248,
249, -1, 251, 252, -1, 254, 255, 256, -1, 258,
259, 260, 261, 262, 263, 264, 265, 266, 267, -1,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
279, 280, -1, 282, 283, 284, 285, 286, -1, 288,
-1, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, -1, -1, 308,
309, 310, 311, 312, -1, 314, 315, 316, 317, 318,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
359, 360, 361, -1, 363, 364, -1, -1, 367, 368,
369, -1, -1, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, 392, 393, 394, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 447, -1,
449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
459, 460, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, -1, 482, 483, 484, -1, 486, 487, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, -1, 514, 515, 516, 517, 518,
519, 520, -1, 522, 523, 524, 525, 526, 527, 528,
-1, 530, 531, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
559, 560, -1, 562, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 574, 575, -1, -1, -1,
-1, -1, -1, -1, 583, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
70, -1, -1, 73, -1, 75, 76, -1, 78, 79,
80, 81, 82, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, 107, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, 173, 174, 175, 176, 177, 178, 179,
180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, 285, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, 317, 318, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, 484, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, -1, 514, 515, 516, 517, 518, 519,
520, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, -1, 562, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 574, 575, -1, -1, -1, -1,
-1, -1, -1, 583, 5, 6, 7, 8, 9, 10,
11, 12, -1, 14, 15, -1, -1, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, -1, 30,
31, 32, 33, 34, 35, 36, 37, 38, -1, 40,
41, 42, 43, 44, -1, -1, -1, 48, 49, -1,
-1, -1, -1, 54, -1, -1, -1, -1, -1, -1,
-1, -1, 63, -1, 65, -1, 67, 68, 69, 70,
-1, -1, 73, -1, 75, 76, -1, 78, 79, 80,
81, 82, -1, -1, -1, -1, -1, -1, -1, 90,
91, 92, 93, 94, 95, 96, 97, 98, -1, 100,
101, 102, -1, -1, -1, -1, 107, -1, -1, 110,
111, 112, -1, 114, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
141, -1, 143, 144, 145, 146, 147, -1, 149, -1,
151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
-1, 162, 163, 164, 165, 166, 167, -1, 169, 170,
171, -1, 173, 174, 175, 176, 177, 178, 179, 180,
181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
-1, 192, 193, 194, 195, 196, 197, 198, -1, 200,
201, 202, 203, -1, -1, 206, 207, 208, 209, 210,
-1, 212, 213, 214, -1, 216, 217, 218, -1, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
231, -1, 233, 234, 235, 236, 237, -1, 239, -1,
241, 242, 243, -1, 245, 246, 247, 248, 249, -1,
251, 252, -1, 254, 255, 256, -1, 258, 259, 260,
261, 262, 263, 264, 265, 266, 267, -1, 269, 270,
271, 272, 273, 274, 275, 276, -1, 278, 279, 280,
-1, 282, 283, 284, 285, 286, -1, 288, -1, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, -1, -1, 308, 309, 310,
311, 312, -1, 314, 315, 316, 317, 318, 319, 320,
321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
361, -1, 363, 364, -1, -1, 367, 368, 369, -1,
-1, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, -1, 390,
391, 392, 393, 394, 395, 396, 397, -1, 399, 400,
401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
421, 422, 423, 424, 425, 426, 427, -1, 429, 430,
431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 447, -1, 449, 450,
451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
461, 462, 463, 464, -1, 466, 467, 468, 469, 470,
471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
-1, 482, 483, 484, -1, 486, 487, 488, 489, 490,
491, 492, -1, 494, 495, 496, -1, -1, 499, 500,
501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
511, 512, -1, 514, 515, 516, 517, 518, 519, 520,
-1, 522, 523, 524, 525, 526, 527, 528, -1, 530,
531, 532, 533, 534, 535, -1, -1, 538, -1, -1,
541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
-1, 562, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 574, 575, -1, -1, -1, -1, -1,
-1, -1, 583, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, 70, -1,
-1, 73, -1, 75, 76, -1, 78, 79, 80, 81,
82, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, 107, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
182, 183, 184, 185, 186, 187, 188, 189, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, 285, 286, -1, 288, -1, 290, -1,
-1, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, 317, 318, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
352, -1, 354, 355, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, 484, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, -1, 514, 515, 516, 517, 518, 519, 520, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
562, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 574, 575, -1, -1, -1, -1, -1, -1,
-1, 583, 5, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 28, -1, 30, 31, 32,
33, 34, 35, 36, 37, 38, -1, 40, 41, 42,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, 75, 76, -1, 78, 79, 80, 81, 82,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, 107, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, 135, 136, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, 149, -1, 151, 152,
153, 154, 155, 156, 157, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, 169, 170, 171, -1,
173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 230, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
243, -1, 245, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
263, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, 279, 280, -1, 282,
283, 284, 285, 286, -1, 288, -1, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, 310, 311, 312,
-1, 314, 315, 316, 317, 318, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, 431, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, 484, -1, 486, 487, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, 520, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, 531, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 574, 575, -1, -1, -1, -1, -1, -1, -1,
583, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, 70, -1, -1, 73,
-1, 75, 76, -1, 78, 79, 80, 81, 82, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, 107, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, 135, 136, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, 173,
174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, 317, 318, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
484, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, 520, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
574, 575, -1, -1, -1, -1, -1, -1, -1, 583,
5, 6, 7, 8, 9, 10, 11, 12, -1, 14,
15, -1, -1, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, -1, 30, 31, 32, 33, 34,
35, 36, 37, 38, -1, 40, 41, 42, 43, 44,
-1, -1, -1, 48, 49, -1, -1, -1, -1, 54,
-1, -1, -1, -1, -1, -1, -1, -1, 63, -1,
65, -1, 67, 68, 69, 70, -1, -1, 73, -1,
75, 76, -1, 78, 79, -1, 81, 82, -1, -1,
-1, -1, -1, -1, -1, 90, 91, 92, 93, 94,
95, 96, 97, 98, -1, 100, 101, 102, -1, -1,
-1, -1, 107, -1, -1, 110, 111, 112, -1, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
135, 136, 137, 138, 139, 140, 141, -1, 143, 144,
145, 146, 147, -1, 149, -1, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, -1, 162, 163, 164,
165, 166, 167, -1, 169, 170, 171, -1, 173, 174,
175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
185, 186, 187, 188, -1, 190, -1, 192, 193, 194,
195, 196, 197, 198, -1, 200, 201, 202, 203, -1,
-1, 206, 207, 208, 209, 210, -1, 212, 213, 214,
-1, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, -1, 233, 234,
235, 236, 237, -1, 239, -1, 241, 242, 243, -1,
245, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, -1, 269, 270, 271, 272, 273, 274,
275, 276, -1, 278, 279, 280, -1, 282, 283, 284,
285, 286, -1, 288, -1, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, -1, -1, 308, 309, 310, 311, 312, -1, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, -1, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, -1, 367, 368, 369, -1, -1, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, -1, 390, 391, 392, 393, 394,
395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 447, -1, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
-1, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, -1, 482, 483, 484,
-1, 486, 487, 488, 489, 490, 491, 492, -1, 494,
495, 496, -1, -1, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, -1, -1,
515, 516, 517, 518, 519, 520, -1, 522, 523, 524,
525, 526, 527, 528, -1, 530, 531, 532, 533, 534,
535, -1, -1, 538, -1, -1, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 558, 559, 560, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 574,
575, -1, -1, -1, -1, -1, -1, -1, 583, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, 70, -1, -1, 73, -1, 75,
76, -1, 78, 79, -1, 81, 82, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, 107, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, 583, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
70, -1, -1, 73, -1, 75, 76, -1, 78, 79,
-1, 81, 82, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, 107, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, 173, 174, 175, 176, 177, 178, 179,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, 285, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, 317, 318, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, 484, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
520, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, 583, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, 70, -1, -1, 73,
-1, 75, 76, -1, 78, 79, -1, 81, 82, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, 107, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, 135, 136, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, 173,
174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, 317, 318, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
484, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, 520, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, 583,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, 136, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, 173, 174, 175, 176, 177,
178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, 306, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, 353, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, 366, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, 484, 485, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, 520, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, 540, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, -1, -1, -1, 564, -1, -1, -1,
-1, -1, -1, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, 583, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, 136, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, 173, 174, 175, 176, 177, 178, 179, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, 306, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, 317, 318, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, 353, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, 366, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, 484, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, 520, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, 583, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
136, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, 484, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, 520, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, 583, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, 136, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, 173, 174, 175, 176, 177, 178, 179,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, -1, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, 317, 318, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, 353, 354, -1, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, 484, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
520, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, 583, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, 136, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, 173,
174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, 317, 318, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
484, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, 520, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, 583,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, 136, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, 173, 174, 175, 176, 177,
178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, 353, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, 484, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, 520, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, 583, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, -1, 176, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, 353, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, 6,
7, 8, 9, 10, 11, 12, -1, 14, 15, -1,
-1, 18, 19, 20, 21, 22, 23, -1, 25, 26,
27, 583, -1, 30, 31, 32, 33, -1, -1, 36,
37, 38, -1, 40, -1, -1, 43, 44, -1, -1,
-1, 48, 49, -1, -1, -1, -1, 54, -1, -1,
-1, -1, -1, -1, -1, -1, 63, -1, 65, -1,
67, 68, 69, -1, -1, -1, 73, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
97, 98, -1, 100, 101, 102, -1, -1, -1, -1,
-1, 108, -1, 110, 111, 112, -1, 114, 115, 116,
117, -1, 119, 120, 121, 122, 123, -1, 125, 126,
-1, 128, 129, 130, 131, 132, 133, 134, -1, -1,
137, 138, 139, 140, 141, -1, 143, 144, 145, 146,
147, -1, -1, -1, 151, 152, 153, 154, 155, 156,
-1, 158, 159, 160, -1, 162, 163, 164, 165, 166,
167, -1, 169, 170, 171, -1, -1, -1, -1, -1,
-1, -1, -1, 180, 181, 182, 183, 184, 185, 186,
187, 188, -1, 190, -1, 192, 193, 194, 195, 196,
197, 198, -1, 200, 201, 202, 203, -1, -1, 206,
207, 208, 209, 210, -1, 212, 213, 214, -1, 216,
217, 218, -1, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, -1, 231, -1, 233, 234, 235, 236,
237, -1, 239, -1, 241, 242, -1, -1, 245, 246,
247, 248, 249, -1, 251, 252, -1, 254, 255, 256,
-1, 258, 259, 260, 261, 262, -1, 264, 265, 266,
267, -1, 269, 270, 271, 272, 273, 274, 275, 276,
-1, 278, 279, 280, -1, 282, 283, 284, -1, 286,
-1, 288, -1, 290, -1, -1, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
-1, 308, 309, 310, 311, -1, -1, 314, 315, 316,
-1, -1, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, 348, 349, -1, 351, 352, -1, 354, -1, 356,
357, 358, 359, 360, 361, -1, 363, 364, -1, -1,
367, 368, 369, -1, -1, 372, 373, 374, -1, 376,
-1, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, -1, 390, 391, 392, 393, 394, 395, 396,
397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, -1, 429, 430, 431, 432, 433, 434, 435, 436,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
447, -1, 449, 450, 451, 452, 453, -1, 455, 456,
457, 458, 459, -1, 461, 462, 463, 464, -1, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, 479, 480, -1, 482, 483, -1, -1, 486,
-1, 488, 489, 490, 491, 492, -1, 494, 495, 496,
-1, -1, 499, 500, 501, 502, 503, -1, 505, 506,
507, 508, 509, 510, 511, 512, -1, -1, 515, 516,
517, 518, 519, -1, -1, 522, 523, 524, 525, 526,
527, 528, -1, 530, -1, 532, 533, 534, 535, -1,
-1, 538, -1, -1, 541, 542, 543, 544, 545, 546,
547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
557, 558, 559, 560, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, -1, 25, 26, 27, -1, 584, 30, 31,
32, 33, -1, -1, 36, 37, 38, -1, 40, -1,
-1, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, 70, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, -1, 119, 120, 121,
122, 123, -1, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, -1, -1, 151,
152, 153, 154, 155, 156, -1, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, -1, 170, 171,
-1, -1, -1, -1, -1, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, -1, -1, -1, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, -1, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, -1, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, -1,
-1, 293, -1, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, -1, 311,
-1, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, -1, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, -1, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, -1, 376, -1, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, -1,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, -1, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, 485, 486, -1, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, -1,
532, 533, 534, 535, -1, -1, 538, -1, 540, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
-1, -1, 564, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, 583, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, 485, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, 540, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, -1, -1,
-1, 564, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
583, 25, 26, 27, -1, -1, 30, 31, 32, 33,
-1, -1, 36, 37, 38, -1, 40, -1, -1, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, -1, 119, 120, 121, 122, 123,
-1, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, -1, -1, 151, 152, 153,
154, 155, 156, -1, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, -1, 170, 171, -1, -1,
-1, -1, 176, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, -1,
-1, -1, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, -1,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, -1, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, -1, -1, 293,
-1, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, -1, 311, -1, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, -1, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, -1,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, 366, 367, 368, 369, -1, -1, 372, 373,
374, -1, 376, -1, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, -1, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, -1, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, 485, 486, -1, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, -1, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, 6, 7, 8,
9, 10, 11, 12, -1, 14, 15, -1, -1, 18,
19, 20, 21, 22, 23, -1, 25, 26, 27, 583,
-1, 30, 31, 32, 33, -1, -1, 36, 37, 38,
-1, 40, -1, -1, 43, 44, -1, -1, -1, 48,
49, -1, -1, -1, -1, 54, -1, -1, -1, -1,
-1, -1, -1, -1, 63, -1, 65, -1, 67, 68,
69, -1, -1, -1, 73, -1, -1, 76, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
-1, 100, 101, 102, -1, -1, -1, -1, -1, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, -1,
119, 120, 121, 122, 123, -1, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, -1, -1, 137, 138,
139, 140, 141, -1, 143, 144, 145, 146, 147, -1,
-1, -1, 151, 152, 153, 154, 155, 156, -1, 158,
159, 160, -1, 162, 163, 164, 165, 166, 167, -1,
-1, 170, 171, -1, -1, -1, -1, -1, -1, -1,
-1, 180, 181, 182, 183, 184, 185, 186, 187, 188,
-1, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, -1, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, -1, -1, -1, 246, 247, 248,
249, -1, 251, 252, -1, 254, 255, 256, -1, 258,
259, 260, 261, 262, -1, 264, 265, 266, 267, -1,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
-1, 280, -1, 282, 283, 284, -1, 286, -1, 288,
-1, 290, -1, -1, 293, -1, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, -1, -1, 308,
309, -1, 311, -1, -1, 314, 315, 316, -1, -1,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, 336, 337, -1,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, -1, 351, 352, -1, 354, -1, 356, 357, 358,
359, 360, 361, -1, 363, 364, -1, -1, 367, 368,
369, -1, -1, 372, 373, 374, -1, 376, -1, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, 392, 393, 394, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, -1, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 447, -1,
449, 450, 451, 452, 453, -1, 455, 456, 457, 458,
459, -1, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, -1, 482, 483, -1, -1, 486, -1, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, 501, 502, 503, -1, 505, 506, 507, 508,
509, 510, 511, 512, -1, -1, 515, 516, 517, 518,
519, -1, -1, 522, 523, 524, 525, 526, 527, 528,
-1, 530, -1, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
559, 560, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, 582, 583, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, 76, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
583, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, 583, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
583, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, 583, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 5, 6,
7, 8, 9, 10, 11, 12, -1, 14, 15, -1,
583, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, -1, 30, 31, 32, 33, 34, 35, 36,
37, 38, -1, 40, 41, 42, 43, 44, -1, -1,
-1, 48, 49, -1, -1, -1, -1, 54, -1, -1,
-1, -1, -1, -1, -1, -1, 63, -1, 65, -1,
67, 68, 69, 70, -1, -1, 73, -1, 75, 76,
-1, -1, -1, 80, 81, -1, -1, -1, -1, -1,
87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
117, 118, 119, 120, 121, -1, 123, 124, 125, 126,
127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
-1, 148, 149, 150, 151, 152, 153, 154, 155, 156,
157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
167, 168, 169, 170, 171, -1, 173, 174, 175, 176,
177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
217, 218, 219, 220, 221, 222, 223, -1, 225, 226,
227, 228, -1, 230, 231, 232, 233, 234, 235, 236,
237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
247, 248, 249, 250, 251, -1, 253, -1, 255, 256,
257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
267, 268, 269, 270, 271, 272, 273, 274, 275, 276,
277, 278, 279, -1, -1, 282, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 294, 295, -1,
-1, -1, -1, 300, 301, 302, 303, 304, 305, 306,
307, 308, -1, 310, 311, 312, 313, 314, 315, 316,
317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, -1, 349, 350, 351, 352, 353, 354, 355, -1,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 368, 369, 370, 371, 372, 373, -1, 375, 376,
377, -1, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, 389, 390, 391, -1, 393, -1, 395, 396,
397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
-1, 438, 439, 440, 441, 442, 443, 444, 445, 446,
447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, -1, 480, 481, 482, 483, 484, 485, 486,
487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
-1, 498, 499, 500, -1, 502, -1, 504, 505, 506,
507, 508, 509, 510, 511, 512, -1, 514, 515, 516,
517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
-1, 528, 529, 530, 531, 532, 533, 534, 535, 536,
537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 558, 559, 560, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 571, 572, 573, 574, 575, 576,
577, 578, 579, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, 70, -1,
-1, 73, -1, 75, 76, -1, -1, -1, 80, 81,
-1, -1, -1, -1, -1, 87, 88, 89, 90, 91,
92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
-1, 123, 124, 125, 126, 127, 128, 129, 130, 131,
132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
142, 143, 144, 145, 146, -1, 148, 149, 150, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
-1, 173, 174, 175, 176, 177, 178, 179, 180, 181,
182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
222, 223, -1, 225, 226, 227, 228, -1, 230, 231,
232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
-1, 253, -1, 255, 256, 257, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
272, 273, 274, 275, 276, 277, 278, 279, -1, -1,
282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 294, 295, -1, -1, -1, -1, 300, 301,
302, 303, 304, 305, 306, 307, 308, -1, 310, 311,
312, 313, 314, 315, 316, 317, 318, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, -1, 349, 350, 351,
352, 353, 354, 355, -1, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, 373, -1, 375, 376, 377, -1, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 389, 390, 391,
-1, 393, -1, 395, 396, 397, 398, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
432, 433, 434, 435, 436, -1, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, -1, 480, 481,
482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
492, 493, 494, 495, 496, -1, 498, 499, 500, -1,
502, -1, 504, 505, 506, 507, 508, 509, 510, 511,
512, -1, 514, 515, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, -1, 528, 529, 530, 531,
532, 533, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 545, 546, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 558, 559, 560, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 571,
572, 573, 574, 575, 576, 577, 578, 579, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, 80, -1, -1, -1, -1, -1, -1, 87,
88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
-1, 25, 26, 27, -1, -1, 30, 31, 32, 33,
-1, -1, 36, 37, 38, -1, 40, -1, -1, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, 80, -1, -1, -1,
-1, -1, -1, 87, 88, 89, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, -1, 119, 120, 121, 122, 123,
-1, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, -1, -1, 151, 152, 153,
154, 155, 156, -1, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, -1, 170, 171, -1, -1,
-1, -1, -1, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, -1,
-1, -1, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, -1,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, -1, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, -1, -1, 293,
-1, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, -1, 311, -1, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, -1, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, -1,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, -1, 376, -1, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, -1, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, -1, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, -1, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, -1, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 571, 572, 573,
574, 575, 576, 577, 578, 579, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, -1, 25, 26, 27, -1, -1,
30, 31, 32, 33, -1, -1, 36, 37, 38, -1,
40, -1, -1, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
80, -1, -1, -1, -1, -1, -1, 87, 88, 89,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, -1, 119,
120, 121, 122, 123, -1, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, -1,
-1, 151, 152, 153, 154, 155, 156, -1, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, -1,
170, 171, -1, -1, -1, -1, -1, -1, -1, -1,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, -1, -1, -1, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, -1, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, -1,
280, -1, 282, 283, 284, -1, 286, -1, 288, -1,
290, -1, -1, 293, -1, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
-1, 311, -1, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, -1, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, -1, 354, -1, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, -1, 376, -1, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, -1, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, -1, 455, 456, 457, 458, 459,
-1, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, -1, -1, 486, -1, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, -1, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 571, 572, 573, 574, 575, 576, 577, 578, 579,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, -1, 25,
26, 27, -1, -1, 30, 31, 32, 33, -1, -1,
36, 37, 38, -1, 40, -1, -1, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, 80, -1, -1, -1, -1, -1,
-1, 87, 88, 89, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, -1, 119, 120, 121, 122, 123, -1, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, -1, -1, 151, 152, 153, 154, 155,
156, -1, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, -1, 170, 171, -1, -1, -1, -1,
-1, -1, -1, -1, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, -1, -1, -1,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, -1, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, -1, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, -1, -1, 293, -1, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, -1, 311, -1, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, -1, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, -1, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, -1,
376, -1, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, -1, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, -1, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, -1, -1,
486, -1, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, -1, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 571, 572, 573, 574, 575,
576, 577, 578, 579, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, -1, 25, 26, 27, -1, -1, 30, 31,
32, 33, -1, -1, 36, 37, 38, -1, 40, -1,
-1, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, 80, -1,
-1, -1, -1, -1, -1, 87, 88, 89, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, -1, 119, 120, 121,
122, 123, -1, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, -1, -1, 151,
152, 153, 154, 155, 156, -1, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, -1, 170, 171,
-1, -1, -1, -1, -1, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, -1, -1, -1, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, -1, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, -1, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, -1,
-1, 293, -1, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, -1, 311,
-1, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, -1, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, -1, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, -1, 376, -1, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, -1,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, -1, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, -1, 486, -1, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, -1,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 571,
572, 573, 574, 575, 576, 577, 578, 579, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, 80, -1, -1, -1, -1, -1, -1, 87,
88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 571, 572, 573, 574, 575, 576, 577,
578, 579, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
-1, 25, 26, 27, -1, -1, 30, 31, 32, 33,
-1, -1, 36, 37, 38, -1, 40, -1, -1, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, 80, -1, -1, -1,
-1, -1, -1, 87, 88, 89, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, -1, 119, 120, 121, 122, 123,
-1, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, -1, -1, 151, 152, 153,
154, 155, 156, -1, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, -1, 170, 171, -1, -1,
-1, -1, -1, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, -1,
-1, -1, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, -1,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, -1, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, -1, -1, 293,
-1, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, -1, 311, -1, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, -1, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, -1,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, -1, 376, -1, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, -1, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, -1, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, -1, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, -1, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 571, 572, 573,
574, 575, 576, 577, 578, 579, 5, 6, 7, 8,
9, 10, 11, 12, -1, 14, 15, -1, -1, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
-1, 30, 31, 32, 33, 34, 35, 36, 37, 38,
-1, 40, 41, 42, 43, 44, -1, -1, -1, 48,
49, -1, -1, -1, -1, 54, -1, -1, -1, -1,
-1, -1, -1, -1, 63, -1, 65, -1, 67, 68,
69, -1, -1, -1, 73, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, 306, 307, 308,
309, 310, 311, 312, 313, 314, 315, 316, 317, 318,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
559, 560, -1, -1, -1, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, 576, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, -1, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, -1, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, -1, -1, -1, 176, -1, -1, -1,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, -1, 225, 226, 227, 228, -1,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, -1, -1, -1, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, 285, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, -1, -1, -1, -1,
300, 301, 302, 303, 304, 305, -1, -1, 308, -1,
310, 311, 312, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, -1, -1, 349,
-1, 351, 352, 353, 354, -1, -1, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, 371, 372, 373, 374, 375, 376, 377, -1, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, -1, 393, -1, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, -1, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, -1, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, -1,
480, -1, 482, 483, -1, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, -1, 502, -1, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, -1, 528, 529,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 558, 559,
560, -1, -1, -1, -1, 6, 7, 8, 9, 10,
11, 12, -1, 14, 15, -1, 576, 18, 19, 20,
21, 22, 23, -1, 25, 26, 27, -1, -1, 30,
31, 32, 33, -1, -1, 36, 37, 38, -1, 40,
-1, -1, 43, 44, -1, -1, -1, 48, 49, -1,
-1, -1, -1, 54, -1, -1, -1, -1, -1, -1,
-1, -1, 63, -1, 65, -1, 67, 68, 69, -1,
-1, -1, 73, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 90,
91, 92, 93, 94, 95, 96, 97, 98, -1, 100,
101, 102, -1, -1, -1, -1, -1, -1, -1, 110,
111, 112, -1, 114, 115, 116, 117, -1, 119, 120,
121, 122, 123, -1, 125, 126, -1, 128, 129, 130,
131, 132, 133, 134, -1, -1, 137, 138, 139, 140,
141, -1, 143, 144, 145, 146, 147, -1, -1, -1,
151, 152, 153, 154, 155, 156, -1, 158, 159, 160,
-1, 162, 163, 164, 165, 166, 167, -1, -1, 170,
171, -1, -1, -1, -1, -1, -1, -1, -1, 180,
181, 182, 183, 184, 185, 186, 187, 188, -1, 190,
-1, 192, 193, 194, 195, 196, 197, 198, -1, 200,
201, 202, 203, -1, -1, 206, 207, 208, 209, 210,
-1, 212, 213, 214, -1, 216, 217, 218, -1, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, -1,
231, -1, 233, 234, 235, 236, 237, -1, 239, -1,
241, 242, -1, -1, -1, 246, 247, 248, 249, -1,
251, 252, -1, 254, 255, 256, -1, 258, 259, 260,
261, 262, -1, 264, 265, 266, 267, -1, 269, 270,
271, 272, 273, 274, 275, 276, -1, 278, -1, 280,
-1, 282, 283, 284, -1, 286, -1, 288, -1, 290,
-1, -1, 293, -1, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, -1, -1, 308, 309, -1,
311, -1, -1, 314, 315, 316, -1, -1, 319, 320,
321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, 336, 337, -1, 339, 340,
341, 342, 343, 344, 345, 346, 347, 348, 349, -1,
351, 352, -1, 354, -1, 356, 357, 358, 359, 360,
361, -1, 363, 364, -1, -1, 367, 368, 369, -1,
-1, 372, 373, 374, -1, 376, -1, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, -1, 390,
391, 392, 393, 394, 395, 396, 397, -1, 399, 400,
401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
421, 422, 423, 424, 425, 426, 427, -1, 429, 430,
-1, 432, 433, 434, 435, 436, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 447, -1, 449, 450,
451, 452, 453, -1, 455, 456, 457, 458, 459, -1,
461, 462, 463, 464, -1, 466, 467, 468, 469, 470,
471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
-1, 482, 483, -1, -1, 486, -1, 488, 489, 490,
491, 492, -1, 494, 495, 496, -1, -1, 499, 500,
501, 502, 503, -1, 505, 506, 507, 508, 509, 510,
511, 512, -1, -1, 515, 516, 517, 518, 519, -1,
-1, 522, 523, 524, 525, 526, 527, 528, -1, 530,
-1, 532, 533, 534, 535, -1, -1, 538, -1, -1,
541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
-1, -1, -1, -1, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, 576, 18, 19, 20, 21,
22, 23, -1, 25, 26, 27, -1, -1, 30, 31,
32, 33, -1, -1, 36, 37, 38, -1, 40, -1,
-1, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, -1, 119, 120, 121,
122, 123, -1, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, -1, -1, 151,
152, 153, 154, 155, 156, -1, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, -1, 170, 171,
-1, -1, -1, -1, -1, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, -1, -1, -1, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, -1, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, -1, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, -1,
-1, 293, -1, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, -1, 311,
-1, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, -1, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, -1, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, -1, 376, -1, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, -1,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, -1, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, -1, 486, -1, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, -1,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, -1,
-1, -1, -1, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, 576, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, 244, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, 268, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, -1, -1,
-1, 6, 7, 8, 9, 10, 11, 12, -1, 14,
15, 574, 575, 18, 19, 20, 21, 22, 23, -1,
25, 26, 27, -1, -1, 30, 31, 32, 33, -1,
-1, 36, 37, 38, -1, 40, -1, -1, 43, 44,
-1, -1, -1, 48, 49, -1, -1, -1, -1, 54,
-1, -1, -1, -1, -1, -1, -1, -1, 63, -1,
65, -1, 67, 68, 69, 70, -1, -1, 73, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, -1, -1,
-1, -1, -1, -1, -1, 110, 111, 112, -1, 114,
115, 116, 117, -1, 119, 120, 121, 122, 123, -1,
125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
-1, -1, 137, 138, 139, 140, 141, -1, 143, 144,
145, 146, 147, -1, -1, -1, 151, 152, 153, 154,
155, 156, -1, 158, 159, 160, -1, 162, 163, 164,
165, 166, 167, -1, -1, 170, 171, -1, -1, -1,
-1, -1, -1, -1, -1, 180, 181, 182, 183, 184,
185, 186, 187, 188, -1, 190, -1, 192, 193, 194,
195, 196, 197, 198, -1, 200, 201, 202, 203, -1,
-1, 206, 207, 208, 209, 210, -1, 212, 213, 214,
-1, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, -1, 231, -1, 233, 234,
235, 236, 237, -1, 239, -1, 241, 242, -1, 244,
-1, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, 260, 261, 262, -1, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, -1, 278, -1, 280, -1, 282, 283, 284,
-1, 286, -1, 288, -1, 290, -1, -1, 293, -1,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, -1, -1, 308, 309, -1, 311, -1, -1, 314,
315, 316, -1, -1, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, -1, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, -1, 351, 352, -1, 354,
-1, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, -1, 367, 368, 369, -1, -1, 372, 373, 374,
-1, 376, -1, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, -1, 390, 391, 392, 393, 394,
395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, -1, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 446, 447, -1, 449, 450, 451, 452, 453, -1,
455, 456, 457, 458, 459, -1, 461, 462, 463, 464,
-1, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, -1, 482, 483, -1,
-1, 486, -1, 488, 489, 490, 491, 492, -1, 494,
495, 496, -1, -1, 499, 500, 501, 502, 503, -1,
505, 506, 507, 508, 509, 510, 511, 512, -1, -1,
515, 516, 517, 518, 519, -1, -1, 522, 523, 524,
525, 526, 527, 528, -1, 530, -1, 532, 533, 534,
535, -1, -1, 538, -1, -1, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 558, 559, 560, -1, -1, -1, 6,
7, 8, 9, 10, 11, 12, -1, 14, 15, 574,
575, 18, 19, 20, 21, 22, 23, -1, 25, 26,
27, -1, -1, 30, 31, 32, 33, -1, -1, 36,
37, 38, -1, 40, -1, -1, 43, 44, -1, -1,
-1, 48, 49, -1, -1, -1, -1, 54, -1, -1,
-1, -1, -1, -1, -1, -1, 63, -1, 65, -1,
67, 68, 69, 70, -1, -1, 73, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
-1, -1, -1, 110, 111, 112, -1, 114, 115, 116,
117, -1, 119, 120, 121, 122, 123, -1, 125, 126,
-1, 128, 129, 130, 131, 132, 133, 134, -1, -1,
137, 138, 139, 140, 141, -1, 143, 144, 145, 146,
147, -1, -1, -1, 151, 152, 153, 154, 155, 156,
-1, 158, 159, 160, -1, 162, 163, 164, 165, 166,
167, -1, -1, 170, 171, -1, -1, -1, -1, -1,
-1, -1, -1, 180, 181, 182, 183, 184, 185, 186,
187, 188, -1, 190, -1, 192, 193, 194, 195, 196,
197, 198, -1, 200, 201, 202, 203, -1, -1, 206,
207, 208, 209, 210, -1, 212, 213, 214, -1, 216,
217, 218, -1, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, -1, 231, -1, 233, 234, 235, 236,
237, -1, 239, -1, 241, 242, -1, 244, -1, 246,
247, 248, 249, -1, 251, 252, -1, 254, 255, 256,
-1, 258, 259, 260, 261, 262, -1, 264, 265, 266,
267, 268, 269, 270, 271, 272, 273, 274, 275, 276,
-1, 278, -1, 280, -1, 282, 283, 284, -1, 286,
-1, 288, -1, 290, -1, -1, 293, -1, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
-1, 308, 309, -1, 311, -1, -1, 314, 315, 316,
-1, -1, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
337, -1, 339, 340, 341, 342, 343, 344, 345, 346,
347, 348, 349, -1, 351, 352, -1, 354, -1, 356,
357, 358, 359, 360, 361, -1, 363, 364, -1, -1,
367, 368, 369, -1, -1, 372, 373, 374, -1, 376,
-1, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, -1, 390, 391, 392, 393, 394, 395, 396,
397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, -1, 429, 430, -1, 432, 433, 434, 435, 436,
437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
447, -1, 449, 450, 451, 452, 453, -1, 455, 456,
457, 458, 459, -1, 461, 462, 463, 464, -1, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, 479, 480, -1, 482, 483, -1, -1, 486,
-1, 488, 489, 490, 491, 492, -1, 494, 495, 496,
-1, -1, 499, 500, 501, 502, 503, -1, 505, 506,
507, 508, 509, 510, 511, 512, -1, -1, 515, 516,
517, 518, 519, -1, -1, 522, 523, 524, 525, 526,
527, 528, -1, 530, -1, 532, 533, 534, 535, -1,
-1, 538, -1, -1, 541, 542, 543, 544, 545, 546,
547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
557, 558, 559, 560, -1, -1, -1, 6, 7, 8,
9, 10, 11, 12, -1, 14, 15, 574, 575, 18,
19, 20, 21, 22, 23, -1, 25, 26, 27, -1,
-1, 30, 31, 32, 33, -1, -1, 36, 37, 38,
-1, 40, -1, -1, 43, 44, -1, -1, -1, 48,
49, -1, -1, -1, -1, 54, -1, -1, -1, -1,
-1, -1, -1, -1, 63, -1, 65, -1, 67, 68,
69, 70, -1, -1, 73, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
99, 100, 101, 102, -1, -1, -1, -1, -1, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, -1,
119, 120, 121, 122, 123, -1, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, -1, -1, 137, 138,
139, 140, 141, -1, 143, 144, 145, 146, 147, -1,
-1, -1, 151, 152, 153, 154, 155, 156, -1, 158,
159, 160, -1, 162, 163, 164, 165, 166, 167, -1,
-1, 170, 171, -1, -1, -1, -1, -1, -1, -1,
-1, 180, 181, 182, 183, 184, 185, 186, 187, 188,
-1, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, -1, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, -1, 244, -1, 246, 247, 248,
249, -1, 251, 252, -1, 254, 255, 256, -1, 258,
259, 260, 261, 262, -1, 264, 265, 266, 267, 268,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
-1, 280, -1, 282, 283, 284, -1, 286, -1, 288,
-1, 290, -1, -1, 293, -1, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, -1, -1, 308,
309, -1, 311, -1, -1, 314, 315, 316, -1, -1,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, 336, 337, -1,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, -1, 351, 352, -1, 354, -1, 356, 357, 358,
359, 360, 361, -1, 363, 364, -1, -1, 367, 368,
369, -1, -1, 372, 373, 374, -1, 376, -1, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, 392, 393, 394, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, -1, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, 446, 447, -1,
449, 450, 451, 452, 453, -1, 455, 456, 457, 458,
459, -1, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, -1, 482, 483, -1, -1, 486, -1, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, 501, 502, 503, -1, 505, 506, 507, 508,
509, 510, 511, 512, -1, -1, 515, 516, 517, 518,
519, -1, -1, 522, 523, 524, 525, 526, 527, 528,
-1, 530, -1, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
559, 560, -1, -1, -1, 6, 7, 8, 9, 10,
11, 12, -1, 14, 15, 574, 575, 18, 19, 20,
21, 22, 23, -1, 25, 26, 27, -1, -1, 30,
31, 32, 33, -1, -1, 36, 37, 38, -1, 40,
-1, -1, 43, 44, -1, -1, -1, 48, 49, -1,
-1, -1, -1, 54, -1, -1, -1, -1, -1, -1,
-1, -1, 63, -1, 65, -1, 67, 68, 69, 70,
-1, -1, 73, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 90,
91, 92, 93, 94, 95, 96, 97, 98, -1, 100,
101, 102, -1, -1, -1, -1, -1, -1, -1, 110,
111, 112, -1, 114, 115, 116, 117, -1, 119, 120,
121, 122, 123, -1, 125, 126, -1, 128, 129, 130,
131, 132, 133, 134, -1, -1, 137, 138, 139, 140,
141, -1, 143, 144, 145, 146, 147, -1, -1, -1,
151, 152, 153, 154, 155, 156, -1, 158, 159, 160,
-1, 162, 163, 164, 165, 166, 167, -1, -1, 170,
171, -1, -1, -1, -1, -1, -1, -1, -1, 180,
181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
-1, 192, 193, 194, 195, 196, 197, 198, -1, 200,
201, 202, 203, -1, -1, 206, 207, 208, 209, 210,
-1, 212, 213, 214, -1, 216, 217, 218, -1, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, -1,
231, -1, 233, 234, 235, 236, 237, -1, 239, -1,
241, 242, -1, -1, -1, 246, 247, 248, 249, -1,
251, 252, -1, 254, 255, 256, -1, 258, 259, 260,
261, 262, -1, 264, 265, 266, 267, -1, 269, 270,
271, 272, 273, 274, 275, 276, -1, 278, -1, 280,
-1, 282, 283, 284, -1, 286, -1, 288, -1, 290,
-1, -1, 293, -1, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, -1, -1, 308, 309, -1,
311, -1, -1, 314, 315, 316, -1, -1, 319, 320,
321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, 336, 337, -1, 339, 340,
341, 342, 343, 344, 345, 346, 347, 348, 349, -1,
351, 352, -1, 354, -1, 356, 357, 358, 359, 360,
361, -1, 363, 364, -1, -1, 367, 368, 369, -1,
-1, 372, 373, 374, -1, 376, -1, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, -1, 390,
391, 392, 393, 394, 395, 396, 397, -1, 399, 400,
401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
421, 422, 423, 424, 425, 426, 427, -1, 429, 430,
-1, 432, 433, 434, 435, 436, 437, 438, 439, 440,
441, 442, 443, 444, 445, 446, 447, -1, 449, 450,
451, 452, 453, -1, 455, 456, 457, 458, 459, -1,
461, 462, 463, 464, -1, 466, 467, 468, 469, 470,
471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
-1, 482, 483, -1, -1, 486, -1, 488, 489, 490,
491, 492, -1, 494, 495, 496, 497, -1, 499, 500,
501, 502, 503, -1, 505, 506, 507, 508, 509, 510,
511, 512, -1, -1, 515, 516, 517, 518, 519, -1,
-1, 522, 523, 524, 525, 526, 527, 528, -1, 530,
-1, 532, 533, 534, 535, -1, -1, 538, -1, -1,
541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
4, -1, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, 573, -1, 18, 19, 20, 21, 22, 23,
-1, 25, 26, 27, -1, -1, 30, 31, 32, 33,
-1, -1, 36, 37, 38, -1, 40, -1, -1, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, -1, 119, 120, 121, 122, 123,
-1, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, -1, -1, 151, 152, 153,
154, 155, 156, -1, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, -1, 170, 171, -1, -1,
-1, -1, -1, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, -1,
-1, -1, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, -1,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, -1, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, -1, -1, 293,
-1, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, -1, 311, -1, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, -1, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, -1,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, -1, 376, -1, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, -1, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, -1, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, -1, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, -1, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, 75, 76, -1,
-1, -1, -1, 81, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
238, 239, 240, 241, 242, 243, 244, 245, 246, 247,
248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, 306, 307,
308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
528, 529, 530, 531, 532, 533, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
272, 273, 274, 275, 276, 277, 278, 279, 280, 281,
282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, 306, 307, 308, 309, 310, 311,
312, 313, 314, 315, 316, 317, 318, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 389, 390, 391,
392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
532, 533, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, 136, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, 173, 174, 175, 176, 177, 178, 179,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, -1, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, 317, 318, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, 353, 354, -1, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, 484, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
520, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, 70, -1, -1, 73,
-1, 75, 76, -1, 78, 79, -1, 81, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, -1, 176, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, 353, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, -1, 176, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, 353, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, -1,
176, -1, -1, -1, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, 527, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 558, 559, 560, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, -1, -1, -1, 176, -1, -1, -1,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, -1, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, 353, 354, -1, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, -1, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, -1, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, 527, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
560, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, -1, 176, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, 527, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 558, 559, 560, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, -1, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, -1,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, -1, 225, 226, 227,
228, -1, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, -1, -1, -1, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
268, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, 285, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, -1, -1,
-1, -1, 300, 301, 302, 303, 304, 305, -1, -1,
308, -1, 310, 311, 312, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, -1,
-1, 349, -1, 351, 352, 353, 354, -1, -1, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
-1, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, -1, 393, -1, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, -1,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, -1, 480, -1, 482, 483, -1, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, -1, 502, -1, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, -1,
528, 529, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
558, 559, 560, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
-1, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, -1, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, -1, 176, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, -1, 225, 226, 227, 228, -1, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
-1, -1, -1, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, -1, -1,
282, 283, 284, 285, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, -1, -1, -1, -1, 300, 301,
302, 303, 304, 305, -1, -1, 308, -1, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, -1, -1, 349, -1, 351,
352, 353, 354, 355, -1, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, -1, 375, 376, 377, -1, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
-1, 393, -1, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, -1, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, -1, 480, -1,
482, 483, -1, 485, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, -1,
502, -1, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, -1, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 558, 559, 560, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, -1, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, -1, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, -1,
176, -1, -1, -1, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, -1, 225,
226, 227, 228, -1, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, -1, -1, -1, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, -1, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
-1, -1, -1, -1, 300, 301, 302, 303, 304, 305,
-1, -1, 308, -1, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, -1, 349, -1, 351, 352, 353, 354, -1,
-1, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, -1, 375,
376, 377, -1, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, -1, 393, -1, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, -1, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, -1, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, -1, 502, -1, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 558, 559, 560, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, -1, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, -1, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, -1, -1, -1, 176, -1, -1, -1,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, -1, 225, 226, 227, 228, -1,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, -1, -1, -1, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
-1, -1, 282, 283, 284, 285, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, -1, -1, -1, -1,
300, 301, 302, 303, 304, 305, -1, -1, 308, -1,
310, 311, 312, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, -1, 349,
-1, 351, 352, 353, 354, -1, -1, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, -1, 375, 376, 377, -1, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, -1, 393, -1, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, -1, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, -1, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, -1,
480, -1, 482, 483, -1, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, -1, 502, -1, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, -1, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 558, 559,
560, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, -1, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, -1, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, -1, 176, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
-1, 225, 226, 227, 228, -1, -1, 231, -1, 233,
234, 235, 236, 237, 238, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, -1, -1,
-1, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, -1, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, -1, -1, -1, -1, 300, 301, 302, 303,
304, 305, -1, -1, 308, -1, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, -1, -1, 349, -1, 351, 352, 353,
354, -1, -1, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
-1, 375, 376, 377, -1, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, -1, 393,
-1, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, -1, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, -1, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, -1, 502, -1,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, -1, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 558, 559, 560, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, -1, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, -1,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, -1, 225, 226, 227,
228, -1, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, -1, -1, -1, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, -1, -1, 282, 283, 284, 285, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, -1, -1,
-1, -1, 300, 301, 302, 303, 304, 305, -1, -1,
308, -1, 310, 311, 312, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, -1,
-1, 349, -1, 351, 352, 353, 354, -1, -1, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, -1, 375, 376, 377,
-1, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, -1, 393, -1, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, -1,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, -1, 480, -1, 482, 483, -1, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, -1, 502, -1, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, -1,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
558, 559, 560, 5, 6, 7, 8, 9, 10, 11,
12, -1, 14, 15, -1, -1, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, -1, 30, 31,
32, 33, 34, 35, 36, 37, 38, -1, 40, 41,
42, 43, 44, -1, -1, -1, 48, 49, -1, -1,
-1, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, 63, -1, 65, -1, 67, 68, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
-1, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, 139, 140, 141,
-1, 143, 144, 145, 146, -1, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, -1, 176, -1, -1, -1, 180, 181,
182, 183, 184, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, -1, 225, 226, 227, 228, -1, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
-1, -1, -1, 255, 256, -1, 258, 259, 260, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, -1, -1,
282, 283, 284, 285, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, -1, -1, -1, -1, 300, 301,
302, 303, 304, 305, -1, -1, 308, -1, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, -1, -1, 349, -1, 351,
352, 353, 354, -1, -1, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, -1, 375, 376, 377, -1, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
-1, 393, -1, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, -1, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, -1, 480, -1,
482, 483, -1, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, -1,
502, -1, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, -1, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 558, 559, 560, 5,
6, 7, 8, 9, 10, 11, 12, -1, 14, 15,
-1, -1, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, -1, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, 43, 44, -1,
-1, -1, 48, 49, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, -1, 65,
-1, 67, 68, 69, -1, -1, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, -1, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, 139, 140, 141, -1, 143, 144, 145,
146, -1, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, 160, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, -1,
176, -1, -1, -1, 180, 181, 182, 183, 184, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, -1, 225,
226, 227, 228, -1, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, -1, -1, -1, 255,
256, -1, 258, 259, 260, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, -1, -1, 282, 283, 284, 285,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
-1, -1, -1, -1, 300, 301, 302, 303, 304, 305,
-1, -1, 308, -1, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, -1, -1, 349, -1, 351, 352, 353, 354, -1,
-1, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, -1, 375,
376, 377, -1, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, -1, 393, -1, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, -1, 438, 439, 440, 441, 442, 443, 444, 445,
446, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, -1, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, -1, 502, -1, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 558, 559, 560, 5, 6, 7, 8, 9,
10, 11, 12, -1, 14, 15, -1, -1, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, -1,
40, 41, 42, 43, 44, -1, -1, -1, 48, 49,
-1, -1, -1, -1, 54, -1, -1, -1, -1, -1,
-1, -1, -1, 63, -1, 65, -1, 67, 68, 69,
-1, -1, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, -1, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, 139,
140, 141, -1, 143, 144, 145, 146, -1, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
160, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, -1, -1, -1, 176, -1, -1, -1,
180, 181, 182, 183, 184, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, -1, 225, 226, 227, 228, -1,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, -1, -1, -1, 255, 256, -1, 258, 259,
260, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
-1, -1, 282, 283, 284, 285, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, -1, -1, -1, -1,
300, 301, 302, 303, 304, 305, -1, -1, 308, -1,
310, 311, 312, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, -1, -1, 349,
-1, 351, 352, 353, 354, -1, -1, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, -1, 375, 376, 377, -1, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, -1, 393, -1, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, -1, 438, 439,
440, 441, 442, 443, 444, 445, 446, 447, -1, 449,
450, 451, 452, 453, -1, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, -1,
480, -1, 482, 483, -1, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, -1, 502, -1, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, -1, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 558, 559,
560, 5, 6, 7, 8, 9, 10, 11, 12, -1,
14, 15, -1, -1, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, -1, 30, 31, 32, 33,
34, 35, 36, 37, 38, -1, 40, 41, 42, 43,
44, -1, -1, -1, 48, 49, -1, -1, -1, -1,
54, -1, -1, -1, -1, -1, -1, -1, -1, 63,
-1, 65, -1, 67, 68, 69, -1, -1, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, -1, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, 139, 140, 141, -1, 143,
144, 145, 146, -1, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, 160, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, -1, 176, -1, -1, -1, 180, 181, 182, 183,
184, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
-1, 225, 226, 227, 228, -1, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, -1, -1,
-1, 255, 256, -1, 258, 259, 260, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, -1, -1, 282, 283,
284, 285, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, -1, -1, -1, -1, 300, 301, 302, 303,
304, 305, -1, -1, 308, -1, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, -1, -1, 349, -1, 351, 352, 353,
354, -1, -1, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
-1, 375, 376, 377, -1, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, -1, 393,
-1, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, -1, 438, 439, 440, 441, 442, 443,
444, 445, 446, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, -1, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, -1, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, -1, 502, -1,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, -1, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 558, 559, 560, 5, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, -1, 30, 31, 32, 33, 34, 35, 36, 37,
38, -1, 40, 41, 42, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, -1, -1, 124, -1, -1, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, -1, -1, 141, -1, 143, 144, 145, 146, -1,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, 184, 185, -1, -1,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, -1, 225, 226, 227,
228, -1, -1, 231, -1, 233, 234, 235, -1, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, -1, -1, -1, 255, 256, -1,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, -1, -1, 282, 283, 284, -1, -1, -1,
-1, -1, 290, 291, 292, 293, 294, 295, -1, -1,
-1, -1, 300, 301, 302, 303, 304, 305, -1, -1,
308, -1, 310, 311, 312, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, -1,
338, -1, 340, 341, 342, 343, 344, 345, 346, -1,
-1, 349, -1, 351, 352, 353, 354, -1, -1, 357,
-1, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, -1, 375, 376, 377,
-1, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, -1, 393, -1, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, -1, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, -1,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, -1,
458, 459, 460, 461, 462, -1, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, -1, 480, -1, 482, 483, -1, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, -1, -1, -1,
-1, 499, 500, -1, 502, -1, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, -1,
-1, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
133, 134, 135, 136, 137, 138, -1, 140, 141, 142,
143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
163, 164, 165, 166, 167, 168, 169, 170, 171, -1,
173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
183, -1, 185, 186, 187, 188, 189, 190, 191, 192,
193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
253, 254, 255, 256, 257, 258, 259, -1, 261, 262,
263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, -1, 282,
283, 284, -1, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
313, 314, 315, 316, 317, 318, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, -1, 331, 332,
-1, 334, 335, 336, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, 389, 390, 391, 392,
393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, -1, 447, 448, 449, 450, 451, 452,
453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
493, 494, 495, 496, -1, 498, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
-1, 514, 515, 516, 517, 518, 519, 520, 521, 522,
523, 524, 525, 526, -1, 528, 529, 530, 531, 532,
533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, -1, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
-1, -1, 150, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, 240, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, 514, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, 142,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, 161, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, 240, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, 312,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, 514, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
168, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, 250, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
448, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, 168, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, 250, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, 240, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, 514, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, 172,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
168, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
448, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, 176, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, 366, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, 485, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, 76, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, 240, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, 485, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, 168, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, 366, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, 485, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
13, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, 485, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, 76, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, 366, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, 520, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, 520, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, 70, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, 70, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, 366, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, 366, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, 72,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, 76, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, 81, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, 108, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
108, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, 189, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, -1, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
108, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, -1, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, 160, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, -1, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, -1, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, -1, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 6, 7, 8, 9, 10, 11, 12,
-1, 14, 15, -1, -1, 18, 19, 20, 21, 22,
23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
33, -1, -1, 36, 37, 38, -1, 40, -1, -1,
43, 44, -1, -1, -1, 48, 49, -1, -1, -1,
-1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
63, -1, 65, -1, 67, 68, 69, -1, -1, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, -1, 119, 120, 121, 122,
123, -1, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, 139, 140, 141, -1,
143, 144, 145, 146, 147, -1, -1, -1, 151, 152,
153, 154, 155, 156, -1, 158, 159, -1, -1, 162,
163, 164, 165, 166, 167, -1, -1, 170, 171, -1,
-1, -1, -1, -1, -1, -1, -1, 180, 181, 182,
183, 184, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
-1, -1, -1, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, 260, 261, 262,
-1, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, -1, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, -1, -1,
293, -1, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, -1, 311, -1,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, 336, 337, -1, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
-1, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, -1, 376, -1, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, -1, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, 446, 447, -1, 449, 450, 451, 452,
453, -1, 455, 456, 457, 458, 459, -1, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, -1, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, 527, 528, -1, 530, -1, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 558, 559, 560, 6, 7,
8, 9, 10, 11, 12, -1, 14, 15, -1, -1,
18, 19, 20, 21, 22, 23, -1, 25, 26, 27,
-1, -1, 30, 31, 32, 33, -1, -1, 36, 37,
38, -1, 40, -1, -1, 43, 44, -1, -1, -1,
48, 49, -1, -1, -1, -1, 54, -1, -1, -1,
-1, -1, -1, -1, -1, 63, -1, 65, -1, 67,
68, 69, -1, -1, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
-1, 119, 120, 121, 122, 123, -1, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, 139, 140, 141, -1, 143, 144, 145, 146, 147,
-1, -1, -1, 151, 152, 153, 154, 155, 156, -1,
158, 159, 160, -1, 162, 163, 164, 165, 166, 167,
-1, -1, 170, 171, -1, -1, -1, -1, -1, -1,
-1, -1, 180, 181, 182, 183, 184, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, -1, -1, -1, 246, 247,
248, 249, -1, 251, 252, -1, 254, -1, 256, -1,
258, 259, 260, 261, 262, -1, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, -1, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, -1, -1, 293, -1, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, -1, 311, -1, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
-1, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, -1, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, -1, 376, -1,
378, 379, 380, 381, 382, 383, 384, 385, -1, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, -1,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, -1, 432, 433, 434, 435, 436, 437,
-1, 439, 440, 441, 442, 443, 444, 445, 446, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, -1, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, -1,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, 527,
528, -1, 530, -1, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 69, 70, -1, -1, 73, -1, 75,
76, -1, -1, -1, -1, 81, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, -1, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, -1, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, -1,
176, -1, -1, -1, 180, 181, 182, 183, -1, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, -1, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, -1, 331, 332, -1, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, 365,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
-1, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, -1, 559, 560, -1, -1, 69, -1, -1,
-1, 73, -1, -1, -1, -1, -1, -1, 574, 575,
576, -1, -1, -1, -1, -1, -1, 583, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, 103, 104, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, -1, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, -1, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, -1, 176, -1, -1, -1, 180, 181,
182, 183, -1, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, -1, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, -1, 331,
332, -1, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, 353, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, -1, 447, 448, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, 485, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, 527, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, 540, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, -1, 559, 560, 561,
-1, -1, 564, -1, 69, -1, -1, -1, 73, -1,
-1, -1, -1, -1, -1, 80, -1, -1, 83, -1,
-1, 583, 87, 88, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
105, 106, -1, 108, 109, 110, 111, 112, 113, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
135, 136, 137, 138, -1, -1, 141, 142, 143, 144,
145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
165, 166, 167, -1, 169, 170, 171, 172, 173, 174,
175, 176, 177, 178, 179, 180, 181, 182, 183, -1,
185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
215, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, -1, -1, 234,
235, 236, 237, -1, 239, 240, 241, 242, 243, -1,
245, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, -1, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, -1, 288, -1, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, -1, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, -1, 331, 332, -1, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, 366, 367, 368, 369, 370, -1, 372, 373, 374,
375, -1, -1, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, 389, 390, 391, 392, 393, -1,
395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, -1, 447, 448, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, -1, 498, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, -1, 514,
515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
525, 526, 527, 528, 529, -1, 531, 532, 533, 534,
535, 536, -1, 538, -1, -1, -1, -1, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, -1, 559, 560, -1, 562, -1, -1,
-1, -1, -1, -1, -1, -1, 571, 572, 573, 574,
575, 576, 577, 578, 579, 69, 70, -1, -1, 73,
-1, 75, 76, -1, -1, -1, -1, 81, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, -1, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, -1, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, -1, 176, -1, -1, -1, 180, 181, 182, 183,
-1, 185, 186, 187, 188, 189, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, -1, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, -1, 331, 332, -1,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, 365, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, -1, 447, -1, 449, 450, 451, 452, 453,
-1, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, -1, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, -1, 559, 560, 69, 70, -1,
-1, 73, -1, 75, 76, -1, -1, -1, -1, 81,
574, 575, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, -1, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, -1, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, -1, 176, -1, -1, -1, 180, 181,
182, 183, -1, 185, 186, 187, 188, 189, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, -1, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, -1, 331,
332, -1, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, 353, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, 365, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, -1, 447, -1, 449, 450, 451,
452, 453, -1, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, -1, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, -1, 559, 560, 69,
70, -1, -1, 73, -1, 75, 76, -1, -1, -1,
-1, 81, 574, 575, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, -1,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
-1, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, -1, -1, -1, 176, -1, -1, -1,
180, 181, 182, 183, -1, 185, 186, 187, 188, 189,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
-1, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, -1, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
-1, 331, 332, -1, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, 353, 354, -1, 356, 357, 358, 359,
360, 361, -1, 363, 364, 365, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, -1, 447, -1, 449,
450, 451, 452, 453, -1, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, -1, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, -1, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, -1, 559,
560, 69, 70, -1, -1, 73, -1, 75, 76, -1,
-1, -1, -1, 81, 574, 575, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, -1, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, -1, -1, -1, 176, -1,
-1, -1, 180, 181, 182, 183, -1, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, -1, 254, 255, 256, -1,
258, 259, -1, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, -1, 331, 332, -1, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, 353, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, 365, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, -1, 447,
-1, 449, 450, 451, 452, 453, -1, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, -1,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
69, 559, 560, -1, 73, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 574, 575, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
-1, 100, 101, 102, 103, 104, -1, -1, -1, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, -1, -1, 137, 138,
-1, 140, 141, -1, 143, 144, 145, 146, 147, -1,
149, -1, 151, 152, 153, 154, 155, 156, 157, 158,
159, -1, -1, 162, 163, 164, 165, 166, 167, -1,
169, 170, 171, -1, -1, -1, -1, 176, -1, -1,
-1, 180, 181, 182, 183, -1, 185, 186, 187, 188,
-1, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, -1, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, 243, -1, 245, 246, 247, 248,
249, -1, 251, 252, -1, 254, 255, 256, -1, 258,
259, -1, 261, 262, 263, 264, 265, 266, 267, -1,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
279, 280, -1, 282, 283, 284, -1, 286, -1, 288,
-1, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, -1, -1, 308,
309, 310, 311, 312, -1, 314, 315, 316, -1, -1,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, -1, 331, 332, -1, 334, 335, 336, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, -1, 351, 352, 353, 354, -1, 356, 357, 358,
359, 360, 361, -1, 363, 364, -1, -1, 367, 368,
369, -1, -1, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, 392, 393, 394, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, -1, 447, -1,
449, 450, 451, 452, 453, -1, 455, 456, 457, 458,
459, 460, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, -1, 482, 483, -1, -1, 486, 487, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, 501, 502, 503, -1, 505, 506, 507, 508,
509, 510, 511, 512, -1, -1, 515, 516, 517, 518,
519, -1, -1, 522, 523, 524, 525, 526, -1, 528,
-1, 530, 531, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, -1,
559, 560, 561, 69, 70, -1, -1, 73, -1, -1,
76, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, -1, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, -1, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, 175,
176, -1, -1, 179, 180, 181, 182, 183, -1, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, -1, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, -1, 331, 332, -1, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
-1, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, 497, -1, 499, 500, 501, 502, 503, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, -1, 559, 560, 69, 70, -1, -1, 73,
-1, -1, 76, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, -1, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, -1, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, 175, 176, -1, -1, 179, 180, 181, 182, 183,
-1, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, -1, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, -1, 331, 332, -1,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, -1, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, -1, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 69, 559, 560, -1, 73, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, -1, -1,
-1, -1, -1, -1, -1, 110, 111, 112, -1, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
-1, -1, 137, 138, -1, 140, 141, -1, 143, 144,
145, 146, 147, -1, 149, -1, 151, 152, 153, 154,
155, 156, 157, 158, 159, -1, -1, 162, 163, 164,
165, 166, 167, -1, 169, 170, 171, -1, -1, -1,
175, 176, -1, -1, 179, 180, 181, 182, 183, -1,
185, 186, 187, 188, -1, 190, -1, 192, 193, 194,
195, 196, 197, 198, -1, 200, 201, 202, 203, -1,
-1, 206, 207, 208, 209, 210, -1, 212, 213, 214,
-1, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, -1, 231, -1, 233, 234,
235, 236, 237, -1, 239, -1, 241, 242, 243, -1,
245, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, -1, 261, 262, 263, 264,
265, 266, 267, -1, 269, 270, 271, 272, 273, 274,
275, 276, -1, 278, 279, 280, -1, 282, 283, 284,
-1, 286, -1, 288, -1, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, -1, -1, 308, 309, 310, 311, 312, -1, 314,
315, 316, -1, -1, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, -1, 331, 332, -1, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, -1, 351, 352, 353, 354,
-1, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, -1, 367, 368, 369, -1, -1, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, -1, 390, 391, 392, 393, 394,
395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, -1, 447, -1, 449, 450, 451, 452, 453, 454,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
-1, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, -1, 482, 483, -1,
-1, 486, 487, 488, 489, 490, 491, 492, -1, 494,
495, 496, -1, -1, 499, 500, 501, 502, 503, -1,
505, 506, 507, 508, 509, 510, 511, 512, -1, -1,
515, 516, 517, 518, 519, -1, -1, 522, 523, 524,
525, 526, -1, 528, -1, 530, 531, 532, 533, 534,
535, -1, -1, 538, -1, -1, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 69, 559, 560, -1, 73, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, 99, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, -1, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, -1, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, 175,
176, -1, -1, 179, 180, 181, 182, 183, -1, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, -1, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, -1, 331, 332, -1, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
-1, 447, -1, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 69, 559, 560, -1, 73, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
97, 98, -1, 100, 101, 102, -1, -1, -1, -1,
-1, -1, -1, 110, 111, 112, -1, 114, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
-1, 128, 129, 130, 131, 132, 133, 134, -1, -1,
137, 138, -1, 140, 141, -1, 143, 144, 145, 146,
147, -1, 149, -1, 151, 152, 153, 154, 155, 156,
157, 158, 159, -1, -1, 162, 163, 164, 165, 166,
167, -1, 169, 170, 171, -1, -1, -1, 175, 176,
-1, -1, 179, 180, 181, 182, 183, -1, 185, 186,
187, 188, -1, 190, -1, 192, 193, 194, 195, 196,
197, 198, -1, 200, 201, 202, 203, -1, -1, 206,
207, 208, 209, 210, -1, 212, 213, 214, -1, 216,
217, 218, -1, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, -1, 231, -1, 233, 234, 235, 236,
237, -1, 239, -1, 241, 242, 243, -1, 245, 246,
247, 248, 249, -1, 251, 252, -1, 254, 255, 256,
-1, 258, 259, -1, 261, 262, 263, 264, 265, 266,
267, -1, 269, 270, 271, 272, 273, 274, 275, 276,
-1, 278, 279, 280, -1, 282, 283, 284, -1, 286,
-1, 288, -1, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
-1, 308, 309, 310, 311, 312, -1, 314, 315, 316,
-1, -1, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, -1, 331, 332, -1, 334, 335, 336,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, 348, 349, -1, 351, 352, 353, 354, -1, 356,
357, 358, 359, 360, 361, -1, 363, 364, -1, -1,
367, 368, 369, -1, -1, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, -1, 390, 391, 392, 393, 394, 395, 396,
397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, -1, 429, 430, 431, 432, 433, 434, 435, 436,
437, 438, 439, 440, 441, 442, 443, 444, 445, -1,
447, -1, 449, 450, 451, 452, 453, 454, 455, 456,
457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, 479, 480, -1, 482, 483, -1, -1, 486,
487, 488, 489, 490, 491, 492, -1, 494, 495, 496,
-1, -1, 499, 500, 501, 502, 503, -1, 505, 506,
507, 508, 509, 510, 511, 512, -1, -1, 515, 516,
517, 518, 519, 520, -1, 522, 523, 524, 525, 526,
-1, 528, -1, 530, 531, 532, 533, 534, 535, -1,
-1, 538, -1, -1, 541, 542, 543, 544, 545, 546,
547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
557, 69, 559, 560, -1, 73, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
98, -1, 100, 101, 102, -1, -1, -1, -1, -1,
-1, -1, 110, 111, 112, -1, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
128, 129, 130, 131, 132, 133, 134, -1, -1, 137,
138, -1, 140, 141, -1, 143, 144, 145, 146, 147,
-1, 149, -1, 151, 152, 153, 154, 155, 156, 157,
158, 159, -1, -1, 162, 163, 164, 165, 166, 167,
-1, 169, 170, 171, -1, -1, -1, 175, 176, -1,
-1, 179, 180, 181, 182, 183, -1, 185, 186, 187,
188, -1, 190, -1, 192, 193, 194, 195, 196, 197,
198, -1, 200, 201, 202, 203, -1, -1, 206, 207,
208, 209, 210, -1, 212, 213, 214, -1, 216, 217,
218, -1, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, -1, 231, -1, 233, 234, 235, 236, 237,
-1, 239, -1, 241, 242, 243, -1, 245, 246, 247,
248, 249, -1, 251, 252, 253, 254, 255, 256, -1,
258, 259, -1, 261, 262, 263, 264, 265, 266, 267,
-1, 269, 270, 271, 272, 273, 274, 275, 276, -1,
278, 279, 280, -1, 282, 283, 284, -1, 286, -1,
288, -1, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, -1, -1,
308, 309, 310, 311, 312, -1, 314, 315, 316, -1,
-1, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, -1, 331, 332, -1, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, -1, 351, 352, 353, 354, -1, 356, 357,
358, 359, 360, 361, -1, 363, 364, -1, -1, 367,
368, 369, -1, -1, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, -1, 390, 391, 392, 393, 394, 395, 396, 397,
-1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
-1, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, -1, 447,
-1, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, -1, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, -1, 482, 483, -1, -1, 486, 487,
488, 489, 490, 491, 492, -1, 494, 495, 496, -1,
-1, 499, 500, 501, 502, 503, -1, 505, 506, 507,
508, 509, 510, 511, 512, -1, -1, 515, 516, 517,
518, 519, -1, -1, 522, 523, 524, 525, 526, -1,
528, -1, 530, 531, 532, 533, 534, 535, -1, -1,
538, -1, -1, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
69, 559, 560, -1, 73, -1, -1, 76, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 90, 91, 92, 93, 94, 95, 96, 97, 98,
-1, 100, 101, 102, -1, -1, -1, -1, -1, -1,
-1, 110, 111, 112, -1, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
129, 130, 131, 132, 133, 134, -1, -1, 137, 138,
-1, 140, 141, -1, 143, 144, 145, 146, 147, -1,
149, -1, 151, 152, 153, 154, 155, 156, 157, 158,
159, -1, -1, 162, 163, 164, 165, 166, 167, -1,
169, 170, 171, -1, -1, -1, -1, 176, -1, -1,
-1, 180, 181, 182, 183, -1, 185, 186, 187, 188,
-1, 190, -1, 192, 193, 194, 195, 196, 197, 198,
-1, 200, 201, 202, 203, -1, -1, 206, 207, 208,
209, 210, -1, 212, 213, 214, -1, 216, 217, 218,
-1, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, -1, 233, 234, 235, 236, 237, -1,
239, -1, 241, 242, 243, -1, 245, 246, 247, 248,
249, -1, 251, 252, -1, 254, 255, 256, -1, 258,
259, -1, 261, 262, 263, 264, 265, 266, 267, -1,
269, 270, 271, 272, 273, 274, 275, 276, -1, 278,
279, 280, -1, 282, 283, 284, -1, 286, -1, 288,
-1, 290, 291, 292, 293, 294, 295, 296, 297, 298,
299, 300, 301, 302, 303, 304, 305, -1, -1, 308,
309, 310, 311, 312, -1, 314, 315, 316, -1, -1,
319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
329, -1, 331, 332, -1, 334, 335, 336, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
349, -1, 351, 352, 353, 354, -1, 356, 357, 358,
359, 360, 361, -1, 363, 364, 365, -1, 367, 368,
369, -1, -1, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
-1, 390, 391, 392, 393, 394, 395, 396, 397, -1,
399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
419, 420, 421, 422, 423, 424, 425, 426, 427, -1,
429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
439, 440, 441, 442, 443, 444, 445, -1, 447, -1,
449, 450, 451, 452, 453, -1, 455, 456, 457, 458,
459, 460, 461, 462, 463, 464, -1, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, -1, 482, 483, -1, -1, 486, 487, 488,
489, 490, 491, 492, -1, 494, 495, 496, -1, -1,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, -1, -1, 515, 516, 517, 518,
519, -1, -1, 522, 523, 524, 525, 526, -1, 528,
-1, 530, 531, 532, 533, 534, 535, -1, -1, 538,
-1, -1, 541, 542, 543, 544, 545, 546, 547, 548,
549, 550, 551, 552, 553, 554, 555, 556, 557, 69,
559, 560, -1, 73, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
90, 91, 92, 93, 94, 95, 96, 97, 98, -1,
100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
130, 131, 132, 133, 134, -1, -1, 137, 138, -1,
140, 141, -1, 143, 144, 145, 146, 147, -1, 149,
-1, 151, 152, 153, 154, 155, 156, 157, 158, 159,
-1, -1, 162, 163, 164, 165, 166, 167, -1, 169,
170, 171, -1, -1, -1, 175, 176, -1, -1, 179,
180, 181, 182, 183, -1, 185, 186, 187, 188, -1,
190, -1, 192, 193, 194, 195, 196, 197, 198, -1,
200, 201, 202, 203, -1, -1, 206, 207, 208, 209,
210, -1, 212, 213, 214, -1, 216, 217, 218, -1,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
-1, 231, -1, 233, 234, 235, 236, 237, -1, 239,
-1, 241, 242, 243, -1, 245, 246, 247, 248, 249,
-1, 251, 252, -1, 254, 255, 256, -1, 258, 259,
-1, 261, 262, 263, 264, 265, 266, 267, -1, 269,
270, 271, 272, 273, 274, 275, 276, -1, 278, 279,
280, -1, 282, 283, 284, -1, 286, -1, 288, -1,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
300, 301, 302, 303, 304, 305, -1, -1, 308, 309,
310, 311, 312, -1, 314, 315, 316, -1, -1, 319,
320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
-1, 331, 332, -1, 334, 335, 336, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
-1, 351, 352, 353, 354, -1, 356, 357, 358, 359,
360, 361, -1, 363, 364, -1, -1, 367, 368, 369,
-1, -1, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, -1,
390, 391, 392, 393, 394, 395, 396, 397, -1, 399,
400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, -1, 429,
430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
440, 441, 442, 443, 444, 445, -1, 447, -1, 449,
450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
460, 461, 462, 463, 464, -1, 466, 467, 468, 469,
470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
480, -1, 482, 483, -1, -1, 486, 487, 488, 489,
490, 491, 492, -1, 494, 495, 496, -1, -1, 499,
500, 501, 502, 503, -1, 505, 506, 507, 508, 509,
510, 511, 512, -1, -1, 515, 516, 517, 518, 519,
-1, -1, 522, 523, 524, 525, 526, -1, 528, -1,
530, 531, 532, 533, 534, 535, -1, -1, 538, -1,
-1, 541, 542, 543, 544, 545, 546, 547, 548, 549,
550, 551, 552, 553, 554, 555, 556, 557, 69, 559,
560, -1, 73, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 90,
91, 92, 93, 94, 95, 96, 97, 98, -1, 100,
101, 102, -1, -1, -1, -1, -1, -1, -1, 110,
111, 112, -1, 114, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
131, 132, 133, 134, -1, -1, 137, 138, -1, 140,
141, -1, 143, 144, 145, 146, 147, -1, 149, -1,
151, 152, 153, 154, 155, 156, 157, 158, 159, -1,
-1, 162, 163, 164, 165, 166, 167, -1, 169, 170,
171, -1, -1, -1, 175, 176, -1, -1, 179, 180,
181, 182, 183, -1, 185, 186, 187, 188, -1, 190,
-1, 192, 193, 194, 195, 196, 197, 198, -1, 200,
201, 202, 203, -1, -1, 206, 207, 208, 209, 210,
-1, 212, 213, 214, -1, 216, 217, 218, -1, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, -1,
231, -1, 233, 234, 235, 236, 237, -1, 239, -1,
241, 242, 243, -1, 245, 246, 247, 248, 249, -1,
251, 252, -1, 254, 255, 256, -1, 258, 259, -1,
261, 262, 263, 264, 265, 266, 267, -1, 269, 270,
271, 272, 273, 274, 275, 276, -1, 278, 279, 280,
-1, 282, 283, 284, -1, 286, -1, 288, -1, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
301, 302, 303, 304, 305, -1, -1, 308, 309, 310,
311, 312, -1, 314, 315, 316, -1, -1, 319, 320,
321, 322, 323, 324, 325, 326, 327, 328, 329, -1,
331, 332, -1, 334, 335, 336, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, 348, 349, -1,
351, 352, 353, 354, -1, 356, 357, 358, 359, 360,
361, -1, 363, 364, -1, -1, 367, 368, 369, -1,
-1, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, -1, 390,
391, 392, 393, 394, 395, 396, 397, -1, 399, 400,
401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
421, 422, 423, 424, 425, 426, 427, -1, 429, 430,
431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
441, 442, 443, 444, 445, -1, 447, -1, 449, 450,
451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
461, 462, 463, 464, -1, 466, 467, 468, 469, 470,
471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
-1, 482, 483, -1, -1, 486, 487, 488, 489, 490,
491, 492, -1, 494, 495, 496, -1, -1, 499, 500,
501, 502, 503, -1, 505, 506, 507, 508, 509, 510,
511, 512, -1, -1, 515, 516, 517, 518, 519, -1,
-1, 522, 523, 524, 525, 526, -1, 528, -1, 530,
531, 532, 533, 534, 535, -1, -1, 538, -1, -1,
541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
551, 552, 553, 554, 555, 556, 557, 69, 559, 560,
-1, 73, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 90, 91,
92, 93, 94, 95, 96, 97, 98, -1, 100, 101,
102, -1, -1, -1, -1, -1, -1, -1, 110, 111,
112, -1, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
132, 133, 134, -1, -1, 137, 138, -1, 140, 141,
-1, 143, 144, 145, 146, 147, -1, 149, -1, 151,
152, 153, 154, 155, 156, 157, 158, 159, -1, -1,
162, 163, 164, 165, 166, 167, -1, 169, 170, 171,
-1, -1, -1, 175, 176, -1, -1, 179, 180, 181,
182, 183, -1, 185, 186, 187, 188, -1, 190, -1,
192, 193, 194, 195, 196, 197, 198, -1, 200, 201,
202, 203, -1, -1, 206, 207, 208, 209, 210, -1,
212, 213, 214, -1, 216, 217, 218, -1, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, -1, 231,
-1, 233, 234, 235, 236, 237, -1, 239, -1, 241,
242, 243, -1, 245, 246, 247, 248, 249, -1, 251,
252, -1, 254, 255, 256, -1, 258, 259, -1, 261,
262, 263, 264, 265, 266, 267, -1, 269, 270, 271,
272, 273, 274, 275, 276, -1, 278, 279, 280, -1,
282, 283, 284, -1, 286, -1, 288, -1, 290, 291,
292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
302, 303, 304, 305, -1, -1, 308, 309, 310, 311,
312, -1, 314, 315, 316, -1, -1, 319, 320, 321,
322, 323, 324, 325, 326, 327, 328, 329, -1, 331,
332, -1, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
352, 353, 354, -1, 356, 357, 358, 359, 360, 361,
-1, 363, 364, -1, -1, 367, 368, 369, -1, -1,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, -1, 390, 391,
392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, -1, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, -1, 447, -1, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, -1, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, -1,
482, 483, -1, -1, 486, 487, 488, 489, 490, 491,
492, -1, 494, 495, 496, -1, -1, 499, 500, 501,
502, 503, -1, 505, 506, 507, 508, 509, 510, 511,
512, -1, -1, 515, 516, 517, 518, 519, -1, -1,
522, 523, 524, 525, 526, -1, 528, -1, 530, 531,
532, 533, 534, 535, -1, -1, 538, -1, -1, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 69, 559, 560, -1,
73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 98, -1, 100, 101, 102,
-1, -1, -1, -1, -1, -1, -1, 110, 111, 112,
-1, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
133, 134, -1, -1, 137, 138, -1, 140, 141, -1,
143, 144, 145, 146, 147, -1, 149, -1, 151, 152,
153, 154, 155, 156, 157, 158, 159, -1, -1, 162,
163, 164, 165, 166, 167, -1, 169, 170, 171, -1,
-1, -1, 175, 176, -1, -1, 179, 180, 181, 182,
183, -1, 185, 186, 187, 188, -1, 190, -1, 192,
193, 194, 195, 196, 197, 198, -1, 200, 201, 202,
203, -1, -1, 206, 207, 208, 209, 210, -1, 212,
213, 214, -1, 216, 217, 218, -1, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, -1, 231, -1,
233, 234, 235, 236, 237, -1, 239, -1, 241, 242,
243, -1, 245, 246, 247, 248, 249, -1, 251, 252,
-1, 254, 255, 256, -1, 258, 259, -1, 261, 262,
263, 264, 265, 266, 267, -1, 269, 270, 271, 272,
273, 274, 275, 276, -1, 278, 279, 280, -1, 282,
283, 284, -1, 286, -1, 288, -1, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 305, -1, -1, 308, 309, 310, 311, 312,
-1, 314, 315, 316, -1, -1, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, -1, 331, 332,
-1, 334, 335, 336, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, 348, 349, -1, 351, 352,
353, 354, -1, 356, 357, 358, 359, 360, 361, -1,
363, 364, -1, -1, 367, 368, 369, -1, -1, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, -1, 390, 391, 392,
393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
423, 424, 425, 426, 427, -1, 429, 430, 431, 432,
433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
443, 444, 445, -1, 447, -1, 449, 450, 451, 452,
453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
463, 464, -1, 466, 467, 468, 469, 470, 471, 472,
473, 474, 475, 476, 477, 478, 479, 480, -1, 482,
483, -1, -1, 486, 487, 488, 489, 490, 491, 492,
-1, 494, 495, 496, -1, -1, 499, 500, 501, 502,
503, -1, 505, 506, 507, 508, 509, 510, 511, 512,
-1, -1, 515, 516, 517, 518, 519, -1, -1, 522,
523, 524, 525, 526, -1, 528, -1, 530, 531, 532,
533, 534, 535, -1, -1, 538, -1, -1, 541, 542,
543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
553, 554, 555, 556, 557, 69, 559, 560, -1, 73,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 90, 91, 92, 93,
94, 95, 96, 97, 98, -1, 100, 101, 102, -1,
-1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
134, -1, -1, 137, 138, -1, 140, 141, -1, 143,
144, 145, 146, 147, -1, 149, -1, 151, 152, 153,
154, 155, 156, 157, 158, 159, -1, -1, 162, 163,
164, 165, 166, 167, -1, 169, 170, 171, -1, -1,
-1, 175, 176, -1, -1, 179, 180, 181, 182, 183,
-1, 185, 186, 187, 188, -1, 190, -1, 192, 193,
194, 195, 196, 197, 198, -1, 200, 201, 202, 203,
-1, -1, 206, 207, 208, 209, 210, -1, 212, 213,
214, -1, 216, 217, 218, -1, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, -1, 231, -1, 233,
234, 235, 236, 237, -1, 239, -1, 241, 242, 243,
-1, 245, 246, 247, 248, 249, -1, 251, 252, -1,
254, 255, 256, -1, 258, 259, -1, 261, 262, 263,
264, 265, 266, 267, -1, 269, 270, 271, 272, 273,
274, 275, 276, -1, 278, 279, 280, -1, 282, 283,
284, -1, 286, -1, 288, -1, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
304, 305, -1, -1, 308, 309, 310, 311, 312, -1,
314, 315, 316, -1, -1, 319, 320, 321, 322, 323,
324, 325, 326, 327, 328, 329, -1, 331, 332, -1,
334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, 348, 349, -1, 351, 352, 353,
354, -1, 356, 357, 358, 359, 360, 361, -1, 363,
364, -1, -1, 367, 368, 369, -1, -1, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, -1, 390, 391, 392, 393,
394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
-1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, -1, 429, 430, 431, 432, 433,
434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
444, 445, -1, 447, -1, 449, 450, 451, 452, 453,
454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
464, -1, 466, 467, 468, 469, 470, 471, 472, 473,
474, 475, 476, 477, 478, 479, 480, -1, 482, 483,
-1, -1, 486, 487, 488, 489, 490, 491, 492, -1,
494, 495, 496, -1, -1, 499, 500, 501, 502, 503,
-1, 505, 506, 507, 508, 509, 510, 511, 512, -1,
-1, 515, 516, 517, 518, 519, -1, -1, 522, 523,
524, 525, 526, -1, 528, -1, 530, 531, 532, 533,
534, 535, -1, -1, 538, -1, -1, 541, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 69, 559, 560, -1, 73, -1,
-1, 76, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 90, 91, 92, 93, 94,
95, 96, 97, 98, -1, 100, 101, 102, -1, -1,
-1, -1, -1, -1, -1, 110, 111, 112, -1, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
-1, -1, 137, 138, -1, 140, 141, -1, 143, 144,
145, 146, 147, -1, 149, -1, 151, 152, 153, 154,
155, 156, 157, 158, 159, -1, -1, 162, 163, 164,
165, 166, 167, -1, 169, 170, 171, -1, -1, -1,
-1, 176, -1, -1, -1, 180, 181, 182, 183, -1,
185, 186, 187, 188, 189, 190, -1, 192, 193, 194,
195, 196, 197, 198, -1, 200, 201, 202, 203, -1,
-1, 206, 207, 208, 209, 210, -1, 212, 213, 214,
-1, 216, 217, 218, -1, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, -1, 231, -1, 233, 234,
235, 236, 237, -1, 239, -1, 241, 242, 243, -1,
245, 246, 247, 248, 249, -1, 251, 252, -1, 254,
255, 256, -1, 258, 259, -1, 261, 262, 263, 264,
265, 266, 267, -1, 269, 270, 271, 272, 273, 274,
275, 276, -1, 278, 279, 280, -1, 282, 283, 284,
-1, 286, -1, 288, -1, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, -1, -1, 308, 309, 310, 311, 312, -1, 314,
315, 316, -1, -1, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, -1, 331, 332, -1, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, -1, 351, 352, 353, 354,
-1, 356, 357, 358, 359, 360, 361, -1, 363, 364,
-1, -1, 367, 368, 369, -1, -1, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, -1, 390, 391, 392, 393, 394,
395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, -1, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, -1, 447, -1, 449, 450, 451, 452, 453, -1,
455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
-1, 466, 467, 468, 469, 470, 471, 472, 473, 474,
475, 476, 477, 478, 479, 480, -1, 482, 483, -1,
-1, 486, 487, 488, 489, 490, 491, 492, -1, 494,
495, 496, -1, -1, 499, 500, 501, 502, 503, -1,
505, 506, 507, 508, 509, 510, 511, 512, -1, -1,
515, 516, 517, 518, 519, -1, -1, 522, 523, 524,
525, 526, -1, 528, -1, 530, 531, 532, 533, 534,
535, -1, -1, 538, -1, -1, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 69, 559, 560, -1, 73, -1, -1,
76, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 90, 91, 92, 93, 94, 95,
96, 97, 98, -1, 100, 101, 102, -1, -1, -1,
-1, -1, -1, -1, 110, 111, 112, -1, 114, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, -1, 128, 129, 130, 131, 132, 133, 134, -1,
-1, 137, 138, -1, 140, 141, -1, 143, 144, 145,
146, 147, -1, 149, -1, 151, 152, 153, 154, 155,
156, 157, 158, 159, -1, -1, 162, 163, 164, 165,
166, 167, -1, 169, 170, 171, -1, -1, -1, -1,
176, -1, -1, -1, 180, 181, 182, 183, -1, 185,
186, 187, 188, -1, 190, -1, 192, 193, 194, 195,
196, 197, 198, -1, 200, 201, 202, 203, -1, -1,
206, 207, 208, 209, 210, -1, 212, 213, 214, -1,
216, 217, 218, -1, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, -1, 231, -1, 233, 234, 235,
236, 237, -1, 239, -1, 241, 242, 243, -1, 245,
246, 247, 248, 249, -1, 251, 252, -1, 254, 255,
256, -1, 258, 259, -1, 261, 262, 263, 264, 265,
266, 267, -1, 269, 270, 271, 272, 273, 274, 275,
276, -1, 278, 279, 280, -1, 282, 283, 284, -1,
286, -1, 288, -1, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
-1, -1, 308, 309, 310, 311, 312, -1, 314, 315,
316, -1, -1, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, -1, 331, 332, -1, 334, 335,
336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, 348, 349, -1, 351, 352, 353, 354, -1,
356, 357, 358, 359, 360, 361, -1, 363, 364, -1,
-1, 367, 368, 369, -1, -1, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, -1, 390, 391, 392, 393, 394, 395,
396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
426, 427, -1, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
-1, 447, -1, 449, 450, 451, 452, 453, -1, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, -1,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, -1, 482, 483, -1, -1,
486, 487, 488, 489, 490, 491, 492, -1, 494, 495,
496, -1, -1, 499, 500, 501, 502, 503, -1, 505,
506, 507, 508, 509, 510, 511, 512, -1, -1, 515,
516, 517, 518, 519, -1, -1, 522, 523, 524, 525,
526, -1, 528, -1, 530, 531, 532, 533, 534, 535,
-1, -1, 538, -1, -1, 541, 542, 543, 544, 545,
546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
556, 557, 69, 559, 560, -1, 73, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
97, 98, -1, 100, 101, 102, -1, -1, -1, -1,
-1, -1, -1, 110, 111, 112, -1, 114, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
-1, 128, 129, 130, 131, 132, 133, 134, -1, -1,
137, 138, -1, 140, 141, -1, 143, 144, 145, 146,
147, -1, 149, -1, 151, 152, 153, 154, 155, 156,
157, 158, 159, -1, -1, 162, 163, 164, 165, 166,
167, -1, 169, 170, 171, -1, -1, -1, -1, 176,
-1, -1, -1, 180, 181, 182, 183, -1, 185, 186,
187, 188, -1, 190, -1, 192, 193, 194, 195, 196,
197, 198, -1, 200, 201, 202, 203, -1, -1, 206,
207, 208, 209, 210, -1, 212, 213, 214, -1, 216,
217, 218, -1, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, -1, 231, -1, 233, 234, 235, 236,
237, -1, 239, -1, 241, 242, 243, -1, 245, 246,
247, 248, 249, -1, 251, 252, -1, 254, 255, 256,
-1, 258, 259, -1, 261, 262, 263, 264, 265, 266,
267, -1, 269, 270, 271, 272, 273, 274, 275, 276,
-1, 278, 279, 280, -1, 282, 283, 284, -1, 286,
-1, 288, -1, 290, 291, 292, 293, 294, 295, 296,
297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
-1, 308, 309, 310, 311, 312, -1, 314, 315, 316,
-1, -1, 319, 320, 321, 322, 323, 324, 325, 326,
327, 328, 329, -1, 331, 332, -1, 334, 335, 336,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, 348, 349, -1, 351, 352, 353, 354, -1, 356,
357, 358, 359, 360, 361, -1, 363, 364, -1, -1,
367, 368, 369, -1, -1, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, -1, 390, 391, 392, 393, 394, 395, 396,
397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
427, -1, 429, 430, 431, 432, 433, 434, 435, 436,
437, 438, 439, 440, 441, 442, 443, 444, 445, -1,
447, -1, 449, 450, 451, 452, 453, -1, 455, 456,
457, 458, 459, 460, 461, 462, 463, 464, -1, 466,
467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
477, 478, 479, 480, -1, 482, 483, -1, -1, 486,
487, 488, 489, 490, 491, 492, -1, 494, 495, 496,
-1, -1, 499, 500, 501, 502, 503, -1, 505, 506,
507, 508, 509, 510, 511, 512, -1, -1, 515, 516,
517, 518, 519, -1, -1, 522, 523, 524, 525, 526,
-1, 528, -1, 530, 531, 532, 533, 534, 535, -1,
-1, 538, -1, -1, 541, 542, 543, 544, 545, 546,
547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
557, -1, 559, 560
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_int16 yystos[] =
{
0, 592, 1285, 0, 5, 24, 34, 35, 39, 41,
42, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 68, 69, 71, 73, 75, 76,
81, 139, 216, 236, 260, 285, 330, 333, 355, 446,
497, 513, 528, 558, 573, 574, 575, 576, 577, 578,
581, 582, 583, 584, 586, 587, 588, 589, 590, 1273,
1286, 1316, 1318, 1408, 1418, 1419, 1421, 1427, 1428, 1317,
3, 8, 12, 14, 16, 17, 27, 35, 41, 42,
43, 44, 48, 49, 54, 63, 65, 67, 68, 73,
90, 101, 103, 104, 115, 121, 131, 143, 145, 146,
152, 154, 166, 168, 183, 185, 187, 188, 203, 205,
209, 215, 216, 223, 225, 232, 236, 250, 267, 288,
314, 315, 320, 334, 352, 358, 396, 410, 416, 417,
419, 424, 430, 433, 440, 447, 448, 455, 459, 469,
485, 496, 505, 507, 513, 516, 522, 527, 528, 540,
564, 583, 593, 594, 599, 600, 606, 607, 609, 610,
611, 612, 614, 617, 629, 634, 635, 638, 639, 640,
658, 661, 662, 677, 726, 729, 732, 735, 736, 737,
745, 752, 754, 755, 758, 761, 762, 766, 775, 779,
780, 781, 784, 786, 787, 788, 789, 797, 799, 819,
823, 825, 826, 836, 838, 845, 846, 849, 850, 851,
852, 853, 862, 864, 866, 869, 873, 874, 884, 885,
890, 895, 906, 938, 941, 942, 943, 948, 951, 953,
955, 957, 958, 962, 963, 966, 968, 969, 973, 974,
975, 978, 979, 980, 981, 982, 989, 991, 992, 993,
994, 1000, 1002, 1003, 1009, 1010, 1011, 1014, 1015, 1016,
1017, 1019, 1020, 1022, 1023, 1025, 1026, 1028, 1040, 1042,
1045, 1047, 1056, 1058, 1063, 1068, 1076, 1080, 1081, 1082,
1083, 1084, 1085, 1091, 1126, 1287, 1290, 1291, 1308, 1309,
1310, 1311, 1312, 1323, 1325, 1329, 1330, 1331, 1332, 1333,
1335, 1337, 1339, 1340, 1341, 1342, 1344, 1349, 1350, 1354,
1355, 1364, 1366, 1367, 1368, 1371, 1376, 1379, 1384, 1386,
1387, 1390, 1392, 1429, 71, 1312, 1320, 1321, 13, 70,
90, 91, 92, 93, 94, 95, 96, 97, 98, 100,
101, 102, 110, 111, 112, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 128, 129,
130, 131, 132, 133, 134, 137, 138, 140, 141, 143,
144, 145, 146, 147, 149, 151, 152, 153, 154, 155,
156, 157, 158, 159, 162, 163, 164, 165, 166, 167,
169, 170, 171, 175, 176, 179, 180, 181, 182, 183,
185, 186, 187, 188, 190, 192, 193, 194, 195, 196,
197, 198, 200, 201, 202, 203, 206, 207, 208, 209,
210, 212, 213, 214, 216, 217, 218, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 231, 233, 234,
235, 236, 237, 239, 241, 242, 243, 245, 246, 247,
248, 249, 251, 252, 254, 255, 256, 258, 259, 261,
262, 263, 264, 265, 266, 267, 269, 270, 271, 272,
273, 274, 275, 276, 278, 279, 280, 282, 283, 284,
286, 288, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, 308, 309,
310, 311, 312, 314, 315, 316, 319, 320, 321, 322,
323, 324, 325, 326, 327, 328, 329, 331, 332, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 351, 352, 353, 354, 356,
357, 358, 359, 360, 361, 363, 364, 367, 368, 369,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 390, 391, 392,
393, 394, 395, 396, 397, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
425, 426, 427, 429, 430, 431, 432, 433, 434, 435,
436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
447, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, 466, 467, 468,
469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
479, 480, 482, 483, 486, 487, 488, 489, 490, 491,
492, 494, 495, 496, 497, 499, 500, 501, 502, 503,
505, 506, 507, 508, 509, 510, 511, 512, 515, 516,
517, 518, 519, 522, 523, 524, 525, 526, 528, 530,
531, 532, 533, 534, 535, 538, 541, 542, 543, 544,
545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
555, 556, 557, 559, 560, 1275, 1276, 1278, 1280, 1281,
1282, 1301, 1302, 1413, 1415, 1419, 1421, 28, 281, 1365,
6, 7, 8, 9, 10, 11, 12, 14, 15, 18,
19, 20, 21, 22, 23, 25, 26, 27, 30, 31,
32, 33, 36, 37, 38, 40, 43, 44, 48, 49,
54, 63, 65, 67, 68, 99, 139, 160, 172, 184,
189, 260, 330, 333, 446, 527, 558, 1268, 1280, 1281,
1303, 1351, 1352, 1394, 1395, 1396, 1400, 1404, 1405, 1406,
1415, 1421, 99, 1077, 1268, 1303, 1412, 13, 1077, 5,
24, 28, 34, 35, 41, 42, 99, 103, 104, 105,
106, 107, 108, 109, 113, 127, 135, 136, 139, 142,
148, 150, 160, 161, 168, 172, 173, 174, 175, 177,
178, 179, 189, 191, 199, 204, 205, 211, 215, 219,
230, 232, 238, 240, 244, 250, 253, 257, 268, 277,
281, 285, 287, 289, 306, 307, 313, 317, 318, 350,
355, 362, 365, 366, 370, 371, 389, 398, 414, 428,
448, 454, 465, 481, 484, 485, 493, 497, 498, 504,
513, 514, 520, 521, 527, 529, 536, 537, 539, 540,
1280, 1281, 1282, 1283, 1395, 1396, 1397, 1398, 1402, 1403,
1404, 1406, 1421, 24, 34, 139, 285, 1391, 36, 38,
350, 1324, 184, 260, 330, 333, 446, 558, 583, 1182,
1183, 1315, 499, 543, 995, 98, 149, 165, 183, 189,
207, 218, 227, 240, 246, 253, 273, 304, 326, 367,
391, 401, 402, 405, 432, 435, 439, 442, 449, 452,
471, 478, 483, 485, 488, 492, 502, 507, 520, 533,
751, 1352, 188, 995, 1187, 1271, 1282, 1394, 1397, 1400,
1401, 1404, 1405, 1421, 99, 1077, 531, 583, 1033, 365,
397, 995, 124, 583, 669, 93, 111, 136, 149, 183,
189, 207, 218, 227, 240, 249, 253, 316, 367, 370,
391, 405, 432, 442, 452, 471, 478, 488, 489, 491,
492, 507, 514, 517, 520, 678, 734, 841, 896, 907,
1268, 1292, 1293, 1294, 1303, 1419, 1421, 13, 99, 396,
1268, 1303, 1307, 583, 470, 1077, 1268, 1303, 1307, 99,
390, 450, 489, 491, 303, 949, 950, 1419, 93, 98,
136, 149, 165, 183, 207, 218, 227, 240, 246, 253,
273, 326, 367, 380, 391, 402, 405, 432, 435, 439,
442, 449, 452, 471, 478, 485, 488, 492, 500, 502,
507, 520, 533, 751, 854, 856, 857, 995, 589, 1334,
1398, 264, 1307, 168, 188, 223, 531, 583, 732, 735,
1028, 1041, 1045, 1047, 1056, 1063, 1068, 1076, 1080, 1287,
92, 99, 119, 235, 242, 244, 268, 305, 341, 399,
418, 574, 575, 870, 871, 1077, 1273, 1274, 1413, 1415,
99, 101, 168, 414, 448, 875, 876, 877, 1400, 240,
1315, 1400, 1270, 1419, 485, 1094, 119, 242, 870, 1400,
583, 499, 1307, 380, 326, 583, 961, 440, 1400, 99,
139, 453, 495, 499, 527, 621, 630, 631, 1280, 1281,
1394, 1399, 1404, 1406, 1421, 250, 875, 876, 1400, 397,
995, 1400, 302, 99, 204, 1096, 1097, 4, 13, 137,
160, 162, 316, 336, 432, 442, 453, 495, 499, 546,
618, 619, 620, 621, 99, 453, 495, 499, 621, 499,
366, 1138, 1139, 1266, 1400, 1094, 1388, 1398, 576, 1400,
245, 583, 1034, 583, 412, 1086, 1087, 1268, 1086, 1081,
1082, 1085, 587, 583, 1033, 219, 287, 371, 513, 1098,
1099, 1081, 1083, 1084, 194, 283, 328, 519, 586, 121,
593, 1332, 1335, 1331, 1327, 587, 1336, 1338, 5, 24,
34, 139, 208, 285, 1343, 1319, 1408, 71, 1312, 1268,
1303, 1422, 189, 1292, 20, 521, 577, 1307, 1307, 1422,
521, 1356, 1357, 1358, 24, 285, 285, 1402, 18, 19,
37, 40, 131, 164, 205, 1393, 1393, 15, 1332, 497,
497, 497, 497, 583, 497, 574, 575, 743, 1274, 1313,
1418, 105, 999, 923, 1271, 859, 1400, 859, 1268, 400,
859, 502, 1268, 182, 485, 911, 1271, 1282, 1400, 1275,
1276, 99, 262, 1266, 359, 533, 80, 87, 88, 89,
144, 231, 571, 572, 573, 574, 575, 576, 577, 578,
579, 945, 947, 1218, 1219, 1400, 262, 1268, 911, 1268,
99, 1275, 1276, 911, 1268, 1268, 262, 1266, 1268, 262,
859, 1268, 424, 455, 99, 262, 1138, 1268, 445, 1268,
859, 99, 323, 1275, 1276, 262, 1266, 303, 33, 191,
293, 350, 408, 996, 997, 998, 583, 581, 585, 1244,
1246, 561, 1027, 1028, 1029, 1030, 1278, 1266, 1268, 1400,
98, 136, 150, 161, 183, 207, 246, 273, 304, 367,
402, 432, 435, 478, 488, 500, 507, 854, 855, 856,
857, 1419, 999, 1044, 1047, 1056, 1063, 1068, 1080, 1266,
329, 859, 583, 262, 859, 1268, 859, 502, 262, 1268,
182, 485, 489, 491, 1275, 489, 491, 144, 231, 945,
422, 1268, 1268, 1275, 262, 595, 1400, 262, 1268, 262,
596, 859, 1268, 1268, 445, 859, 323, 1275, 412, 449,
485, 533, 326, 165, 273, 98, 161, 246, 402, 439,
500, 502, 506, 746, 80, 1295, 1296, 588, 1415, 1422,
99, 1307, 1313, 1421, 1078, 470, 628, 1278, 1419, 950,
329, 262, 923, 924, 262, 954, 262, 1268, 123, 125,
126, 139, 140, 186, 187, 208, 236, 262, 285, 286,
288, 337, 339, 358, 409, 457, 463, 495, 496, 528,
861, 1161, 1163, 1165, 1167, 1169, 1171, 1172, 1173, 1175,
1176, 1177, 1179, 1180, 1394, 1401, 1404, 1405, 1421, 502,
182, 485, 262, 910, 911, 262, 1276, 1277, 157, 533,
144, 231, 262, 946, 947, 129, 262, 910, 262, 1277,
262, 910, 262, 1268, 262, 1268, 445, 954, 262, 861,
262, 323, 1277, 303, 262, 858, 859, 262, 1267, 1268,
262, 1268, 999, 583, 589, 1423, 1424, 1425, 1426, 1428,
1334, 69, 1303, 1353, 583, 1046, 678, 1077, 1041, 1027,
1033, 1274, 871, 872, 99, 871, 1077, 1274, 872, 99,
871, 1077, 1274, 872, 872, 872, 1274, 1273, 1273, 289,
521, 1358, 1359, 1432, 1434, 1077, 872, 400, 583, 483,
583, 703, 703, 703, 365, 497, 586, 703, 442, 1138,
1140, 871, 1077, 871, 1077, 586, 990, 1313, 1419, 244,
583, 1043, 129, 533, 1027, 183, 273, 442, 483, 485,
959, 960, 1400, 118, 560, 293, 585, 368, 365, 244,
368, 1419, 497, 999, 238, 867, 365, 78, 79, 80,
82, 107, 123, 125, 126, 135, 136, 139, 140, 147,
149, 173, 174, 175, 176, 177, 178, 179, 186, 187,
189, 224, 229, 230, 236, 252, 254, 286, 288, 296,
297, 298, 299, 309, 317, 318, 337, 339, 348, 350,
355, 356, 358, 367, 378, 392, 409, 437, 454, 463,
479, 484, 495, 496, 501, 503, 504, 514, 520, 528,
548, 549, 550, 551, 553, 554, 555, 556, 562, 574,
575, 576, 583, 1081, 1164, 1167, 1170, 1171, 1172, 1174,
1175, 1176, 1179, 1180, 1184, 1186, 1187, 1188, 1190, 1214,
1215, 1216, 1220, 1238, 1243, 1260, 1263, 1264, 1271, 1272,
1273, 1400, 1411, 1413, 1415, 1416, 1417, 1418, 1419, 1420,
1262, 1263, 497, 573, 1422, 1419, 497, 573, 1352, 99,
636, 1265, 1266, 453, 618, 189, 627, 1419, 628, 1419,
118, 141, 618, 560, 464, 997, 368, 244, 497, 573,
118, 560, 293, 1432, 998, 583, 1266, 576, 1246, 1140,
1403, 1027, 243, 1035, 1184, 1223, 1086, 586, 583, 1036,
584, 584, 1027, 1037, 1038, 1039, 1266, 99, 204, 1095,
1095, 129, 1095, 232, 238, 313, 362, 1102, 1104, 1105,
1120, 1122, 1123, 1124, 1098, 1099, 244, 289, 289, 1138,
1141, 583, 587, 1326, 576, 1345, 1346, 1348, 589, 589,
24, 285, 285, 215, 108, 1299, 129, 1302, 1302, 289,
1358, 1360, 289, 1358, 1359, 1360, 526, 1369, 1370, 1415,
13, 466, 574, 575, 1273, 1361, 1362, 1363, 1411, 1413,
1417, 1418, 1419, 1420, 285, 291, 497, 1268, 1268, 6,
164, 1268, 1393, 1348, 184, 260, 330, 1183, 330, 1183,
1183, 333, 1273, 330, 333, 446, 1418, 1418, 586, 1314,
138, 346, 381, 420, 455, 583, 921, 381, 416, 420,
455, 585, 860, 381, 420, 455, 160, 213, 319, 381,
416, 420, 455, 488, 490, 540, 629, 632, 1004, 1005,
1006, 1007, 1421, 891, 95, 209, 381, 420, 455, 524,
645, 1268, 95, 209, 455, 519, 613, 544, 262, 1138,
132, 167, 228, 265, 308, 346, 350, 381, 382, 420,
429, 438, 447, 455, 467, 476, 480, 535, 629, 633,
927, 939, 967, 583, 908, 1246, 420, 613, 268, 224,
95, 101, 116, 146, 202, 209, 212, 239, 275, 346,
350, 360, 369, 381, 420, 423, 424, 455, 524, 641,
643, 644, 769, 967, 743, 99, 262, 1266, 859, 859,
583, 944, 381, 455, 585, 224, 365, 381, 420, 455,
939, 967, 95, 209, 381, 420, 455, 268, 608, 420,
540, 564, 601, 608, 381, 420, 455, 939, 967, 365,
381, 420, 224, 108, 130, 181, 271, 327, 331, 346,
380, 420, 425, 449, 455, 469, 641, 740, 741, 381,
420, 532, 769, 777, 224, 381, 420, 455, 95, 160,
202, 209, 212, 381, 416, 420, 455, 462, 631, 619,
621, 268, 224, 116, 200, 346, 420, 455, 641, 642,
381, 420, 424, 455, 158, 201, 384, 490, 365, 95,
101, 209, 381, 420, 455, 659, 660, 608, 238, 420,
601, 608, 224, 420, 455, 641, 1268, 587, 311, 191,
366, 545, 586, 996, 99, 204, 529, 576, 584, 916,
1184, 1224, 1225, 1401, 1184, 1245, 576, 1269, 1402, 1244,
584, 586, 230, 365, 504, 625, 628, 743, 1031, 521,
1024, 365, 923, 583, 859, 1268, 1161, 911, 359, 144,
231, 947, 911, 911, 238, 1161, 859, 1268, 1268, 584,
703, 1268, 142, 1161, 350, 244, 583, 827, 601, 108,
1018, 1268, 350, 601, 544, 262, 1266, 601, 859, 859,
827, 517, 678, 365, 238, 540, 935, 601, 350, 118,
615, 350, 507, 776, 350, 1036, 160, 381, 753, 158,
201, 384, 490, 108, 827, 238, 262, 601, 533, 262,
1266, 262, 730, 1266, 1266, 533, 859, 157, 597, 1271,
502, 1271, 1271, 1268, 238, 1268, 751, 72, 1297, 1400,
588, 1298, 1295, 1314, 110, 124, 180, 282, 346, 444,
224, 133, 426, 586, 598, 224, 583, 224, 601, 530,
1178, 1178, 1178, 583, 1166, 1166, 394, 583, 1168, 224,
139, 140, 1178, 1166, 1163, 564, 565, 583, 1181, 583,
1181, 586, 598, 107, 1162, 583, 184, 333, 558, 583,
1182, 860, 1166, 544, 224, 586, 598, 224, 586, 262,
858, 262, 859, 262, 859, 224, 586, 598, 1277, 224,
598, 224, 224, 598, 224, 598, 224, 158, 201, 384,
490, 238, 224, 598, 224, 238, 262, 224, 586, 598,
224, 586, 598, 224, 365, 584, 1424, 1425, 1423, 586,
590, 1223, 1357, 1431, 1432, 485, 1078, 584, 1041, 872,
1077, 872, 1077, 1434, 1435, 872, 1077, 872, 1077, 1435,
872, 1077, 1077, 1077, 872, 13, 466, 1407, 1410, 1415,
1077, 583, 704, 705, 1400, 704, 99, 183, 207, 240,
246, 303, 304, 383, 402, 435, 442, 449, 485, 488,
507, 880, 1265, 1277, 877, 1268, 268, 586, 1059, 1077,
1077, 1419, 1314, 1353, 1161, 1227, 108, 1277, 597, 584,
597, 597, 597, 311, 1400, 238, 880, 1277, 238, 440,
1400, 628, 365, 583, 581, 1081, 1228, 1184, 1242, 583,
583, 238, 583, 583, 1081, 583, 583, 583, 583, 583,
583, 583, 583, 583, 583, 583, 1184, 583, 583, 583,
583, 583, 583, 583, 583, 357, 694, 583, 583, 583,
583, 583, 583, 583, 583, 1184, 1184, 1184, 527, 1081,
1184, 1223, 1246, 1419, 583, 1419, 80, 83, 87, 88,
89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
99, 100, 101, 102, 103, 104, 105, 106, 108, 109,
110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
130, 131, 132, 133, 134, 135, 136, 137, 138, 141,
142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
162, 163, 164, 165, 166, 167, 169, 170, 171, 172,
173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
183, 185, 186, 187, 188, 189, 190, 191, 192, 193,
194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
214, 215, 216, 217, 218, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, 234, 235, 236,
237, 239, 240, 241, 242, 243, 245, 246, 247, 248,
249, 251, 252, 254, 255, 256, 258, 259, 261, 262,
263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
283, 284, 285, 286, 288, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 314, 315,
316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
326, 327, 328, 329, 331, 332, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 363, 364, 366, 367, 368, 369,
370, 372, 373, 374, 375, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, 389, 390, 391, 392,
393, 395, 396, 397, 398, 399, 400, 401, 402, 403,
404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
424, 425, 426, 427, 429, 430, 431, 432, 433, 434,
435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
445, 447, 448, 449, 450, 451, 452, 453, 454, 455,
456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 498, 499, 500, 501, 502, 503, 504, 505, 506,
507, 508, 509, 510, 511, 512, 514, 515, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
528, 529, 531, 532, 533, 534, 535, 536, 538, 543,
544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
554, 555, 556, 557, 559, 560, 562, 571, 572, 573,
574, 575, 576, 577, 578, 579, 1218, 1220, 1222, 1279,
1284, 1421, 541, 1201, 377, 1184, 233, 1202, 289, 586,
1092, 1432, 583, 1419, 1246, 21, 1414, 1415, 1247, 1092,
361, 365, 1385, 1385, 9, 526, 1372, 1373, 1375, 1352,
1352, 192, 264, 637, 586, 141, 189, 628, 108, 189,
316, 626, 743, 1180, 1419, 1421, 1419, 163, 206, 1196,
172, 189, 622, 623, 625, 743, 189, 622, 1432, 1432,
311, 1266, 164, 425, 863, 291, 584, 1033, 105, 115,
122, 148, 263, 268, 291, 312, 367, 370, 460, 584,
586, 1087, 1267, 108, 584, 586, 1036, 1083, 1083, 1100,
1101, 1184, 1083, 235, 341, 1111, 300, 346, 408, 458,
519, 99, 1106, 1184, 574, 575, 1107, 1108, 1184, 1186,
1120, 1121, 1105, 1104, 1102, 1103, 238, 1123, 360, 1125,
1102, 1120, 1141, 1048, 1266, 1141, 108, 1400, 455, 1223,
1345, 576, 586, 587, 1403, 1322, 1325, 1322, 285, 188,
1352, 520, 1300, 1302, 1268, 466, 1273, 1374, 1415, 586,
573, 1268, 13, 1273, 1418, 1273, 1418, 586, 1332, 1268,
583, 583, 1403, 584, 743, 584, 138, 497, 497, 442,
268, 280, 371, 374, 457, 529, 576, 914, 915, 916,
918, 920, 922, 1161, 1401, 497, 532, 497, 442, 1269,
585, 497, 497, 442, 313, 497, 149, 497, 488, 618,
381, 1004, 1006, 573, 1008, 238, 250, 268, 430, 892,
893, 142, 161, 220, 240, 398, 514, 700, 701, 161,
189, 350, 497, 161, 497, 189, 350, 442, 161, 202,
212, 381, 420, 824, 442, 759, 98, 136, 207, 246,
367, 402, 435, 500, 507, 854, 855, 1268, 224, 420,
455, 641, 365, 743, 447, 308, 497, 1400, 497, 355,
743, 193, 290, 442, 453, 499, 620, 859, 426, 455,
927, 940, 197, 584, 909, 914, 497, 520, 488, 1266,
150, 220, 262, 685, 700, 1400, 150, 161, 964, 386,
365, 437, 439, 502, 161, 964, 102, 423, 437, 439,
502, 437, 1266, 239, 275, 360, 859, 583, 497, 497,
261, 583, 649, 93, 322, 488, 517, 542, 649, 161,
586, 197, 381, 268, 224, 420, 455, 641, 967, 521,
521, 347, 1161, 497, 442, 583, 945, 1268, 1266, 497,
497, 442, 940, 197, 176, 485, 486, 976, 977, 1139,
1266, 1400, 977, 497, 497, 827, 977, 183, 455, 632,
497, 603, 632, 497, 497, 442, 940, 197, 1266, 497,
497, 1266, 1163, 743, 129, 742, 743, 743, 181, 327,
331, 129, 497, 601, 335, 442, 601, 346, 741, 497,
497, 355, 1419, 769, 859, 497, 497, 442, 471, 405,
1419, 405, 497, 405, 497, 405, 827, 827, 488, 1138,
386, 386, 161, 497, 964, 442, 497, 497, 649, 649,
859, 859, 859, 859, 1266, 117, 526, 117, 117, 497,
117, 497, 526, 442, 583, 586, 632, 520, 785, 1276,
497, 603, 632, 1266, 497, 964, 442, 381, 420, 408,
421, 451, 624, 996, 1224, 1224, 1225, 584, 85, 86,
586, 1098, 1099, 582, 588, 1266, 1029, 1268, 1266, 291,
1161, 291, 365, 291, 291, 743, 859, 859, 291, 291,
291, 1161, 291, 291, 291, 365, 497, 244, 497, 663,
507, 583, 108, 224, 859, 828, 829, 1402, 1004, 1161,
365, 224, 756, 1268, 350, 386, 583, 602, 841, 521,
412, 533, 1266, 99, 977, 827, 602, 224, 1276, 168,
250, 616, 677, 736, 799, 873, 895, 1000, 224, 1419,
777, 778, 224, 365, 1419, 1276, 319, 859, 859, 859,
859, 216, 407, 583, 785, 350, 602, 1266, 350, 738,
740, 350, 108, 360, 386, 583, 703, 703, 262, 733,
1266, 238, 262, 595, 1400, 583, 831, 921, 1268, 583,
912, 912, 108, 1161, 97, 120, 284, 800, 303, 585,
1273, 1298, 584, 540, 542, 1079, 444, 924, 923, 1161,
1268, 583, 583, 1223, 1273, 861, 1178, 1178, 107, 1162,
495, 495, 1273, 1273, 1161, 581, 581, 1273, 497, 497,
1273, 1166, 910, 911, 1277, 1276, 224, 598, 224, 521,
224, 521, 946, 947, 598, 910, 1277, 910, 1268, 1268,
1161, 861, 1277, 785, 224, 858, 859, 1267, 1268, 1268,
859, 584, 590, 1426, 584, 1432, 1433, 1357, 262, 1266,
180, 1041, 1077, 1077, 1435, 1077, 1077, 1435, 1077, 1077,
1268, 13, 586, 1414, 704, 584, 586, 584, 247, 403,
436, 450, 486, 1267, 858, 182, 452, 910, 1267, 359,
878, 879, 1400, 910, 910, 1267, 1265, 1265, 1267, 858,
497, 251, 540, 889, 219, 313, 782, 783, 93, 222,
437, 458, 1060, 1138, 354, 1061, 584, 584, 586, 1044,
497, 1266, 1268, 1266, 595, 875, 876, 244, 889, 876,
1400, 98, 150, 207, 246, 304, 402, 435, 507, 854,
855, 1223, 582, 1223, 1228, 1229, 536, 1239, 1240, 1184,
1223, 583, 1273, 1273, 184, 260, 330, 333, 446, 558,
1230, 1231, 1419, 1421, 1223, 1223, 428, 1081, 1082, 1184,
1249, 1252, 1259, 1249, 1184, 1186, 1224, 1252, 1255, 1256,
1184, 1256, 1223, 1273, 1273, 1184, 1184, 945, 1184, 1224,
1226, 1233, 437, 574, 575, 583, 1185, 1186, 1220, 1234,
584, 1223, 1184, 1226, 1235, 1184, 127, 244, 307, 498,
1184, 1223, 1236, 204, 350, 1081, 1223, 335, 1186, 1184,
1194, 1195, 1196, 335, 1184, 1196, 584, 586, 1273, 1182,
1161, 1184, 1184, 1184, 1184, 1402, 495, 113, 481, 1248,
859, 1184, 583, 1081, 1237, 204, 206, 230, 295, 342,
343, 344, 345, 349, 350, 355, 504, 515, 1232, 1253,
1184, 583, 1184, 497, 122, 263, 268, 312, 460, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 99,
106, 465, 1217, 253, 1202, 437, 583, 1214, 583, 376,
1206, 249, 316, 485, 489, 491, 517, 1093, 1266, 1264,
244, 1127, 1224, 1268, 1415, 1244, 1127, 1374, 586, 573,
1266, 499, 583, 1419, 586, 1432, 584, 261, 261, 598,
1332, 1039, 1028, 1032, 1184, 584, 326, 350, 1088, 1039,
1037, 586, 109, 199, 521, 904, 437, 438, 574, 575,
1108, 1110, 1186, 458, 300, 366, 586, 1109, 1273, 1418,
1109, 437, 438, 1110, 1265, 354, 462, 1062, 1121, 1103,
521, 1057, 189, 379, 583, 1049, 1080, 108, 521, 1400,
583, 1064, 1065, 1066, 1400, 584, 587, 1346, 1162, 590,
1325, 590, 33, 1301, 1377, 1378, 1415, 1370, 1375, 1422,
1361, 1162, 1409, 1425, 1409, 1162, 1276, 1268, 1268, 374,
129, 1401, 584, 916, 918, 915, 918, 1401, 371, 584,
586, 860, 1276, 1268, 1268, 1269, 1276, 1268, 1268, 1276,
532, 1268, 1268, 189, 625, 743, 432, 520, 875, 442,
250, 875, 583, 1268, 521, 897, 300, 300, 521, 694,
725, 262, 1268, 355, 1276, 1268, 1268, 1184, 355, 1268,
1268, 102, 423, 497, 497, 1268, 497, 760, 923, 583,
1161, 911, 144, 231, 947, 911, 911, 238, 1161, 859,
1268, 256, 346, 381, 420, 525, 763, 764, 765, 1138,
497, 964, 442, 355, 193, 290, 1276, 1268, 365, 1268,
365, 584, 586, 1275, 1277, 1268, 420, 641, 262, 685,
350, 1161, 1268, 1273, 1400, 1266, 1268, 311, 1268, 99,
520, 1268, 262, 1268, 262, 1400, 439, 502, 439, 502,
311, 1268, 99, 520, 1268, 311, 437, 1266, 95, 209,
455, 770, 771, 772, 773, 1402, 1276, 1268, 189, 245,
351, 521, 648, 651, 652, 1402, 329, 1268, 146, 363,
1268, 644, 365, 497, 488, 1266, 497, 964, 442, 197,
1268, 1268, 586, 584, 586, 1276, 1268, 970, 971, 1402,
365, 420, 497, 793, 1276, 1268, 1268, 365, 1138, 268,
586, 703, 703, 1246, 1276, 1268, 1268, 1275, 160, 214,
275, 388, 512, 520, 523, 604, 1421, 1276, 1268, 1268,
365, 420, 1276, 1268, 420, 455, 641, 740, 743, 859,
1268, 743, 859, 1268, 743, 1276, 1268, 455, 1276, 1268,
1268, 1274, 1267, 1267, 1276, 935, 1268, 1267, 1268, 420,
455, 641, 642, 1266, 1266, 1268, 1268, 1268, 1268, 1276,
1268, 95, 101, 209, 381, 420, 455, 381, 420, 455,
827, 420, 455, 420, 455, 420, 967, 1153, 1400, 262,
837, 1400, 262, 1400, 1276, 1268, 1268, 1419, 1268, 970,
95, 660, 452, 1275, 420, 455, 641, 1268, 1268, 1268,
497, 497, 155, 511, 408, 586, 1098, 1098, 1098, 1184,
1184, 529, 1225, 584, 1184, 1245, 1024, 355, 865, 1419,
108, 865, 207, 859, 865, 865, 291, 521, 521, 865,
865, 865, 303, 865, 865, 865, 859, 404, 664, 664,
273, 485, 798, 1184, 1161, 859, 584, 586, 573, 691,
1402, 1268, 133, 244, 442, 532, 757, 764, 765, 224,
360, 312, 679, 681, 683, 685, 697, 700, 96, 268,
432, 482, 604, 605, 238, 1268, 533, 1266, 108, 794,
486, 935, 595, 1400, 615, 678, 907, 1268, 240, 859,
583, 727, 728, 1187, 1189, 1190, 1260, 1400, 405, 1419,
827, 827, 827, 827, 583, 827, 1151, 1152, 1153, 452,
224, 583, 224, 224, 223, 1288, 859, 360, 679, 1400,
521, 720, 540, 650, 350, 108, 703, 1419, 350, 365,
832, 833, 1421, 827, 97, 584, 913, 914, 919, 108,
303, 429, 500, 539, 925, 926, 927, 928, 925, 365,
303, 360, 194, 283, 505, 519, 801, 802, 1268, 1297,
577, 259, 259, 238, 598, 108, 601, 239, 1012, 1013,
1223, 584, 584, 598, 581, 560, 560, 584, 584, 1273,
582, 583, 1273, 1400, 1419, 1430, 584, 584, 598, 858,
859, 1268, 859, 1268, 598, 598, 598, 598, 303, 598,
452, 238, 598, 598, 365, 598, 350, 1079, 1422, 1410,
584, 705, 268, 268, 268, 268, 268, 544, 1267, 743,
744, 586, 585, 253, 881, 882, 1276, 129, 886, 887,
1402, 497, 583, 244, 222, 458, 222, 458, 437, 519,
332, 1161, 1276, 540, 731, 365, 881, 598, 244, 923,
859, 1161, 911, 359, 911, 911, 1161, 859, 1268, 584,
582, 582, 586, 1184, 211, 1240, 1241, 108, 584, 1184,
584, 584, 584, 244, 584, 584, 1161, 561, 1250, 1250,
584, 91, 355, 586, 1258, 371, 1261, 588, 526, 584,
584, 91, 355, 586, 1257, 1257, 584, 584, 584, 584,
586, 586, 584, 389, 584, 584, 583, 1185, 1185, 1223,
83, 87, 88, 89, 268, 291, 367, 571, 572, 573,
574, 575, 576, 577, 578, 579, 1220, 1185, 584, 584,
238, 244, 460, 584, 584, 108, 1236, 1223, 1236, 1236,
244, 584, 204, 584, 1402, 387, 1199, 108, 584, 586,
1184, 1402, 586, 1184, 1247, 1184, 584, 560, 1185, 1185,
217, 1223, 244, 107, 359, 441, 526, 204, 206, 230,
349, 355, 504, 515, 1232, 1253, 349, 540, 542, 1254,
217, 945, 1184, 481, 1248, 1184, 1237, 1184, 497, 583,
1081, 583, 1206, 583, 1223, 537, 583, 1207, 1400, 489,
491, 489, 491, 1266, 1094, 1094, 1094, 306, 438, 557,
583, 1081, 1128, 1129, 1130, 1138, 1144, 1154, 1189, 1400,
537, 1149, 1098, 1149, 7, 10, 11, 21, 22, 23,
25, 26, 30, 31, 32, 182, 335, 394, 507, 1380,
1381, 1383, 1373, 1374, 997, 1273, 1182, 623, 1162, 1039,
326, 583, 1101, 367, 1218, 1221, 563, 905, 1273, 1418,
1110, 366, 540, 519, 1107, 321, 1128, 537, 1150, 527,
483, 520, 1050, 1051, 1052, 1400, 365, 1053, 1400, 1129,
1066, 1067, 586, 1127, 573, 1247, 588, 1328, 587, 586,
573, 29, 1389, 584, 584, 587, 922, 860, 918, 918,
129, 920, 578, 1277, 1277, 365, 1267, 368, 365, 1184,
701, 1268, 583, 583, 583, 725, 273, 583, 817, 224,
598, 497, 1276, 1268, 628, 1161, 859, 859, 1161, 747,
1268, 256, 525, 497, 497, 747, 763, 769, 420, 455,
641, 1268, 1268, 1268, 281, 355, 227, 914, 380, 455,
497, 350, 224, 474, 689, 690, 817, 455, 95, 209,
424, 425, 455, 645, 653, 654, 769, 965, 447, 224,
598, 224, 598, 1268, 1268, 1268, 1268, 447, 447, 311,
772, 773, 772, 584, 586, 774, 1419, 273, 584, 586,
573, 585, 1268, 227, 1276, 1268, 420, 455, 641, 1268,
1268, 1268, 365, 381, 420, 455, 95, 209, 381, 420,
455, 1161, 347, 1161, 584, 586, 573, 1266, 497, 1277,
521, 790, 227, 703, 442, 976, 537, 710, 710, 703,
313, 388, 355, 1419, 388, 1277, 518, 227, 497, 497,
442, 471, 935, 935, 935, 380, 455, 161, 497, 964,
442, 189, 238, 655, 234, 597, 497, 497, 323, 323,
323, 497, 497, 442, 497, 497, 442, 497, 442, 497,
442, 497, 197, 598, 1161, 350, 1419, 455, 965, 224,
598, 497, 497, 584, 1268, 497, 964, 442, 497, 1276,
1268, 584, 584, 584, 1225, 582, 1161, 859, 291, 865,
1268, 1268, 1268, 291, 472, 473, 665, 1419, 665, 256,
584, 584, 244, 827, 829, 347, 367, 574, 575, 743,
830, 918, 1221, 1283, 1419, 142, 148, 161, 189, 191,
248, 277, 350, 355, 398, 414, 514, 692, 693, 696,
223, 536, 601, 628, 1268, 628, 369, 767, 1266, 1266,
1266, 584, 586, 1277, 253, 432, 1277, 1273, 507, 1266,
703, 1421, 238, 795, 935, 118, 615, 485, 776, 182,
1036, 1184, 244, 586, 1267, 650, 834, 835, 1419, 584,
586, 1268, 238, 704, 1266, 730, 1266, 1307, 1080, 583,
680, 1266, 584, 1268, 540, 542, 721, 649, 108, 224,
1080, 720, 497, 224, 1138, 584, 586, 573, 801, 584,
586, 189, 573, 929, 1419, 628, 485, 917, 918, 238,
934, 121, 427, 930, 931, 928, 931, 194, 283, 448,
519, 987, 1268, 360, 365, 370, 256, 1293, 1080, 1307,
1161, 583, 584, 586, 584, 1273, 1181, 1181, 582, 1430,
583, 574, 575, 576, 577, 578, 582, 598, 521, 598,
521, 598, 1268, 1268, 785, 859, 224, 238, 442, 442,
442, 442, 442, 1267, 586, 879, 1400, 1276, 540, 586,
883, 1276, 586, 889, 230, 368, 504, 888, 1140, 452,
222, 222, 182, 346, 880, 889, 1277, 291, 291, 291,
291, 743, 291, 291, 291, 291, 291, 1228, 493, 1184,
215, 1161, 584, 1184, 1250, 295, 1252, 365, 365, 1249,
1252, 129, 1258, 1249, 1249, 365, 365, 1256, 1254, 1254,
1232, 1184, 1184, 584, 1223, 586, 1161, 1185, 1185, 1185,
1185, 204, 206, 350, 1185, 1185, 1185, 1185, 1185, 1185,
1185, 1185, 1185, 1185, 1184, 1184, 1184, 1161, 584, 584,
584, 1223, 584, 586, 129, 1186, 1200, 584, 1402, 1195,
395, 477, 1198, 584, 586, 532, 1191, 108, 584, 1419,
1184, 105, 105, 1184, 584, 1184, 244, 349, 1254, 514,
514, 1184, 584, 217, 1185, 1185, 217, 217, 1184, 1184,
1099, 584, 1223, 586, 1184, 1208, 1400, 1094, 1094, 1094,
1094, 1266, 1266, 1266, 1081, 1144, 1154, 244, 583, 1081,
1129, 1130, 108, 1131, 1132, 1400, 586, 169, 245, 279,
294, 310, 338, 431, 1135, 1132, 108, 1131, 1134, 1400,
1132, 564, 1148, 1246, 1184, 253, 1112, 584, 1112, 586,
573, 584, 1389, 1044, 583, 905, 235, 305, 366, 540,
494, 172, 1184, 428, 1055, 526, 584, 586, 1247, 159,
1055, 365, 584, 586, 1065, 1150, 1184, 1273, 573, 1347,
1378, 1383, 584, 578, 922, 507, 247, 436, 443, 450,
486, 508, 894, 238, 894, 584, 583, 708, 709, 900,
1189, 1400, 704, 704, 817, 1268, 704, 191, 277, 346,
350, 818, 1268, 1268, 108, 521, 521, 303, 860, 1276,
1268, 497, 964, 442, 497, 281, 1268, 129, 488, 1268,
224, 685, 189, 1400, 156, 687, 688, 471, 248, 226,
261, 350, 649, 601, 182, 248, 350, 471, 649, 687,
689, 741, 455, 654, 507, 1268, 1400, 447, 771, 1268,
652, 830, 1402, 1268, 380, 455, 497, 964, 442, 497,
227, 497, 497, 442, 246, 367, 474, 839, 840, 246,
367, 847, 848, 497, 497, 442, 584, 584, 584, 971,
347, 743, 918, 972, 1221, 1283, 1419, 420, 1268, 583,
540, 791, 1268, 710, 176, 1400, 583, 710, 1274, 1419,
1419, 1419, 1268, 1268, 1268, 1268, 1274, 129, 488, 1268,
1268, 1268, 1268, 527, 1268, 1268, 238, 238, 422, 238,
262, 1276, 1268, 1268, 1276, 1268, 1268, 1268, 1268, 1268,
1268, 1268, 365, 148, 646, 224, 97, 120, 507, 1400,
1268, 1419, 769, 1268, 1268, 1268, 1268, 1098, 584, 291,
865, 291, 291, 291, 865, 601, 521, 670, 671, 747,
817, 540, 542, 859, 583, 859, 1268, 1185, 102, 129,
695, 192, 264, 191, 355, 300, 1266, 694, 246, 402,
813, 820, 821, 1400, 756, 583, 386, 583, 680, 698,
276, 715, 683, 1277, 1277, 1161, 583, 650, 99, 194,
283, 448, 519, 796, 497, 792, 1276, 262, 1266, 778,
544, 365, 584, 1128, 728, 935, 584, 586, 1153, 767,
785, 584, 738, 108, 360, 386, 583, 1046, 731, 682,
684, 686, 700, 1400, 386, 716, 717, 680, 715, 649,
363, 365, 722, 1080, 733, 731, 650, 1419, 1268, 897,
833, 1421, 830, 365, 919, 1184, 1184, 586, 583, 925,
507, 586, 114, 1184, 497, 583, 704, 1266, 802, 747,
80, 1304, 584, 1012, 1013, 582, 584, 1332, 1430, 1430,
1430, 1430, 1430, 1268, 1268, 598, 452, 598, 1267, 1267,
1267, 1267, 1267, 743, 250, 882, 889, 887, 584, 1268,
182, 244, 598, 889, 355, 868, 1419, 868, 868, 868,
291, 868, 868, 868, 868, 868, 1184, 584, 213, 1251,
584, 355, 355, 584, 1100, 1252, 355, 355, 1252, 1252,
584, 584, 244, 584, 1184, 244, 204, 206, 244, 238,
217, 584, 547, 1193, 1223, 413, 526, 129, 1200, 1186,
538, 538, 584, 1184, 346, 1184, 586, 1192, 1163, 1184,
1184, 1184, 301, 301, 1184, 105, 105, 1184, 1184, 217,
584, 584, 584, 1184, 584, 386, 1209, 1266, 1266, 1266,
1266, 1132, 1134, 1132, 583, 552, 1186, 584, 1400, 583,
1129, 294, 375, 1136, 1129, 1136, 294, 1135, 1136, 294,
487, 1142, 583, 1400, 583, 372, 129, 257, 1119, 1419,
1119, 1381, 575, 1374, 1382, 1418, 1419, 1419, 584, 945,
494, 360, 1263, 1080, 379, 1080, 1052, 365, 583, 1054,
1184, 573, 1066, 1055, 1426, 507, 584, 497, 875, 244,
817, 1184, 584, 586, 540, 148, 899, 903, 899, 584,
584, 584, 192, 264, 275, 191, 523, 598, 1161, 1268,
1268, 1268, 1268, 1268, 1268, 1268, 1277, 1268, 685, 189,
1400, 767, 1274, 695, 262, 262, 355, 743, 695, 355,
1274, 1161, 598, 598, 573, 129, 488, 1268, 1268, 1268,
1268, 1268, 1276, 1268, 1268, 1273, 1273, 1161, 586, 1273,
1273, 586, 1276, 1268, 1268, 497, 1184, 142, 1184, 1277,
1268, 497, 497, 244, 268, 540, 1267, 1267, 859, 1267,
224, 227, 859, 1419, 1419, 1161, 598, 598, 497, 584,
291, 865, 865, 865, 865, 583, 666, 667, 601, 196,
246, 280, 246, 1184, 350, 693, 189, 108, 935, 703,
935, 1271, 105, 223, 268, 768, 772, 360, 679, 655,
221, 270, 583, 452, 521, 704, 108, 1277, 790, 615,
350, 583, 240, 1268, 727, 1419, 452, 650, 223, 1289,
859, 360, 679, 731, 584, 586, 540, 691, 129, 720,
655, 716, 154, 488, 723, 540, 1001, 108, 723, 244,
365, 583, 1266, 1419, 916, 936, 937, 1401, 931, 1161,
238, 932, 1266, 244, 497, 956, 415, 803, 278, 748,
1305, 1400, 598, 584, 584, 598, 598, 1268, 368, 289,
881, 598, 868, 1268, 584, 584, 584, 1184, 584, 1185,
244, 1184, 1184, 1184, 583, 584, 586, 584, 1200, 584,
526, 468, 584, 272, 346, 1197, 1184, 1184, 1184, 584,
129, 1098, 1145, 1146, 1189, 583, 1199, 1131, 583, 1267,
1129, 365, 521, 1137, 1129, 294, 1129, 1271, 1152, 583,
1152, 1400, 1095, 1184, 539, 1203, 1203, 1273, 1418, 445,
1089, 584, 1077, 1433, 1050, 161, 898, 900, 205, 536,
1069, 1070, 1184, 881, 365, 881, 584, 269, 706, 709,
367, 945, 859, 596, 859, 414, 706, 706, 584, 497,
455, 1061, 691, 108, 224, 224, 646, 830, 1277, 1268,
497, 583, 911, 945, 947, 840, 583, 583, 848, 1268,
584, 583, 584, 455, 1061, 1268, 1268, 583, 583, 583,
540, 564, 1021, 422, 1021, 1021, 238, 1268, 646, 1268,
865, 672, 673, 1402, 124, 170, 195, 213, 217, 239,
243, 258, 355, 406, 668, 666, 1419, 911, 108, 952,
952, 584, 261, 583, 521, 724, 324, 707, 724, 583,
821, 813, 583, 584, 586, 1266, 584, 452, 99, 153,
156, 162, 190, 248, 261, 274, 471, 474, 699, 699,
1265, 1268, 1268, 584, 1080, 791, 224, 182, 767, 244,
1268, 108, 1307, 1080, 680, 1266, 584, 1431, 684, 369,
1400, 721, 716, 720, 194, 209, 395, 1268, 134, 142,
316, 1080, 859, 1138, 898, 244, 816, 918, 584, 586,
507, 215, 594, 930, 933, 1149, 466, 466, 584, 340,
364, 804, 805, 806, 238, 809, 747, 346, 525, 749,
750, 573, 1306, 1268, 889, 238, 1185, 1194, 1223, 346,
559, 272, 584, 1223, 255, 407, 438, 1210, 584, 586,
108, 1147, 189, 1159, 1160, 1185, 151, 1267, 584, 1184,
583, 1129, 1137, 583, 584, 1152, 584, 171, 254, 434,
583, 1113, 1114, 1115, 1116, 1117, 1118, 1184, 1204, 1205,
1400, 128, 198, 181, 1090, 526, 1268, 584, 586, 351,
519, 325, 350, 1070, 883, 894, 598, 899, 583, 935,
583, 904, 649, 1266, 935, 935, 1268, 488, 261, 521,
647, 455, 1061, 1268, 1227, 238, 843, 843, 1227, 1227,
1184, 488, 1223, 1223, 656, 657, 1278, 858, 859, 858,
859, 1267, 598, 584, 586, 576, 583, 625, 674, 743,
1018, 1419, 1018, 350, 355, 406, 1018, 1018, 1149, 952,
112, 266, 346, 702, 583, 739, 1184, 273, 245, 385,
461, 365, 711, 712, 713, 584, 1271, 76, 822, 772,
680, 715, 1268, 584, 767, 231, 842, 650, 1001, 1266,
544, 1128, 767, 1080, 1046, 731, 716, 680, 715, 691,
583, 722, 720, 721, 438, 438, 142, 368, 142, 731,
897, 584, 1266, 817, 925, 936, 1161, 587, 205, 540,
540, 805, 437, 485, 807, 210, 810, 536, 812, 525,
747, 1273, 1413, 1421, 80, 767, 598, 1184, 584, 584,
526, 122, 172, 510, 1184, 1211, 1212, 1211, 1211, 584,
1148, 1145, 583, 1185, 584, 586, 108, 1155, 1156, 1400,
584, 1267, 1223, 584, 583, 456, 583, 584, 586, 586,
108, 235, 235, 704, 1080, 1149, 900, 455, 105, 1071,
325, 244, 704, 724, 945, 905, 904, 703, 724, 724,
1268, 739, 1184, 488, 584, 371, 445, 411, 844, 844,
584, 584, 584, 1268, 584, 584, 584, 586, 1273, 1021,
673, 625, 675, 676, 1419, 1419, 355, 704, 576, 704,
1419, 1419, 275, 740, 584, 488, 194, 519, 365, 713,
365, 712, 583, 584, 586, 655, 452, 767, 859, 108,
108, 583, 1268, 1001, 731, 720, 655, 716, 583, 718,
719, 1189, 1400, 723, 721, 722, 368, 368, 583, 269,
901, 238, 931, 100, 284, 988, 246, 246, 1018, 437,
470, 811, 583, 223, 1305, 1212, 437, 237, 393, 237,
393, 220, 1213, 1213, 1213, 1152, 586, 1160, 1402, 584,
586, 238, 1161, 584, 584, 1223, 583, 1223, 1114, 1205,
1207, 129, 129, 455, 1064, 1184, 493, 1071, 881, 584,
710, 584, 905, 707, 817, 817, 1061, 1268, 911, 129,
1061, 497, 656, 859, 584, 586, 704, 584, 475, 1268,
133, 346, 426, 455, 714, 714, 584, 76, 452, 1268,
839, 1080, 767, 1431, 721, 716, 720, 1184, 584, 586,
903, 903, 722, 723, 898, 583, 694, 210, 351, 583,
983, 985, 989, 1047, 1056, 1063, 1080, 1091, 911, 911,
808, 1400, 1184, 813, 105, 172, 253, 346, 494, 584,
1186, 1156, 372, 189, 350, 355, 1157, 1158, 1421, 108,
1133, 421, 1143, 584, 1113, 584, 704, 704, 1400, 1149,
194, 205, 519, 1072, 1073, 493, 598, 817, 711, 1061,
859, 583, 676, 94, 189, 355, 1268, 767, 1001, 722,
720, 721, 584, 719, 596, 596, 723, 584, 900, 902,
650, 437, 984, 985, 986, 1081, 1082, 586, 586, 584,
1271, 1212, 437, 373, 1199, 1185, 355, 1158, 1185, 1400,
583, 584, 455, 455, 497, 521, 351, 455, 205, 283,
1074, 817, 1223, 703, 703, 767, 723, 721, 722, 903,
901, 584, 586, 723, 812, 584, 587, 497, 244, 583,
151, 1184, 1400, 1400, 1271, 1272, 1400, 1064, 351, 189,
379, 527, 583, 1075, 584, 722, 723, 596, 694, 900,
1149, 223, 986, 466, 466, 814, 815, 1273, 1402, 1418,
1419, 1155, 584, 583, 189, 527, 1050, 583, 1051, 723,
650, 813, 540, 540, 584, 586, 584, 1224, 1272, 526,
1223, 584, 723, 1271, 246, 246, 815, 1098, 521, 1075,
584, 379, 1075, 1149, 583, 911, 911, 584, 1400, 1050,
814, 526, 584, 1075
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_int16 yyr1[] =
{
0, 591, 592, 593, 593, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
594, 594, 594, 594, 594, 594, 594, 594, 594, 594,
595, 595, 596, 596, 597, 597, 598, 598, 598, 599,
600, 601, 601, 601, 602, 602, 603, 603, 604, 604,
604, 604, 604, 604, 604, 604, 604, 605, 605, 605,
605, 605, 605, 606, 607, 607, 608, 608, 609, 609,
609, 609, 610, 610, 610, 610, 610, 610, 611, 612,
613, 613, 614, 614, 614, 614, 615, 615, 616, 616,
616, 616, 616, 616, 617, 617, 617, 618, 618, 618,
619, 619, 619, 619, 620, 620, 620, 620, 620, 620,
620, 620, 620, 620, 620, 621, 621, 622, 622, 623,
623, 624, 624, 624, 624, 625, 625, 625, 625, 626,
626, 626, 626, 626, 626, 626, 627, 627, 627, 628,
628, 629, 630, 630, 630, 630, 631, 631, 632, 632,
633, 633, 634, 634, 634, 634, 634, 635, 636, 636,
637, 637, 638, 639, 639, 639, 639, 639, 640, 640,
640, 640, 640, 640, 640, 640, 640, 640, 640, 640,
640, 640, 640, 640, 640, 640, 640, 640, 640, 641,
641, 642, 642, 642, 643, 644, 644, 644, 644, 644,
644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
644, 644, 644, 644, 644, 645, 645, 646, 646, 647,
647, 648, 648, 648, 648, 649, 650, 650, 651, 651,
652, 652, 652, 652, 653, 653, 654, 654, 654, 654,
655, 655, 655, 655, 656, 657, 657, 658, 659, 659,
660, 660, 660, 660, 661, 661, 662, 662, 663, 663,
664, 664, 665, 665, 665, 666, 666, 667, 667, 668,
668, 668, 668, 668, 668, 668, 668, 668, 668, 668,
668, 668, 669, 669, 670, 670, 671, 671, 672, 672,
673, 674, 674, 674, 674, 674, 675, 675, 676, 677,
677, 677, 677, 677, 677, 678, 678, 678, 678, 678,
678, 678, 678, 679, 679, 680, 680, 681, 681, 682,
682, 683, 683, 683, 684, 684, 685, 686, 686, 687,
687, 688, 688, 689, 689, 690, 690, 691, 691, 692,
692, 692, 692, 693, 693, 693, 693, 693, 693, 693,
693, 693, 694, 694, 694, 695, 695, 696, 696, 696,
696, 697, 698, 698, 698, 699, 699, 699, 699, 699,
699, 699, 699, 699, 699, 700, 700, 701, 701, 701,
701, 701, 701, 701, 702, 702, 703, 703, 704, 704,
705, 706, 706, 707, 707, 707, 707, 708, 708, 709,
709, 710, 710, 711, 711, 711, 711, 711, 712, 713,
714, 714, 714, 714, 714, 715, 715, 716, 716, 717,
718, 718, 719, 719, 719, 720, 720, 721, 721, 721,
722, 722, 722, 722, 723, 723, 724, 724, 725, 726,
726, 727, 727, 728, 728, 728, 729, 729, 730, 731,
731, 731, 732, 732, 733, 734, 734, 735, 736, 736,
737, 737, 738, 738, 739, 739, 740, 740, 741, 741,
741, 741, 741, 741, 741, 741, 741, 741, 741, 741,
741, 741, 742, 742, 743, 743, 743, 743, 744, 744,
745, 745, 746, 746, 747, 747, 748, 748, 749, 749,
750, 750, 751, 751, 752, 753, 753, 754, 754, 755,
755, 756, 756, 757, 757, 757, 757, 758, 759, 759,
760, 761, 761, 761, 761, 761, 761, 761, 761, 761,
761, 761, 761, 761, 762, 763, 763, 763, 763, 764,
764, 765, 765, 766, 766, 767, 767, 768, 768, 769,
770, 770, 771, 771, 771, 771, 772, 773, 774, 775,
775, 776, 776, 777, 777, 778, 778, 779, 779, 779,
780, 780, 780, 780, 781, 782, 782, 783, 783, 784,
784, 785, 785, 786, 786, 787, 788, 789, 790, 790,
791, 791, 792, 792, 793, 793, 794, 794, 795, 795,
796, 796, 796, 796, 796, 797, 798, 798, 799, 799,
800, 800, 800, 801, 801, 802, 802, 802, 802, 802,
803, 803, 804, 804, 805, 806, 806, 807, 807, 808,
809, 809, 810, 810, 811, 811, 812, 812, 813, 813,
814, 814, 814, 815, 815, 815, 815, 816, 816, 817,
817, 818, 818, 818, 818, 818, 818, 819, 819, 820,
820, 821, 822, 822, 823, 824, 824, 824, 824, 825,
826, 826, 826, 826, 826, 826, 826, 826, 826, 826,
826, 826, 826, 826, 826, 826, 827, 828, 828, 829,
829, 830, 830, 830, 830, 830, 830, 831, 832, 832,
833, 834, 834, 835, 835, 836, 836, 836, 836, 837,
837, 838, 839, 839, 840, 840, 840, 840, 840, 841,
841, 842, 842, 843, 843, 843, 844, 844, 845, 846,
846, 847, 847, 848, 848, 849, 849, 850, 850, 851,
852, 853, 853, 853, 853, 853, 853, 853, 853, 853,
853, 853, 853, 854, 854, 854, 854, 854, 854, 854,
854, 854, 854, 854, 854, 854, 855, 855, 855, 855,
855, 856, 856, 856, 856, 856, 856, 856, 856, 857,
857, 857, 858, 858, 859, 859, 860, 860, 861, 861,
862, 863, 863, 863, 864, 864, 864, 864, 864, 864,
864, 864, 864, 864, 864, 864, 864, 864, 864, 864,
864, 864, 865, 865, 866, 866, 866, 866, 866, 866,
866, 866, 866, 866, 867, 867, 868, 868, 869, 869,
869, 869, 869, 869, 869, 869, 869, 869, 869, 870,
870, 870, 870, 870, 870, 870, 870, 870, 870, 870,
870, 870, 870, 871, 871, 872, 872, 873, 874, 874,
875, 875, 875, 875, 875, 876, 876, 877, 877, 877,
877, 877, 878, 878, 879, 879, 880, 880, 880, 880,
880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
880, 880, 880, 880, 880, 880, 880, 881, 881, 882,
882, 883, 883, 884, 884, 885, 885, 886, 886, 887,
888, 888, 888, 889, 889, 890, 891, 891, 892, 892,
892, 893, 893, 893, 894, 894, 894, 894, 894, 894,
895, 895, 896, 896, 897, 897, 898, 898, 899, 899,
900, 900, 900, 901, 901, 902, 902, 903, 903, 904,
904, 904, 905, 905, 905, 906, 906, 906, 906, 907,
907, 908, 908, 909, 909, 910, 910, 911, 911, 911,
911, 912, 912, 913, 913, 914, 914, 914, 914, 914,
915, 915, 915, 915, 915, 916, 917, 918, 918, 918,
919, 919, 919, 920, 921, 921, 921, 921, 922, 922,
923, 924, 924, 925, 925, 926, 926, 927, 927, 927,
927, 927, 927, 927, 927, 927, 927, 927, 927, 927,
927, 927, 927, 927, 928, 928, 928, 928, 928, 929,
929, 930, 931, 931, 931, 932, 932, 933, 933, 934,
934, 935, 935, 936, 937, 937, 938, 938, 938, 939,
939, 940, 940, 941, 941, 941, 941, 941, 941, 942,
942, 943, 943, 944, 944, 944, 944, 945, 945, 946,
946, 947, 948, 949, 949, 950, 950, 951, 951, 951,
952, 952, 952, 953, 954, 954, 955, 956, 956, 956,
956, 957, 958, 958, 958, 959, 959, 960, 960, 961,
961, 962, 962, 963, 963, 963, 963, 963, 963, 963,
963, 963, 963, 963, 963, 963, 963, 963, 963, 963,
963, 963, 963, 963, 963, 963, 963, 963, 963, 963,
963, 963, 963, 963, 963, 963, 963, 963, 963, 963,
963, 963, 963, 963, 963, 963, 963, 963, 963, 963,
963, 963, 963, 963, 963, 963, 963, 963, 964, 964,
965, 965, 966, 966, 966, 966, 966, 966, 967, 967,
968, 968, 968, 968, 968, 968, 968, 968, 968, 968,
968, 968, 968, 968, 968, 968, 968, 968, 968, 968,
968, 968, 968, 968, 968, 968, 968, 969, 970, 970,
971, 971, 972, 972, 972, 972, 972, 973, 974, 974,
974, 974, 974, 974, 974, 974, 974, 974, 974, 974,
974, 974, 974, 974, 974, 974, 974, 974, 974, 974,
974, 974, 975, 975, 975, 976, 976, 976, 976, 976,
976, 976, 977, 977, 978, 978, 978, 978, 979, 980,
980, 980, 980, 980, 980, 980, 980, 980, 981, 981,
982, 983, 983, 983, 984, 984, 985, 985, 985, 985,
985, 986, 986, 987, 987, 987, 987, 988, 988, 988,
989, 990, 990, 991, 992, 992, 993, 993, 993, 993,
993, 993, 993, 993, 993, 993, 993, 993, 994, 994,
995, 995, 995, 996, 996, 996, 996, 996, 997, 997,
997, 998, 998, 999, 999, 999, 1000, 1000, 1000, 1000,
1001, 1001, 1001, 1001, 1002, 1003, 1004, 1004, 1005, 1005,
1006, 1006, 1006, 1007, 1007, 1007, 1007, 1007, 1007, 1007,
1008, 1008, 1009, 1009, 1009, 1009, 1010, 1011, 1011, 1011,
1011, 1012, 1012, 1013, 1014, 1015, 1015, 1016, 1017, 1017,
1017, 1017, 1017, 1017, 1017, 1018, 1018, 1019, 1020, 1020,
1020, 1020, 1020, 1020, 1021, 1021, 1022, 1023, 1023, 1023,
1023, 1024, 1024, 1025, 1025, 1026, 1026, 1027, 1027, 1028,
1028, 1029, 1030, 1030, 1030, 1031, 1031, 1031, 1032, 1032,
1033, 1033, 1034, 1034, 1035, 1035, 1036, 1036, 1037, 1038,
1038, 1039, 1039, 1040, 1040, 1040, 1040, 1041, 1041, 1041,
1041, 1041, 1041, 1041, 1041, 1041, 1041, 1042, 1042, 1043,
1043, 1044, 1044, 1044, 1044, 1044, 1045, 1045, 1045, 1046,
1046, 1047, 1048, 1048, 1049, 1049, 1049, 1049, 1049, 1050,
1050, 1051, 1051, 1052, 1053, 1053, 1053, 1054, 1054, 1054,
1055, 1055, 1056, 1057, 1057, 1058, 1059, 1059, 1060, 1060,
1060, 1060, 1060, 1060, 1060, 1060, 1061, 1061, 1062, 1062,
1062, 1063, 1064, 1064, 1065, 1065, 1066, 1067, 1067, 1068,
1069, 1069, 1070, 1070, 1070, 1070, 1070, 1071, 1071, 1072,
1073, 1074, 1074, 1074, 1074, 1074, 1075, 1076, 1077, 1077,
1078, 1078, 1078, 1078, 1078, 1078, 1079, 1079, 1079, 1080,
1080, 1081, 1081, 1082, 1082, 1082, 1082, 1082, 1082, 1082,
1082, 1083, 1083, 1084, 1084, 1084, 1084, 1084, 1084, 1084,
1085, 1085, 1085, 1086, 1086, 1087, 1088, 1088, 1088, 1089,
1089, 1089, 1090, 1090, 1090, 1091, 1091, 1092, 1092, 1092,
1093, 1093, 1093, 1093, 1093, 1093, 1093, 1093, 1093, 1094,
1094, 1095, 1095, 1095, 1096, 1096, 1097, 1097, 1098, 1098,
1099, 1100, 1100, 1101, 1101, 1102, 1102, 1102, 1102, 1103,
1103, 1104, 1104, 1104, 1104, 1104, 1104, 1105, 1105, 1106,
1106, 1107, 1108, 1108, 1108, 1109, 1109, 1110, 1110, 1111,
1111, 1112, 1112, 1113, 1113, 1114, 1114, 1114, 1114, 1114,
1115, 1116, 1117, 1118, 1119, 1119, 1120, 1120, 1121, 1121,
1122, 1122, 1123, 1124, 1124, 1124, 1124, 1125, 1125, 1126,
1126, 1127, 1127, 1128, 1128, 1129, 1129, 1129, 1129, 1129,
1129, 1129, 1129, 1129, 1129, 1130, 1130, 1130, 1130, 1130,
1130, 1131, 1131, 1131, 1131, 1132, 1132, 1133, 1133, 1134,
1134, 1134, 1134, 1134, 1135, 1135, 1135, 1135, 1136, 1136,
1137, 1137, 1138, 1138, 1139, 1139, 1139, 1140, 1140, 1141,
1141, 1141, 1142, 1143, 1143, 1144, 1144, 1145, 1146, 1146,
1147, 1147, 1148, 1148, 1149, 1149, 1150, 1150, 1150, 1151,
1151, 1152, 1152, 1153, 1154, 1154, 1155, 1155, 1156, 1156,
1156, 1157, 1157, 1158, 1158, 1158, 1158, 1159, 1159, 1160,
1160, 1161, 1161, 1161, 1161, 1161, 1161, 1162, 1162, 1162,
1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 1164, 1164,
1164, 1165, 1165, 1166, 1166, 1167, 1167, 1167, 1167, 1167,
1167, 1167, 1167, 1167, 1167, 1167, 1168, 1168, 1169, 1169,
1170, 1170, 1171, 1172, 1173, 1173, 1174, 1174, 1175, 1176,
1177, 1177, 1177, 1177, 1177, 1177, 1178, 1178, 1179, 1179,
1179, 1179, 1180, 1181, 1181, 1181, 1182, 1182, 1182, 1182,
1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182,
1183, 1183, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184,
1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1185,
1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185,
1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185,
1185, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186,
1186, 1186, 1186, 1186, 1186, 1187, 1187, 1187, 1187, 1187,
1187, 1187, 1188, 1188, 1188, 1189, 1189, 1189, 1190, 1190,
1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
1190, 1191, 1191, 1192, 1192, 1192, 1192, 1193, 1194, 1194,
1195, 1195, 1196, 1196, 1197, 1197, 1197, 1198, 1198, 1198,
1199, 1199, 1199, 1199, 1200, 1200, 1201, 1201, 1202, 1202,
1203, 1203, 1204, 1204, 1205, 1206, 1206, 1206, 1207, 1208,
1208, 1209, 1209, 1210, 1210, 1210, 1210, 1211, 1211, 1212,
1212, 1212, 1212, 1212, 1213, 1213, 1213, 1213, 1213, 1214,
1214, 1214, 1215, 1215, 1216, 1217, 1217, 1217, 1218, 1218,
1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219,
1219, 1219, 1220, 1220, 1221, 1221, 1222, 1222, 1222, 1222,
1222, 1222, 1223, 1223, 1224, 1224, 1225, 1225, 1225, 1226,
1226, 1227, 1227, 1228, 1228, 1228, 1229, 1229, 1230, 1231,
1231, 1231, 1231, 1231, 1231, 1231, 1231, 1232, 1232, 1232,
1232, 1233, 1233, 1234, 1235, 1235, 1235, 1235, 1235, 1236,
1236, 1236, 1237, 1237, 1238, 1239, 1239, 1240, 1241, 1241,
1242, 1242, 1243, 1243, 1244, 1244, 1244, 1244, 1245, 1245,
1246, 1246, 1247, 1247, 1248, 1248, 1249, 1250, 1250, 1251,
1251, 1252, 1252, 1253, 1253, 1253, 1253, 1253, 1254, 1254,
1254, 1254, 1254, 1255, 1255, 1256, 1256, 1257, 1257, 1257,
1258, 1258, 1258, 1259, 1259, 1260, 1260, 1261, 1261, 1262,
1262, 1263, 1263, 1264, 1264, 1264, 1264, 1265, 1265, 1266,
1266, 1267, 1267, 1268, 1269, 1270, 1271, 1271, 1272, 1272,
1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272,
1272, 1272, 1272, 1273, 1274, 1274, 1274, 1274, 1275, 1276,
1276, 1276, 1276, 1277, 1277, 1278, 1278, 1278, 1278, 1279,
1279, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280,
1280, 1280, 1280, 1280, 1280, 1280, 1280, 1281, 1281, 1281,
1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281,
1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281,
1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281,
1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281,
1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1282,
1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282,
1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282,
1282, 1282, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283,
1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284,
1285, 1285, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286,
1288, 1287, 1289, 1287, 1290, 1291, 1291, 1291, 1291, 1292,
1292, 1292, 1292, 1293, 1293, 1294, 1295, 1296, 1296, 1297,
1297, 1297, 1298, 1298, 1299, 1299, 1300, 1300, 1301, 1301,
1301, 1301, 1302, 1302, 1302, 1303, 1304, 1304, 1305, 1305,
1306, 1306, 1306, 1306, 1307, 1307, 1308, 1309, 1310, 1311,
1312, 1312, 1313, 1314, 1314, 1315, 1315, 1315, 1315, 1315,
1317, 1316, 1318, 1319, 1320, 1320, 1321, 1321, 1321, 1321,
1322, 1322, 1324, 1323, 1326, 1325, 1327, 1325, 1325, 1328,
1328, 1329, 1329, 1329, 1330, 1330, 1330, 1330, 1331, 1331,
1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332,
1332, 1332, 1332, 1332, 1333, 1333, 1333, 1334, 1336, 1335,
1337, 1338, 1337, 1339, 1339, 1340, 1340, 1341, 1341, 1342,
1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1343, 1343,
1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1344, 1344,
1345, 1345, 1346, 1347, 1347, 1348, 1348, 1348, 1349, 1350,
1351, 1351, 1351, 1351, 1352, 1352, 1352, 1353, 1353, 1354,
1354, 1355, 1356, 1356, 1357, 1357, 1358, 1358, 1359, 1359,
1360, 1361, 1361, 1362, 1362, 1362, 1363, 1363, 1363, 1363,
1363, 1363, 1363, 1363, 1363, 1364, 1364, 1364, 1364, 1364,
1365, 1365, 1366, 1367, 1368, 1369, 1369, 1370, 1371, 1372,
1372, 1373, 1374, 1374, 1375, 1376, 1377, 1377, 1378, 1379,
1380, 1380, 1381, 1382, 1382, 1382, 1382, 1382, 1383, 1383,
1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383,
1383, 1383, 1383, 1384, 1384, 1385, 1385, 1386, 1386, 1386,
1388, 1387, 1389, 1389, 1391, 1390, 1392, 1392, 1392, 1393,
1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1394,
1394, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395,
1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395,
1395, 1395, 1395, 1396, 1396, 1396, 1396, 1396, 1396, 1397,
1397, 1397, 1397, 1397, 1397, 1397, 1398, 1399, 1399, 1399,
1399, 1399, 1399, 1399, 1399, 1400, 1400, 1400, 1400, 1400,
1400, 1400, 1401, 1401, 1401, 1401, 1401, 1401, 1402, 1402,
1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1403,
1403, 1403, 1403, 1403, 1403, 1403, 1403, 1404, 1404, 1404,
1404, 1404, 1404, 1404, 1405, 1405, 1405, 1406, 1406, 1406,
1406, 1406, 1406, 1407, 1407, 1408, 1409, 1409, 1410, 1410,
1411, 1412, 1413, 1414, 1414, 1414, 1415, 1416, 1417, 1418,
1419, 1420, 1421, 1421, 1422, 1422, 1423, 1423, 1423, 1424,
1424, 1425, 1425, 1426, 1426, 1427, 1427, 1427, 1427, 1427,
1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
1428, 1428, 1428, 1428, 1428, 1428, 1429, 1429, 1429, 1429,
1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430,
1431, 1431, 1431, 1431, 1432, 1432, 1433, 1433, 1434, 1434,
1435, 1435
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
static const yytype_int8 yyr2[] =
{
0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
1, 0, 1, 0, 1, 0, 1, 1, 0, 2,
5, 1, 1, 0, 2, 0, 2, 0, 2, 2,
3, 3, 1, 3, 3, 2, 1, 1, 2, 2,
2, 3, 3, 5, 5, 5, 0, 3, 5, 5,
5, 5, 3, 5, 3, 5, 3, 5, 5, 6,
1, 1, 6, 4, 9, 7, 2, 0, 1, 1,
1, 1, 1, 1, 2, 3, 3, 2, 5, 1,
3, 3, 3, 3, 1, 3, 3, 2, 2, 2,
2, 3, 3, 3, 3, 1, 3, 1, 3, 1,
1, 2, 2, 2, 1, 1, 1, 1, 1, 1,
1, 3, 5, 1, 1, 1, 1, 1, 0, 1,
1, 2, 1, 2, 3, 2, 1, 1, 2, 1,
2, 1, 3, 4, 5, 4, 2, 4, 1, 1,
1, 1, 1, 2, 2, 2, 2, 2, 4, 6,
4, 6, 10, 13, 4, 6, 4, 10, 13, 4,
6, 4, 6, 5, 7, 11, 14, 5, 7, 1,
3, 4, 4, 4, 3, 2, 5, 3, 6, 4,
6, 6, 5, 7, 6, 6, 5, 5, 5, 5,
9, 4, 5, 7, 6, 4, 8, 4, 2, 4,
3, 6, 4, 3, 3, 3, 2, 2, 3, 4,
4, 3, 3, 3, 3, 3, 3, 4, 4, 3,
2, 3, 2, 2, 3, 4, 3, 2, 2, 3,
4, 4, 4, 5, 1, 3, 2, 2, 0, 2,
0, 1, 1, 1, 3, 3, 2, 0, 1, 3,
3, 1, 5, 3, 1, 2, 1, 3, 2, 3,
6, 6, 10, 1, 2, 1, 3, 4, 1, 3,
4, 6, 4, 8, 2, 2, 11, 9, 1, 1,
1, 0, 1, 1, 1, 1, 3, 2, 0, 1,
1, 3, 3, 1, 1, 3, 3, 3, 3, 4,
3, 2, 1, 0, 3, 0, 1, 0, 1, 3,
2, 1, 1, 1, 3, 0, 1, 3, 1, 13,
16, 12, 15, 14, 17, 1, 1, 2, 2, 2,
2, 1, 0, 1, 0, 3, 0, 1, 3, 1,
3, 1, 1, 1, 1, 1, 6, 2, 4, 2,
2, 1, 0, 2, 2, 1, 0, 2, 0, 3,
1, 1, 2, 2, 1, 4, 4, 5, 2, 5,
7, 5, 2, 3, 0, 1, 2, 1, 2, 2,
2, 3, 3, 3, 0, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 3, 1, 5, 9, 3,
9, 4, 10, 11, 2, 0, 3, 0, 1, 3,
1, 4, 0, 2, 2, 2, 0, 1, 3, 3,
6, 4, 0, 1, 1, 2, 2, 0, 3, 3,
2, 1, 1, 3, 3, 4, 0, 1, 0, 6,
1, 3, 3, 3, 5, 2, 0, 2, 2, 0,
3, 4, 4, 0, 2, 0, 4, 0, 3, 8,
11, 1, 3, 1, 1, 3, 6, 8, 6, 2,
3, 0, 8, 11, 5, 1, 0, 6, 5, 8,
4, 6, 1, 0, 3, 0, 1, 2, 2, 2,
1, 2, 3, 2, 2, 2, 2, 3, 3, 3,
1, 3, 1, 0, 1, 2, 2, 1, 1, 3,
6, 10, 1, 0, 1, 2, 2, 0, 2, 2,
1, 0, 1, 0, 7, 2, 0, 3, 5, 5,
8, 2, 0, 2, 2, 2, 1, 5, 2, 0,
2, 6, 6, 6, 10, 6, 6, 6, 9, 9,
6, 6, 9, 6, 7, 2, 2, 2, 2, 1,
2, 1, 0, 7, 6, 4, 0, 1, 3, 4,
1, 3, 1, 2, 2, 2, 2, 1, 1, 10,
13, 2, 0, 2, 2, 1, 0, 5, 4, 4,
11, 14, 12, 15, 11, 2, 1, 4, 0, 8,
11, 1, 1, 7, 9, 8, 10, 8, 4, 0,
5, 0, 2, 0, 2, 0, 2, 0, 2, 0,
1, 1, 1, 1, 1, 8, 1, 1, 17, 21,
1, 1, 2, 1, 3, 1, 1, 1, 3, 1,
2, 0, 1, 2, 4, 1, 1, 1, 1, 1,
3, 0, 1, 0, 1, 1, 4, 0, 1, 1,
1, 3, 0, 1, 1, 1, 1, 2, 0, 0,
2, 2, 1, 2, 2, 2, 2, 11, 13, 1,
3, 5, 1, 3, 5, 1, 2, 2, 1, 8,
6, 5, 4, 4, 3, 7, 8, 6, 6, 6,
6, 6, 4, 7, 5, 8, 3, 1, 3, 3,
1, 1, 1, 1, 1, 1, 1, 3, 1, 3,
3, 1, 0, 1, 3, 7, 9, 9, 8, 3,
0, 13, 1, 3, 5, 5, 3, 6, 2, 1,
0, 2, 0, 2, 4, 0, 1, 0, 6, 8,
8, 1, 3, 5, 5, 7, 9, 7, 9, 5,
6, 6, 4, 6, 4, 6, 8, 4, 6, 4,
6, 5, 7, 1, 1, 1, 2, 1, 2, 1,
1, 1, 3, 3, 3, 3, 1, 1, 1, 1,
1, 2, 2, 1, 3, 2, 1, 1, 1, 1,
1, 1, 1, 3, 1, 2, 2, 3, 1, 3,
5, 2, 2, 0, 6, 6, 6, 6, 6, 6,
6, 6, 8, 9, 8, 6, 6, 9, 9, 9,
7, 10, 1, 1, 8, 8, 8, 8, 8, 8,
8, 9, 8, 8, 2, 0, 1, 1, 2, 2,
3, 4, 5, 4, 5, 3, 4, 3, 4, 1,
2, 3, 3, 3, 3, 4, 4, 3, 3, 4,
4, 4, 4, 1, 1, 1, 0, 8, 8, 11,
1, 1, 2, 4, 5, 1, 3, 2, 2, 2,
2, 2, 1, 3, 1, 3, 1, 2, 2, 4,
3, 2, 2, 2, 2, 2, 2, 3, 2, 2,
2, 2, 5, 5, 5, 5, 5, 1, 3, 1,
2, 3, 0, 5, 7, 6, 9, 3, 1, 2,
1, 1, 1, 3, 0, 5, 2, 0, 3, 3,
3, 7, 7, 10, 1, 1, 1, 1, 1, 1,
16, 19, 1, 0, 2, 0, 1, 3, 4, 5,
2, 2, 4, 4, 0, 1, 3, 2, 0, 1,
1, 0, 2, 2, 0, 9, 12, 7, 7, 2,
0, 3, 2, 1, 3, 1, 3, 2, 1, 1,
2, 3, 2, 1, 3, 3, 3, 2, 2, 1,
1, 1, 1, 2, 1, 1, 1, 1, 4, 5,
1, 3, 3, 1, 3, 3, 5, 6, 1, 3,
2, 1, 3, 1, 0, 1, 2, 4, 5, 1,
1, 1, 1, 3, 3, 2, 2, 1, 2, 2,
2, 2, 1, 2, 2, 2, 2, 1, 1, 1,
3, 2, 1, 4, 0, 3, 0, 1, 1, 3,
5, 2, 0, 2, 1, 3, 5, 5, 5, 1,
2, 1, 0, 4, 6, 4, 6, 4, 6, 4,
6, 4, 6, 3, 5, 5, 5, 1, 3, 1,
3, 2, 2, 1, 2, 1, 2, 11, 10, 10,
2, 2, 0, 9, 2, 0, 10, 11, 11, 5,
5, 8, 5, 5, 5, 1, 1, 1, 1, 3,
0, 5, 5, 6, 6, 6, 6, 6, 8, 8,
6, 6, 7, 9, 9, 8, 10, 6, 6, 6,
6, 6, 6, 6, 8, 6, 8, 6, 8, 7,
9, 6, 8, 7, 9, 8, 10, 8, 10, 9,
11, 8, 10, 9, 11, 8, 8, 7, 6, 6,
6, 6, 8, 8, 8, 8, 6, 9, 1, 0,
2, 0, 8, 8, 8, 10, 9, 8, 1, 0,
6, 6, 6, 6, 6, 6, 6, 9, 9, 6,
6, 6, 8, 6, 8, 8, 8, 8, 6, 8,
6, 8, 7, 9, 7, 9, 6, 7, 1, 3,
3, 3, 1, 1, 1, 1, 1, 7, 6, 6,
6, 6, 6, 6, 7, 7, 6, 9, 9, 6,
6, 6, 6, 6, 6, 8, 8, 8, 6, 7,
6, 6, 4, 7, 6, 4, 4, 4, 3, 4,
3, 1, 1, 3, 5, 5, 5, 5, 8, 5,
5, 6, 7, 7, 7, 4, 4, 5, 4, 6,
13, 1, 1, 3, 3, 1, 1, 1, 1, 1,
1, 1, 0, 1, 1, 1, 1, 1, 1, 0,
3, 2, 0, 2, 2, 2, 3, 3, 3, 3,
2, 3, 2, 5, 4, 3, 3, 3, 3, 3,
1, 1, 0, 3, 2, 2, 1, 2, 1, 3,
2, 1, 0, 2, 3, 0, 9, 11, 12, 14,
3, 4, 4, 0, 2, 5, 1, 0, 1, 2,
3, 3, 3, 1, 2, 1, 1, 1, 1, 1,
1, 0, 5, 4, 6, 6, 4, 3, 5, 7,
9, 1, 3, 1, 5, 4, 4, 6, 4, 6,
6, 5, 7, 9, 6, 1, 0, 6, 11, 11,
11, 13, 9, 11, 1, 1, 10, 4, 6, 2,
5, 2, 0, 6, 5, 3, 5, 1, 3, 1,
1, 2, 1, 1, 1, 1, 1, 0, 1, 0,
1, 0, 1, 0, 1, 0, 3, 0, 2, 1,
3, 1, 0, 2, 4, 3, 5, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 5, 4, 3,
0, 1, 1, 1, 1, 1, 4, 10, 13, 3,
0, 7, 1, 3, 1, 4, 4, 7, 2, 1,
1, 1, 3, 2, 8, 5, 0, 4, 3, 0,
3, 0, 7, 2, 0, 5, 3, 0, 2, 2,
2, 3, 1, 3, 1, 2, 1, 0, 1, 2,
0, 8, 1, 3, 3, 5, 2, 1, 3, 9,
1, 2, 5, 5, 6, 6, 7, 2, 0, 3,
1, 2, 5, 5, 8, 3, 4, 7, 1, 1,
0, 3, 2, 2, 2, 2, 0, 2, 2, 1,
1, 3, 3, 1, 2, 4, 4, 2, 3, 5,
5, 1, 1, 9, 9, 1, 2, 4, 4, 4,
2, 2, 3, 1, 3, 9, 1, 2, 0, 7,
7, 0, 10, 6, 0, 1, 0, 2, 1, 0,
3, 3, 4, 4, 4, 4, 3, 2, 1, 1,
0, 1, 1, 0, 1, 5, 1, 0, 1, 0,
3, 1, 3, 4, 3, 2, 2, 1, 1, 1,
0, 2, 4, 5, 6, 4, 5, 2, 3, 1,
1, 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 4, 0, 1, 3, 1, 1, 1, 1, 1,
2, 4, 4, 5, 2, 0, 1, 3, 1, 0,
1, 2, 3, 2, 4, 2, 3, 2, 0, 4,
5, 2, 0, 1, 3, 2, 3, 2, 3, 2,
3, 2, 3, 1, 4, 3, 4, 5, 4, 5,
4, 5, 2, 4, 1, 1, 0, 2, 0, 1,
4, 5, 4, 0, 2, 2, 2, 1, 1, 0,
5, 2, 1, 1, 2, 2, 4, 1, 3, 1,
2, 3, 6, 4, 0, 2, 6, 2, 1, 3,
4, 0, 2, 0, 2, 0, 2, 4, 0, 1,
0, 1, 3, 3, 7, 12, 1, 3, 2, 3,
3, 1, 2, 2, 2, 2, 1, 1, 3, 3,
2, 2, 3, 5, 6, 2, 3, 3, 4, 0,
1, 1, 1, 1, 1, 2, 4, 1, 1, 1,
1, 2, 3, 3, 0, 1, 1, 1, 1, 1,
2, 2, 2, 2, 2, 1, 3, 0, 1, 1,
1, 1, 5, 2, 1, 1, 1, 1, 4, 1,
2, 2, 1, 3, 3, 2, 1, 0, 5, 2,
5, 2, 1, 3, 3, 0, 1, 1, 1, 1,
1, 1, 3, 3, 3, 3, 3, 3, 3, 0,
1, 4, 1, 3, 3, 5, 2, 2, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 2, 3, 3, 2, 2, 3, 5, 4, 6,
3, 5, 4, 6, 4, 6, 5, 7, 3, 2,
4, 2, 3, 3, 4, 3, 4, 3, 4, 5,
6, 6, 7, 6, 7, 3, 4, 4, 6, 3,
3, 4, 3, 4, 4, 5, 4, 5, 1, 1,
3, 2, 2, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 2, 5, 6, 3,
4, 1, 1, 2, 4, 1, 1, 1, 2, 2,
2, 2, 1, 1, 4, 3, 5, 6, 8, 6,
6, 4, 4, 3, 1, 1, 1, 1, 5, 1,
1, 4, 1, 4, 1, 4, 1, 4, 1, 1,
1, 1, 1, 1, 1, 6, 4, 4, 6, 4,
4, 4, 4, 4, 6, 5, 5, 5, 4, 6,
4, 4, 4, 4, 5, 7, 7, 9, 5, 4,
6, 5, 7, 7, 8, 4, 7, 4, 6, 6,
4, 2, 3, 3, 3, 4, 0, 4, 1, 3,
3, 1, 1, 1, 1, 2, 0, 2, 2, 0,
2, 3, 3, 4, 2, 2, 5, 0, 5, 0,
2, 0, 1, 3, 3, 2, 2, 0, 6, 1,
0, 3, 0, 3, 3, 3, 0, 1, 4, 2,
2, 2, 2, 2, 3, 2, 2, 3, 0, 4,
3, 5, 4, 3, 5, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 4, 1, 4, 1, 4, 1, 2,
1, 2, 1, 3, 1, 3, 1, 3, 3, 1,
0, 1, 3, 3, 3, 2, 1, 3, 3, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 7, 5, 3, 5, 5, 3, 3, 5, 3,
2, 1, 1, 3, 5, 1, 2, 4, 2, 0,
1, 0, 1, 2, 2, 2, 3, 5, 1, 0,
1, 2, 0, 2, 1, 0, 2, 3, 0, 2,
0, 3, 0, 1, 2, 2, 2, 2, 3, 2,
3, 2, 0, 1, 3, 3, 3, 3, 3, 0,
3, 3, 0, 1, 3, 7, 7, 3, 0, 1,
0, 1, 3, 3, 2, 1, 1, 1, 3, 1,
2, 1, 3, 1, 1, 1, 1, 2, 1, 1,
1, 1, 1, 2, 6, 2, 3, 5, 1, 1,
1, 1, 1, 1, 1, 1, 2, 2, 1, 1,
1, 1, 1, 1, 3, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0, 2, 4, 3, 2, 1, 1, 1, 1, 1,
0, 8, 0, 11, 2, 5, 3, 2, 2, 3,
7, 1, 1, 1, 0, 2, 2, 1, 0, 1,
3, 1, 2, 0, 2, 0, 2, 0, 1, 3,
4, 3, 1, 1, 1, 1, 2, 0, 2, 4,
0, 2, 2, 2, 1, 1, 3, 7, 3, 1,
1, 1, 1, 2, 0, 1, 3, 3, 3, 3,
0, 4, 5, 5, 0, 1, 1, 1, 2, 2,
1, 2, 0, 7, 0, 5, 0, 4, 2, 2,
0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 5, 5, 5, 1, 1, 1, 1,
1, 2, 2, 1, 3, 2, 2, 3, 0, 5,
1, 0, 5, 2, 2, 1, 1, 1, 2, 2,
3, 1, 2, 2, 3, 3, 4, 2, 1, 2,
1, 1, 2, 2, 3, 1, 1, 1, 1, 0,
1, 3, 5, 0, 2, 0, 1, 2, 3, 2,
1, 1, 1, 0, 1, 1, 1, 1, 1, 2,
2, 3, 0, 1, 2, 1, 4, 3, 4, 3,
2, 1, 3, 1, 1, 1, 1, 2, 2, 1,
2, 2, 1, 1, 1, 4, 4, 4, 4, 4,
1, 0, 3, 3, 4, 1, 3, 3, 4, 1,
3, 3, 1, 1, 1, 6, 1, 3, 3, 6,
1, 3, 3, 1, 1, 2, 2, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 4, 4, 1, 1, 4, 4, 3,
0, 7, 1, 0, 0, 7, 3, 4, 3, 1,
1, 1, 2, 3, 5, 2, 2, 5, 2, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 3, 1, 0, 1, 2, 1,
2, 1, 1, 1, 2, 2, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 2, 3, 1,
2, 1, 3, 1, 3, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 2, 3, 2, 3,
1, 3, 3, 3, 3, 3, 3, 1, 1, 4,
0, 2, 2, 1, 2, 1, 0, 1, 1, 1,
0, 1
};
enum { YYENOMEM = -2 };
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
#define YYERROR goto yyerrorlab
#define YYRECOVERING() (!!yyerrstatus)
#define YYBACKUP(Token, Value) \
do \
if (yychar == YYEMPTY) \
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (yylen); \
yystate = *yyssp; \
goto yybackup; \
} \
else \
{ \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (0)
/* Backward compatibility with an undocumented macro.
Use YYerror or YYUNDEF. */
#define YYERRCODE YYUNDEF
/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
If N is 0, then set CURRENT to the empty location which ends
the previous symbol: RHS[0] (always defined). */
#ifndef YYLLOC_DEFAULT
# define YYLLOC_DEFAULT(Current, Rhs, N) \
do \
if (N) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
} \
else \
{ \
(Current).first_line = (Current).last_line = \
YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
while (0)
#endif
#define YYRHSLOC(Rhs, K) ((Rhs)[K])
/* Enable debugging if requested. */
#if YYDEBUG
# ifndef YYFPRINTF
# include /* INFRINGES ON USER NAME SPACE */
# define YYFPRINTF fprintf
# endif
# define YYDPRINTF(Args) \
do { \
if (yydebug) \
YYFPRINTF Args; \
} while (0)
/* YY_LOCATION_PRINT -- Print the location on the stream.
This macro was not mandated originally: define only if we know
we won't break user code: when these are the locations we know. */
# ifndef YY_LOCATION_PRINT
# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
/* Print *YYLOCP on YYO. Private, do not rely on its existence. */
YY_ATTRIBUTE_UNUSED
static int
yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp)
{
int res = 0;
int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0;
if (0 <= yylocp->first_line)
{
res += YYFPRINTF (yyo, "%d", yylocp->first_line);
if (0 <= yylocp->first_column)
res += YYFPRINTF (yyo, ".%d", yylocp->first_column);
}
if (0 <= yylocp->last_line)
{
if (yylocp->first_line < yylocp->last_line)
{
res += YYFPRINTF (yyo, "-%d", yylocp->last_line);
if (0 <= end_col)
res += YYFPRINTF (yyo, ".%d", end_col);
}
else if (0 <= end_col && yylocp->first_column < end_col)
res += YYFPRINTF (yyo, "-%d", end_col);
}
return res;
}
# define YY_LOCATION_PRINT(File, Loc) \
yy_location_print_ (File, &(Loc))
# else
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
# endif
# endif /* !defined YY_LOCATION_PRINT */
# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
do { \
if (yydebug) \
{ \
YYFPRINTF (stderr, "%s ", Title); \
yy_symbol_print (stderr, \
Kind, Value, Location); \
YYFPRINTF (stderr, "\n"); \
} \
} while (0)
/*-----------------------------------.
| Print this symbol's value on YYO. |
`-----------------------------------*/
static void
yy_symbol_value_print (FILE *yyo,
yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
{
FILE *yyoutput = yyo;
YY_USE (yyoutput);
YY_USE (yylocationp);
if (!yyvaluep)
return;
# ifdef YYPRINT
if (yykind < YYNTOKENS)
YYPRINT (yyo, yytoknum[yykind], *yyvaluep);
# endif
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
YY_USE (yykind);
YY_IGNORE_MAYBE_UNINITIALIZED_END
}
/*---------------------------.
| Print this symbol on YYO. |
`---------------------------*/
static void
yy_symbol_print (FILE *yyo,
yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
{
YYFPRINTF (yyo, "%s %s (",
yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind));
YY_LOCATION_PRINT (yyo, *yylocationp);
YYFPRINTF (yyo, ": ");
yy_symbol_value_print (yyo, yykind, yyvaluep, yylocationp);
YYFPRINTF (yyo, ")");
}
/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
| TOP (included). |
`------------------------------------------------------------------*/
static void
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
{
YYFPRINTF (stderr, "Stack now");
for (; yybottom <= yytop; yybottom++)
{
int yybot = *yybottom;
YYFPRINTF (stderr, " %d", yybot);
}
YYFPRINTF (stderr, "\n");
}
# define YY_STACK_PRINT(Bottom, Top) \
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
} while (0)
/*------------------------------------------------.
| Report that the YYRULE is going to be reduced. |
`------------------------------------------------*/
static void
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, YYLTYPE *yylsp,
int yyrule)
{
int yylno = yyrline[yyrule];
int yynrhs = yyr2[yyrule];
int yyi;
YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
yyrule - 1, yylno);
/* The symbols being reduced. */
for (yyi = 0; yyi < yynrhs; yyi++)
{
YYFPRINTF (stderr, " $%d = ", yyi + 1);
yy_symbol_print (stderr,
YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]),
&yyvsp[(yyi + 1) - (yynrhs)],
&(yylsp[(yyi + 1) - (yynrhs)]));
YYFPRINTF (stderr, "\n");
}
}
# define YY_REDUCE_PRINT(Rule) \
do { \
if (yydebug) \
yy_reduce_print (yyssp, yyvsp, yylsp, Rule); \
} while (0)
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
int yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args) ((void) 0)
# define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
# define YY_STACK_PRINT(Bottom, Top)
# define YY_REDUCE_PRINT(Rule)
#endif /* !YYDEBUG */
/* YYINITDEPTH -- initial size of the parser's stacks. */
#ifndef YYINITDEPTH
# define YYINITDEPTH 200
#endif
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if
YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
evaluated with infinite-precision integer arithmetic. */
#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif
/*-----------------------------------------------.
| Release the memory associated to this symbol. |
`-----------------------------------------------*/
static void
yydestruct (const char *yymsg,
yysymbol_kind_t yykind, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
{
YY_USE (yyvaluep);
YY_USE (yylocationp);
if (!yymsg)
yymsg = "Deleting";
YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
YY_USE (yykind);
YY_IGNORE_MAYBE_UNINITIALIZED_END
}
/* Lookahead token kind. */
int yychar;
/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Location data for the lookahead symbol. */
YYLTYPE yylloc
# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
= { 1, 1, 1, 1 }
# endif
;
/* Number of syntax errors so far. */
int yynerrs;
/*----------.
| yyparse. |
`----------*/
int
yyparse (void)
{
yy_state_fast_t yystate = 0;
/* Number of tokens to shift before error messages enabled. */
int yyerrstatus = 0;
/* Refer to the stacks through separate pointers, to allow yyoverflow
to reallocate them elsewhere. */
/* Their size. */
YYPTRDIFF_T yystacksize = YYINITDEPTH;
/* The state stack: array, bottom, top. */
yy_state_t yyssa[YYINITDEPTH];
yy_state_t *yyss = yyssa;
yy_state_t *yyssp = yyss;
/* The semantic value stack: array, bottom, top. */
YYSTYPE yyvsa[YYINITDEPTH];
YYSTYPE *yyvs = yyvsa;
YYSTYPE *yyvsp = yyvs;
/* The location stack: array, bottom, top. */
YYLTYPE yylsa[YYINITDEPTH];
YYLTYPE *yyls = yylsa;
YYLTYPE *yylsp = yyls;
int yyn;
/* The return value of yyparse. */
int yyresult;
/* Lookahead symbol kind. */
yysymbol_kind_t yytoken = YYSYMBOL_YYEMPTY;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
YYLTYPE yyloc;
/* The locations where the error started and ended. */
YYLTYPE yyerror_range[3];
#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
/* The number of symbols on the RHS of the reduced rule.
Keep to zero when no symbol should be popped. */
int yylen = 0;
YYDPRINTF ((stderr, "Starting parse\n"));
yychar = YYEMPTY; /* Cause a token to be read. */
yylsp[0] = yylloc;
goto yysetstate;
/*------------------------------------------------------------.
| yynewstate -- push a new state, which is found in yystate. |
`------------------------------------------------------------*/
yynewstate:
/* In all cases, when you get here, the value and location stacks
have just been pushed. So pushing a state here evens the stacks. */
yyssp++;
/*--------------------------------------------------------------------.
| yysetstate -- set current state (the top of the stack) to yystate. |
`--------------------------------------------------------------------*/
yysetstate:
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
YY_IGNORE_USELESS_CAST_BEGIN
*yyssp = YY_CAST (yy_state_t, yystate);
YY_IGNORE_USELESS_CAST_END
YY_STACK_PRINT (yyss, yyssp);
if (yyss + yystacksize - 1 <= yyssp)
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
goto yyexhaustedlab;
#else
{
/* Get the current used size of the three stacks, in elements. */
YYPTRDIFF_T yysize = yyssp - yyss + 1;
# if defined yyoverflow
{
/* Give user a chance to reallocate the stack. Use copies of
these so that the &'s don't force the real ones into
memory. */
yy_state_t *yyss1 = yyss;
YYSTYPE *yyvs1 = yyvs;
YYLTYPE *yyls1 = yyls;
/* Each stack pointer address is followed by the size of the
data in use in that stack, in bytes. This used to be a
conditional around just the two extra args, but that might
be undefined if yyoverflow is a macro. */
yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * YYSIZEOF (*yyssp),
&yyvs1, yysize * YYSIZEOF (*yyvsp),
&yyls1, yysize * YYSIZEOF (*yylsp),
&yystacksize);
yyss = yyss1;
yyvs = yyvs1;
yyls = yyls1;
}
# else /* defined YYSTACK_RELOCATE */
/* Extend the stack our own way. */
if (YYMAXDEPTH <= yystacksize)
goto yyexhaustedlab;
yystacksize *= 2;
if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
yy_state_t *yyss1 = yyss;
union yyalloc *yyptr =
YY_CAST (union yyalloc *,
YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
if (! yyptr)
goto yyexhaustedlab;
YYSTACK_RELOCATE (yyss_alloc, yyss);
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
YYSTACK_RELOCATE (yyls_alloc, yyls);
# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
}
# endif
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
yylsp = yyls + yysize - 1;
YY_IGNORE_USELESS_CAST_BEGIN
YYDPRINTF ((stderr, "Stack size increased to %ld\n",
YY_CAST (long, yystacksize)));
YY_IGNORE_USELESS_CAST_END
if (yyss + yystacksize - 1 <= yyssp)
YYABORT;
}
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
if (yystate == YYFINAL)
YYACCEPT;
goto yybackup;
/*-----------.
| yybackup. |
`-----------*/
yybackup:
/* Do appropriate processing given the current state. Read a
lookahead token if we need one and don't already have one. */
/* First try to decide what to do without reference to lookahead token. */
yyn = yypact[yystate];
if (yypact_value_is_default (yyn))
goto yydefault;
/* Not known => get a lookahead token if don't already have one. */
/* YYCHAR is either empty, or end-of-input, or a valid lookahead. */
if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token\n"));
yychar = yylex ();
}
if (yychar <= YYEOF)
{
yychar = YYEOF;
yytoken = YYSYMBOL_YYEOF;
YYDPRINTF ((stderr, "Now at end of input.\n"));
}
else if (yychar == YYerror)
{
/* The scanner already issued an error message, process directly
to error recovery. But do not keep the error token as
lookahead, it is too special and may lead us to an endless
loop in error recovery. */
yychar = YYUNDEF;
yytoken = YYSYMBOL_YYerror;
yyerror_range[1] = yylloc;
goto yyerrlab1;
}
else
{
yytoken = YYTRANSLATE (yychar);
YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
}
/* If the proper action on seeing token YYTOKEN is to reduce or to
detect an error, take that action. */
yyn += yytoken;
if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
goto yydefault;
yyn = yytable[yyn];
if (yyn <= 0)
{
if (yytable_value_is_error (yyn))
goto yyerrlab;
yyn = -yyn;
goto yyreduce;
}
/* Count tokens shifted since error; after three, turn off error
status. */
if (yyerrstatus)
yyerrstatus--;
/* Shift the lookahead token. */
YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
yystate = yyn;
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
*++yyvsp = yylval;
YY_IGNORE_MAYBE_UNINITIALIZED_END
*++yylsp = yylloc;
/* Discard the shifted token. */
yychar = YYEMPTY;
goto yynewstate;
/*-----------------------------------------------------------.
| yydefault -- do the default action for the current state. |
`-----------------------------------------------------------*/
yydefault:
yyn = yydefact[yystate];
if (yyn == 0)
goto yyerrlab;
goto yyreduce;
/*-----------------------------.
| yyreduce -- do a reduction. |
`-----------------------------*/
yyreduce:
/* yyn is the number of a rule to reduce with. */
yylen = yyr2[yyn];
/* If YYLEN is nonzero, implement the default value of the action:
'$$ = $1'.
Otherwise, the following line sets YYVAL to garbage.
This behavior is undocumented and Bison
users should not rely upon it. Assigning to YYVAL
unconditionally makes the parser a bit smaller, and it avoids a
GCC warning that YYVAL may be used uninitialized. */
yyval = yyvsp[1-yylen];
/* Default location. */
YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
yyerror_range[1] = yyloc;
YY_REDUCE_PRINT (yyn);
switch (yyn)
{
case 3: /* toplevel_stmt: stmt */
#line 1702 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 37656 "preproc.c"
break;
case 4: /* toplevel_stmt: TransactionStmtLegacy */
#line 1706 "preproc.y"
{
fprintf(base_yyout, "{ ECPGtrans(__LINE__, %s, \"%s\");", connection ? connection : "NULL", (yyvsp[0].str));
whenever_action(2);
free((yyvsp[0].str));
}
#line 37666 "preproc.c"
break;
case 5: /* stmt: AlterEventTrigStmt */
#line 1716 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37672 "preproc.c"
break;
case 6: /* stmt: AlterCollationStmt */
#line 1718 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37678 "preproc.c"
break;
case 7: /* stmt: AlterDatabaseStmt */
#line 1720 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37684 "preproc.c"
break;
case 8: /* stmt: AlterDatabaseSetStmt */
#line 1722 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37690 "preproc.c"
break;
case 9: /* stmt: AlterDefaultPrivilegesStmt */
#line 1724 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37696 "preproc.c"
break;
case 10: /* stmt: AlterDomainStmt */
#line 1726 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37702 "preproc.c"
break;
case 11: /* stmt: AlterEnumStmt */
#line 1728 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37708 "preproc.c"
break;
case 12: /* stmt: AlterExtensionStmt */
#line 1730 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37714 "preproc.c"
break;
case 13: /* stmt: AlterExtensionContentsStmt */
#line 1732 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37720 "preproc.c"
break;
case 14: /* stmt: AlterFdwStmt */
#line 1734 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37726 "preproc.c"
break;
case 15: /* stmt: AlterForeignServerStmt */
#line 1736 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37732 "preproc.c"
break;
case 16: /* stmt: AlterFunctionStmt */
#line 1738 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37738 "preproc.c"
break;
case 17: /* stmt: AlterGroupStmt */
#line 1740 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37744 "preproc.c"
break;
case 18: /* stmt: AlterObjectDependsStmt */
#line 1742 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37750 "preproc.c"
break;
case 19: /* stmt: AlterObjectSchemaStmt */
#line 1744 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37756 "preproc.c"
break;
case 20: /* stmt: AlterOwnerStmt */
#line 1746 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37762 "preproc.c"
break;
case 21: /* stmt: AlterOperatorStmt */
#line 1748 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37768 "preproc.c"
break;
case 22: /* stmt: AlterTypeStmt */
#line 1750 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37774 "preproc.c"
break;
case 23: /* stmt: AlterPolicyStmt */
#line 1752 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37780 "preproc.c"
break;
case 24: /* stmt: AlterSeqStmt */
#line 1754 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37786 "preproc.c"
break;
case 25: /* stmt: AlterSystemStmt */
#line 1756 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37792 "preproc.c"
break;
case 26: /* stmt: AlterTableStmt */
#line 1758 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37798 "preproc.c"
break;
case 27: /* stmt: AlterTblSpcStmt */
#line 1760 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37804 "preproc.c"
break;
case 28: /* stmt: AlterCompositeTypeStmt */
#line 1762 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37810 "preproc.c"
break;
case 29: /* stmt: AlterPublicationStmt */
#line 1764 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37816 "preproc.c"
break;
case 30: /* stmt: AlterRoleSetStmt */
#line 1766 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37822 "preproc.c"
break;
case 31: /* stmt: AlterRoleStmt */
#line 1768 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37828 "preproc.c"
break;
case 32: /* stmt: AlterSubscriptionStmt */
#line 1770 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37834 "preproc.c"
break;
case 33: /* stmt: AlterStatsStmt */
#line 1772 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37840 "preproc.c"
break;
case 34: /* stmt: AlterTSConfigurationStmt */
#line 1774 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37846 "preproc.c"
break;
case 35: /* stmt: AlterTSDictionaryStmt */
#line 1776 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37852 "preproc.c"
break;
case 36: /* stmt: AlterUserMappingStmt */
#line 1778 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37858 "preproc.c"
break;
case 37: /* stmt: AnalyzeStmt */
#line 1780 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37864 "preproc.c"
break;
case 38: /* stmt: CallStmt */
#line 1782 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37870 "preproc.c"
break;
case 39: /* stmt: CheckPointStmt */
#line 1784 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37876 "preproc.c"
break;
case 40: /* stmt: ClosePortalStmt */
#line 1786 "preproc.y"
{
if (INFORMIX_MODE)
{
if (pg_strcasecmp((yyvsp[0].str)+strlen("close "), "database") == 0)
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in CLOSE DATABASE statement");
fprintf(base_yyout, "{ ECPGdisconnect(__LINE__, \"CURRENT\");");
whenever_action(2);
free((yyvsp[0].str));
break;
}
}
output_statement((yyvsp[0].str), 0, ECPGst_normal);
}
#line 37898 "preproc.c"
break;
case 41: /* stmt: ClusterStmt */
#line 1804 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37904 "preproc.c"
break;
case 42: /* stmt: CommentStmt */
#line 1806 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37910 "preproc.c"
break;
case 43: /* stmt: ConstraintsSetStmt */
#line 1808 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37916 "preproc.c"
break;
case 44: /* stmt: CopyStmt */
#line 1810 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37922 "preproc.c"
break;
case 45: /* stmt: CreateAmStmt */
#line 1812 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37928 "preproc.c"
break;
case 46: /* stmt: CreateAsStmt */
#line 1814 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37934 "preproc.c"
break;
case 47: /* stmt: CreateAssertionStmt */
#line 1816 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37940 "preproc.c"
break;
case 48: /* stmt: CreateCastStmt */
#line 1818 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37946 "preproc.c"
break;
case 49: /* stmt: CreateConversionStmt */
#line 1820 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37952 "preproc.c"
break;
case 50: /* stmt: CreateDomainStmt */
#line 1822 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37958 "preproc.c"
break;
case 51: /* stmt: CreateExtensionStmt */
#line 1824 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37964 "preproc.c"
break;
case 52: /* stmt: CreateFdwStmt */
#line 1826 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37970 "preproc.c"
break;
case 53: /* stmt: CreateForeignServerStmt */
#line 1828 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37976 "preproc.c"
break;
case 54: /* stmt: CreateForeignTableStmt */
#line 1830 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37982 "preproc.c"
break;
case 55: /* stmt: CreateFunctionStmt */
#line 1832 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37988 "preproc.c"
break;
case 56: /* stmt: CreateGroupStmt */
#line 1834 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 37994 "preproc.c"
break;
case 57: /* stmt: CreateMatViewStmt */
#line 1836 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38000 "preproc.c"
break;
case 58: /* stmt: CreateOpClassStmt */
#line 1838 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38006 "preproc.c"
break;
case 59: /* stmt: CreateOpFamilyStmt */
#line 1840 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38012 "preproc.c"
break;
case 60: /* stmt: CreatePublicationStmt */
#line 1842 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38018 "preproc.c"
break;
case 61: /* stmt: AlterOpFamilyStmt */
#line 1844 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38024 "preproc.c"
break;
case 62: /* stmt: CreatePolicyStmt */
#line 1846 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38030 "preproc.c"
break;
case 63: /* stmt: CreatePLangStmt */
#line 1848 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38036 "preproc.c"
break;
case 64: /* stmt: CreateSchemaStmt */
#line 1850 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38042 "preproc.c"
break;
case 65: /* stmt: CreateSeqStmt */
#line 1852 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38048 "preproc.c"
break;
case 66: /* stmt: CreateStmt */
#line 1854 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38054 "preproc.c"
break;
case 67: /* stmt: CreateSubscriptionStmt */
#line 1856 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38060 "preproc.c"
break;
case 68: /* stmt: CreateStatsStmt */
#line 1858 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38066 "preproc.c"
break;
case 69: /* stmt: CreateTableSpaceStmt */
#line 1860 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38072 "preproc.c"
break;
case 70: /* stmt: CreateTransformStmt */
#line 1862 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38078 "preproc.c"
break;
case 71: /* stmt: CreateTrigStmt */
#line 1864 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38084 "preproc.c"
break;
case 72: /* stmt: CreateEventTrigStmt */
#line 1866 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38090 "preproc.c"
break;
case 73: /* stmt: CreateRoleStmt */
#line 1868 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38096 "preproc.c"
break;
case 74: /* stmt: CreateUserStmt */
#line 1870 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38102 "preproc.c"
break;
case 75: /* stmt: CreateUserMappingStmt */
#line 1872 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38108 "preproc.c"
break;
case 76: /* stmt: CreatedbStmt */
#line 1874 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38114 "preproc.c"
break;
case 77: /* stmt: DeallocateStmt */
#line 1876 "preproc.y"
{
output_deallocate_prepare_statement((yyvsp[0].str));
}
#line 38122 "preproc.c"
break;
case 78: /* stmt: DeclareCursorStmt */
#line 1880 "preproc.y"
{ output_simple_statement((yyvsp[0].str), (strncmp((yyvsp[0].str), "ECPGset_var", strlen("ECPGset_var")) == 0) ? 4 : 0); }
#line 38128 "preproc.c"
break;
case 79: /* stmt: DefineStmt */
#line 1882 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38134 "preproc.c"
break;
case 80: /* stmt: DeleteStmt */
#line 1884 "preproc.y"
{ output_statement((yyvsp[0].str), 1, ECPGst_prepnormal); }
#line 38140 "preproc.c"
break;
case 81: /* stmt: DiscardStmt */
#line 1886 "preproc.y"
{ output_statement((yyvsp[0].str), 1, ECPGst_normal); }
#line 38146 "preproc.c"
break;
case 82: /* stmt: DoStmt */
#line 1888 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38152 "preproc.c"
break;
case 83: /* stmt: DropCastStmt */
#line 1890 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38158 "preproc.c"
break;
case 84: /* stmt: DropOpClassStmt */
#line 1892 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38164 "preproc.c"
break;
case 85: /* stmt: DropOpFamilyStmt */
#line 1894 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38170 "preproc.c"
break;
case 86: /* stmt: DropOwnedStmt */
#line 1896 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38176 "preproc.c"
break;
case 87: /* stmt: DropStmt */
#line 1898 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38182 "preproc.c"
break;
case 88: /* stmt: DropSubscriptionStmt */
#line 1900 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38188 "preproc.c"
break;
case 89: /* stmt: DropTableSpaceStmt */
#line 1902 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38194 "preproc.c"
break;
case 90: /* stmt: DropTransformStmt */
#line 1904 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38200 "preproc.c"
break;
case 91: /* stmt: DropRoleStmt */
#line 1906 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38206 "preproc.c"
break;
case 92: /* stmt: DropUserMappingStmt */
#line 1908 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38212 "preproc.c"
break;
case 93: /* stmt: DropdbStmt */
#line 1910 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38218 "preproc.c"
break;
case 94: /* stmt: ExecuteStmt */
#line 1912 "preproc.y"
{
check_declared_list((yyvsp[0].exec).name);
if ((yyvsp[0].exec).type == NULL || strlen((yyvsp[0].exec).type) == 0)
output_statement((yyvsp[0].exec).name, 1, ECPGst_execute);
else
{
if ((yyvsp[0].exec).name[0] != '"')
/* case of char_variable */
add_variable_to_tail(&argsinsert, find_variable((yyvsp[0].exec).name), &no_indicator);
else
{
/* case of ecpg_ident or CSTRING */
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
char *str = mm_strdup((yyvsp[0].exec).name + 1);
/* It must be cut off double quotation because new_variable() double-quotes. */
str[strlen(str) - 1] = '\0';
sprintf(length, "%zu", strlen(str));
add_variable_to_tail(&argsinsert, new_variable(str, ECPGmake_simple_type(ECPGt_const, length, 0), 0), &no_indicator);
}
output_statement(cat_str(3, mm_strdup("execute"), mm_strdup("$0"), (yyvsp[0].exec).type), 0, ECPGst_exec_with_exprlist);
}
}
#line 38246 "preproc.c"
break;
case 95: /* stmt: ExplainStmt */
#line 1936 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38252 "preproc.c"
break;
case 96: /* stmt: FetchStmt */
#line 1938 "preproc.y"
{ output_statement((yyvsp[0].str), 1, ECPGst_normal); }
#line 38258 "preproc.c"
break;
case 97: /* stmt: GrantStmt */
#line 1940 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38264 "preproc.c"
break;
case 98: /* stmt: GrantRoleStmt */
#line 1942 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38270 "preproc.c"
break;
case 99: /* stmt: ImportForeignSchemaStmt */
#line 1944 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38276 "preproc.c"
break;
case 100: /* stmt: IndexStmt */
#line 1946 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38282 "preproc.c"
break;
case 101: /* stmt: InsertStmt */
#line 1948 "preproc.y"
{ output_statement((yyvsp[0].str), 1, ECPGst_prepnormal); }
#line 38288 "preproc.c"
break;
case 102: /* stmt: ListenStmt */
#line 1950 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38294 "preproc.c"
break;
case 103: /* stmt: RefreshMatViewStmt */
#line 1952 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38300 "preproc.c"
break;
case 104: /* stmt: LoadStmt */
#line 1954 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38306 "preproc.c"
break;
case 105: /* stmt: LockStmt */
#line 1956 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38312 "preproc.c"
break;
case 106: /* stmt: MergeStmt */
#line 1958 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38318 "preproc.c"
break;
case 107: /* stmt: NotifyStmt */
#line 1960 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38324 "preproc.c"
break;
case 108: /* stmt: PrepareStmt */
#line 1962 "preproc.y"
{
check_declared_list((yyvsp[0].prep).name);
if ((yyvsp[0].prep).type == NULL)
output_prepare_statement((yyvsp[0].prep).name, (yyvsp[0].prep).stmt);
else if (strlen((yyvsp[0].prep).type) == 0)
{
char *stmt = cat_str(3, mm_strdup("\""), (yyvsp[0].prep).stmt, mm_strdup("\""));
output_prepare_statement((yyvsp[0].prep).name, stmt);
}
else
{
if ((yyvsp[0].prep).name[0] != '"')
/* case of char_variable */
add_variable_to_tail(&argsinsert, find_variable((yyvsp[0].prep).name), &no_indicator);
else
{
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
char *str = mm_strdup((yyvsp[0].prep).name + 1);
/* It must be cut off double quotation because new_variable() double-quotes. */
str[strlen(str) - 1] = '\0';
sprintf(length, "%zu", strlen(str));
add_variable_to_tail(&argsinsert, new_variable(str, ECPGmake_simple_type(ECPGt_const, length, 0), 0), &no_indicator);
}
output_statement(cat_str(5, mm_strdup("prepare"), mm_strdup("$0"), (yyvsp[0].prep).type, mm_strdup("as"), (yyvsp[0].prep).stmt), 0, ECPGst_prepare);
}
}
#line 38356 "preproc.c"
break;
case 109: /* stmt: ReassignOwnedStmt */
#line 1990 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38362 "preproc.c"
break;
case 110: /* stmt: ReindexStmt */
#line 1992 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38368 "preproc.c"
break;
case 111: /* stmt: RemoveAggrStmt */
#line 1994 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38374 "preproc.c"
break;
case 112: /* stmt: RemoveFuncStmt */
#line 1996 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38380 "preproc.c"
break;
case 113: /* stmt: RemoveOperStmt */
#line 1998 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38386 "preproc.c"
break;
case 114: /* stmt: RenameStmt */
#line 2000 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38392 "preproc.c"
break;
case 115: /* stmt: RevokeStmt */
#line 2002 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38398 "preproc.c"
break;
case 116: /* stmt: RevokeRoleStmt */
#line 2004 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38404 "preproc.c"
break;
case 117: /* stmt: RuleStmt */
#line 2006 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38410 "preproc.c"
break;
case 118: /* stmt: SecLabelStmt */
#line 2008 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38416 "preproc.c"
break;
case 119: /* stmt: SelectStmt */
#line 2010 "preproc.y"
{ output_statement((yyvsp[0].str), 1, ECPGst_prepnormal); }
#line 38422 "preproc.c"
break;
case 120: /* stmt: TransactionStmt */
#line 2012 "preproc.y"
{
fprintf(base_yyout, "{ ECPGtrans(__LINE__, %s, \"%s\");", connection ? connection : "NULL", (yyvsp[0].str));
whenever_action(2);
free((yyvsp[0].str));
}
#line 38432 "preproc.c"
break;
case 121: /* stmt: TruncateStmt */
#line 2018 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38438 "preproc.c"
break;
case 122: /* stmt: UnlistenStmt */
#line 2020 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38444 "preproc.c"
break;
case 123: /* stmt: UpdateStmt */
#line 2022 "preproc.y"
{ output_statement((yyvsp[0].str), 1, ECPGst_prepnormal); }
#line 38450 "preproc.c"
break;
case 124: /* stmt: VacuumStmt */
#line 2024 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38456 "preproc.c"
break;
case 125: /* stmt: VariableResetStmt */
#line 2026 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38462 "preproc.c"
break;
case 126: /* stmt: VariableSetStmt */
#line 2028 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38468 "preproc.c"
break;
case 127: /* stmt: VariableShowStmt */
#line 2030 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38474 "preproc.c"
break;
case 128: /* stmt: ViewStmt */
#line 2032 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_normal); }
#line 38480 "preproc.c"
break;
case 129: /* stmt: ECPGAllocateDescr */
#line 2034 "preproc.y"
{
fprintf(base_yyout,"ECPGallocate_desc(__LINE__, %s);",(yyvsp[0].str));
whenever_action(0);
free((yyvsp[0].str));
}
#line 38490 "preproc.c"
break;
case 130: /* stmt: ECPGConnect */
#line 2040 "preproc.y"
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in CONNECT statement");
fprintf(base_yyout, "{ ECPGconnect(__LINE__, %d, %s, %d); ", compat, (yyvsp[0].str), autocommit);
reset_variables();
whenever_action(2);
free((yyvsp[0].str));
}
#line 38504 "preproc.c"
break;
case 131: /* stmt: ECPGDeclareStmt */
#line 2050 "preproc.y"
{
output_simple_statement((yyvsp[0].str), 0);
}
#line 38512 "preproc.c"
break;
case 132: /* stmt: ECPGCursorStmt */
#line 2054 "preproc.y"
{
output_simple_statement((yyvsp[0].str), (strncmp((yyvsp[0].str), "ECPGset_var", strlen("ECPGset_var")) == 0) ? 4 : 0);
}
#line 38520 "preproc.c"
break;
case 133: /* stmt: ECPGDeallocateDescr */
#line 2058 "preproc.y"
{
fprintf(base_yyout,"ECPGdeallocate_desc(__LINE__, %s);",(yyvsp[0].str));
whenever_action(0);
free((yyvsp[0].str));
}
#line 38530 "preproc.c"
break;
case 134: /* stmt: ECPGDeclare */
#line 2064 "preproc.y"
{
output_simple_statement((yyvsp[0].str), 0);
}
#line 38538 "preproc.c"
break;
case 135: /* stmt: ECPGDescribe */
#line 2068 "preproc.y"
{
check_declared_list((yyvsp[0].describe).stmt_name);
fprintf(base_yyout, "{ ECPGdescribe(__LINE__, %d, %d, %s, %s,", compat, (yyvsp[0].describe).input, connection ? connection : "NULL", (yyvsp[0].describe).stmt_name);
dump_variables(argsresult, 1);
fputs("ECPGt_EORT);", base_yyout);
fprintf(base_yyout, "}");
output_line_number();
free((yyvsp[0].describe).stmt_name);
}
#line 38554 "preproc.c"
break;
case 136: /* stmt: ECPGDisconnect */
#line 2080 "preproc.y"
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in DISCONNECT statement");
fprintf(base_yyout, "{ ECPGdisconnect(__LINE__, %s);",
(yyvsp[0].str) ? (yyvsp[0].str) : "\"CURRENT\"");
whenever_action(2);
free((yyvsp[0].str));
}
#line 38568 "preproc.c"
break;
case 137: /* stmt: ECPGExecuteImmediateStmt */
#line 2089 "preproc.y"
{ output_statement((yyvsp[0].str), 0, ECPGst_exec_immediate); }
#line 38574 "preproc.c"
break;
case 138: /* stmt: ECPGFree */
#line 2091 "preproc.y"
{
const char *con = connection ? connection : "NULL";
if (strcmp((yyvsp[0].str), "all") == 0)
fprintf(base_yyout, "{ ECPGdeallocate_all(__LINE__, %d, %s);", compat, con);
else if ((yyvsp[0].str)[0] == ':')
fprintf(base_yyout, "{ ECPGdeallocate(__LINE__, %d, %s, %s);", compat, con, (yyvsp[0].str)+1);
else
fprintf(base_yyout, "{ ECPGdeallocate(__LINE__, %d, %s, \"%s\");", compat, con, (yyvsp[0].str));
whenever_action(2);
free((yyvsp[0].str));
}
#line 38592 "preproc.c"
break;
case 139: /* stmt: ECPGGetDescriptor */
#line 2105 "preproc.y"
{
lookup_descriptor((yyvsp[0].descriptor).name, connection);
output_get_descr((yyvsp[0].descriptor).name, (yyvsp[0].descriptor).str);
free((yyvsp[0].descriptor).name);
free((yyvsp[0].descriptor).str);
}
#line 38603 "preproc.c"
break;
case 140: /* stmt: ECPGGetDescriptorHeader */
#line 2112 "preproc.y"
{
lookup_descriptor((yyvsp[0].str), connection);
output_get_descr_header((yyvsp[0].str));
free((yyvsp[0].str));
}
#line 38613 "preproc.c"
break;
case 141: /* stmt: ECPGOpen */
#line 2118 "preproc.y"
{
struct cursor *ptr;
if ((ptr = add_additional_variables((yyvsp[0].str), true)) != NULL)
{
connection = ptr->connection ? mm_strdup(ptr->connection) : NULL;
output_statement(mm_strdup(ptr->command), 0, ECPGst_normal);
ptr->opened = true;
}
}
#line 38628 "preproc.c"
break;
case 142: /* stmt: ECPGSetAutocommit */
#line 2129 "preproc.y"
{
fprintf(base_yyout, "{ ECPGsetcommit(__LINE__, \"%s\", %s);", (yyvsp[0].str), connection ? connection : "NULL");
whenever_action(2);
free((yyvsp[0].str));
}
#line 38638 "preproc.c"
break;
case 143: /* stmt: ECPGSetConnection */
#line 2135 "preproc.y"
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in SET CONNECTION statement");
fprintf(base_yyout, "{ ECPGsetconn(__LINE__, %s);", (yyvsp[0].str));
whenever_action(2);
free((yyvsp[0].str));
}
#line 38651 "preproc.c"
break;
case 144: /* stmt: ECPGSetDescriptor */
#line 2144 "preproc.y"
{
lookup_descriptor((yyvsp[0].descriptor).name, connection);
output_set_descr((yyvsp[0].descriptor).name, (yyvsp[0].descriptor).str);
free((yyvsp[0].descriptor).name);
free((yyvsp[0].descriptor).str);
}
#line 38662 "preproc.c"
break;
case 145: /* stmt: ECPGSetDescriptorHeader */
#line 2151 "preproc.y"
{
lookup_descriptor((yyvsp[0].str), connection);
output_set_descr_header((yyvsp[0].str));
free((yyvsp[0].str));
}
#line 38672 "preproc.c"
break;
case 146: /* stmt: ECPGTypedef */
#line 2157 "preproc.y"
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in TYPE statement");
fprintf(base_yyout, "%s", (yyvsp[0].str));
free((yyvsp[0].str));
output_line_number();
}
#line 38685 "preproc.c"
break;
case 147: /* stmt: ECPGVar */
#line 2166 "preproc.y"
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in VAR statement");
output_simple_statement((yyvsp[0].str), 0);
}
#line 38696 "preproc.c"
break;
case 148: /* stmt: ECPGWhenever */
#line 2173 "preproc.y"
{
if (connection)
mmerror(PARSE_ERROR, ET_ERROR, "AT option not allowed in WHENEVER statement");
output_simple_statement((yyvsp[0].str), 0);
}
#line 38707 "preproc.c"
break;
case 149: /* stmt: %empty */
#line 2180 "preproc.y"
{ (yyval.str) = NULL; }
#line 38713 "preproc.c"
break;
case 150: /* opt_single_name: ColId */
#line 2186 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 38721 "preproc.c"
break;
case 151: /* opt_single_name: %empty */
#line 2190 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38728 "preproc.c"
break;
case 152: /* opt_qualified_name: any_name */
#line 2197 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 38736 "preproc.c"
break;
case 153: /* opt_qualified_name: %empty */
#line 2201 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38743 "preproc.c"
break;
case 154: /* opt_concurrently: CONCURRENTLY */
#line 2208 "preproc.y"
{
(yyval.str) = mm_strdup("concurrently");
}
#line 38751 "preproc.c"
break;
case 155: /* opt_concurrently: %empty */
#line 2212 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38758 "preproc.c"
break;
case 156: /* opt_drop_behavior: CASCADE */
#line 2219 "preproc.y"
{
(yyval.str) = mm_strdup("cascade");
}
#line 38766 "preproc.c"
break;
case 157: /* opt_drop_behavior: RESTRICT */
#line 2223 "preproc.y"
{
(yyval.str) = mm_strdup("restrict");
}
#line 38774 "preproc.c"
break;
case 158: /* opt_drop_behavior: %empty */
#line 2227 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38781 "preproc.c"
break;
case 159: /* CallStmt: CALL func_application */
#line 2234 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("call"),(yyvsp[0].str));
}
#line 38789 "preproc.c"
break;
case 160: /* CreateRoleStmt: CREATE ROLE RoleId opt_with OptRoleList */
#line 2242 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create role"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 38797 "preproc.c"
break;
case 161: /* opt_with: WITH */
#line 2250 "preproc.y"
{
(yyval.str) = mm_strdup("with");
}
#line 38805 "preproc.c"
break;
case 162: /* opt_with: WITH_LA */
#line 2254 "preproc.y"
{
(yyval.str) = mm_strdup("with");
}
#line 38813 "preproc.c"
break;
case 163: /* opt_with: %empty */
#line 2258 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38820 "preproc.c"
break;
case 164: /* OptRoleList: OptRoleList CreateOptRoleElem */
#line 2265 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 38828 "preproc.c"
break;
case 165: /* OptRoleList: %empty */
#line 2269 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38835 "preproc.c"
break;
case 166: /* AlterOptRoleList: AlterOptRoleList AlterOptRoleElem */
#line 2276 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 38843 "preproc.c"
break;
case 167: /* AlterOptRoleList: %empty */
#line 2280 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 38850 "preproc.c"
break;
case 168: /* AlterOptRoleElem: PASSWORD ecpg_sconst */
#line 2287 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("password"),(yyvsp[0].str));
}
#line 38858 "preproc.c"
break;
case 169: /* AlterOptRoleElem: PASSWORD NULL_P */
#line 2291 "preproc.y"
{
(yyval.str) = mm_strdup("password null");
}
#line 38866 "preproc.c"
break;
case 170: /* AlterOptRoleElem: ENCRYPTED PASSWORD ecpg_sconst */
#line 2295 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("encrypted password"),(yyvsp[0].str));
}
#line 38874 "preproc.c"
break;
case 171: /* AlterOptRoleElem: UNENCRYPTED PASSWORD ecpg_sconst */
#line 2299 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = cat_str(2,mm_strdup("unencrypted password"),(yyvsp[0].str));
}
#line 38883 "preproc.c"
break;
case 172: /* AlterOptRoleElem: INHERIT */
#line 2304 "preproc.y"
{
(yyval.str) = mm_strdup("inherit");
}
#line 38891 "preproc.c"
break;
case 173: /* AlterOptRoleElem: CONNECTION LIMIT SignedIconst */
#line 2308 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("connection limit"),(yyvsp[0].str));
}
#line 38899 "preproc.c"
break;
case 174: /* AlterOptRoleElem: VALID UNTIL ecpg_sconst */
#line 2312 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("valid until"),(yyvsp[0].str));
}
#line 38907 "preproc.c"
break;
case 175: /* AlterOptRoleElem: USER role_list */
#line 2316 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("user"),(yyvsp[0].str));
}
#line 38915 "preproc.c"
break;
case 176: /* AlterOptRoleElem: ecpg_ident */
#line 2320 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 38923 "preproc.c"
break;
case 177: /* CreateOptRoleElem: AlterOptRoleElem */
#line 2328 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 38931 "preproc.c"
break;
case 178: /* CreateOptRoleElem: SYSID Iconst */
#line 2332 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("sysid"),(yyvsp[0].str));
}
#line 38939 "preproc.c"
break;
case 179: /* CreateOptRoleElem: ADMIN role_list */
#line 2336 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("admin"),(yyvsp[0].str));
}
#line 38947 "preproc.c"
break;
case 180: /* CreateOptRoleElem: ROLE role_list */
#line 2340 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("role"),(yyvsp[0].str));
}
#line 38955 "preproc.c"
break;
case 181: /* CreateOptRoleElem: IN_P ROLE role_list */
#line 2344 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("in role"),(yyvsp[0].str));
}
#line 38963 "preproc.c"
break;
case 182: /* CreateOptRoleElem: IN_P GROUP_P role_list */
#line 2348 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("in group"),(yyvsp[0].str));
}
#line 38971 "preproc.c"
break;
case 183: /* CreateUserStmt: CREATE USER RoleId opt_with OptRoleList */
#line 2356 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create user"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 38979 "preproc.c"
break;
case 184: /* AlterRoleStmt: ALTER ROLE RoleSpec opt_with AlterOptRoleList */
#line 2364 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter role"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 38987 "preproc.c"
break;
case 185: /* AlterRoleStmt: ALTER USER RoleSpec opt_with AlterOptRoleList */
#line 2368 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter user"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 38995 "preproc.c"
break;
case 186: /* opt_in_database: %empty */
#line 2376 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 39002 "preproc.c"
break;
case 187: /* opt_in_database: IN_P DATABASE name */
#line 2379 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("in database"),(yyvsp[0].str));
}
#line 39010 "preproc.c"
break;
case 188: /* AlterRoleSetStmt: ALTER ROLE RoleSpec opt_in_database SetResetClause */
#line 2387 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter role"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39018 "preproc.c"
break;
case 189: /* AlterRoleSetStmt: ALTER ROLE ALL opt_in_database SetResetClause */
#line 2391 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter role all"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39026 "preproc.c"
break;
case 190: /* AlterRoleSetStmt: ALTER USER RoleSpec opt_in_database SetResetClause */
#line 2395 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter user"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39034 "preproc.c"
break;
case 191: /* AlterRoleSetStmt: ALTER USER ALL opt_in_database SetResetClause */
#line 2399 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter user all"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39042 "preproc.c"
break;
case 192: /* DropRoleStmt: DROP ROLE role_list */
#line 2407 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop role"),(yyvsp[0].str));
}
#line 39050 "preproc.c"
break;
case 193: /* DropRoleStmt: DROP ROLE IF_P EXISTS role_list */
#line 2411 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop role if exists"),(yyvsp[0].str));
}
#line 39058 "preproc.c"
break;
case 194: /* DropRoleStmt: DROP USER role_list */
#line 2415 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop user"),(yyvsp[0].str));
}
#line 39066 "preproc.c"
break;
case 195: /* DropRoleStmt: DROP USER IF_P EXISTS role_list */
#line 2419 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop user if exists"),(yyvsp[0].str));
}
#line 39074 "preproc.c"
break;
case 196: /* DropRoleStmt: DROP GROUP_P role_list */
#line 2423 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop group"),(yyvsp[0].str));
}
#line 39082 "preproc.c"
break;
case 197: /* DropRoleStmt: DROP GROUP_P IF_P EXISTS role_list */
#line 2427 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop group if exists"),(yyvsp[0].str));
}
#line 39090 "preproc.c"
break;
case 198: /* CreateGroupStmt: CREATE GROUP_P RoleId opt_with OptRoleList */
#line 2435 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create group"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39098 "preproc.c"
break;
case 199: /* AlterGroupStmt: ALTER GROUP_P RoleSpec add_drop USER role_list */
#line 2443 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter group"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("user"),(yyvsp[0].str));
}
#line 39106 "preproc.c"
break;
case 200: /* add_drop: ADD_P */
#line 2451 "preproc.y"
{
(yyval.str) = mm_strdup("add");
}
#line 39114 "preproc.c"
break;
case 201: /* add_drop: DROP */
#line 2455 "preproc.y"
{
(yyval.str) = mm_strdup("drop");
}
#line 39122 "preproc.c"
break;
case 202: /* CreateSchemaStmt: CREATE SCHEMA opt_single_name AUTHORIZATION RoleSpec OptSchemaEltList */
#line 2463 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create schema"),(yyvsp[-3].str),mm_strdup("authorization"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39130 "preproc.c"
break;
case 203: /* CreateSchemaStmt: CREATE SCHEMA ColId OptSchemaEltList */
#line 2467 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create schema"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39138 "preproc.c"
break;
case 204: /* CreateSchemaStmt: CREATE SCHEMA IF_P NOT EXISTS opt_single_name AUTHORIZATION RoleSpec OptSchemaEltList */
#line 2471 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create schema if not exists"),(yyvsp[-3].str),mm_strdup("authorization"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39146 "preproc.c"
break;
case 205: /* CreateSchemaStmt: CREATE SCHEMA IF_P NOT EXISTS ColId OptSchemaEltList */
#line 2475 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create schema if not exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39154 "preproc.c"
break;
case 206: /* OptSchemaEltList: OptSchemaEltList schema_stmt */
#line 2483 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39162 "preproc.c"
break;
case 207: /* OptSchemaEltList: %empty */
#line 2487 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 39169 "preproc.c"
break;
case 208: /* schema_stmt: CreateStmt */
#line 2494 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39177 "preproc.c"
break;
case 209: /* schema_stmt: IndexStmt */
#line 2498 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39185 "preproc.c"
break;
case 210: /* schema_stmt: CreateSeqStmt */
#line 2502 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39193 "preproc.c"
break;
case 211: /* schema_stmt: CreateTrigStmt */
#line 2506 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39201 "preproc.c"
break;
case 212: /* schema_stmt: GrantStmt */
#line 2510 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39209 "preproc.c"
break;
case 213: /* schema_stmt: ViewStmt */
#line 2514 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39217 "preproc.c"
break;
case 214: /* VariableSetStmt: SET set_rest */
#line 2522 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set"),(yyvsp[0].str));
}
#line 39225 "preproc.c"
break;
case 215: /* VariableSetStmt: SET LOCAL set_rest */
#line 2526 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set local"),(yyvsp[0].str));
}
#line 39233 "preproc.c"
break;
case 216: /* VariableSetStmt: SET SESSION set_rest */
#line 2530 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set session"),(yyvsp[0].str));
}
#line 39241 "preproc.c"
break;
case 217: /* set_rest: TRANSACTION transaction_mode_list */
#line 2538 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("transaction"),(yyvsp[0].str));
}
#line 39249 "preproc.c"
break;
case 218: /* set_rest: SESSION CHARACTERISTICS AS TRANSACTION transaction_mode_list */
#line 2542 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("session characteristics as transaction"),(yyvsp[0].str));
}
#line 39257 "preproc.c"
break;
case 219: /* set_rest: set_rest_more */
#line 2546 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39265 "preproc.c"
break;
case 220: /* generic_set: var_name TO var_list */
#line 2554 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 39273 "preproc.c"
break;
case 221: /* generic_set: var_name '=' var_list */
#line 2558 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 39281 "preproc.c"
break;
case 222: /* generic_set: var_name TO DEFAULT */
#line 2562 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("to default"));
}
#line 39289 "preproc.c"
break;
case 223: /* generic_set: var_name '=' DEFAULT */
#line 2566 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("= default"));
}
#line 39297 "preproc.c"
break;
case 224: /* set_rest_more: generic_set */
#line 2574 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39305 "preproc.c"
break;
case 225: /* set_rest_more: var_name FROM CURRENT_P */
#line 2578 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("from current"));
}
#line 39313 "preproc.c"
break;
case 226: /* set_rest_more: TIME ZONE zone_value */
#line 2582 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("time zone"),(yyvsp[0].str));
}
#line 39321 "preproc.c"
break;
case 227: /* set_rest_more: CATALOG_P ecpg_sconst */
#line 2586 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = cat_str(2,mm_strdup("catalog"),(yyvsp[0].str));
}
#line 39330 "preproc.c"
break;
case 228: /* set_rest_more: SCHEMA ecpg_sconst */
#line 2591 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("schema"),(yyvsp[0].str));
}
#line 39338 "preproc.c"
break;
case 229: /* set_rest_more: NAMES opt_encoding */
#line 2595 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("names"),(yyvsp[0].str));
}
#line 39346 "preproc.c"
break;
case 230: /* set_rest_more: ROLE NonReservedWord_or_Sconst */
#line 2599 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("role"),(yyvsp[0].str));
}
#line 39354 "preproc.c"
break;
case 231: /* set_rest_more: SESSION AUTHORIZATION NonReservedWord_or_Sconst */
#line 2603 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("session authorization"),(yyvsp[0].str));
}
#line 39362 "preproc.c"
break;
case 232: /* set_rest_more: SESSION AUTHORIZATION DEFAULT */
#line 2607 "preproc.y"
{
(yyval.str) = mm_strdup("session authorization default");
}
#line 39370 "preproc.c"
break;
case 233: /* set_rest_more: XML_P OPTION document_or_content */
#line 2611 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("xml option"),(yyvsp[0].str));
}
#line 39378 "preproc.c"
break;
case 234: /* set_rest_more: TRANSACTION SNAPSHOT ecpg_sconst */
#line 2615 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("transaction snapshot"),(yyvsp[0].str));
}
#line 39386 "preproc.c"
break;
case 235: /* var_name: ECPGColId */
#line 2623 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39394 "preproc.c"
break;
case 236: /* var_name: var_name '.' ColId */
#line 2627 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("."),(yyvsp[0].str));
}
#line 39402 "preproc.c"
break;
case 237: /* var_list: var_value */
#line 2635 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39410 "preproc.c"
break;
case 238: /* var_list: var_list ',' var_value */
#line 2639 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 39418 "preproc.c"
break;
case 239: /* var_value: opt_boolean_or_string */
#line 2647 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39426 "preproc.c"
break;
case 240: /* var_value: NumericOnly */
#line 2651 "preproc.y"
{
if ((yyvsp[0].str)[0] == '$')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = (yyvsp[0].str);
}
#line 39440 "preproc.c"
break;
case 241: /* iso_level: READ UNCOMMITTED */
#line 2665 "preproc.y"
{
(yyval.str) = mm_strdup("read uncommitted");
}
#line 39448 "preproc.c"
break;
case 242: /* iso_level: READ COMMITTED */
#line 2669 "preproc.y"
{
(yyval.str) = mm_strdup("read committed");
}
#line 39456 "preproc.c"
break;
case 243: /* iso_level: REPEATABLE READ */
#line 2673 "preproc.y"
{
(yyval.str) = mm_strdup("repeatable read");
}
#line 39464 "preproc.c"
break;
case 244: /* iso_level: SERIALIZABLE */
#line 2677 "preproc.y"
{
(yyval.str) = mm_strdup("serializable");
}
#line 39472 "preproc.c"
break;
case 245: /* opt_boolean_or_string: TRUE_P */
#line 2685 "preproc.y"
{
(yyval.str) = mm_strdup("true");
}
#line 39480 "preproc.c"
break;
case 246: /* opt_boolean_or_string: FALSE_P */
#line 2689 "preproc.y"
{
(yyval.str) = mm_strdup("false");
}
#line 39488 "preproc.c"
break;
case 247: /* opt_boolean_or_string: ON */
#line 2693 "preproc.y"
{
(yyval.str) = mm_strdup("on");
}
#line 39496 "preproc.c"
break;
case 248: /* opt_boolean_or_string: NonReservedWord_or_Sconst */
#line 2697 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39504 "preproc.c"
break;
case 249: /* zone_value: ecpg_sconst */
#line 2705 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39512 "preproc.c"
break;
case 250: /* zone_value: ecpg_ident */
#line 2709 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39520 "preproc.c"
break;
case 251: /* zone_value: ConstInterval ecpg_sconst opt_interval */
#line 2713 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39528 "preproc.c"
break;
case 252: /* zone_value: ConstInterval '(' Iconst ')' ecpg_sconst */
#line 2717 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 39536 "preproc.c"
break;
case 253: /* zone_value: NumericOnly */
#line 2721 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39544 "preproc.c"
break;
case 254: /* zone_value: DEFAULT */
#line 2725 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 39552 "preproc.c"
break;
case 255: /* zone_value: LOCAL */
#line 2729 "preproc.y"
{
(yyval.str) = mm_strdup("local");
}
#line 39560 "preproc.c"
break;
case 256: /* opt_encoding: ecpg_sconst */
#line 2737 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39568 "preproc.c"
break;
case 257: /* opt_encoding: DEFAULT */
#line 2741 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 39576 "preproc.c"
break;
case 258: /* opt_encoding: %empty */
#line 2745 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 39583 "preproc.c"
break;
case 259: /* NonReservedWord_or_Sconst: NonReservedWord */
#line 2752 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39591 "preproc.c"
break;
case 260: /* NonReservedWord_or_Sconst: ecpg_sconst */
#line 2756 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39599 "preproc.c"
break;
case 261: /* VariableResetStmt: RESET reset_rest */
#line 2764 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("reset"),(yyvsp[0].str));
}
#line 39607 "preproc.c"
break;
case 262: /* reset_rest: generic_reset */
#line 2772 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39615 "preproc.c"
break;
case 263: /* reset_rest: TIME ZONE */
#line 2776 "preproc.y"
{
(yyval.str) = mm_strdup("time zone");
}
#line 39623 "preproc.c"
break;
case 264: /* reset_rest: TRANSACTION ISOLATION LEVEL */
#line 2780 "preproc.y"
{
(yyval.str) = mm_strdup("transaction isolation level");
}
#line 39631 "preproc.c"
break;
case 265: /* reset_rest: SESSION AUTHORIZATION */
#line 2784 "preproc.y"
{
(yyval.str) = mm_strdup("session authorization");
}
#line 39639 "preproc.c"
break;
case 266: /* generic_reset: var_name */
#line 2792 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39647 "preproc.c"
break;
case 267: /* generic_reset: ALL */
#line 2796 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 39655 "preproc.c"
break;
case 268: /* SetResetClause: SET set_rest */
#line 2804 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set"),(yyvsp[0].str));
}
#line 39663 "preproc.c"
break;
case 269: /* SetResetClause: VariableResetStmt */
#line 2808 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39671 "preproc.c"
break;
case 270: /* FunctionSetResetClause: SET set_rest_more */
#line 2816 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set"),(yyvsp[0].str));
}
#line 39679 "preproc.c"
break;
case 271: /* FunctionSetResetClause: VariableResetStmt */
#line 2820 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39687 "preproc.c"
break;
case 272: /* VariableShowStmt: SHOW var_name ecpg_into */
#line 2828 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("show"),(yyvsp[-1].str));
}
#line 39695 "preproc.c"
break;
case 273: /* VariableShowStmt: SHOW TIME ZONE ecpg_into */
#line 2832 "preproc.y"
{
(yyval.str) = mm_strdup("show time zone");
}
#line 39703 "preproc.c"
break;
case 274: /* VariableShowStmt: SHOW TRANSACTION ISOLATION LEVEL ecpg_into */
#line 2836 "preproc.y"
{
(yyval.str) = mm_strdup("show transaction isolation level");
}
#line 39711 "preproc.c"
break;
case 275: /* VariableShowStmt: SHOW SESSION AUTHORIZATION ecpg_into */
#line 2840 "preproc.y"
{
(yyval.str) = mm_strdup("show session authorization");
}
#line 39719 "preproc.c"
break;
case 276: /* VariableShowStmt: SHOW ALL */
#line 2844 "preproc.y"
{
mmerror(PARSE_ERROR, ET_ERROR, "SHOW ALL is not implemented");
(yyval.str) = EMPTY;
}
#line 39728 "preproc.c"
break;
case 277: /* ConstraintsSetStmt: SET CONSTRAINTS constraints_set_list constraints_set_mode */
#line 2853 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("set constraints"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39736 "preproc.c"
break;
case 278: /* constraints_set_list: ALL */
#line 2861 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 39744 "preproc.c"
break;
case 279: /* constraints_set_list: qualified_name_list */
#line 2865 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39752 "preproc.c"
break;
case 280: /* constraints_set_mode: DEFERRED */
#line 2873 "preproc.y"
{
(yyval.str) = mm_strdup("deferred");
}
#line 39760 "preproc.c"
break;
case 281: /* constraints_set_mode: IMMEDIATE */
#line 2877 "preproc.y"
{
(yyval.str) = mm_strdup("immediate");
}
#line 39768 "preproc.c"
break;
case 282: /* CheckPointStmt: CHECKPOINT */
#line 2885 "preproc.y"
{
(yyval.str) = mm_strdup("checkpoint");
}
#line 39776 "preproc.c"
break;
case 283: /* DiscardStmt: DISCARD ALL */
#line 2893 "preproc.y"
{
(yyval.str) = mm_strdup("discard all");
}
#line 39784 "preproc.c"
break;
case 284: /* DiscardStmt: DISCARD TEMP */
#line 2897 "preproc.y"
{
(yyval.str) = mm_strdup("discard temp");
}
#line 39792 "preproc.c"
break;
case 285: /* DiscardStmt: DISCARD TEMPORARY */
#line 2901 "preproc.y"
{
(yyval.str) = mm_strdup("discard temporary");
}
#line 39800 "preproc.c"
break;
case 286: /* DiscardStmt: DISCARD PLANS */
#line 2905 "preproc.y"
{
(yyval.str) = mm_strdup("discard plans");
}
#line 39808 "preproc.c"
break;
case 287: /* DiscardStmt: DISCARD SEQUENCES */
#line 2909 "preproc.y"
{
(yyval.str) = mm_strdup("discard sequences");
}
#line 39816 "preproc.c"
break;
case 288: /* AlterTableStmt: ALTER TABLE relation_expr alter_table_cmds */
#line 2917 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter table"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39824 "preproc.c"
break;
case 289: /* AlterTableStmt: ALTER TABLE IF_P EXISTS relation_expr alter_table_cmds */
#line 2921 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter table if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39832 "preproc.c"
break;
case 290: /* AlterTableStmt: ALTER TABLE relation_expr partition_cmd */
#line 2925 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter table"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39840 "preproc.c"
break;
case 291: /* AlterTableStmt: ALTER TABLE IF_P EXISTS relation_expr partition_cmd */
#line 2929 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter table if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39848 "preproc.c"
break;
case 292: /* AlterTableStmt: ALTER TABLE ALL IN_P TABLESPACE name SET TABLESPACE name opt_nowait */
#line 2933 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter table all in tablespace"),(yyvsp[-4].str),mm_strdup("set tablespace"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39856 "preproc.c"
break;
case 293: /* AlterTableStmt: ALTER TABLE ALL IN_P TABLESPACE name OWNED BY role_list SET TABLESPACE name opt_nowait */
#line 2937 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter table all in tablespace"),(yyvsp[-7].str),mm_strdup("owned by"),(yyvsp[-4].str),mm_strdup("set tablespace"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39864 "preproc.c"
break;
case 294: /* AlterTableStmt: ALTER INDEX qualified_name alter_table_cmds */
#line 2941 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter index"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39872 "preproc.c"
break;
case 295: /* AlterTableStmt: ALTER INDEX IF_P EXISTS qualified_name alter_table_cmds */
#line 2945 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter index if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39880 "preproc.c"
break;
case 296: /* AlterTableStmt: ALTER INDEX qualified_name index_partition_cmd */
#line 2949 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter index"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39888 "preproc.c"
break;
case 297: /* AlterTableStmt: ALTER INDEX ALL IN_P TABLESPACE name SET TABLESPACE name opt_nowait */
#line 2953 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter index all in tablespace"),(yyvsp[-4].str),mm_strdup("set tablespace"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39896 "preproc.c"
break;
case 298: /* AlterTableStmt: ALTER INDEX ALL IN_P TABLESPACE name OWNED BY role_list SET TABLESPACE name opt_nowait */
#line 2957 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter index all in tablespace"),(yyvsp[-7].str),mm_strdup("owned by"),(yyvsp[-4].str),mm_strdup("set tablespace"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39904 "preproc.c"
break;
case 299: /* AlterTableStmt: ALTER SEQUENCE qualified_name alter_table_cmds */
#line 2961 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter sequence"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39912 "preproc.c"
break;
case 300: /* AlterTableStmt: ALTER SEQUENCE IF_P EXISTS qualified_name alter_table_cmds */
#line 2965 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter sequence if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39920 "preproc.c"
break;
case 301: /* AlterTableStmt: ALTER VIEW qualified_name alter_table_cmds */
#line 2969 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter view"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39928 "preproc.c"
break;
case 302: /* AlterTableStmt: ALTER VIEW IF_P EXISTS qualified_name alter_table_cmds */
#line 2973 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter view if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39936 "preproc.c"
break;
case 303: /* AlterTableStmt: ALTER MATERIALIZED VIEW qualified_name alter_table_cmds */
#line 2977 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter materialized view"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39944 "preproc.c"
break;
case 304: /* AlterTableStmt: ALTER MATERIALIZED VIEW IF_P EXISTS qualified_name alter_table_cmds */
#line 2981 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter materialized view if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39952 "preproc.c"
break;
case 305: /* AlterTableStmt: ALTER MATERIALIZED VIEW ALL IN_P TABLESPACE name SET TABLESPACE name opt_nowait */
#line 2985 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter materialized view all in tablespace"),(yyvsp[-4].str),mm_strdup("set tablespace"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39960 "preproc.c"
break;
case 306: /* AlterTableStmt: ALTER MATERIALIZED VIEW ALL IN_P TABLESPACE name OWNED BY role_list SET TABLESPACE name opt_nowait */
#line 2989 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter materialized view all in tablespace"),(yyvsp[-7].str),mm_strdup("owned by"),(yyvsp[-4].str),mm_strdup("set tablespace"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39968 "preproc.c"
break;
case 307: /* AlterTableStmt: ALTER FOREIGN TABLE relation_expr alter_table_cmds */
#line 2993 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter foreign table"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39976 "preproc.c"
break;
case 308: /* AlterTableStmt: ALTER FOREIGN TABLE IF_P EXISTS relation_expr alter_table_cmds */
#line 2997 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter foreign table if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 39984 "preproc.c"
break;
case 309: /* alter_table_cmds: alter_table_cmd */
#line 3005 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 39992 "preproc.c"
break;
case 310: /* alter_table_cmds: alter_table_cmds ',' alter_table_cmd */
#line 3009 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 40000 "preproc.c"
break;
case 311: /* partition_cmd: ATTACH PARTITION qualified_name PartitionBoundSpec */
#line 3017 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("attach partition"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40008 "preproc.c"
break;
case 312: /* partition_cmd: DETACH PARTITION qualified_name opt_concurrently */
#line 3021 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("detach partition"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40016 "preproc.c"
break;
case 313: /* partition_cmd: DETACH PARTITION qualified_name FINALIZE */
#line 3025 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("detach partition"),(yyvsp[-1].str),mm_strdup("finalize"));
}
#line 40024 "preproc.c"
break;
case 314: /* index_partition_cmd: ATTACH PARTITION qualified_name */
#line 3033 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("attach partition"),(yyvsp[0].str));
}
#line 40032 "preproc.c"
break;
case 315: /* alter_table_cmd: ADD_P columnDef */
#line 3041 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("add"),(yyvsp[0].str));
}
#line 40040 "preproc.c"
break;
case 316: /* alter_table_cmd: ADD_P IF_P NOT EXISTS columnDef */
#line 3045 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("add if not exists"),(yyvsp[0].str));
}
#line 40048 "preproc.c"
break;
case 317: /* alter_table_cmd: ADD_P COLUMN columnDef */
#line 3049 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("add column"),(yyvsp[0].str));
}
#line 40056 "preproc.c"
break;
case 318: /* alter_table_cmd: ADD_P COLUMN IF_P NOT EXISTS columnDef */
#line 3053 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("add column if not exists"),(yyvsp[0].str));
}
#line 40064 "preproc.c"
break;
case 319: /* alter_table_cmd: ALTER opt_column ColId alter_column_default */
#line 3057 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40072 "preproc.c"
break;
case 320: /* alter_table_cmd: ALTER opt_column ColId DROP NOT NULL_P */
#line 3061 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("drop not null"));
}
#line 40080 "preproc.c"
break;
case 321: /* alter_table_cmd: ALTER opt_column ColId SET NOT NULL_P */
#line 3065 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("set not null"));
}
#line 40088 "preproc.c"
break;
case 322: /* alter_table_cmd: ALTER opt_column ColId DROP EXPRESSION */
#line 3069 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("drop expression"));
}
#line 40096 "preproc.c"
break;
case 323: /* alter_table_cmd: ALTER opt_column ColId DROP EXPRESSION IF_P EXISTS */
#line 3073 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("drop expression if exists"));
}
#line 40104 "preproc.c"
break;
case 324: /* alter_table_cmd: ALTER opt_column ColId SET STATISTICS SignedIconst */
#line 3077 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("set statistics"),(yyvsp[0].str));
}
#line 40112 "preproc.c"
break;
case 325: /* alter_table_cmd: ALTER opt_column Iconst SET STATISTICS SignedIconst */
#line 3081 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("set statistics"),(yyvsp[0].str));
}
#line 40120 "preproc.c"
break;
case 326: /* alter_table_cmd: ALTER opt_column ColId SET reloptions */
#line 3085 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 40128 "preproc.c"
break;
case 327: /* alter_table_cmd: ALTER opt_column ColId RESET reloptions */
#line 3089 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("reset"),(yyvsp[0].str));
}
#line 40136 "preproc.c"
break;
case 328: /* alter_table_cmd: ALTER opt_column ColId SET column_storage */
#line 3093 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 40144 "preproc.c"
break;
case 329: /* alter_table_cmd: ALTER opt_column ColId SET column_compression */
#line 3097 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 40152 "preproc.c"
break;
case 330: /* alter_table_cmd: ALTER opt_column ColId ADD_P GENERATED generated_when AS IDENTITY_P OptParenthesizedSeqOptList */
#line 3101 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter"),(yyvsp[-7].str),(yyvsp[-6].str),mm_strdup("add generated"),(yyvsp[-3].str),mm_strdup("as identity"),(yyvsp[0].str));
}
#line 40160 "preproc.c"
break;
case 331: /* alter_table_cmd: ALTER opt_column ColId alter_identity_column_option_list */
#line 3105 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40168 "preproc.c"
break;
case 332: /* alter_table_cmd: ALTER opt_column ColId DROP IDENTITY_P */
#line 3109 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("drop identity"));
}
#line 40176 "preproc.c"
break;
case 333: /* alter_table_cmd: ALTER opt_column ColId DROP IDENTITY_P IF_P EXISTS */
#line 3113 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("drop identity if exists"));
}
#line 40184 "preproc.c"
break;
case 334: /* alter_table_cmd: DROP opt_column IF_P EXISTS ColId opt_drop_behavior */
#line 3117 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop"),(yyvsp[-4].str),mm_strdup("if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40192 "preproc.c"
break;
case 335: /* alter_table_cmd: DROP opt_column ColId opt_drop_behavior */
#line 3121 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("drop"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40200 "preproc.c"
break;
case 336: /* alter_table_cmd: ALTER opt_column ColId opt_set_data TYPE_P Typename opt_collate_clause alter_using */
#line 3125 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("alter"),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("type"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40208 "preproc.c"
break;
case 337: /* alter_table_cmd: ALTER opt_column ColId alter_generic_options */
#line 3129 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40216 "preproc.c"
break;
case 338: /* alter_table_cmd: ADD_P TableConstraint */
#line 3133 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("add"),(yyvsp[0].str));
}
#line 40224 "preproc.c"
break;
case 339: /* alter_table_cmd: ALTER CONSTRAINT name ConstraintAttributeSpec */
#line 3137 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter constraint"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40232 "preproc.c"
break;
case 340: /* alter_table_cmd: VALIDATE CONSTRAINT name */
#line 3141 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("validate constraint"),(yyvsp[0].str));
}
#line 40240 "preproc.c"
break;
case 341: /* alter_table_cmd: DROP CONSTRAINT IF_P EXISTS name opt_drop_behavior */
#line 3145 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop constraint if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40248 "preproc.c"
break;
case 342: /* alter_table_cmd: DROP CONSTRAINT name opt_drop_behavior */
#line 3149 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop constraint"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40256 "preproc.c"
break;
case 343: /* alter_table_cmd: SET WITHOUT OIDS */
#line 3153 "preproc.y"
{
(yyval.str) = mm_strdup("set without oids");
}
#line 40264 "preproc.c"
break;
case 344: /* alter_table_cmd: CLUSTER ON name */
#line 3157 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("cluster on"),(yyvsp[0].str));
}
#line 40272 "preproc.c"
break;
case 345: /* alter_table_cmd: SET WITHOUT CLUSTER */
#line 3161 "preproc.y"
{
(yyval.str) = mm_strdup("set without cluster");
}
#line 40280 "preproc.c"
break;
case 346: /* alter_table_cmd: SET LOGGED */
#line 3165 "preproc.y"
{
(yyval.str) = mm_strdup("set logged");
}
#line 40288 "preproc.c"
break;
case 347: /* alter_table_cmd: SET UNLOGGED */
#line 3169 "preproc.y"
{
(yyval.str) = mm_strdup("set unlogged");
}
#line 40296 "preproc.c"
break;
case 348: /* alter_table_cmd: ENABLE_P TRIGGER name */
#line 3173 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("enable trigger"),(yyvsp[0].str));
}
#line 40304 "preproc.c"
break;
case 349: /* alter_table_cmd: ENABLE_P ALWAYS TRIGGER name */
#line 3177 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("enable always trigger"),(yyvsp[0].str));
}
#line 40312 "preproc.c"
break;
case 350: /* alter_table_cmd: ENABLE_P REPLICA TRIGGER name */
#line 3181 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("enable replica trigger"),(yyvsp[0].str));
}
#line 40320 "preproc.c"
break;
case 351: /* alter_table_cmd: ENABLE_P TRIGGER ALL */
#line 3185 "preproc.y"
{
(yyval.str) = mm_strdup("enable trigger all");
}
#line 40328 "preproc.c"
break;
case 352: /* alter_table_cmd: ENABLE_P TRIGGER USER */
#line 3189 "preproc.y"
{
(yyval.str) = mm_strdup("enable trigger user");
}
#line 40336 "preproc.c"
break;
case 353: /* alter_table_cmd: DISABLE_P TRIGGER name */
#line 3193 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("disable trigger"),(yyvsp[0].str));
}
#line 40344 "preproc.c"
break;
case 354: /* alter_table_cmd: DISABLE_P TRIGGER ALL */
#line 3197 "preproc.y"
{
(yyval.str) = mm_strdup("disable trigger all");
}
#line 40352 "preproc.c"
break;
case 355: /* alter_table_cmd: DISABLE_P TRIGGER USER */
#line 3201 "preproc.y"
{
(yyval.str) = mm_strdup("disable trigger user");
}
#line 40360 "preproc.c"
break;
case 356: /* alter_table_cmd: ENABLE_P RULE name */
#line 3205 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("enable rule"),(yyvsp[0].str));
}
#line 40368 "preproc.c"
break;
case 357: /* alter_table_cmd: ENABLE_P ALWAYS RULE name */
#line 3209 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("enable always rule"),(yyvsp[0].str));
}
#line 40376 "preproc.c"
break;
case 358: /* alter_table_cmd: ENABLE_P REPLICA RULE name */
#line 3213 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("enable replica rule"),(yyvsp[0].str));
}
#line 40384 "preproc.c"
break;
case 359: /* alter_table_cmd: DISABLE_P RULE name */
#line 3217 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("disable rule"),(yyvsp[0].str));
}
#line 40392 "preproc.c"
break;
case 360: /* alter_table_cmd: INHERIT qualified_name */
#line 3221 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("inherit"),(yyvsp[0].str));
}
#line 40400 "preproc.c"
break;
case 361: /* alter_table_cmd: NO INHERIT qualified_name */
#line 3225 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("no inherit"),(yyvsp[0].str));
}
#line 40408 "preproc.c"
break;
case 362: /* alter_table_cmd: OF any_name */
#line 3229 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("of"),(yyvsp[0].str));
}
#line 40416 "preproc.c"
break;
case 363: /* alter_table_cmd: NOT OF */
#line 3233 "preproc.y"
{
(yyval.str) = mm_strdup("not of");
}
#line 40424 "preproc.c"
break;
case 364: /* alter_table_cmd: OWNER TO RoleSpec */
#line 3237 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("owner to"),(yyvsp[0].str));
}
#line 40432 "preproc.c"
break;
case 365: /* alter_table_cmd: SET ACCESS METHOD name */
#line 3241 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set access method"),(yyvsp[0].str));
}
#line 40440 "preproc.c"
break;
case 366: /* alter_table_cmd: SET TABLESPACE name */
#line 3245 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set tablespace"),(yyvsp[0].str));
}
#line 40448 "preproc.c"
break;
case 367: /* alter_table_cmd: SET reloptions */
#line 3249 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set"),(yyvsp[0].str));
}
#line 40456 "preproc.c"
break;
case 368: /* alter_table_cmd: RESET reloptions */
#line 3253 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("reset"),(yyvsp[0].str));
}
#line 40464 "preproc.c"
break;
case 369: /* alter_table_cmd: REPLICA IDENTITY_P replica_identity */
#line 3257 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("replica identity"),(yyvsp[0].str));
}
#line 40472 "preproc.c"
break;
case 370: /* alter_table_cmd: ENABLE_P ROW LEVEL SECURITY */
#line 3261 "preproc.y"
{
(yyval.str) = mm_strdup("enable row level security");
}
#line 40480 "preproc.c"
break;
case 371: /* alter_table_cmd: DISABLE_P ROW LEVEL SECURITY */
#line 3265 "preproc.y"
{
(yyval.str) = mm_strdup("disable row level security");
}
#line 40488 "preproc.c"
break;
case 372: /* alter_table_cmd: FORCE ROW LEVEL SECURITY */
#line 3269 "preproc.y"
{
(yyval.str) = mm_strdup("force row level security");
}
#line 40496 "preproc.c"
break;
case 373: /* alter_table_cmd: NO FORCE ROW LEVEL SECURITY */
#line 3273 "preproc.y"
{
(yyval.str) = mm_strdup("no force row level security");
}
#line 40504 "preproc.c"
break;
case 374: /* alter_table_cmd: alter_generic_options */
#line 3277 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40512 "preproc.c"
break;
case 375: /* alter_column_default: SET DEFAULT a_expr */
#line 3285 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set default"),(yyvsp[0].str));
}
#line 40520 "preproc.c"
break;
case 376: /* alter_column_default: DROP DEFAULT */
#line 3289 "preproc.y"
{
(yyval.str) = mm_strdup("drop default");
}
#line 40528 "preproc.c"
break;
case 377: /* opt_collate_clause: COLLATE any_name */
#line 3297 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("collate"),(yyvsp[0].str));
}
#line 40536 "preproc.c"
break;
case 378: /* opt_collate_clause: %empty */
#line 3301 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 40543 "preproc.c"
break;
case 379: /* alter_using: USING a_expr */
#line 3308 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using"),(yyvsp[0].str));
}
#line 40551 "preproc.c"
break;
case 380: /* alter_using: %empty */
#line 3312 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 40558 "preproc.c"
break;
case 381: /* replica_identity: NOTHING */
#line 3319 "preproc.y"
{
(yyval.str) = mm_strdup("nothing");
}
#line 40566 "preproc.c"
break;
case 382: /* replica_identity: FULL */
#line 3323 "preproc.y"
{
(yyval.str) = mm_strdup("full");
}
#line 40574 "preproc.c"
break;
case 383: /* replica_identity: DEFAULT */
#line 3327 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 40582 "preproc.c"
break;
case 384: /* replica_identity: USING INDEX name */
#line 3331 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using index"),(yyvsp[0].str));
}
#line 40590 "preproc.c"
break;
case 385: /* reloptions: '(' reloption_list ')' */
#line 3339 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 40598 "preproc.c"
break;
case 386: /* opt_reloptions: WITH reloptions */
#line 3347 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("with"),(yyvsp[0].str));
}
#line 40606 "preproc.c"
break;
case 387: /* opt_reloptions: %empty */
#line 3351 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 40613 "preproc.c"
break;
case 388: /* reloption_list: reloption_elem */
#line 3358 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40621 "preproc.c"
break;
case 389: /* reloption_list: reloption_list ',' reloption_elem */
#line 3362 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 40629 "preproc.c"
break;
case 390: /* reloption_elem: ColLabel '=' def_arg */
#line 3370 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 40637 "preproc.c"
break;
case 391: /* reloption_elem: ColLabel */
#line 3374 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40645 "preproc.c"
break;
case 392: /* reloption_elem: ColLabel '.' ColLabel '=' def_arg */
#line 3378 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("."),(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 40653 "preproc.c"
break;
case 393: /* reloption_elem: ColLabel '.' ColLabel */
#line 3382 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("."),(yyvsp[0].str));
}
#line 40661 "preproc.c"
break;
case 394: /* alter_identity_column_option_list: alter_identity_column_option */
#line 3390 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40669 "preproc.c"
break;
case 395: /* alter_identity_column_option_list: alter_identity_column_option_list alter_identity_column_option */
#line 3394 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40677 "preproc.c"
break;
case 396: /* alter_identity_column_option: RESTART */
#line 3402 "preproc.y"
{
(yyval.str) = mm_strdup("restart");
}
#line 40685 "preproc.c"
break;
case 397: /* alter_identity_column_option: RESTART opt_with NumericOnly */
#line 3406 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("restart"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40693 "preproc.c"
break;
case 398: /* alter_identity_column_option: SET SeqOptElem */
#line 3410 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set"),(yyvsp[0].str));
}
#line 40701 "preproc.c"
break;
case 399: /* alter_identity_column_option: SET GENERATED generated_when */
#line 3414 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set generated"),(yyvsp[0].str));
}
#line 40709 "preproc.c"
break;
case 400: /* PartitionBoundSpec: FOR VALUES WITH '(' hash_partbound ')' */
#line 3422 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("for values with ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 40717 "preproc.c"
break;
case 401: /* PartitionBoundSpec: FOR VALUES IN_P '(' expr_list ')' */
#line 3426 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("for values in ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 40725 "preproc.c"
break;
case 402: /* PartitionBoundSpec: FOR VALUES FROM '(' expr_list ')' TO '(' expr_list ')' */
#line 3430 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("for values from ("),(yyvsp[-5].str),mm_strdup(") to ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 40733 "preproc.c"
break;
case 403: /* PartitionBoundSpec: DEFAULT */
#line 3434 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 40741 "preproc.c"
break;
case 404: /* hash_partbound_elem: NonReservedWord Iconst */
#line 3442 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40749 "preproc.c"
break;
case 405: /* hash_partbound: hash_partbound_elem */
#line 3450 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40757 "preproc.c"
break;
case 406: /* hash_partbound: hash_partbound ',' hash_partbound_elem */
#line 3454 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 40765 "preproc.c"
break;
case 407: /* AlterCompositeTypeStmt: ALTER TYPE_P any_name alter_type_cmds */
#line 3462 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter type"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40773 "preproc.c"
break;
case 408: /* alter_type_cmds: alter_type_cmd */
#line 3470 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40781 "preproc.c"
break;
case 409: /* alter_type_cmds: alter_type_cmds ',' alter_type_cmd */
#line 3474 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 40789 "preproc.c"
break;
case 410: /* alter_type_cmd: ADD_P ATTRIBUTE TableFuncElement opt_drop_behavior */
#line 3482 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("add attribute"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40797 "preproc.c"
break;
case 411: /* alter_type_cmd: DROP ATTRIBUTE IF_P EXISTS ColId opt_drop_behavior */
#line 3486 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop attribute if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40805 "preproc.c"
break;
case 412: /* alter_type_cmd: DROP ATTRIBUTE ColId opt_drop_behavior */
#line 3490 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop attribute"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40813 "preproc.c"
break;
case 413: /* alter_type_cmd: ALTER ATTRIBUTE ColId opt_set_data TYPE_P Typename opt_collate_clause opt_drop_behavior */
#line 3494 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter attribute"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("type"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40821 "preproc.c"
break;
case 414: /* ClosePortalStmt: CLOSE cursor_name */
#line 3502 "preproc.y"
{
char *cursor_marker = (yyvsp[0].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[0].str);
struct cursor *ptr = NULL;
for (ptr = cur; ptr != NULL; ptr = ptr -> next)
{
if (strcmp((yyvsp[0].str), ptr -> name) == 0)
{
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
break;
}
}
(yyval.str) = cat2_str(mm_strdup("close"), cursor_marker);
}
#line 40841 "preproc.c"
break;
case 415: /* ClosePortalStmt: CLOSE ALL */
#line 3518 "preproc.y"
{
(yyval.str) = mm_strdup("close all");
}
#line 40849 "preproc.c"
break;
case 416: /* CopyStmt: COPY opt_binary qualified_name opt_column_list copy_from opt_program copy_file_name copy_delimiter opt_with copy_options where_clause */
#line 3526 "preproc.y"
{
if (strcmp((yyvsp[-5].str), "from") == 0 &&
(strcmp((yyvsp[-4].str), "stdin") == 0 || strcmp((yyvsp[-4].str), "stdout") == 0))
mmerror(PARSE_ERROR, ET_WARNING, "COPY FROM STDIN is not implemented");
(yyval.str) = cat_str(11,mm_strdup("copy"),(yyvsp[-9].str),(yyvsp[-8].str),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40861 "preproc.c"
break;
case 417: /* CopyStmt: COPY '(' PreparableStmt ')' TO opt_program copy_file_name opt_with copy_options */
#line 3534 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("copy ("),(yyvsp[-6].str),mm_strdup(") to"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40869 "preproc.c"
break;
case 418: /* copy_from: FROM */
#line 3542 "preproc.y"
{
(yyval.str) = mm_strdup("from");
}
#line 40877 "preproc.c"
break;
case 419: /* copy_from: TO */
#line 3546 "preproc.y"
{
(yyval.str) = mm_strdup("to");
}
#line 40885 "preproc.c"
break;
case 420: /* opt_program: PROGRAM */
#line 3554 "preproc.y"
{
(yyval.str) = mm_strdup("program");
}
#line 40893 "preproc.c"
break;
case 421: /* opt_program: %empty */
#line 3558 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 40900 "preproc.c"
break;
case 422: /* copy_file_name: ecpg_sconst */
#line 3565 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40908 "preproc.c"
break;
case 423: /* copy_file_name: STDIN */
#line 3569 "preproc.y"
{
(yyval.str) = mm_strdup("stdin");
}
#line 40916 "preproc.c"
break;
case 424: /* copy_file_name: STDOUT */
#line 3573 "preproc.y"
{
(yyval.str) = mm_strdup("stdout");
}
#line 40924 "preproc.c"
break;
case 425: /* copy_options: copy_opt_list */
#line 3581 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 40932 "preproc.c"
break;
case 426: /* copy_options: '(' copy_generic_opt_list ')' */
#line 3585 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 40940 "preproc.c"
break;
case 427: /* copy_opt_list: copy_opt_list copy_opt_item */
#line 3593 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40948 "preproc.c"
break;
case 428: /* copy_opt_list: %empty */
#line 3597 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 40955 "preproc.c"
break;
case 429: /* copy_opt_item: BINARY */
#line 3604 "preproc.y"
{
(yyval.str) = mm_strdup("binary");
}
#line 40963 "preproc.c"
break;
case 430: /* copy_opt_item: FREEZE */
#line 3608 "preproc.y"
{
(yyval.str) = mm_strdup("freeze");
}
#line 40971 "preproc.c"
break;
case 431: /* copy_opt_item: DELIMITER opt_as ecpg_sconst */
#line 3612 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("delimiter"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40979 "preproc.c"
break;
case 432: /* copy_opt_item: NULL_P opt_as ecpg_sconst */
#line 3616 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("null"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 40987 "preproc.c"
break;
case 433: /* copy_opt_item: CSV */
#line 3620 "preproc.y"
{
(yyval.str) = mm_strdup("csv");
}
#line 40995 "preproc.c"
break;
case 434: /* copy_opt_item: HEADER_P */
#line 3624 "preproc.y"
{
(yyval.str) = mm_strdup("header");
}
#line 41003 "preproc.c"
break;
case 435: /* copy_opt_item: QUOTE opt_as ecpg_sconst */
#line 3628 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("quote"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41011 "preproc.c"
break;
case 436: /* copy_opt_item: ESCAPE opt_as ecpg_sconst */
#line 3632 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("escape"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41019 "preproc.c"
break;
case 437: /* copy_opt_item: FORCE QUOTE columnList */
#line 3636 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("force quote"),(yyvsp[0].str));
}
#line 41027 "preproc.c"
break;
case 438: /* copy_opt_item: FORCE QUOTE '*' */
#line 3640 "preproc.y"
{
(yyval.str) = mm_strdup("force quote *");
}
#line 41035 "preproc.c"
break;
case 439: /* copy_opt_item: FORCE NOT NULL_P columnList */
#line 3644 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("force not null"),(yyvsp[0].str));
}
#line 41043 "preproc.c"
break;
case 440: /* copy_opt_item: FORCE NULL_P columnList */
#line 3648 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("force null"),(yyvsp[0].str));
}
#line 41051 "preproc.c"
break;
case 441: /* copy_opt_item: ENCODING ecpg_sconst */
#line 3652 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("encoding"),(yyvsp[0].str));
}
#line 41059 "preproc.c"
break;
case 442: /* opt_binary: BINARY */
#line 3660 "preproc.y"
{
(yyval.str) = mm_strdup("binary");
}
#line 41067 "preproc.c"
break;
case 443: /* opt_binary: %empty */
#line 3664 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41074 "preproc.c"
break;
case 444: /* copy_delimiter: opt_using DELIMITERS ecpg_sconst */
#line 3671 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("delimiters"),(yyvsp[0].str));
}
#line 41082 "preproc.c"
break;
case 445: /* copy_delimiter: %empty */
#line 3675 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41089 "preproc.c"
break;
case 446: /* opt_using: USING */
#line 3682 "preproc.y"
{
(yyval.str) = mm_strdup("using");
}
#line 41097 "preproc.c"
break;
case 447: /* opt_using: %empty */
#line 3686 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41104 "preproc.c"
break;
case 448: /* copy_generic_opt_list: copy_generic_opt_elem */
#line 3693 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41112 "preproc.c"
break;
case 449: /* copy_generic_opt_list: copy_generic_opt_list ',' copy_generic_opt_elem */
#line 3697 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 41120 "preproc.c"
break;
case 450: /* copy_generic_opt_elem: ColLabel copy_generic_opt_arg */
#line 3705 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41128 "preproc.c"
break;
case 451: /* copy_generic_opt_arg: opt_boolean_or_string */
#line 3713 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41136 "preproc.c"
break;
case 452: /* copy_generic_opt_arg: NumericOnly */
#line 3717 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41144 "preproc.c"
break;
case 453: /* copy_generic_opt_arg: '*' */
#line 3721 "preproc.y"
{
(yyval.str) = mm_strdup("*");
}
#line 41152 "preproc.c"
break;
case 454: /* copy_generic_opt_arg: '(' copy_generic_opt_arg_list ')' */
#line 3725 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 41160 "preproc.c"
break;
case 455: /* copy_generic_opt_arg: %empty */
#line 3729 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41167 "preproc.c"
break;
case 456: /* copy_generic_opt_arg_list: copy_generic_opt_arg_list_item */
#line 3736 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41175 "preproc.c"
break;
case 457: /* copy_generic_opt_arg_list: copy_generic_opt_arg_list ',' copy_generic_opt_arg_list_item */
#line 3740 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 41183 "preproc.c"
break;
case 458: /* copy_generic_opt_arg_list_item: opt_boolean_or_string */
#line 3748 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41191 "preproc.c"
break;
case 459: /* CreateStmt: CREATE OptTemp TABLE qualified_name '(' OptTableElementList ')' OptInherit OptPartitionSpec table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 3756 "preproc.y"
{
(yyval.str) = cat_str(13,mm_strdup("create"),(yyvsp[-11].str),mm_strdup("table"),(yyvsp[-9].str),mm_strdup("("),(yyvsp[-7].str),mm_strdup(")"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41199 "preproc.c"
break;
case 460: /* CreateStmt: CREATE OptTemp TABLE IF_P NOT EXISTS qualified_name '(' OptTableElementList ')' OptInherit OptPartitionSpec table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 3760 "preproc.y"
{
(yyval.str) = cat_str(13,mm_strdup("create"),(yyvsp[-14].str),mm_strdup("table if not exists"),(yyvsp[-9].str),mm_strdup("("),(yyvsp[-7].str),mm_strdup(")"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41207 "preproc.c"
break;
case 461: /* CreateStmt: CREATE OptTemp TABLE qualified_name OF any_name OptTypedTableElementList OptPartitionSpec table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 3764 "preproc.y"
{
(yyval.str) = cat_str(12,mm_strdup("create"),(yyvsp[-10].str),mm_strdup("table"),(yyvsp[-8].str),mm_strdup("of"),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41215 "preproc.c"
break;
case 462: /* CreateStmt: CREATE OptTemp TABLE IF_P NOT EXISTS qualified_name OF any_name OptTypedTableElementList OptPartitionSpec table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 3768 "preproc.y"
{
(yyval.str) = cat_str(12,mm_strdup("create"),(yyvsp[-13].str),mm_strdup("table if not exists"),(yyvsp[-8].str),mm_strdup("of"),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41223 "preproc.c"
break;
case 463: /* CreateStmt: CREATE OptTemp TABLE qualified_name PARTITION OF qualified_name OptTypedTableElementList PartitionBoundSpec OptPartitionSpec table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 3772 "preproc.y"
{
(yyval.str) = cat_str(13,mm_strdup("create"),(yyvsp[-12].str),mm_strdup("table"),(yyvsp[-10].str),mm_strdup("partition of"),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41231 "preproc.c"
break;
case 464: /* CreateStmt: CREATE OptTemp TABLE IF_P NOT EXISTS qualified_name PARTITION OF qualified_name OptTypedTableElementList PartitionBoundSpec OptPartitionSpec table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 3776 "preproc.y"
{
(yyval.str) = cat_str(13,mm_strdup("create"),(yyvsp[-15].str),mm_strdup("table if not exists"),(yyvsp[-10].str),mm_strdup("partition of"),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41239 "preproc.c"
break;
case 465: /* OptTemp: TEMPORARY */
#line 3784 "preproc.y"
{
(yyval.str) = mm_strdup("temporary");
}
#line 41247 "preproc.c"
break;
case 466: /* OptTemp: TEMP */
#line 3788 "preproc.y"
{
(yyval.str) = mm_strdup("temp");
}
#line 41255 "preproc.c"
break;
case 467: /* OptTemp: LOCAL TEMPORARY */
#line 3792 "preproc.y"
{
(yyval.str) = mm_strdup("local temporary");
}
#line 41263 "preproc.c"
break;
case 468: /* OptTemp: LOCAL TEMP */
#line 3796 "preproc.y"
{
(yyval.str) = mm_strdup("local temp");
}
#line 41271 "preproc.c"
break;
case 469: /* OptTemp: GLOBAL TEMPORARY */
#line 3800 "preproc.y"
{
(yyval.str) = mm_strdup("global temporary");
}
#line 41279 "preproc.c"
break;
case 470: /* OptTemp: GLOBAL TEMP */
#line 3804 "preproc.y"
{
(yyval.str) = mm_strdup("global temp");
}
#line 41287 "preproc.c"
break;
case 471: /* OptTemp: UNLOGGED */
#line 3808 "preproc.y"
{
(yyval.str) = mm_strdup("unlogged");
}
#line 41295 "preproc.c"
break;
case 472: /* OptTemp: %empty */
#line 3812 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41302 "preproc.c"
break;
case 473: /* OptTableElementList: TableElementList */
#line 3819 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41310 "preproc.c"
break;
case 474: /* OptTableElementList: %empty */
#line 3823 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41317 "preproc.c"
break;
case 475: /* OptTypedTableElementList: '(' TypedTableElementList ')' */
#line 3830 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 41325 "preproc.c"
break;
case 476: /* OptTypedTableElementList: %empty */
#line 3834 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41332 "preproc.c"
break;
case 477: /* TableElementList: TableElement */
#line 3841 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41340 "preproc.c"
break;
case 478: /* TableElementList: TableElementList ',' TableElement */
#line 3845 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 41348 "preproc.c"
break;
case 479: /* TypedTableElementList: TypedTableElement */
#line 3853 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41356 "preproc.c"
break;
case 480: /* TypedTableElementList: TypedTableElementList ',' TypedTableElement */
#line 3857 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 41364 "preproc.c"
break;
case 481: /* TableElement: columnDef */
#line 3865 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41372 "preproc.c"
break;
case 482: /* TableElement: TableLikeClause */
#line 3869 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41380 "preproc.c"
break;
case 483: /* TableElement: TableConstraint */
#line 3873 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41388 "preproc.c"
break;
case 484: /* TypedTableElement: columnOptions */
#line 3881 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41396 "preproc.c"
break;
case 485: /* TypedTableElement: TableConstraint */
#line 3885 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41404 "preproc.c"
break;
case 486: /* columnDef: ColId Typename opt_column_storage opt_column_compression create_generic_options ColQualList */
#line 3893 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41412 "preproc.c"
break;
case 487: /* columnOptions: ColId ColQualList */
#line 3901 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41420 "preproc.c"
break;
case 488: /* columnOptions: ColId WITH OPTIONS ColQualList */
#line 3905 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("with options"),(yyvsp[0].str));
}
#line 41428 "preproc.c"
break;
case 489: /* column_compression: COMPRESSION ColId */
#line 3913 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("compression"),(yyvsp[0].str));
}
#line 41436 "preproc.c"
break;
case 490: /* column_compression: COMPRESSION DEFAULT */
#line 3917 "preproc.y"
{
(yyval.str) = mm_strdup("compression default");
}
#line 41444 "preproc.c"
break;
case 491: /* opt_column_compression: column_compression */
#line 3925 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41452 "preproc.c"
break;
case 492: /* opt_column_compression: %empty */
#line 3929 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41459 "preproc.c"
break;
case 493: /* column_storage: STORAGE ColId */
#line 3936 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("storage"),(yyvsp[0].str));
}
#line 41467 "preproc.c"
break;
case 494: /* column_storage: STORAGE DEFAULT */
#line 3940 "preproc.y"
{
(yyval.str) = mm_strdup("storage default");
}
#line 41475 "preproc.c"
break;
case 495: /* opt_column_storage: column_storage */
#line 3948 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41483 "preproc.c"
break;
case 496: /* opt_column_storage: %empty */
#line 3952 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41490 "preproc.c"
break;
case 497: /* ColQualList: ColQualList ColConstraint */
#line 3959 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41498 "preproc.c"
break;
case 498: /* ColQualList: %empty */
#line 3963 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41505 "preproc.c"
break;
case 499: /* ColConstraint: CONSTRAINT name ColConstraintElem */
#line 3970 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("constraint"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41513 "preproc.c"
break;
case 500: /* ColConstraint: ColConstraintElem */
#line 3974 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41521 "preproc.c"
break;
case 501: /* ColConstraint: ConstraintAttr */
#line 3978 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41529 "preproc.c"
break;
case 502: /* ColConstraint: COLLATE any_name */
#line 3982 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("collate"),(yyvsp[0].str));
}
#line 41537 "preproc.c"
break;
case 503: /* ColConstraintElem: NOT NULL_P */
#line 3990 "preproc.y"
{
(yyval.str) = mm_strdup("not null");
}
#line 41545 "preproc.c"
break;
case 504: /* ColConstraintElem: NULL_P */
#line 3994 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 41553 "preproc.c"
break;
case 505: /* ColConstraintElem: UNIQUE opt_unique_null_treatment opt_definition OptConsTableSpace */
#line 3998 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("unique"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41561 "preproc.c"
break;
case 506: /* ColConstraintElem: PRIMARY KEY opt_definition OptConsTableSpace */
#line 4002 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("primary key"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41569 "preproc.c"
break;
case 507: /* ColConstraintElem: CHECK '(' a_expr ')' opt_no_inherit */
#line 4006 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("check ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 41577 "preproc.c"
break;
case 508: /* ColConstraintElem: DEFAULT b_expr */
#line 4010 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("default"),(yyvsp[0].str));
}
#line 41585 "preproc.c"
break;
case 509: /* ColConstraintElem: GENERATED generated_when AS IDENTITY_P OptParenthesizedSeqOptList */
#line 4014 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("generated"),(yyvsp[-3].str),mm_strdup("as identity"),(yyvsp[0].str));
}
#line 41593 "preproc.c"
break;
case 510: /* ColConstraintElem: GENERATED generated_when AS '(' a_expr ')' STORED */
#line 4018 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("generated"),(yyvsp[-5].str),mm_strdup("as ("),(yyvsp[-2].str),mm_strdup(") stored"));
}
#line 41601 "preproc.c"
break;
case 511: /* ColConstraintElem: REFERENCES qualified_name opt_column_list key_match key_actions */
#line 4022 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("references"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41609 "preproc.c"
break;
case 512: /* opt_unique_null_treatment: NULLS_P DISTINCT */
#line 4030 "preproc.y"
{
(yyval.str) = mm_strdup("nulls distinct");
}
#line 41617 "preproc.c"
break;
case 513: /* opt_unique_null_treatment: NULLS_P NOT DISTINCT */
#line 4034 "preproc.y"
{
(yyval.str) = mm_strdup("nulls not distinct");
}
#line 41625 "preproc.c"
break;
case 514: /* opt_unique_null_treatment: %empty */
#line 4038 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41632 "preproc.c"
break;
case 515: /* generated_when: ALWAYS */
#line 4045 "preproc.y"
{
(yyval.str) = mm_strdup("always");
}
#line 41640 "preproc.c"
break;
case 516: /* generated_when: BY DEFAULT */
#line 4049 "preproc.y"
{
(yyval.str) = mm_strdup("by default");
}
#line 41648 "preproc.c"
break;
case 517: /* ConstraintAttr: DEFERRABLE */
#line 4057 "preproc.y"
{
(yyval.str) = mm_strdup("deferrable");
}
#line 41656 "preproc.c"
break;
case 518: /* ConstraintAttr: NOT DEFERRABLE */
#line 4061 "preproc.y"
{
(yyval.str) = mm_strdup("not deferrable");
}
#line 41664 "preproc.c"
break;
case 519: /* ConstraintAttr: INITIALLY DEFERRED */
#line 4065 "preproc.y"
{
(yyval.str) = mm_strdup("initially deferred");
}
#line 41672 "preproc.c"
break;
case 520: /* ConstraintAttr: INITIALLY IMMEDIATE */
#line 4069 "preproc.y"
{
(yyval.str) = mm_strdup("initially immediate");
}
#line 41680 "preproc.c"
break;
case 521: /* TableLikeClause: LIKE qualified_name TableLikeOptionList */
#line 4077 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("like"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41688 "preproc.c"
break;
case 522: /* TableLikeOptionList: TableLikeOptionList INCLUDING TableLikeOption */
#line 4085 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("including"),(yyvsp[0].str));
}
#line 41696 "preproc.c"
break;
case 523: /* TableLikeOptionList: TableLikeOptionList EXCLUDING TableLikeOption */
#line 4089 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("excluding"),(yyvsp[0].str));
}
#line 41704 "preproc.c"
break;
case 524: /* TableLikeOptionList: %empty */
#line 4093 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41711 "preproc.c"
break;
case 525: /* TableLikeOption: COMMENTS */
#line 4100 "preproc.y"
{
(yyval.str) = mm_strdup("comments");
}
#line 41719 "preproc.c"
break;
case 526: /* TableLikeOption: COMPRESSION */
#line 4104 "preproc.y"
{
(yyval.str) = mm_strdup("compression");
}
#line 41727 "preproc.c"
break;
case 527: /* TableLikeOption: CONSTRAINTS */
#line 4108 "preproc.y"
{
(yyval.str) = mm_strdup("constraints");
}
#line 41735 "preproc.c"
break;
case 528: /* TableLikeOption: DEFAULTS */
#line 4112 "preproc.y"
{
(yyval.str) = mm_strdup("defaults");
}
#line 41743 "preproc.c"
break;
case 529: /* TableLikeOption: IDENTITY_P */
#line 4116 "preproc.y"
{
(yyval.str) = mm_strdup("identity");
}
#line 41751 "preproc.c"
break;
case 530: /* TableLikeOption: GENERATED */
#line 4120 "preproc.y"
{
(yyval.str) = mm_strdup("generated");
}
#line 41759 "preproc.c"
break;
case 531: /* TableLikeOption: INDEXES */
#line 4124 "preproc.y"
{
(yyval.str) = mm_strdup("indexes");
}
#line 41767 "preproc.c"
break;
case 532: /* TableLikeOption: STATISTICS */
#line 4128 "preproc.y"
{
(yyval.str) = mm_strdup("statistics");
}
#line 41775 "preproc.c"
break;
case 533: /* TableLikeOption: STORAGE */
#line 4132 "preproc.y"
{
(yyval.str) = mm_strdup("storage");
}
#line 41783 "preproc.c"
break;
case 534: /* TableLikeOption: ALL */
#line 4136 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 41791 "preproc.c"
break;
case 535: /* TableConstraint: CONSTRAINT name ConstraintElem */
#line 4144 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("constraint"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41799 "preproc.c"
break;
case 536: /* TableConstraint: ConstraintElem */
#line 4148 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41807 "preproc.c"
break;
case 537: /* ConstraintElem: CHECK '(' a_expr ')' ConstraintAttributeSpec */
#line 4156 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("check ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 41815 "preproc.c"
break;
case 538: /* ConstraintElem: UNIQUE opt_unique_null_treatment '(' columnList ')' opt_c_include opt_definition OptConsTableSpace ConstraintAttributeSpec */
#line 4160 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("unique"),(yyvsp[-7].str),mm_strdup("("),(yyvsp[-5].str),mm_strdup(")"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41823 "preproc.c"
break;
case 539: /* ConstraintElem: UNIQUE ExistingIndex ConstraintAttributeSpec */
#line 4164 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("unique"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41831 "preproc.c"
break;
case 540: /* ConstraintElem: PRIMARY KEY '(' columnList ')' opt_c_include opt_definition OptConsTableSpace ConstraintAttributeSpec */
#line 4168 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("primary key ("),(yyvsp[-5].str),mm_strdup(")"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41839 "preproc.c"
break;
case 541: /* ConstraintElem: PRIMARY KEY ExistingIndex ConstraintAttributeSpec */
#line 4172 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("primary key"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41847 "preproc.c"
break;
case 542: /* ConstraintElem: EXCLUDE access_method_clause '(' ExclusionConstraintList ')' opt_c_include opt_definition OptConsTableSpace OptWhereClause ConstraintAttributeSpec */
#line 4176 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("exclude"),(yyvsp[-8].str),mm_strdup("("),(yyvsp[-6].str),mm_strdup(")"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41855 "preproc.c"
break;
case 543: /* ConstraintElem: FOREIGN KEY '(' columnList ')' REFERENCES qualified_name opt_column_list key_match key_actions ConstraintAttributeSpec */
#line 4180 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("foreign key ("),(yyvsp[-7].str),mm_strdup(") references"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 41863 "preproc.c"
break;
case 544: /* opt_no_inherit: NO INHERIT */
#line 4188 "preproc.y"
{
(yyval.str) = mm_strdup("no inherit");
}
#line 41871 "preproc.c"
break;
case 545: /* opt_no_inherit: %empty */
#line 4192 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41878 "preproc.c"
break;
case 546: /* opt_column_list: '(' columnList ')' */
#line 4199 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 41886 "preproc.c"
break;
case 547: /* opt_column_list: %empty */
#line 4203 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41893 "preproc.c"
break;
case 548: /* columnList: columnElem */
#line 4210 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41901 "preproc.c"
break;
case 549: /* columnList: columnList ',' columnElem */
#line 4214 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 41909 "preproc.c"
break;
case 550: /* columnElem: ColId */
#line 4222 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41917 "preproc.c"
break;
case 551: /* opt_c_include: INCLUDE '(' columnList ')' */
#line 4230 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("include ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 41925 "preproc.c"
break;
case 552: /* opt_c_include: %empty */
#line 4234 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41932 "preproc.c"
break;
case 553: /* key_match: MATCH FULL */
#line 4241 "preproc.y"
{
(yyval.str) = mm_strdup("match full");
}
#line 41940 "preproc.c"
break;
case 554: /* key_match: MATCH PARTIAL */
#line 4245 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = mm_strdup("match partial");
}
#line 41949 "preproc.c"
break;
case 555: /* key_match: MATCH SIMPLE */
#line 4250 "preproc.y"
{
(yyval.str) = mm_strdup("match simple");
}
#line 41957 "preproc.c"
break;
case 556: /* key_match: %empty */
#line 4254 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 41964 "preproc.c"
break;
case 557: /* ExclusionConstraintList: ExclusionConstraintElem */
#line 4261 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 41972 "preproc.c"
break;
case 558: /* ExclusionConstraintList: ExclusionConstraintList ',' ExclusionConstraintElem */
#line 4265 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 41980 "preproc.c"
break;
case 559: /* ExclusionConstraintElem: index_elem WITH any_operator */
#line 4273 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("with"),(yyvsp[0].str));
}
#line 41988 "preproc.c"
break;
case 560: /* ExclusionConstraintElem: index_elem WITH OPERATOR '(' any_operator ')' */
#line 4277 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-5].str),mm_strdup("with operator ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 41996 "preproc.c"
break;
case 561: /* OptWhereClause: WHERE '(' a_expr ')' */
#line 4285 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("where ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 42004 "preproc.c"
break;
case 562: /* OptWhereClause: %empty */
#line 4289 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42011 "preproc.c"
break;
case 563: /* key_actions: key_update */
#line 4296 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42019 "preproc.c"
break;
case 564: /* key_actions: key_delete */
#line 4300 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42027 "preproc.c"
break;
case 565: /* key_actions: key_update key_delete */
#line 4304 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42035 "preproc.c"
break;
case 566: /* key_actions: key_delete key_update */
#line 4308 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42043 "preproc.c"
break;
case 567: /* key_actions: %empty */
#line 4312 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42050 "preproc.c"
break;
case 568: /* key_update: ON UPDATE key_action */
#line 4319 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("on update"),(yyvsp[0].str));
}
#line 42058 "preproc.c"
break;
case 569: /* key_delete: ON DELETE_P key_action */
#line 4327 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("on delete"),(yyvsp[0].str));
}
#line 42066 "preproc.c"
break;
case 570: /* key_action: NO ACTION */
#line 4335 "preproc.y"
{
(yyval.str) = mm_strdup("no action");
}
#line 42074 "preproc.c"
break;
case 571: /* key_action: RESTRICT */
#line 4339 "preproc.y"
{
(yyval.str) = mm_strdup("restrict");
}
#line 42082 "preproc.c"
break;
case 572: /* key_action: CASCADE */
#line 4343 "preproc.y"
{
(yyval.str) = mm_strdup("cascade");
}
#line 42090 "preproc.c"
break;
case 573: /* key_action: SET NULL_P opt_column_list */
#line 4347 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set null"),(yyvsp[0].str));
}
#line 42098 "preproc.c"
break;
case 574: /* key_action: SET DEFAULT opt_column_list */
#line 4351 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set default"),(yyvsp[0].str));
}
#line 42106 "preproc.c"
break;
case 575: /* OptInherit: INHERITS '(' qualified_name_list ')' */
#line 4359 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("inherits ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 42114 "preproc.c"
break;
case 576: /* OptInherit: %empty */
#line 4363 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42121 "preproc.c"
break;
case 577: /* OptPartitionSpec: PartitionSpec */
#line 4370 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42129 "preproc.c"
break;
case 578: /* OptPartitionSpec: %empty */
#line 4374 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42136 "preproc.c"
break;
case 579: /* PartitionSpec: PARTITION BY ColId '(' part_params ')' */
#line 4381 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("partition by"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 42144 "preproc.c"
break;
case 580: /* part_params: part_elem */
#line 4389 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42152 "preproc.c"
break;
case 581: /* part_params: part_params ',' part_elem */
#line 4393 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 42160 "preproc.c"
break;
case 582: /* part_elem: ColId opt_collate opt_qualified_name */
#line 4401 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42168 "preproc.c"
break;
case 583: /* part_elem: func_expr_windowless opt_collate opt_qualified_name */
#line 4405 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42176 "preproc.c"
break;
case 584: /* part_elem: '(' a_expr ')' opt_collate opt_qualified_name */
#line 4409 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("("),(yyvsp[-3].str),mm_strdup(")"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42184 "preproc.c"
break;
case 585: /* table_access_method_clause: USING name */
#line 4417 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using"),(yyvsp[0].str));
}
#line 42192 "preproc.c"
break;
case 586: /* table_access_method_clause: %empty */
#line 4421 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42199 "preproc.c"
break;
case 587: /* OptWith: WITH reloptions */
#line 4428 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("with"),(yyvsp[0].str));
}
#line 42207 "preproc.c"
break;
case 588: /* OptWith: WITHOUT OIDS */
#line 4432 "preproc.y"
{
(yyval.str) = mm_strdup("without oids");
}
#line 42215 "preproc.c"
break;
case 589: /* OptWith: %empty */
#line 4436 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42222 "preproc.c"
break;
case 590: /* OnCommitOption: ON COMMIT DROP */
#line 4443 "preproc.y"
{
(yyval.str) = mm_strdup("on commit drop");
}
#line 42230 "preproc.c"
break;
case 591: /* OnCommitOption: ON COMMIT DELETE_P ROWS */
#line 4447 "preproc.y"
{
(yyval.str) = mm_strdup("on commit delete rows");
}
#line 42238 "preproc.c"
break;
case 592: /* OnCommitOption: ON COMMIT PRESERVE ROWS */
#line 4451 "preproc.y"
{
(yyval.str) = mm_strdup("on commit preserve rows");
}
#line 42246 "preproc.c"
break;
case 593: /* OnCommitOption: %empty */
#line 4455 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42253 "preproc.c"
break;
case 594: /* OptTableSpace: TABLESPACE name */
#line 4462 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("tablespace"),(yyvsp[0].str));
}
#line 42261 "preproc.c"
break;
case 595: /* OptTableSpace: %empty */
#line 4466 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42268 "preproc.c"
break;
case 596: /* OptConsTableSpace: USING INDEX TABLESPACE name */
#line 4473 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using index tablespace"),(yyvsp[0].str));
}
#line 42276 "preproc.c"
break;
case 597: /* OptConsTableSpace: %empty */
#line 4477 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42283 "preproc.c"
break;
case 598: /* ExistingIndex: USING INDEX name */
#line 4484 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using index"),(yyvsp[0].str));
}
#line 42291 "preproc.c"
break;
case 599: /* CreateStatsStmt: CREATE STATISTICS opt_qualified_name opt_name_list ON stats_params FROM from_list */
#line 4492 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create statistics"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("on"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 42299 "preproc.c"
break;
case 600: /* CreateStatsStmt: CREATE STATISTICS IF_P NOT EXISTS any_name opt_name_list ON stats_params FROM from_list */
#line 4496 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create statistics if not exists"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("on"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 42307 "preproc.c"
break;
case 601: /* stats_params: stats_param */
#line 4504 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42315 "preproc.c"
break;
case 602: /* stats_params: stats_params ',' stats_param */
#line 4508 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 42323 "preproc.c"
break;
case 603: /* stats_param: ColId */
#line 4516 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42331 "preproc.c"
break;
case 604: /* stats_param: func_expr_windowless */
#line 4520 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42339 "preproc.c"
break;
case 605: /* stats_param: '(' a_expr ')' */
#line 4524 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 42347 "preproc.c"
break;
case 606: /* AlterStatsStmt: ALTER STATISTICS any_name SET STATISTICS SignedIconst */
#line 4532 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter statistics"),(yyvsp[-3].str),mm_strdup("set statistics"),(yyvsp[0].str));
}
#line 42355 "preproc.c"
break;
case 607: /* AlterStatsStmt: ALTER STATISTICS IF_P EXISTS any_name SET STATISTICS SignedIconst */
#line 4536 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter statistics if exists"),(yyvsp[-3].str),mm_strdup("set statistics"),(yyvsp[0].str));
}
#line 42363 "preproc.c"
break;
case 608: /* create_as_target: qualified_name opt_column_list table_access_method_clause OptWith OnCommitOption OptTableSpace */
#line 4544 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42371 "preproc.c"
break;
case 609: /* opt_with_data: WITH DATA_P */
#line 4552 "preproc.y"
{
(yyval.str) = mm_strdup("with data");
}
#line 42379 "preproc.c"
break;
case 610: /* opt_with_data: WITH NO DATA_P */
#line 4556 "preproc.y"
{
(yyval.str) = mm_strdup("with no data");
}
#line 42387 "preproc.c"
break;
case 611: /* opt_with_data: %empty */
#line 4560 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42394 "preproc.c"
break;
case 612: /* CreateMatViewStmt: CREATE OptNoLog MATERIALIZED VIEW create_mv_target AS SelectStmt opt_with_data */
#line 4567 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create"),(yyvsp[-6].str),mm_strdup("materialized view"),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42402 "preproc.c"
break;
case 613: /* CreateMatViewStmt: CREATE OptNoLog MATERIALIZED VIEW IF_P NOT EXISTS create_mv_target AS SelectStmt opt_with_data */
#line 4571 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create"),(yyvsp[-9].str),mm_strdup("materialized view if not exists"),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42410 "preproc.c"
break;
case 614: /* create_mv_target: qualified_name opt_column_list table_access_method_clause opt_reloptions OptTableSpace */
#line 4579 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42418 "preproc.c"
break;
case 615: /* OptNoLog: UNLOGGED */
#line 4587 "preproc.y"
{
(yyval.str) = mm_strdup("unlogged");
}
#line 42426 "preproc.c"
break;
case 616: /* OptNoLog: %empty */
#line 4591 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42433 "preproc.c"
break;
case 617: /* RefreshMatViewStmt: REFRESH MATERIALIZED VIEW opt_concurrently qualified_name opt_with_data */
#line 4598 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("refresh materialized view"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42441 "preproc.c"
break;
case 618: /* CreateSeqStmt: CREATE OptTemp SEQUENCE qualified_name OptSeqOptList */
#line 4606 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create"),(yyvsp[-3].str),mm_strdup("sequence"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42449 "preproc.c"
break;
case 619: /* CreateSeqStmt: CREATE OptTemp SEQUENCE IF_P NOT EXISTS qualified_name OptSeqOptList */
#line 4610 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create"),(yyvsp[-6].str),mm_strdup("sequence if not exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42457 "preproc.c"
break;
case 620: /* AlterSeqStmt: ALTER SEQUENCE qualified_name SeqOptList */
#line 4618 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter sequence"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42465 "preproc.c"
break;
case 621: /* AlterSeqStmt: ALTER SEQUENCE IF_P EXISTS qualified_name SeqOptList */
#line 4622 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter sequence if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42473 "preproc.c"
break;
case 622: /* OptSeqOptList: SeqOptList */
#line 4630 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42481 "preproc.c"
break;
case 623: /* OptSeqOptList: %empty */
#line 4634 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42488 "preproc.c"
break;
case 624: /* OptParenthesizedSeqOptList: '(' SeqOptList ')' */
#line 4641 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 42496 "preproc.c"
break;
case 625: /* OptParenthesizedSeqOptList: %empty */
#line 4645 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42503 "preproc.c"
break;
case 626: /* SeqOptList: SeqOptElem */
#line 4652 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42511 "preproc.c"
break;
case 627: /* SeqOptList: SeqOptList SeqOptElem */
#line 4656 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42519 "preproc.c"
break;
case 628: /* SeqOptElem: AS SimpleTypename */
#line 4664 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("as"),(yyvsp[0].str));
}
#line 42527 "preproc.c"
break;
case 629: /* SeqOptElem: CACHE NumericOnly */
#line 4668 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("cache"),(yyvsp[0].str));
}
#line 42535 "preproc.c"
break;
case 630: /* SeqOptElem: CYCLE */
#line 4672 "preproc.y"
{
(yyval.str) = mm_strdup("cycle");
}
#line 42543 "preproc.c"
break;
case 631: /* SeqOptElem: NO CYCLE */
#line 4676 "preproc.y"
{
(yyval.str) = mm_strdup("no cycle");
}
#line 42551 "preproc.c"
break;
case 632: /* SeqOptElem: INCREMENT opt_by NumericOnly */
#line 4680 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("increment"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42559 "preproc.c"
break;
case 633: /* SeqOptElem: MAXVALUE NumericOnly */
#line 4684 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("maxvalue"),(yyvsp[0].str));
}
#line 42567 "preproc.c"
break;
case 634: /* SeqOptElem: MINVALUE NumericOnly */
#line 4688 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("minvalue"),(yyvsp[0].str));
}
#line 42575 "preproc.c"
break;
case 635: /* SeqOptElem: NO MAXVALUE */
#line 4692 "preproc.y"
{
(yyval.str) = mm_strdup("no maxvalue");
}
#line 42583 "preproc.c"
break;
case 636: /* SeqOptElem: NO MINVALUE */
#line 4696 "preproc.y"
{
(yyval.str) = mm_strdup("no minvalue");
}
#line 42591 "preproc.c"
break;
case 637: /* SeqOptElem: OWNED BY any_name */
#line 4700 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("owned by"),(yyvsp[0].str));
}
#line 42599 "preproc.c"
break;
case 638: /* SeqOptElem: SEQUENCE NAME_P any_name */
#line 4704 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("sequence name"),(yyvsp[0].str));
}
#line 42607 "preproc.c"
break;
case 639: /* SeqOptElem: START opt_with NumericOnly */
#line 4708 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("start"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42615 "preproc.c"
break;
case 640: /* SeqOptElem: RESTART */
#line 4712 "preproc.y"
{
(yyval.str) = mm_strdup("restart");
}
#line 42623 "preproc.c"
break;
case 641: /* SeqOptElem: RESTART opt_with NumericOnly */
#line 4716 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("restart"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42631 "preproc.c"
break;
case 642: /* opt_by: BY */
#line 4724 "preproc.y"
{
(yyval.str) = mm_strdup("by");
}
#line 42639 "preproc.c"
break;
case 643: /* opt_by: %empty */
#line 4728 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42646 "preproc.c"
break;
case 644: /* NumericOnly: ecpg_fconst */
#line 4735 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42654 "preproc.c"
break;
case 645: /* NumericOnly: '+' ecpg_fconst */
#line 4739 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("+"),(yyvsp[0].str));
}
#line 42662 "preproc.c"
break;
case 646: /* NumericOnly: '-' ecpg_fconst */
#line 4743 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("-"),(yyvsp[0].str));
}
#line 42670 "preproc.c"
break;
case 647: /* NumericOnly: SignedIconst */
#line 4747 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42678 "preproc.c"
break;
case 648: /* NumericOnly_list: NumericOnly */
#line 4755 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42686 "preproc.c"
break;
case 649: /* NumericOnly_list: NumericOnly_list ',' NumericOnly */
#line 4759 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 42694 "preproc.c"
break;
case 650: /* CreatePLangStmt: CREATE opt_or_replace opt_trusted opt_procedural LANGUAGE name */
#line 4767 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("create"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("language"),(yyvsp[0].str));
}
#line 42702 "preproc.c"
break;
case 651: /* CreatePLangStmt: CREATE opt_or_replace opt_trusted opt_procedural LANGUAGE name HANDLER handler_name opt_inline_handler opt_validator */
#line 4771 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("create"),(yyvsp[-8].str),(yyvsp[-7].str),(yyvsp[-6].str),mm_strdup("language"),(yyvsp[-4].str),mm_strdup("handler"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42710 "preproc.c"
break;
case 652: /* opt_trusted: TRUSTED */
#line 4779 "preproc.y"
{
(yyval.str) = mm_strdup("trusted");
}
#line 42718 "preproc.c"
break;
case 653: /* opt_trusted: %empty */
#line 4783 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42725 "preproc.c"
break;
case 654: /* handler_name: name */
#line 4790 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42733 "preproc.c"
break;
case 655: /* handler_name: name attrs */
#line 4794 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42741 "preproc.c"
break;
case 656: /* opt_inline_handler: INLINE_P handler_name */
#line 4802 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("inline"),(yyvsp[0].str));
}
#line 42749 "preproc.c"
break;
case 657: /* opt_inline_handler: %empty */
#line 4806 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42756 "preproc.c"
break;
case 658: /* validator_clause: VALIDATOR handler_name */
#line 4813 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("validator"),(yyvsp[0].str));
}
#line 42764 "preproc.c"
break;
case 659: /* validator_clause: NO VALIDATOR */
#line 4817 "preproc.y"
{
(yyval.str) = mm_strdup("no validator");
}
#line 42772 "preproc.c"
break;
case 660: /* opt_validator: validator_clause */
#line 4825 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 42780 "preproc.c"
break;
case 661: /* opt_validator: %empty */
#line 4829 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42787 "preproc.c"
break;
case 662: /* opt_procedural: PROCEDURAL */
#line 4836 "preproc.y"
{
(yyval.str) = mm_strdup("procedural");
}
#line 42795 "preproc.c"
break;
case 663: /* opt_procedural: %empty */
#line 4840 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42802 "preproc.c"
break;
case 664: /* CreateTableSpaceStmt: CREATE TABLESPACE name OptTableSpaceOwner LOCATION ecpg_sconst opt_reloptions */
#line 4847 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("create tablespace"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("location"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42810 "preproc.c"
break;
case 665: /* OptTableSpaceOwner: OWNER RoleSpec */
#line 4855 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("owner"),(yyvsp[0].str));
}
#line 42818 "preproc.c"
break;
case 666: /* OptTableSpaceOwner: %empty */
#line 4859 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42825 "preproc.c"
break;
case 667: /* DropTableSpaceStmt: DROP TABLESPACE name */
#line 4866 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop tablespace"),(yyvsp[0].str));
}
#line 42833 "preproc.c"
break;
case 668: /* DropTableSpaceStmt: DROP TABLESPACE IF_P EXISTS name */
#line 4870 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop tablespace if exists"),(yyvsp[0].str));
}
#line 42841 "preproc.c"
break;
case 669: /* CreateExtensionStmt: CREATE EXTENSION name opt_with create_extension_opt_list */
#line 4878 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create extension"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42849 "preproc.c"
break;
case 670: /* CreateExtensionStmt: CREATE EXTENSION IF_P NOT EXISTS name opt_with create_extension_opt_list */
#line 4882 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create extension if not exists"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42857 "preproc.c"
break;
case 671: /* create_extension_opt_list: create_extension_opt_list create_extension_opt_item */
#line 4890 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42865 "preproc.c"
break;
case 672: /* create_extension_opt_list: %empty */
#line 4894 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42872 "preproc.c"
break;
case 673: /* create_extension_opt_item: SCHEMA name */
#line 4901 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("schema"),(yyvsp[0].str));
}
#line 42880 "preproc.c"
break;
case 674: /* create_extension_opt_item: VERSION_P NonReservedWord_or_Sconst */
#line 4905 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("version"),(yyvsp[0].str));
}
#line 42888 "preproc.c"
break;
case 675: /* create_extension_opt_item: FROM NonReservedWord_or_Sconst */
#line 4909 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = cat_str(2,mm_strdup("from"),(yyvsp[0].str));
}
#line 42897 "preproc.c"
break;
case 676: /* create_extension_opt_item: CASCADE */
#line 4914 "preproc.y"
{
(yyval.str) = mm_strdup("cascade");
}
#line 42905 "preproc.c"
break;
case 677: /* AlterExtensionStmt: ALTER EXTENSION name UPDATE alter_extension_opt_list */
#line 4922 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter extension"),(yyvsp[-2].str),mm_strdup("update"),(yyvsp[0].str));
}
#line 42913 "preproc.c"
break;
case 678: /* alter_extension_opt_list: alter_extension_opt_list alter_extension_opt_item */
#line 4930 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42921 "preproc.c"
break;
case 679: /* alter_extension_opt_list: %empty */
#line 4934 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 42928 "preproc.c"
break;
case 680: /* alter_extension_opt_item: TO NonReservedWord_or_Sconst */
#line 4941 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("to"),(yyvsp[0].str));
}
#line 42936 "preproc.c"
break;
case 681: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop object_type_name name */
#line 4949 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42944 "preproc.c"
break;
case 682: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop object_type_any_name any_name */
#line 4953 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 42952 "preproc.c"
break;
case 683: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop AGGREGATE aggregate_with_argtypes */
#line 4957 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("aggregate"),(yyvsp[0].str));
}
#line 42960 "preproc.c"
break;
case 684: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop CAST '(' Typename AS Typename ')' */
#line 4961 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("alter extension"),(yyvsp[-7].str),(yyvsp[-6].str),mm_strdup("cast ("),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 42968 "preproc.c"
break;
case 685: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop DOMAIN_P Typename */
#line 4965 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("domain"),(yyvsp[0].str));
}
#line 42976 "preproc.c"
break;
case 686: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop FUNCTION function_with_argtypes */
#line 4969 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("function"),(yyvsp[0].str));
}
#line 42984 "preproc.c"
break;
case 687: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop OPERATOR operator_with_argtypes */
#line 4973 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("operator"),(yyvsp[0].str));
}
#line 42992 "preproc.c"
break;
case 688: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop OPERATOR CLASS any_name USING name */
#line 4977 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter extension"),(yyvsp[-6].str),(yyvsp[-5].str),mm_strdup("operator class"),(yyvsp[-2].str),mm_strdup("using"),(yyvsp[0].str));
}
#line 43000 "preproc.c"
break;
case 689: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop OPERATOR FAMILY any_name USING name */
#line 4981 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter extension"),(yyvsp[-6].str),(yyvsp[-5].str),mm_strdup("operator family"),(yyvsp[-2].str),mm_strdup("using"),(yyvsp[0].str));
}
#line 43008 "preproc.c"
break;
case 690: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop PROCEDURE function_with_argtypes */
#line 4985 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("procedure"),(yyvsp[0].str));
}
#line 43016 "preproc.c"
break;
case 691: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop ROUTINE function_with_argtypes */
#line 4989 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("routine"),(yyvsp[0].str));
}
#line 43024 "preproc.c"
break;
case 692: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop TRANSFORM FOR Typename LANGUAGE name */
#line 4993 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter extension"),(yyvsp[-6].str),(yyvsp[-5].str),mm_strdup("transform for"),(yyvsp[-2].str),mm_strdup("language"),(yyvsp[0].str));
}
#line 43032 "preproc.c"
break;
case 693: /* AlterExtensionContentsStmt: ALTER EXTENSION name add_drop TYPE_P Typename */
#line 4997 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter extension"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("type"),(yyvsp[0].str));
}
#line 43040 "preproc.c"
break;
case 694: /* CreateFdwStmt: CREATE FOREIGN DATA_P WRAPPER name opt_fdw_options create_generic_options */
#line 5005 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create foreign data wrapper"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43048 "preproc.c"
break;
case 695: /* fdw_option: HANDLER handler_name */
#line 5013 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("handler"),(yyvsp[0].str));
}
#line 43056 "preproc.c"
break;
case 696: /* fdw_option: NO HANDLER */
#line 5017 "preproc.y"
{
(yyval.str) = mm_strdup("no handler");
}
#line 43064 "preproc.c"
break;
case 697: /* fdw_option: VALIDATOR handler_name */
#line 5021 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("validator"),(yyvsp[0].str));
}
#line 43072 "preproc.c"
break;
case 698: /* fdw_option: NO VALIDATOR */
#line 5025 "preproc.y"
{
(yyval.str) = mm_strdup("no validator");
}
#line 43080 "preproc.c"
break;
case 699: /* fdw_options: fdw_option */
#line 5033 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43088 "preproc.c"
break;
case 700: /* fdw_options: fdw_options fdw_option */
#line 5037 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43096 "preproc.c"
break;
case 701: /* opt_fdw_options: fdw_options */
#line 5045 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43104 "preproc.c"
break;
case 702: /* opt_fdw_options: %empty */
#line 5049 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43111 "preproc.c"
break;
case 703: /* AlterFdwStmt: ALTER FOREIGN DATA_P WRAPPER name opt_fdw_options alter_generic_options */
#line 5056 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign data wrapper"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43119 "preproc.c"
break;
case 704: /* AlterFdwStmt: ALTER FOREIGN DATA_P WRAPPER name fdw_options */
#line 5060 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter foreign data wrapper"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43127 "preproc.c"
break;
case 705: /* create_generic_options: OPTIONS '(' generic_option_list ')' */
#line 5068 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("options ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43135 "preproc.c"
break;
case 706: /* create_generic_options: %empty */
#line 5072 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43142 "preproc.c"
break;
case 707: /* generic_option_list: generic_option_elem */
#line 5079 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43150 "preproc.c"
break;
case 708: /* generic_option_list: generic_option_list ',' generic_option_elem */
#line 5083 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 43158 "preproc.c"
break;
case 709: /* alter_generic_options: OPTIONS '(' alter_generic_option_list ')' */
#line 5091 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("options ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43166 "preproc.c"
break;
case 710: /* alter_generic_option_list: alter_generic_option_elem */
#line 5099 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43174 "preproc.c"
break;
case 711: /* alter_generic_option_list: alter_generic_option_list ',' alter_generic_option_elem */
#line 5103 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 43182 "preproc.c"
break;
case 712: /* alter_generic_option_elem: generic_option_elem */
#line 5111 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43190 "preproc.c"
break;
case 713: /* alter_generic_option_elem: SET generic_option_elem */
#line 5115 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("set"),(yyvsp[0].str));
}
#line 43198 "preproc.c"
break;
case 714: /* alter_generic_option_elem: ADD_P generic_option_elem */
#line 5119 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("add"),(yyvsp[0].str));
}
#line 43206 "preproc.c"
break;
case 715: /* alter_generic_option_elem: DROP generic_option_name */
#line 5123 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop"),(yyvsp[0].str));
}
#line 43214 "preproc.c"
break;
case 716: /* generic_option_elem: generic_option_name generic_option_arg */
#line 5131 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43222 "preproc.c"
break;
case 717: /* generic_option_name: ColLabel */
#line 5139 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43230 "preproc.c"
break;
case 718: /* generic_option_arg: ecpg_sconst */
#line 5147 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43238 "preproc.c"
break;
case 719: /* CreateForeignServerStmt: CREATE SERVER name opt_type opt_foreign_server_version FOREIGN DATA_P WRAPPER name create_generic_options */
#line 5155 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create server"),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),mm_strdup("foreign data wrapper"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43246 "preproc.c"
break;
case 720: /* CreateForeignServerStmt: CREATE SERVER IF_P NOT EXISTS name opt_type opt_foreign_server_version FOREIGN DATA_P WRAPPER name create_generic_options */
#line 5159 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create server if not exists"),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),mm_strdup("foreign data wrapper"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43254 "preproc.c"
break;
case 721: /* opt_type: TYPE_P ecpg_sconst */
#line 5167 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("type"),(yyvsp[0].str));
}
#line 43262 "preproc.c"
break;
case 722: /* opt_type: %empty */
#line 5171 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43269 "preproc.c"
break;
case 723: /* foreign_server_version: VERSION_P ecpg_sconst */
#line 5178 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("version"),(yyvsp[0].str));
}
#line 43277 "preproc.c"
break;
case 724: /* foreign_server_version: VERSION_P NULL_P */
#line 5182 "preproc.y"
{
(yyval.str) = mm_strdup("version null");
}
#line 43285 "preproc.c"
break;
case 725: /* opt_foreign_server_version: foreign_server_version */
#line 5190 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43293 "preproc.c"
break;
case 726: /* opt_foreign_server_version: %empty */
#line 5194 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43300 "preproc.c"
break;
case 727: /* AlterForeignServerStmt: ALTER SERVER name foreign_server_version alter_generic_options */
#line 5201 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter server"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43308 "preproc.c"
break;
case 728: /* AlterForeignServerStmt: ALTER SERVER name foreign_server_version */
#line 5205 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43316 "preproc.c"
break;
case 729: /* AlterForeignServerStmt: ALTER SERVER name alter_generic_options */
#line 5209 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43324 "preproc.c"
break;
case 730: /* CreateForeignTableStmt: CREATE FOREIGN TABLE qualified_name '(' OptTableElementList ')' OptInherit SERVER name create_generic_options */
#line 5217 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create foreign table"),(yyvsp[-7].str),mm_strdup("("),(yyvsp[-5].str),mm_strdup(")"),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43332 "preproc.c"
break;
case 731: /* CreateForeignTableStmt: CREATE FOREIGN TABLE IF_P NOT EXISTS qualified_name '(' OptTableElementList ')' OptInherit SERVER name create_generic_options */
#line 5221 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create foreign table if not exists"),(yyvsp[-7].str),mm_strdup("("),(yyvsp[-5].str),mm_strdup(")"),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43340 "preproc.c"
break;
case 732: /* CreateForeignTableStmt: CREATE FOREIGN TABLE qualified_name PARTITION OF qualified_name OptTypedTableElementList PartitionBoundSpec SERVER name create_generic_options */
#line 5225 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create foreign table"),(yyvsp[-8].str),mm_strdup("partition of"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43348 "preproc.c"
break;
case 733: /* CreateForeignTableStmt: CREATE FOREIGN TABLE IF_P NOT EXISTS qualified_name PARTITION OF qualified_name OptTypedTableElementList PartitionBoundSpec SERVER name create_generic_options */
#line 5229 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create foreign table if not exists"),(yyvsp[-8].str),mm_strdup("partition of"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43356 "preproc.c"
break;
case 734: /* ImportForeignSchemaStmt: IMPORT_P FOREIGN SCHEMA name import_qualification FROM SERVER name INTO name create_generic_options */
#line 5237 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("import foreign schema"),(yyvsp[-7].str),(yyvsp[-6].str),mm_strdup("from server"),(yyvsp[-3].str),mm_strdup("into"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43364 "preproc.c"
break;
case 735: /* import_qualification_type: LIMIT TO */
#line 5245 "preproc.y"
{
(yyval.str) = mm_strdup("limit to");
}
#line 43372 "preproc.c"
break;
case 736: /* import_qualification_type: EXCEPT */
#line 5249 "preproc.y"
{
(yyval.str) = mm_strdup("except");
}
#line 43380 "preproc.c"
break;
case 737: /* import_qualification: import_qualification_type '(' relation_expr_list ')' */
#line 5257 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43388 "preproc.c"
break;
case 738: /* import_qualification: %empty */
#line 5261 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43395 "preproc.c"
break;
case 739: /* CreateUserMappingStmt: CREATE USER MAPPING FOR auth_ident SERVER name create_generic_options */
#line 5268 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create user mapping for"),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43403 "preproc.c"
break;
case 740: /* CreateUserMappingStmt: CREATE USER MAPPING IF_P NOT EXISTS FOR auth_ident SERVER name create_generic_options */
#line 5272 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create user mapping if not exists for"),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43411 "preproc.c"
break;
case 741: /* auth_ident: RoleSpec */
#line 5280 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43419 "preproc.c"
break;
case 742: /* auth_ident: USER */
#line 5284 "preproc.y"
{
(yyval.str) = mm_strdup("user");
}
#line 43427 "preproc.c"
break;
case 743: /* DropUserMappingStmt: DROP USER MAPPING FOR auth_ident SERVER name */
#line 5292 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("drop user mapping for"),(yyvsp[-2].str),mm_strdup("server"),(yyvsp[0].str));
}
#line 43435 "preproc.c"
break;
case 744: /* DropUserMappingStmt: DROP USER MAPPING IF_P EXISTS FOR auth_ident SERVER name */
#line 5296 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("drop user mapping if exists for"),(yyvsp[-2].str),mm_strdup("server"),(yyvsp[0].str));
}
#line 43443 "preproc.c"
break;
case 745: /* AlterUserMappingStmt: ALTER USER MAPPING FOR auth_ident SERVER name alter_generic_options */
#line 5304 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter user mapping for"),(yyvsp[-3].str),mm_strdup("server"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43451 "preproc.c"
break;
case 746: /* CreatePolicyStmt: CREATE POLICY name ON qualified_name RowSecurityDefaultPermissive RowSecurityDefaultForCmd RowSecurityDefaultToRole RowSecurityOptionalExpr RowSecurityOptionalWithCheck */
#line 5312 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create policy"),(yyvsp[-7].str),mm_strdup("on"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43459 "preproc.c"
break;
case 747: /* AlterPolicyStmt: ALTER POLICY name ON qualified_name RowSecurityOptionalToRole RowSecurityOptionalExpr RowSecurityOptionalWithCheck */
#line 5320 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter policy"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43467 "preproc.c"
break;
case 748: /* RowSecurityOptionalExpr: USING '(' a_expr ')' */
#line 5328 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("using ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43475 "preproc.c"
break;
case 749: /* RowSecurityOptionalExpr: %empty */
#line 5332 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43482 "preproc.c"
break;
case 750: /* RowSecurityOptionalWithCheck: WITH CHECK '(' a_expr ')' */
#line 5339 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("with check ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43490 "preproc.c"
break;
case 751: /* RowSecurityOptionalWithCheck: %empty */
#line 5343 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43497 "preproc.c"
break;
case 752: /* RowSecurityDefaultToRole: TO role_list */
#line 5350 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("to"),(yyvsp[0].str));
}
#line 43505 "preproc.c"
break;
case 753: /* RowSecurityDefaultToRole: %empty */
#line 5354 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43512 "preproc.c"
break;
case 754: /* RowSecurityOptionalToRole: TO role_list */
#line 5361 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("to"),(yyvsp[0].str));
}
#line 43520 "preproc.c"
break;
case 755: /* RowSecurityOptionalToRole: %empty */
#line 5365 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43527 "preproc.c"
break;
case 756: /* RowSecurityDefaultPermissive: AS ecpg_ident */
#line 5372 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("as"),(yyvsp[0].str));
}
#line 43535 "preproc.c"
break;
case 757: /* RowSecurityDefaultPermissive: %empty */
#line 5376 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43542 "preproc.c"
break;
case 758: /* RowSecurityDefaultForCmd: FOR row_security_cmd */
#line 5383 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("for"),(yyvsp[0].str));
}
#line 43550 "preproc.c"
break;
case 759: /* RowSecurityDefaultForCmd: %empty */
#line 5387 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43557 "preproc.c"
break;
case 760: /* row_security_cmd: ALL */
#line 5394 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 43565 "preproc.c"
break;
case 761: /* row_security_cmd: SELECT */
#line 5398 "preproc.y"
{
(yyval.str) = mm_strdup("select");
}
#line 43573 "preproc.c"
break;
case 762: /* row_security_cmd: INSERT */
#line 5402 "preproc.y"
{
(yyval.str) = mm_strdup("insert");
}
#line 43581 "preproc.c"
break;
case 763: /* row_security_cmd: UPDATE */
#line 5406 "preproc.y"
{
(yyval.str) = mm_strdup("update");
}
#line 43589 "preproc.c"
break;
case 764: /* row_security_cmd: DELETE_P */
#line 5410 "preproc.y"
{
(yyval.str) = mm_strdup("delete");
}
#line 43597 "preproc.c"
break;
case 765: /* CreateAmStmt: CREATE ACCESS METHOD name TYPE_P am_type HANDLER handler_name */
#line 5418 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("create access method"),(yyvsp[-4].str),mm_strdup("type"),(yyvsp[-2].str),mm_strdup("handler"),(yyvsp[0].str));
}
#line 43605 "preproc.c"
break;
case 766: /* am_type: INDEX */
#line 5426 "preproc.y"
{
(yyval.str) = mm_strdup("index");
}
#line 43613 "preproc.c"
break;
case 767: /* am_type: TABLE */
#line 5430 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 43621 "preproc.c"
break;
case 768: /* CreateTrigStmt: CREATE opt_or_replace TRIGGER name TriggerActionTime TriggerEvents ON qualified_name TriggerReferencing TriggerForSpec TriggerWhen EXECUTE FUNCTION_or_PROCEDURE func_name '(' TriggerFuncArgs ')' */
#line 5438 "preproc.y"
{
(yyval.str) = cat_str(17,mm_strdup("create"),(yyvsp[-15].str),mm_strdup("trigger"),(yyvsp[-13].str),(yyvsp[-12].str),(yyvsp[-11].str),mm_strdup("on"),(yyvsp[-9].str),(yyvsp[-8].str),(yyvsp[-7].str),(yyvsp[-6].str),mm_strdup("execute"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43629 "preproc.c"
break;
case 769: /* CreateTrigStmt: CREATE opt_or_replace CONSTRAINT TRIGGER name AFTER TriggerEvents ON qualified_name OptConstrFromTable ConstraintAttributeSpec FOR EACH ROW TriggerWhen EXECUTE FUNCTION_or_PROCEDURE func_name '(' TriggerFuncArgs ')' */
#line 5442 "preproc.y"
{
(yyval.str) = cat_str(18,mm_strdup("create"),(yyvsp[-19].str),mm_strdup("constraint trigger"),(yyvsp[-16].str),mm_strdup("after"),(yyvsp[-14].str),mm_strdup("on"),(yyvsp[-12].str),(yyvsp[-11].str),(yyvsp[-10].str),mm_strdup("for each row"),(yyvsp[-6].str),mm_strdup("execute"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43637 "preproc.c"
break;
case 770: /* TriggerActionTime: BEFORE */
#line 5450 "preproc.y"
{
(yyval.str) = mm_strdup("before");
}
#line 43645 "preproc.c"
break;
case 771: /* TriggerActionTime: AFTER */
#line 5454 "preproc.y"
{
(yyval.str) = mm_strdup("after");
}
#line 43653 "preproc.c"
break;
case 772: /* TriggerActionTime: INSTEAD OF */
#line 5458 "preproc.y"
{
(yyval.str) = mm_strdup("instead of");
}
#line 43661 "preproc.c"
break;
case 773: /* TriggerEvents: TriggerOneEvent */
#line 5466 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43669 "preproc.c"
break;
case 774: /* TriggerEvents: TriggerEvents OR TriggerOneEvent */
#line 5470 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("or"),(yyvsp[0].str));
}
#line 43677 "preproc.c"
break;
case 775: /* TriggerOneEvent: INSERT */
#line 5478 "preproc.y"
{
(yyval.str) = mm_strdup("insert");
}
#line 43685 "preproc.c"
break;
case 776: /* TriggerOneEvent: DELETE_P */
#line 5482 "preproc.y"
{
(yyval.str) = mm_strdup("delete");
}
#line 43693 "preproc.c"
break;
case 777: /* TriggerOneEvent: UPDATE */
#line 5486 "preproc.y"
{
(yyval.str) = mm_strdup("update");
}
#line 43701 "preproc.c"
break;
case 778: /* TriggerOneEvent: UPDATE OF columnList */
#line 5490 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("update of"),(yyvsp[0].str));
}
#line 43709 "preproc.c"
break;
case 779: /* TriggerOneEvent: TRUNCATE */
#line 5494 "preproc.y"
{
(yyval.str) = mm_strdup("truncate");
}
#line 43717 "preproc.c"
break;
case 780: /* TriggerReferencing: REFERENCING TriggerTransitions */
#line 5502 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("referencing"),(yyvsp[0].str));
}
#line 43725 "preproc.c"
break;
case 781: /* TriggerReferencing: %empty */
#line 5506 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43732 "preproc.c"
break;
case 782: /* TriggerTransitions: TriggerTransition */
#line 5513 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43740 "preproc.c"
break;
case 783: /* TriggerTransitions: TriggerTransitions TriggerTransition */
#line 5517 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43748 "preproc.c"
break;
case 784: /* TriggerTransition: TransitionOldOrNew TransitionRowOrTable opt_as TransitionRelName */
#line 5525 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43756 "preproc.c"
break;
case 785: /* TransitionOldOrNew: NEW */
#line 5533 "preproc.y"
{
(yyval.str) = mm_strdup("new");
}
#line 43764 "preproc.c"
break;
case 786: /* TransitionOldOrNew: OLD */
#line 5537 "preproc.y"
{
(yyval.str) = mm_strdup("old");
}
#line 43772 "preproc.c"
break;
case 787: /* TransitionRowOrTable: TABLE */
#line 5545 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 43780 "preproc.c"
break;
case 788: /* TransitionRowOrTable: ROW */
#line 5549 "preproc.y"
{
(yyval.str) = mm_strdup("row");
}
#line 43788 "preproc.c"
break;
case 789: /* TransitionRelName: ColId */
#line 5557 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43796 "preproc.c"
break;
case 790: /* TriggerForSpec: FOR TriggerForOptEach TriggerForType */
#line 5565 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("for"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43804 "preproc.c"
break;
case 791: /* TriggerForSpec: %empty */
#line 5569 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43811 "preproc.c"
break;
case 792: /* TriggerForOptEach: EACH */
#line 5576 "preproc.y"
{
(yyval.str) = mm_strdup("each");
}
#line 43819 "preproc.c"
break;
case 793: /* TriggerForOptEach: %empty */
#line 5580 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43826 "preproc.c"
break;
case 794: /* TriggerForType: ROW */
#line 5587 "preproc.y"
{
(yyval.str) = mm_strdup("row");
}
#line 43834 "preproc.c"
break;
case 795: /* TriggerForType: STATEMENT */
#line 5591 "preproc.y"
{
(yyval.str) = mm_strdup("statement");
}
#line 43842 "preproc.c"
break;
case 796: /* TriggerWhen: WHEN '(' a_expr ')' */
#line 5599 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("when ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 43850 "preproc.c"
break;
case 797: /* TriggerWhen: %empty */
#line 5603 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43857 "preproc.c"
break;
case 798: /* FUNCTION_or_PROCEDURE: FUNCTION */
#line 5610 "preproc.y"
{
(yyval.str) = mm_strdup("function");
}
#line 43865 "preproc.c"
break;
case 799: /* FUNCTION_or_PROCEDURE: PROCEDURE */
#line 5614 "preproc.y"
{
(yyval.str) = mm_strdup("procedure");
}
#line 43873 "preproc.c"
break;
case 800: /* TriggerFuncArgs: TriggerFuncArg */
#line 5622 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43881 "preproc.c"
break;
case 801: /* TriggerFuncArgs: TriggerFuncArgs ',' TriggerFuncArg */
#line 5626 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 43889 "preproc.c"
break;
case 802: /* TriggerFuncArgs: %empty */
#line 5630 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43896 "preproc.c"
break;
case 803: /* TriggerFuncArg: Iconst */
#line 5637 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43904 "preproc.c"
break;
case 804: /* TriggerFuncArg: ecpg_fconst */
#line 5641 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43912 "preproc.c"
break;
case 805: /* TriggerFuncArg: ecpg_sconst */
#line 5645 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43920 "preproc.c"
break;
case 806: /* TriggerFuncArg: ColLabel */
#line 5649 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 43928 "preproc.c"
break;
case 807: /* OptConstrFromTable: FROM qualified_name */
#line 5657 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("from"),(yyvsp[0].str));
}
#line 43936 "preproc.c"
break;
case 808: /* OptConstrFromTable: %empty */
#line 5661 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43943 "preproc.c"
break;
case 809: /* ConstraintAttributeSpec: %empty */
#line 5668 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 43950 "preproc.c"
break;
case 810: /* ConstraintAttributeSpec: ConstraintAttributeSpec ConstraintAttributeElem */
#line 5671 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 43958 "preproc.c"
break;
case 811: /* ConstraintAttributeElem: NOT DEFERRABLE */
#line 5679 "preproc.y"
{
(yyval.str) = mm_strdup("not deferrable");
}
#line 43966 "preproc.c"
break;
case 812: /* ConstraintAttributeElem: DEFERRABLE */
#line 5683 "preproc.y"
{
(yyval.str) = mm_strdup("deferrable");
}
#line 43974 "preproc.c"
break;
case 813: /* ConstraintAttributeElem: INITIALLY IMMEDIATE */
#line 5687 "preproc.y"
{
(yyval.str) = mm_strdup("initially immediate");
}
#line 43982 "preproc.c"
break;
case 814: /* ConstraintAttributeElem: INITIALLY DEFERRED */
#line 5691 "preproc.y"
{
(yyval.str) = mm_strdup("initially deferred");
}
#line 43990 "preproc.c"
break;
case 815: /* ConstraintAttributeElem: NOT VALID */
#line 5695 "preproc.y"
{
(yyval.str) = mm_strdup("not valid");
}
#line 43998 "preproc.c"
break;
case 816: /* ConstraintAttributeElem: NO INHERIT */
#line 5699 "preproc.y"
{
(yyval.str) = mm_strdup("no inherit");
}
#line 44006 "preproc.c"
break;
case 817: /* CreateEventTrigStmt: CREATE EVENT TRIGGER name ON ColLabel EXECUTE FUNCTION_or_PROCEDURE func_name '(' ')' */
#line 5707 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("create event trigger"),(yyvsp[-7].str),mm_strdup("on"),(yyvsp[-5].str),mm_strdup("execute"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("( )"));
}
#line 44014 "preproc.c"
break;
case 818: /* CreateEventTrigStmt: CREATE EVENT TRIGGER name ON ColLabel WHEN event_trigger_when_list EXECUTE FUNCTION_or_PROCEDURE func_name '(' ')' */
#line 5711 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("create event trigger"),(yyvsp[-9].str),mm_strdup("on"),(yyvsp[-7].str),mm_strdup("when"),(yyvsp[-5].str),mm_strdup("execute"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("( )"));
}
#line 44022 "preproc.c"
break;
case 819: /* event_trigger_when_list: event_trigger_when_item */
#line 5719 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44030 "preproc.c"
break;
case 820: /* event_trigger_when_list: event_trigger_when_list AND event_trigger_when_item */
#line 5723 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 44038 "preproc.c"
break;
case 821: /* event_trigger_when_item: ColId IN_P '(' event_trigger_value_list ')' */
#line 5731 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-4].str),mm_strdup("in ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44046 "preproc.c"
break;
case 822: /* event_trigger_value_list: SCONST */
#line 5739 "preproc.y"
{
(yyval.str) = mm_strdup("sconst");
}
#line 44054 "preproc.c"
break;
case 823: /* event_trigger_value_list: event_trigger_value_list ',' SCONST */
#line 5743 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup(", sconst"));
}
#line 44062 "preproc.c"
break;
case 824: /* AlterEventTrigStmt: ALTER EVENT TRIGGER name enable_trigger */
#line 5751 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter event trigger"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44070 "preproc.c"
break;
case 825: /* enable_trigger: ENABLE_P */
#line 5759 "preproc.y"
{
(yyval.str) = mm_strdup("enable");
}
#line 44078 "preproc.c"
break;
case 826: /* enable_trigger: ENABLE_P REPLICA */
#line 5763 "preproc.y"
{
(yyval.str) = mm_strdup("enable replica");
}
#line 44086 "preproc.c"
break;
case 827: /* enable_trigger: ENABLE_P ALWAYS */
#line 5767 "preproc.y"
{
(yyval.str) = mm_strdup("enable always");
}
#line 44094 "preproc.c"
break;
case 828: /* enable_trigger: DISABLE_P */
#line 5771 "preproc.y"
{
(yyval.str) = mm_strdup("disable");
}
#line 44102 "preproc.c"
break;
case 829: /* CreateAssertionStmt: CREATE ASSERTION any_name CHECK '(' a_expr ')' ConstraintAttributeSpec */
#line 5779 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = cat_str(6,mm_strdup("create assertion"),(yyvsp[-5].str),mm_strdup("check ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 44111 "preproc.c"
break;
case 830: /* DefineStmt: CREATE opt_or_replace AGGREGATE func_name aggr_args definition */
#line 5788 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("create"),(yyvsp[-4].str),mm_strdup("aggregate"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44119 "preproc.c"
break;
case 831: /* DefineStmt: CREATE opt_or_replace AGGREGATE func_name old_aggr_definition */
#line 5792 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create"),(yyvsp[-3].str),mm_strdup("aggregate"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44127 "preproc.c"
break;
case 832: /* DefineStmt: CREATE OPERATOR any_operator definition */
#line 5796 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create operator"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44135 "preproc.c"
break;
case 833: /* DefineStmt: CREATE TYPE_P any_name definition */
#line 5800 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create type"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44143 "preproc.c"
break;
case 834: /* DefineStmt: CREATE TYPE_P any_name */
#line 5804 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("create type"),(yyvsp[0].str));
}
#line 44151 "preproc.c"
break;
case 835: /* DefineStmt: CREATE TYPE_P any_name AS '(' OptTableFuncElementList ')' */
#line 5808 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create type"),(yyvsp[-4].str),mm_strdup("as ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44159 "preproc.c"
break;
case 836: /* DefineStmt: CREATE TYPE_P any_name AS ENUM_P '(' opt_enum_val_list ')' */
#line 5812 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create type"),(yyvsp[-5].str),mm_strdup("as enum ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44167 "preproc.c"
break;
case 837: /* DefineStmt: CREATE TYPE_P any_name AS RANGE definition */
#line 5816 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create type"),(yyvsp[-3].str),mm_strdup("as range"),(yyvsp[0].str));
}
#line 44175 "preproc.c"
break;
case 838: /* DefineStmt: CREATE TEXT_P SEARCH PARSER any_name definition */
#line 5820 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create text search parser"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44183 "preproc.c"
break;
case 839: /* DefineStmt: CREATE TEXT_P SEARCH DICTIONARY any_name definition */
#line 5824 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create text search dictionary"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44191 "preproc.c"
break;
case 840: /* DefineStmt: CREATE TEXT_P SEARCH TEMPLATE any_name definition */
#line 5828 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create text search template"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44199 "preproc.c"
break;
case 841: /* DefineStmt: CREATE TEXT_P SEARCH CONFIGURATION any_name definition */
#line 5832 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create text search configuration"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44207 "preproc.c"
break;
case 842: /* DefineStmt: CREATE COLLATION any_name definition */
#line 5836 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create collation"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44215 "preproc.c"
break;
case 843: /* DefineStmt: CREATE COLLATION IF_P NOT EXISTS any_name definition */
#line 5840 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create collation if not exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44223 "preproc.c"
break;
case 844: /* DefineStmt: CREATE COLLATION any_name FROM any_name */
#line 5844 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create collation"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 44231 "preproc.c"
break;
case 845: /* DefineStmt: CREATE COLLATION IF_P NOT EXISTS any_name FROM any_name */
#line 5848 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create collation if not exists"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 44239 "preproc.c"
break;
case 846: /* definition: '(' def_list ')' */
#line 5856 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44247 "preproc.c"
break;
case 847: /* def_list: def_elem */
#line 5864 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44255 "preproc.c"
break;
case 848: /* def_list: def_list ',' def_elem */
#line 5868 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 44263 "preproc.c"
break;
case 849: /* def_elem: ColLabel '=' def_arg */
#line 5876 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 44271 "preproc.c"
break;
case 850: /* def_elem: ColLabel */
#line 5880 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44279 "preproc.c"
break;
case 851: /* def_arg: func_type */
#line 5888 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44287 "preproc.c"
break;
case 852: /* def_arg: reserved_keyword */
#line 5892 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44295 "preproc.c"
break;
case 853: /* def_arg: qual_all_Op */
#line 5896 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44303 "preproc.c"
break;
case 854: /* def_arg: NumericOnly */
#line 5900 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44311 "preproc.c"
break;
case 855: /* def_arg: ecpg_sconst */
#line 5904 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44319 "preproc.c"
break;
case 856: /* def_arg: NONE */
#line 5908 "preproc.y"
{
(yyval.str) = mm_strdup("none");
}
#line 44327 "preproc.c"
break;
case 857: /* old_aggr_definition: '(' old_aggr_list ')' */
#line 5916 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44335 "preproc.c"
break;
case 858: /* old_aggr_list: old_aggr_elem */
#line 5924 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44343 "preproc.c"
break;
case 859: /* old_aggr_list: old_aggr_list ',' old_aggr_elem */
#line 5928 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 44351 "preproc.c"
break;
case 860: /* old_aggr_elem: ecpg_ident '=' def_arg */
#line 5936 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 44359 "preproc.c"
break;
case 861: /* opt_enum_val_list: enum_val_list */
#line 5944 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44367 "preproc.c"
break;
case 862: /* opt_enum_val_list: %empty */
#line 5948 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 44374 "preproc.c"
break;
case 863: /* enum_val_list: ecpg_sconst */
#line 5955 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44382 "preproc.c"
break;
case 864: /* enum_val_list: enum_val_list ',' ecpg_sconst */
#line 5959 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 44390 "preproc.c"
break;
case 865: /* AlterEnumStmt: ALTER TYPE_P any_name ADD_P VALUE_P opt_if_not_exists ecpg_sconst */
#line 5967 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter type"),(yyvsp[-4].str),mm_strdup("add value"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44398 "preproc.c"
break;
case 866: /* AlterEnumStmt: ALTER TYPE_P any_name ADD_P VALUE_P opt_if_not_exists ecpg_sconst BEFORE ecpg_sconst */
#line 5971 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter type"),(yyvsp[-6].str),mm_strdup("add value"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("before"),(yyvsp[0].str));
}
#line 44406 "preproc.c"
break;
case 867: /* AlterEnumStmt: ALTER TYPE_P any_name ADD_P VALUE_P opt_if_not_exists ecpg_sconst AFTER ecpg_sconst */
#line 5975 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter type"),(yyvsp[-6].str),mm_strdup("add value"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("after"),(yyvsp[0].str));
}
#line 44414 "preproc.c"
break;
case 868: /* AlterEnumStmt: ALTER TYPE_P any_name RENAME VALUE_P ecpg_sconst TO ecpg_sconst */
#line 5979 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter type"),(yyvsp[-5].str),mm_strdup("rename value"),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 44422 "preproc.c"
break;
case 869: /* opt_if_not_exists: IF_P NOT EXISTS */
#line 5987 "preproc.y"
{
(yyval.str) = mm_strdup("if not exists");
}
#line 44430 "preproc.c"
break;
case 870: /* opt_if_not_exists: %empty */
#line 5991 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 44437 "preproc.c"
break;
case 871: /* CreateOpClassStmt: CREATE OPERATOR CLASS any_name opt_default FOR TYPE_P Typename USING name opt_opfamily AS opclass_item_list */
#line 5998 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("create operator class"),(yyvsp[-9].str),(yyvsp[-8].str),mm_strdup("for type"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 44445 "preproc.c"
break;
case 872: /* opclass_item_list: opclass_item */
#line 6006 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44453 "preproc.c"
break;
case 873: /* opclass_item_list: opclass_item_list ',' opclass_item */
#line 6010 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 44461 "preproc.c"
break;
case 874: /* opclass_item: OPERATOR Iconst any_operator opclass_purpose opt_recheck */
#line 6018 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("operator"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44469 "preproc.c"
break;
case 875: /* opclass_item: OPERATOR Iconst operator_with_argtypes opclass_purpose opt_recheck */
#line 6022 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("operator"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44477 "preproc.c"
break;
case 876: /* opclass_item: FUNCTION Iconst function_with_argtypes */
#line 6026 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("function"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44485 "preproc.c"
break;
case 877: /* opclass_item: FUNCTION Iconst '(' type_list ')' function_with_argtypes */
#line 6030 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("function"),(yyvsp[-4].str),mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 44493 "preproc.c"
break;
case 878: /* opclass_item: STORAGE Typename */
#line 6034 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("storage"),(yyvsp[0].str));
}
#line 44501 "preproc.c"
break;
case 879: /* opt_default: DEFAULT */
#line 6042 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 44509 "preproc.c"
break;
case 880: /* opt_default: %empty */
#line 6046 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 44516 "preproc.c"
break;
case 881: /* opt_opfamily: FAMILY any_name */
#line 6053 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("family"),(yyvsp[0].str));
}
#line 44524 "preproc.c"
break;
case 882: /* opt_opfamily: %empty */
#line 6057 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 44531 "preproc.c"
break;
case 883: /* opclass_purpose: FOR SEARCH */
#line 6064 "preproc.y"
{
(yyval.str) = mm_strdup("for search");
}
#line 44539 "preproc.c"
break;
case 884: /* opclass_purpose: FOR ORDER BY any_name */
#line 6068 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("for order by"),(yyvsp[0].str));
}
#line 44547 "preproc.c"
break;
case 885: /* opclass_purpose: %empty */
#line 6072 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 44554 "preproc.c"
break;
case 886: /* opt_recheck: RECHECK */
#line 6079 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = mm_strdup("recheck");
}
#line 44563 "preproc.c"
break;
case 887: /* opt_recheck: %empty */
#line 6084 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 44570 "preproc.c"
break;
case 888: /* CreateOpFamilyStmt: CREATE OPERATOR FAMILY any_name USING name */
#line 6091 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create operator family"),(yyvsp[-2].str),mm_strdup("using"),(yyvsp[0].str));
}
#line 44578 "preproc.c"
break;
case 889: /* AlterOpFamilyStmt: ALTER OPERATOR FAMILY any_name USING name ADD_P opclass_item_list */
#line 6099 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator family"),(yyvsp[-4].str),mm_strdup("using"),(yyvsp[-2].str),mm_strdup("add"),(yyvsp[0].str));
}
#line 44586 "preproc.c"
break;
case 890: /* AlterOpFamilyStmt: ALTER OPERATOR FAMILY any_name USING name DROP opclass_drop_list */
#line 6103 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator family"),(yyvsp[-4].str),mm_strdup("using"),(yyvsp[-2].str),mm_strdup("drop"),(yyvsp[0].str));
}
#line 44594 "preproc.c"
break;
case 891: /* opclass_drop_list: opclass_drop */
#line 6111 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44602 "preproc.c"
break;
case 892: /* opclass_drop_list: opclass_drop_list ',' opclass_drop */
#line 6115 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 44610 "preproc.c"
break;
case 893: /* opclass_drop: OPERATOR Iconst '(' type_list ')' */
#line 6123 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("operator"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44618 "preproc.c"
break;
case 894: /* opclass_drop: FUNCTION Iconst '(' type_list ')' */
#line 6127 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("function"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 44626 "preproc.c"
break;
case 895: /* DropOpClassStmt: DROP OPERATOR CLASS any_name USING name opt_drop_behavior */
#line 6135 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop operator class"),(yyvsp[-3].str),mm_strdup("using"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44634 "preproc.c"
break;
case 896: /* DropOpClassStmt: DROP OPERATOR CLASS IF_P EXISTS any_name USING name opt_drop_behavior */
#line 6139 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop operator class if exists"),(yyvsp[-3].str),mm_strdup("using"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44642 "preproc.c"
break;
case 897: /* DropOpFamilyStmt: DROP OPERATOR FAMILY any_name USING name opt_drop_behavior */
#line 6147 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop operator family"),(yyvsp[-3].str),mm_strdup("using"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44650 "preproc.c"
break;
case 898: /* DropOpFamilyStmt: DROP OPERATOR FAMILY IF_P EXISTS any_name USING name opt_drop_behavior */
#line 6151 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop operator family if exists"),(yyvsp[-3].str),mm_strdup("using"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44658 "preproc.c"
break;
case 899: /* DropOwnedStmt: DROP OWNED BY role_list opt_drop_behavior */
#line 6159 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop owned by"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44666 "preproc.c"
break;
case 900: /* ReassignOwnedStmt: REASSIGN OWNED BY role_list TO RoleSpec */
#line 6167 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("reassign owned by"),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 44674 "preproc.c"
break;
case 901: /* DropStmt: DROP object_type_any_name IF_P EXISTS any_name_list opt_drop_behavior */
#line 6175 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop"),(yyvsp[-4].str),mm_strdup("if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44682 "preproc.c"
break;
case 902: /* DropStmt: DROP object_type_any_name any_name_list opt_drop_behavior */
#line 6179 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("drop"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44690 "preproc.c"
break;
case 903: /* DropStmt: DROP drop_type_name IF_P EXISTS name_list opt_drop_behavior */
#line 6183 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("drop"),(yyvsp[-4].str),mm_strdup("if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44698 "preproc.c"
break;
case 904: /* DropStmt: DROP drop_type_name name_list opt_drop_behavior */
#line 6187 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("drop"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44706 "preproc.c"
break;
case 905: /* DropStmt: DROP object_type_name_on_any_name name ON any_name opt_drop_behavior */
#line 6191 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("drop"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("on"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44714 "preproc.c"
break;
case 906: /* DropStmt: DROP object_type_name_on_any_name IF_P EXISTS name ON any_name opt_drop_behavior */
#line 6195 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("drop"),(yyvsp[-6].str),mm_strdup("if exists"),(yyvsp[-3].str),mm_strdup("on"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44722 "preproc.c"
break;
case 907: /* DropStmt: DROP TYPE_P type_name_list opt_drop_behavior */
#line 6199 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop type"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44730 "preproc.c"
break;
case 908: /* DropStmt: DROP TYPE_P IF_P EXISTS type_name_list opt_drop_behavior */
#line 6203 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop type if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44738 "preproc.c"
break;
case 909: /* DropStmt: DROP DOMAIN_P type_name_list opt_drop_behavior */
#line 6207 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop domain"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44746 "preproc.c"
break;
case 910: /* DropStmt: DROP DOMAIN_P IF_P EXISTS type_name_list opt_drop_behavior */
#line 6211 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop domain if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44754 "preproc.c"
break;
case 911: /* DropStmt: DROP INDEX CONCURRENTLY any_name_list opt_drop_behavior */
#line 6215 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop index concurrently"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44762 "preproc.c"
break;
case 912: /* DropStmt: DROP INDEX CONCURRENTLY IF_P EXISTS any_name_list opt_drop_behavior */
#line 6219 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop index concurrently if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 44770 "preproc.c"
break;
case 913: /* object_type_any_name: TABLE */
#line 6227 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 44778 "preproc.c"
break;
case 914: /* object_type_any_name: SEQUENCE */
#line 6231 "preproc.y"
{
(yyval.str) = mm_strdup("sequence");
}
#line 44786 "preproc.c"
break;
case 915: /* object_type_any_name: VIEW */
#line 6235 "preproc.y"
{
(yyval.str) = mm_strdup("view");
}
#line 44794 "preproc.c"
break;
case 916: /* object_type_any_name: MATERIALIZED VIEW */
#line 6239 "preproc.y"
{
(yyval.str) = mm_strdup("materialized view");
}
#line 44802 "preproc.c"
break;
case 917: /* object_type_any_name: INDEX */
#line 6243 "preproc.y"
{
(yyval.str) = mm_strdup("index");
}
#line 44810 "preproc.c"
break;
case 918: /* object_type_any_name: FOREIGN TABLE */
#line 6247 "preproc.y"
{
(yyval.str) = mm_strdup("foreign table");
}
#line 44818 "preproc.c"
break;
case 919: /* object_type_any_name: COLLATION */
#line 6251 "preproc.y"
{
(yyval.str) = mm_strdup("collation");
}
#line 44826 "preproc.c"
break;
case 920: /* object_type_any_name: CONVERSION_P */
#line 6255 "preproc.y"
{
(yyval.str) = mm_strdup("conversion");
}
#line 44834 "preproc.c"
break;
case 921: /* object_type_any_name: STATISTICS */
#line 6259 "preproc.y"
{
(yyval.str) = mm_strdup("statistics");
}
#line 44842 "preproc.c"
break;
case 922: /* object_type_any_name: TEXT_P SEARCH PARSER */
#line 6263 "preproc.y"
{
(yyval.str) = mm_strdup("text search parser");
}
#line 44850 "preproc.c"
break;
case 923: /* object_type_any_name: TEXT_P SEARCH DICTIONARY */
#line 6267 "preproc.y"
{
(yyval.str) = mm_strdup("text search dictionary");
}
#line 44858 "preproc.c"
break;
case 924: /* object_type_any_name: TEXT_P SEARCH TEMPLATE */
#line 6271 "preproc.y"
{
(yyval.str) = mm_strdup("text search template");
}
#line 44866 "preproc.c"
break;
case 925: /* object_type_any_name: TEXT_P SEARCH CONFIGURATION */
#line 6275 "preproc.y"
{
(yyval.str) = mm_strdup("text search configuration");
}
#line 44874 "preproc.c"
break;
case 926: /* object_type_name: drop_type_name */
#line 6283 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 44882 "preproc.c"
break;
case 927: /* object_type_name: DATABASE */
#line 6287 "preproc.y"
{
(yyval.str) = mm_strdup("database");
}
#line 44890 "preproc.c"
break;
case 928: /* object_type_name: ROLE */
#line 6291 "preproc.y"
{
(yyval.str) = mm_strdup("role");
}
#line 44898 "preproc.c"
break;
case 929: /* object_type_name: SUBSCRIPTION */
#line 6295 "preproc.y"
{
(yyval.str) = mm_strdup("subscription");
}
#line 44906 "preproc.c"
break;
case 930: /* object_type_name: TABLESPACE */
#line 6299 "preproc.y"
{
(yyval.str) = mm_strdup("tablespace");
}
#line 44914 "preproc.c"
break;
case 931: /* drop_type_name: ACCESS METHOD */
#line 6307 "preproc.y"
{
(yyval.str) = mm_strdup("access method");
}
#line 44922 "preproc.c"
break;
case 932: /* drop_type_name: EVENT TRIGGER */
#line 6311 "preproc.y"
{
(yyval.str) = mm_strdup("event trigger");
}
#line 44930 "preproc.c"
break;
case 933: /* drop_type_name: EXTENSION */
#line 6315 "preproc.y"
{
(yyval.str) = mm_strdup("extension");
}
#line 44938 "preproc.c"
break;
case 934: /* drop_type_name: FOREIGN DATA_P WRAPPER */
#line 6319 "preproc.y"
{
(yyval.str) = mm_strdup("foreign data wrapper");
}
#line 44946 "preproc.c"
break;
case 935: /* drop_type_name: opt_procedural LANGUAGE */
#line 6323 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("language"));
}
#line 44954 "preproc.c"
break;
case 936: /* drop_type_name: PUBLICATION */
#line 6327 "preproc.y"
{
(yyval.str) = mm_strdup("publication");
}
#line 44962 "preproc.c"
break;
case 937: /* drop_type_name: SCHEMA */
#line 6331 "preproc.y"
{
(yyval.str) = mm_strdup("schema");
}
#line 44970 "preproc.c"
break;
case 938: /* drop_type_name: SERVER */
#line 6335 "preproc.y"
{
(yyval.str) = mm_strdup("server");
}
#line 44978 "preproc.c"
break;
case 939: /* object_type_name_on_any_name: POLICY */
#line 6343 "preproc.y"
{
(yyval.str) = mm_strdup("policy");
}
#line 44986 "preproc.c"
break;
case 940: /* object_type_name_on_any_name: RULE */
#line 6347 "preproc.y"
{
(yyval.str) = mm_strdup("rule");
}
#line 44994 "preproc.c"
break;
case 941: /* object_type_name_on_any_name: TRIGGER */
#line 6351 "preproc.y"
{
(yyval.str) = mm_strdup("trigger");
}
#line 45002 "preproc.c"
break;
case 942: /* any_name_list: any_name */
#line 6359 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45010 "preproc.c"
break;
case 943: /* any_name_list: any_name_list ',' any_name */
#line 6363 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 45018 "preproc.c"
break;
case 944: /* any_name: ColId */
#line 6371 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45026 "preproc.c"
break;
case 945: /* any_name: ColId attrs */
#line 6375 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45034 "preproc.c"
break;
case 946: /* attrs: '.' attr_name */
#line 6383 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("."),(yyvsp[0].str));
}
#line 45042 "preproc.c"
break;
case 947: /* attrs: attrs '.' attr_name */
#line 6387 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("."),(yyvsp[0].str));
}
#line 45050 "preproc.c"
break;
case 948: /* type_name_list: Typename */
#line 6395 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45058 "preproc.c"
break;
case 949: /* type_name_list: type_name_list ',' Typename */
#line 6399 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 45066 "preproc.c"
break;
case 950: /* TruncateStmt: TRUNCATE opt_table relation_expr_list opt_restart_seqs opt_drop_behavior */
#line 6407 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("truncate"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45074 "preproc.c"
break;
case 951: /* opt_restart_seqs: CONTINUE_P IDENTITY_P */
#line 6415 "preproc.y"
{
(yyval.str) = mm_strdup("continue identity");
}
#line 45082 "preproc.c"
break;
case 952: /* opt_restart_seqs: RESTART IDENTITY_P */
#line 6419 "preproc.y"
{
(yyval.str) = mm_strdup("restart identity");
}
#line 45090 "preproc.c"
break;
case 953: /* opt_restart_seqs: %empty */
#line 6423 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 45097 "preproc.c"
break;
case 954: /* CommentStmt: COMMENT ON object_type_any_name any_name IS comment_text */
#line 6430 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("comment on"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45105 "preproc.c"
break;
case 955: /* CommentStmt: COMMENT ON COLUMN any_name IS comment_text */
#line 6434 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on column"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45113 "preproc.c"
break;
case 956: /* CommentStmt: COMMENT ON object_type_name name IS comment_text */
#line 6438 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("comment on"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45121 "preproc.c"
break;
case 957: /* CommentStmt: COMMENT ON TYPE_P Typename IS comment_text */
#line 6442 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on type"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45129 "preproc.c"
break;
case 958: /* CommentStmt: COMMENT ON DOMAIN_P Typename IS comment_text */
#line 6446 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on domain"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45137 "preproc.c"
break;
case 959: /* CommentStmt: COMMENT ON AGGREGATE aggregate_with_argtypes IS comment_text */
#line 6450 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on aggregate"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45145 "preproc.c"
break;
case 960: /* CommentStmt: COMMENT ON FUNCTION function_with_argtypes IS comment_text */
#line 6454 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on function"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45153 "preproc.c"
break;
case 961: /* CommentStmt: COMMENT ON OPERATOR operator_with_argtypes IS comment_text */
#line 6458 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on operator"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45161 "preproc.c"
break;
case 962: /* CommentStmt: COMMENT ON CONSTRAINT name ON any_name IS comment_text */
#line 6462 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("comment on constraint"),(yyvsp[-4].str),mm_strdup("on"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45169 "preproc.c"
break;
case 963: /* CommentStmt: COMMENT ON CONSTRAINT name ON DOMAIN_P any_name IS comment_text */
#line 6466 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("comment on constraint"),(yyvsp[-5].str),mm_strdup("on domain"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45177 "preproc.c"
break;
case 964: /* CommentStmt: COMMENT ON object_type_name_on_any_name name ON any_name IS comment_text */
#line 6470 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("comment on"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("on"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45185 "preproc.c"
break;
case 965: /* CommentStmt: COMMENT ON PROCEDURE function_with_argtypes IS comment_text */
#line 6474 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on procedure"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45193 "preproc.c"
break;
case 966: /* CommentStmt: COMMENT ON ROUTINE function_with_argtypes IS comment_text */
#line 6478 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on routine"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45201 "preproc.c"
break;
case 967: /* CommentStmt: COMMENT ON TRANSFORM FOR Typename LANGUAGE name IS comment_text */
#line 6482 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("comment on transform for"),(yyvsp[-4].str),mm_strdup("language"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45209 "preproc.c"
break;
case 968: /* CommentStmt: COMMENT ON OPERATOR CLASS any_name USING name IS comment_text */
#line 6486 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("comment on operator class"),(yyvsp[-4].str),mm_strdup("using"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45217 "preproc.c"
break;
case 969: /* CommentStmt: COMMENT ON OPERATOR FAMILY any_name USING name IS comment_text */
#line 6490 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("comment on operator family"),(yyvsp[-4].str),mm_strdup("using"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45225 "preproc.c"
break;
case 970: /* CommentStmt: COMMENT ON LARGE_P OBJECT_P NumericOnly IS comment_text */
#line 6494 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("comment on large object"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45233 "preproc.c"
break;
case 971: /* CommentStmt: COMMENT ON CAST '(' Typename AS Typename ')' IS comment_text */
#line 6498 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("comment on cast ("),(yyvsp[-5].str),mm_strdup("as"),(yyvsp[-3].str),mm_strdup(") is"),(yyvsp[0].str));
}
#line 45241 "preproc.c"
break;
case 972: /* comment_text: ecpg_sconst */
#line 6506 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45249 "preproc.c"
break;
case 973: /* comment_text: NULL_P */
#line 6510 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 45257 "preproc.c"
break;
case 974: /* SecLabelStmt: SECURITY LABEL opt_provider ON object_type_any_name any_name IS security_label */
#line 6518 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45265 "preproc.c"
break;
case 975: /* SecLabelStmt: SECURITY LABEL opt_provider ON COLUMN any_name IS security_label */
#line 6522 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on column"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45273 "preproc.c"
break;
case 976: /* SecLabelStmt: SECURITY LABEL opt_provider ON object_type_name name IS security_label */
#line 6526 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45281 "preproc.c"
break;
case 977: /* SecLabelStmt: SECURITY LABEL opt_provider ON TYPE_P Typename IS security_label */
#line 6530 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on type"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45289 "preproc.c"
break;
case 978: /* SecLabelStmt: SECURITY LABEL opt_provider ON DOMAIN_P Typename IS security_label */
#line 6534 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on domain"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45297 "preproc.c"
break;
case 979: /* SecLabelStmt: SECURITY LABEL opt_provider ON AGGREGATE aggregate_with_argtypes IS security_label */
#line 6538 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on aggregate"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45305 "preproc.c"
break;
case 980: /* SecLabelStmt: SECURITY LABEL opt_provider ON FUNCTION function_with_argtypes IS security_label */
#line 6542 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on function"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45313 "preproc.c"
break;
case 981: /* SecLabelStmt: SECURITY LABEL opt_provider ON LARGE_P OBJECT_P NumericOnly IS security_label */
#line 6546 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-6].str),mm_strdup("on large object"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45321 "preproc.c"
break;
case 982: /* SecLabelStmt: SECURITY LABEL opt_provider ON PROCEDURE function_with_argtypes IS security_label */
#line 6550 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on procedure"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45329 "preproc.c"
break;
case 983: /* SecLabelStmt: SECURITY LABEL opt_provider ON ROUTINE function_with_argtypes IS security_label */
#line 6554 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("security label"),(yyvsp[-5].str),mm_strdup("on routine"),(yyvsp[-2].str),mm_strdup("is"),(yyvsp[0].str));
}
#line 45337 "preproc.c"
break;
case 984: /* opt_provider: FOR NonReservedWord_or_Sconst */
#line 6562 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("for"),(yyvsp[0].str));
}
#line 45345 "preproc.c"
break;
case 985: /* opt_provider: %empty */
#line 6566 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 45352 "preproc.c"
break;
case 986: /* security_label: ecpg_sconst */
#line 6573 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45360 "preproc.c"
break;
case 987: /* security_label: NULL_P */
#line 6577 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 45368 "preproc.c"
break;
case 988: /* FetchStmt: FETCH fetch_args */
#line 6585 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("fetch"),(yyvsp[0].str));
}
#line 45376 "preproc.c"
break;
case 989: /* FetchStmt: MOVE fetch_args */
#line 6589 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("move"),(yyvsp[0].str));
}
#line 45384 "preproc.c"
break;
case 990: /* FetchStmt: FETCH fetch_args ecpg_fetch_into */
#line 6593 "preproc.y"
{
(yyval.str) = cat2_str(mm_strdup("fetch"), (yyvsp[-1].str));
}
#line 45392 "preproc.c"
break;
case 991: /* FetchStmt: FETCH FORWARD cursor_name opt_ecpg_fetch_into */
#line 6597 "preproc.y"
{
char *cursor_marker = (yyvsp[-1].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[-1].str);
struct cursor *ptr = add_additional_variables((yyvsp[-1].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("fetch forward"), cursor_marker);
}
#line 45405 "preproc.c"
break;
case 992: /* FetchStmt: FETCH FORWARD from_in cursor_name opt_ecpg_fetch_into */
#line 6606 "preproc.y"
{
char *cursor_marker = (yyvsp[-1].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[-1].str);
struct cursor *ptr = add_additional_variables((yyvsp[-1].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("fetch forward from"), cursor_marker);
}
#line 45418 "preproc.c"
break;
case 993: /* FetchStmt: FETCH BACKWARD cursor_name opt_ecpg_fetch_into */
#line 6615 "preproc.y"
{
char *cursor_marker = (yyvsp[-1].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[-1].str);
struct cursor *ptr = add_additional_variables((yyvsp[-1].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("fetch backward"), cursor_marker);
}
#line 45431 "preproc.c"
break;
case 994: /* FetchStmt: FETCH BACKWARD from_in cursor_name opt_ecpg_fetch_into */
#line 6624 "preproc.y"
{
char *cursor_marker = (yyvsp[-1].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[-1].str);
struct cursor *ptr = add_additional_variables((yyvsp[-1].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("fetch backward from"), cursor_marker);
}
#line 45444 "preproc.c"
break;
case 995: /* FetchStmt: MOVE FORWARD cursor_name */
#line 6633 "preproc.y"
{
char *cursor_marker = (yyvsp[0].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[0].str);
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("move forward"), cursor_marker);
}
#line 45457 "preproc.c"
break;
case 996: /* FetchStmt: MOVE FORWARD from_in cursor_name */
#line 6642 "preproc.y"
{
char *cursor_marker = (yyvsp[0].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[0].str);
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("move forward from"), cursor_marker);
}
#line 45470 "preproc.c"
break;
case 997: /* FetchStmt: MOVE BACKWARD cursor_name */
#line 6651 "preproc.y"
{
char *cursor_marker = (yyvsp[0].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[0].str);
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("move backward"), cursor_marker);
}
#line 45483 "preproc.c"
break;
case 998: /* FetchStmt: MOVE BACKWARD from_in cursor_name */
#line 6660 "preproc.y"
{
char *cursor_marker = (yyvsp[0].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[0].str);
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
(yyval.str) = cat_str(2, mm_strdup("move backward from"), cursor_marker);
}
#line 45496 "preproc.c"
break;
case 999: /* fetch_args: cursor_name */
#line 6673 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = (yyvsp[0].str);
}
#line 45514 "preproc.c"
break;
case 1000: /* fetch_args: from_in cursor_name */
#line 6687 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45532 "preproc.c"
break;
case 1001: /* fetch_args: NEXT opt_from_in cursor_name */
#line 6701 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("next"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45550 "preproc.c"
break;
case 1002: /* fetch_args: PRIOR opt_from_in cursor_name */
#line 6715 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("prior"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45568 "preproc.c"
break;
case 1003: /* fetch_args: FIRST_P opt_from_in cursor_name */
#line 6729 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("first"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45586 "preproc.c"
break;
case 1004: /* fetch_args: LAST_P opt_from_in cursor_name */
#line 6743 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("last"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45604 "preproc.c"
break;
case 1005: /* fetch_args: ABSOLUTE_P SignedIconst opt_from_in cursor_name */
#line 6757 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
if ((yyvsp[-2].str)[0] == '$')
{
free((yyvsp[-2].str));
(yyvsp[-2].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(4,mm_strdup("absolute"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45627 "preproc.c"
break;
case 1006: /* fetch_args: RELATIVE_P SignedIconst opt_from_in cursor_name */
#line 6776 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
if ((yyvsp[-2].str)[0] == '$')
{
free((yyvsp[-2].str));
(yyvsp[-2].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(4,mm_strdup("relative"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45650 "preproc.c"
break;
case 1007: /* fetch_args: SignedIconst opt_from_in cursor_name */
#line 6795 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
if ((yyvsp[-2].str)[0] == '$')
{
free((yyvsp[-2].str));
(yyvsp[-2].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45673 "preproc.c"
break;
case 1008: /* fetch_args: ALL opt_from_in cursor_name */
#line 6814 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("all"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45691 "preproc.c"
break;
case 1009: /* fetch_args: FORWARD SignedIconst opt_from_in cursor_name */
#line 6828 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
if ((yyvsp[-2].str)[0] == '$')
{
free((yyvsp[-2].str));
(yyvsp[-2].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(4,mm_strdup("forward"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45714 "preproc.c"
break;
case 1010: /* fetch_args: FORWARD ALL opt_from_in cursor_name */
#line 6847 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("forward all"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45732 "preproc.c"
break;
case 1011: /* fetch_args: BACKWARD SignedIconst opt_from_in cursor_name */
#line 6861 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
if ((yyvsp[-2].str)[0] == '$')
{
free((yyvsp[-2].str));
(yyvsp[-2].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(4,mm_strdup("backward"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45755 "preproc.c"
break;
case 1012: /* fetch_args: BACKWARD ALL opt_from_in cursor_name */
#line 6880 "preproc.y"
{
struct cursor *ptr = add_additional_variables((yyvsp[0].str), false);
if (ptr -> connection)
connection = mm_strdup(ptr -> connection);
if ((yyvsp[0].str)[0] == ':')
{
free((yyvsp[0].str));
(yyvsp[0].str) = mm_strdup("$0");
}
(yyval.str) = cat_str(3,mm_strdup("backward all"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45773 "preproc.c"
break;
case 1013: /* from_in: FROM */
#line 6898 "preproc.y"
{
(yyval.str) = mm_strdup("from");
}
#line 45781 "preproc.c"
break;
case 1014: /* from_in: IN_P */
#line 6902 "preproc.y"
{
(yyval.str) = mm_strdup("in");
}
#line 45789 "preproc.c"
break;
case 1015: /* opt_from_in: from_in */
#line 6910 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45797 "preproc.c"
break;
case 1016: /* opt_from_in: %empty */
#line 6914 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 45804 "preproc.c"
break;
case 1017: /* GrantStmt: GRANT privileges ON privilege_target TO grantee_list opt_grant_grant_option opt_granted_by */
#line 6921 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("grant"),(yyvsp[-6].str),mm_strdup("on"),(yyvsp[-4].str),mm_strdup("to"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45812 "preproc.c"
break;
case 1018: /* RevokeStmt: REVOKE privileges ON privilege_target FROM grantee_list opt_granted_by opt_drop_behavior */
#line 6929 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("revoke"),(yyvsp[-6].str),mm_strdup("on"),(yyvsp[-4].str),mm_strdup("from"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45820 "preproc.c"
break;
case 1019: /* RevokeStmt: REVOKE GRANT OPTION FOR privileges ON privilege_target FROM grantee_list opt_granted_by opt_drop_behavior */
#line 6933 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("revoke grant option for"),(yyvsp[-6].str),mm_strdup("on"),(yyvsp[-4].str),mm_strdup("from"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45828 "preproc.c"
break;
case 1020: /* privileges: privilege_list */
#line 6941 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45836 "preproc.c"
break;
case 1021: /* privileges: ALL */
#line 6945 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 45844 "preproc.c"
break;
case 1022: /* privileges: ALL PRIVILEGES */
#line 6949 "preproc.y"
{
(yyval.str) = mm_strdup("all privileges");
}
#line 45852 "preproc.c"
break;
case 1023: /* privileges: ALL '(' columnList ')' */
#line 6953 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("all ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 45860 "preproc.c"
break;
case 1024: /* privileges: ALL PRIVILEGES '(' columnList ')' */
#line 6957 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("all privileges ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 45868 "preproc.c"
break;
case 1025: /* privilege_list: privilege */
#line 6965 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45876 "preproc.c"
break;
case 1026: /* privilege_list: privilege_list ',' privilege */
#line 6969 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 45884 "preproc.c"
break;
case 1027: /* privilege: SELECT opt_column_list */
#line 6977 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("select"),(yyvsp[0].str));
}
#line 45892 "preproc.c"
break;
case 1028: /* privilege: REFERENCES opt_column_list */
#line 6981 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("references"),(yyvsp[0].str));
}
#line 45900 "preproc.c"
break;
case 1029: /* privilege: CREATE opt_column_list */
#line 6985 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("create"),(yyvsp[0].str));
}
#line 45908 "preproc.c"
break;
case 1030: /* privilege: ALTER SYSTEM_P */
#line 6989 "preproc.y"
{
(yyval.str) = mm_strdup("alter system");
}
#line 45916 "preproc.c"
break;
case 1031: /* privilege: ColId opt_column_list */
#line 6993 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 45924 "preproc.c"
break;
case 1032: /* parameter_name_list: parameter_name */
#line 7001 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45932 "preproc.c"
break;
case 1033: /* parameter_name_list: parameter_name_list ',' parameter_name */
#line 7005 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 45940 "preproc.c"
break;
case 1034: /* parameter_name: ColId */
#line 7013 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45948 "preproc.c"
break;
case 1035: /* parameter_name: parameter_name '.' ColId */
#line 7017 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("."),(yyvsp[0].str));
}
#line 45956 "preproc.c"
break;
case 1036: /* privilege_target: qualified_name_list */
#line 7025 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 45964 "preproc.c"
break;
case 1037: /* privilege_target: TABLE qualified_name_list */
#line 7029 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("table"),(yyvsp[0].str));
}
#line 45972 "preproc.c"
break;
case 1038: /* privilege_target: SEQUENCE qualified_name_list */
#line 7033 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("sequence"),(yyvsp[0].str));
}
#line 45980 "preproc.c"
break;
case 1039: /* privilege_target: FOREIGN DATA_P WRAPPER name_list */
#line 7037 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("foreign data wrapper"),(yyvsp[0].str));
}
#line 45988 "preproc.c"
break;
case 1040: /* privilege_target: FOREIGN SERVER name_list */
#line 7041 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("foreign server"),(yyvsp[0].str));
}
#line 45996 "preproc.c"
break;
case 1041: /* privilege_target: FUNCTION function_with_argtypes_list */
#line 7045 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("function"),(yyvsp[0].str));
}
#line 46004 "preproc.c"
break;
case 1042: /* privilege_target: PROCEDURE function_with_argtypes_list */
#line 7049 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("procedure"),(yyvsp[0].str));
}
#line 46012 "preproc.c"
break;
case 1043: /* privilege_target: ROUTINE function_with_argtypes_list */
#line 7053 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("routine"),(yyvsp[0].str));
}
#line 46020 "preproc.c"
break;
case 1044: /* privilege_target: DATABASE name_list */
#line 7057 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("database"),(yyvsp[0].str));
}
#line 46028 "preproc.c"
break;
case 1045: /* privilege_target: DOMAIN_P any_name_list */
#line 7061 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("domain"),(yyvsp[0].str));
}
#line 46036 "preproc.c"
break;
case 1046: /* privilege_target: LANGUAGE name_list */
#line 7065 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("language"),(yyvsp[0].str));
}
#line 46044 "preproc.c"
break;
case 1047: /* privilege_target: LARGE_P OBJECT_P NumericOnly_list */
#line 7069 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("large object"),(yyvsp[0].str));
}
#line 46052 "preproc.c"
break;
case 1048: /* privilege_target: PARAMETER parameter_name_list */
#line 7073 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("parameter"),(yyvsp[0].str));
}
#line 46060 "preproc.c"
break;
case 1049: /* privilege_target: SCHEMA name_list */
#line 7077 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("schema"),(yyvsp[0].str));
}
#line 46068 "preproc.c"
break;
case 1050: /* privilege_target: TABLESPACE name_list */
#line 7081 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("tablespace"),(yyvsp[0].str));
}
#line 46076 "preproc.c"
break;
case 1051: /* privilege_target: TYPE_P any_name_list */
#line 7085 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("type"),(yyvsp[0].str));
}
#line 46084 "preproc.c"
break;
case 1052: /* privilege_target: ALL TABLES IN_P SCHEMA name_list */
#line 7089 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("all tables in schema"),(yyvsp[0].str));
}
#line 46092 "preproc.c"
break;
case 1053: /* privilege_target: ALL SEQUENCES IN_P SCHEMA name_list */
#line 7093 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("all sequences in schema"),(yyvsp[0].str));
}
#line 46100 "preproc.c"
break;
case 1054: /* privilege_target: ALL FUNCTIONS IN_P SCHEMA name_list */
#line 7097 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("all functions in schema"),(yyvsp[0].str));
}
#line 46108 "preproc.c"
break;
case 1055: /* privilege_target: ALL PROCEDURES IN_P SCHEMA name_list */
#line 7101 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("all procedures in schema"),(yyvsp[0].str));
}
#line 46116 "preproc.c"
break;
case 1056: /* privilege_target: ALL ROUTINES IN_P SCHEMA name_list */
#line 7105 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("all routines in schema"),(yyvsp[0].str));
}
#line 46124 "preproc.c"
break;
case 1057: /* grantee_list: grantee */
#line 7113 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46132 "preproc.c"
break;
case 1058: /* grantee_list: grantee_list ',' grantee */
#line 7117 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46140 "preproc.c"
break;
case 1059: /* grantee: RoleSpec */
#line 7125 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46148 "preproc.c"
break;
case 1060: /* grantee: GROUP_P RoleSpec */
#line 7129 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("group"),(yyvsp[0].str));
}
#line 46156 "preproc.c"
break;
case 1061: /* opt_grant_grant_option: WITH GRANT OPTION */
#line 7137 "preproc.y"
{
(yyval.str) = mm_strdup("with grant option");
}
#line 46164 "preproc.c"
break;
case 1062: /* opt_grant_grant_option: %empty */
#line 7141 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46171 "preproc.c"
break;
case 1063: /* GrantRoleStmt: GRANT privilege_list TO role_list opt_granted_by */
#line 7148 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("grant"),(yyvsp[-3].str),mm_strdup("to"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46179 "preproc.c"
break;
case 1064: /* GrantRoleStmt: GRANT privilege_list TO role_list WITH grant_role_opt_list opt_granted_by */
#line 7152 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("grant"),(yyvsp[-5].str),mm_strdup("to"),(yyvsp[-3].str),mm_strdup("with"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46187 "preproc.c"
break;
case 1065: /* RevokeRoleStmt: REVOKE privilege_list FROM role_list opt_granted_by opt_drop_behavior */
#line 7160 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("revoke"),(yyvsp[-4].str),mm_strdup("from"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46195 "preproc.c"
break;
case 1066: /* RevokeRoleStmt: REVOKE ColId OPTION FOR privilege_list FROM role_list opt_granted_by opt_drop_behavior */
#line 7164 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("revoke"),(yyvsp[-7].str),mm_strdup("option for"),(yyvsp[-4].str),mm_strdup("from"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46203 "preproc.c"
break;
case 1067: /* grant_role_opt_list: grant_role_opt_list ',' grant_role_opt */
#line 7172 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46211 "preproc.c"
break;
case 1068: /* grant_role_opt_list: grant_role_opt */
#line 7176 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46219 "preproc.c"
break;
case 1069: /* grant_role_opt: ColLabel grant_role_opt_value */
#line 7184 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46227 "preproc.c"
break;
case 1070: /* grant_role_opt_value: OPTION */
#line 7192 "preproc.y"
{
(yyval.str) = mm_strdup("option");
}
#line 46235 "preproc.c"
break;
case 1071: /* grant_role_opt_value: TRUE_P */
#line 7196 "preproc.y"
{
(yyval.str) = mm_strdup("true");
}
#line 46243 "preproc.c"
break;
case 1072: /* grant_role_opt_value: FALSE_P */
#line 7200 "preproc.y"
{
(yyval.str) = mm_strdup("false");
}
#line 46251 "preproc.c"
break;
case 1073: /* opt_granted_by: GRANTED BY RoleSpec */
#line 7208 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("granted by"),(yyvsp[0].str));
}
#line 46259 "preproc.c"
break;
case 1074: /* opt_granted_by: %empty */
#line 7212 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46266 "preproc.c"
break;
case 1075: /* AlterDefaultPrivilegesStmt: ALTER DEFAULT PRIVILEGES DefACLOptionList DefACLAction */
#line 7219 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter default privileges"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46274 "preproc.c"
break;
case 1076: /* DefACLOptionList: DefACLOptionList DefACLOption */
#line 7227 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46282 "preproc.c"
break;
case 1077: /* DefACLOptionList: %empty */
#line 7231 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46289 "preproc.c"
break;
case 1078: /* DefACLOption: IN_P SCHEMA name_list */
#line 7238 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("in schema"),(yyvsp[0].str));
}
#line 46297 "preproc.c"
break;
case 1079: /* DefACLOption: FOR ROLE role_list */
#line 7242 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("for role"),(yyvsp[0].str));
}
#line 46305 "preproc.c"
break;
case 1080: /* DefACLOption: FOR USER role_list */
#line 7246 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("for user"),(yyvsp[0].str));
}
#line 46313 "preproc.c"
break;
case 1081: /* DefACLAction: GRANT privileges ON defacl_privilege_target TO grantee_list opt_grant_grant_option */
#line 7254 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("grant"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("to"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46321 "preproc.c"
break;
case 1082: /* DefACLAction: REVOKE privileges ON defacl_privilege_target FROM grantee_list opt_drop_behavior */
#line 7258 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("revoke"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("from"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46329 "preproc.c"
break;
case 1083: /* DefACLAction: REVOKE GRANT OPTION FOR privileges ON defacl_privilege_target FROM grantee_list opt_drop_behavior */
#line 7262 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("revoke grant option for"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("from"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46337 "preproc.c"
break;
case 1084: /* defacl_privilege_target: TABLES */
#line 7270 "preproc.y"
{
(yyval.str) = mm_strdup("tables");
}
#line 46345 "preproc.c"
break;
case 1085: /* defacl_privilege_target: FUNCTIONS */
#line 7274 "preproc.y"
{
(yyval.str) = mm_strdup("functions");
}
#line 46353 "preproc.c"
break;
case 1086: /* defacl_privilege_target: ROUTINES */
#line 7278 "preproc.y"
{
(yyval.str) = mm_strdup("routines");
}
#line 46361 "preproc.c"
break;
case 1087: /* defacl_privilege_target: SEQUENCES */
#line 7282 "preproc.y"
{
(yyval.str) = mm_strdup("sequences");
}
#line 46369 "preproc.c"
break;
case 1088: /* defacl_privilege_target: TYPES_P */
#line 7286 "preproc.y"
{
(yyval.str) = mm_strdup("types");
}
#line 46377 "preproc.c"
break;
case 1089: /* defacl_privilege_target: SCHEMAS */
#line 7290 "preproc.y"
{
(yyval.str) = mm_strdup("schemas");
}
#line 46385 "preproc.c"
break;
case 1090: /* IndexStmt: CREATE opt_unique INDEX opt_concurrently opt_single_name ON relation_expr access_method_clause '(' index_params ')' opt_include opt_unique_null_treatment opt_reloptions OptTableSpace where_clause */
#line 7298 "preproc.y"
{
(yyval.str) = cat_str(16,mm_strdup("create"),(yyvsp[-14].str),mm_strdup("index"),(yyvsp[-12].str),(yyvsp[-11].str),mm_strdup("on"),(yyvsp[-9].str),(yyvsp[-8].str),mm_strdup("("),(yyvsp[-6].str),mm_strdup(")"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46393 "preproc.c"
break;
case 1091: /* IndexStmt: CREATE opt_unique INDEX opt_concurrently IF_P NOT EXISTS name ON relation_expr access_method_clause '(' index_params ')' opt_include opt_unique_null_treatment opt_reloptions OptTableSpace where_clause */
#line 7302 "preproc.y"
{
(yyval.str) = cat_str(17,mm_strdup("create"),(yyvsp[-17].str),mm_strdup("index"),(yyvsp[-15].str),mm_strdup("if not exists"),(yyvsp[-11].str),mm_strdup("on"),(yyvsp[-9].str),(yyvsp[-8].str),mm_strdup("("),(yyvsp[-6].str),mm_strdup(")"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46401 "preproc.c"
break;
case 1092: /* opt_unique: UNIQUE */
#line 7310 "preproc.y"
{
(yyval.str) = mm_strdup("unique");
}
#line 46409 "preproc.c"
break;
case 1093: /* opt_unique: %empty */
#line 7314 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46416 "preproc.c"
break;
case 1094: /* access_method_clause: USING name */
#line 7321 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using"),(yyvsp[0].str));
}
#line 46424 "preproc.c"
break;
case 1095: /* access_method_clause: %empty */
#line 7325 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46431 "preproc.c"
break;
case 1096: /* index_params: index_elem */
#line 7332 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46439 "preproc.c"
break;
case 1097: /* index_params: index_params ',' index_elem */
#line 7336 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46447 "preproc.c"
break;
case 1098: /* index_elem_options: opt_collate opt_qualified_name opt_asc_desc opt_nulls_order */
#line 7344 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46455 "preproc.c"
break;
case 1099: /* index_elem_options: opt_collate any_name reloptions opt_asc_desc opt_nulls_order */
#line 7348 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46463 "preproc.c"
break;
case 1100: /* index_elem: ColId index_elem_options */
#line 7356 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46471 "preproc.c"
break;
case 1101: /* index_elem: func_expr_windowless index_elem_options */
#line 7360 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46479 "preproc.c"
break;
case 1102: /* index_elem: '(' a_expr ')' index_elem_options */
#line 7364 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 46487 "preproc.c"
break;
case 1103: /* opt_include: INCLUDE '(' index_including_params ')' */
#line 7372 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("include ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 46495 "preproc.c"
break;
case 1104: /* opt_include: %empty */
#line 7376 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46502 "preproc.c"
break;
case 1105: /* index_including_params: index_elem */
#line 7383 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46510 "preproc.c"
break;
case 1106: /* index_including_params: index_including_params ',' index_elem */
#line 7387 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46518 "preproc.c"
break;
case 1107: /* opt_collate: COLLATE any_name */
#line 7395 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("collate"),(yyvsp[0].str));
}
#line 46526 "preproc.c"
break;
case 1108: /* opt_collate: %empty */
#line 7399 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46533 "preproc.c"
break;
case 1109: /* opt_asc_desc: ASC */
#line 7406 "preproc.y"
{
(yyval.str) = mm_strdup("asc");
}
#line 46541 "preproc.c"
break;
case 1110: /* opt_asc_desc: DESC */
#line 7410 "preproc.y"
{
(yyval.str) = mm_strdup("desc");
}
#line 46549 "preproc.c"
break;
case 1111: /* opt_asc_desc: %empty */
#line 7414 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46556 "preproc.c"
break;
case 1112: /* opt_nulls_order: NULLS_LA FIRST_P */
#line 7421 "preproc.y"
{
(yyval.str) = mm_strdup("nulls first");
}
#line 46564 "preproc.c"
break;
case 1113: /* opt_nulls_order: NULLS_LA LAST_P */
#line 7425 "preproc.y"
{
(yyval.str) = mm_strdup("nulls last");
}
#line 46572 "preproc.c"
break;
case 1114: /* opt_nulls_order: %empty */
#line 7429 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46579 "preproc.c"
break;
case 1115: /* CreateFunctionStmt: CREATE opt_or_replace FUNCTION func_name func_args_with_defaults RETURNS func_return opt_createfunc_opt_list opt_routine_body */
#line 7436 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create"),(yyvsp[-7].str),mm_strdup("function"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("returns"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46587 "preproc.c"
break;
case 1116: /* CreateFunctionStmt: CREATE opt_or_replace FUNCTION func_name func_args_with_defaults RETURNS TABLE '(' table_func_column_list ')' opt_createfunc_opt_list opt_routine_body */
#line 7440 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("create"),(yyvsp[-10].str),mm_strdup("function"),(yyvsp[-8].str),(yyvsp[-7].str),mm_strdup("returns table ("),(yyvsp[-3].str),mm_strdup(")"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46595 "preproc.c"
break;
case 1117: /* CreateFunctionStmt: CREATE opt_or_replace FUNCTION func_name func_args_with_defaults opt_createfunc_opt_list opt_routine_body */
#line 7444 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create"),(yyvsp[-5].str),mm_strdup("function"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46603 "preproc.c"
break;
case 1118: /* CreateFunctionStmt: CREATE opt_or_replace PROCEDURE func_name func_args_with_defaults opt_createfunc_opt_list opt_routine_body */
#line 7448 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create"),(yyvsp[-5].str),mm_strdup("procedure"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46611 "preproc.c"
break;
case 1119: /* opt_or_replace: OR REPLACE */
#line 7456 "preproc.y"
{
(yyval.str) = mm_strdup("or replace");
}
#line 46619 "preproc.c"
break;
case 1120: /* opt_or_replace: %empty */
#line 7460 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46626 "preproc.c"
break;
case 1121: /* func_args: '(' func_args_list ')' */
#line 7467 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 46634 "preproc.c"
break;
case 1122: /* func_args: '(' ')' */
#line 7471 "preproc.y"
{
(yyval.str) = mm_strdup("( )");
}
#line 46642 "preproc.c"
break;
case 1123: /* func_args_list: func_arg */
#line 7479 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46650 "preproc.c"
break;
case 1124: /* func_args_list: func_args_list ',' func_arg */
#line 7483 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46658 "preproc.c"
break;
case 1125: /* function_with_argtypes_list: function_with_argtypes */
#line 7491 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46666 "preproc.c"
break;
case 1126: /* function_with_argtypes_list: function_with_argtypes_list ',' function_with_argtypes */
#line 7495 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46674 "preproc.c"
break;
case 1127: /* function_with_argtypes: func_name func_args */
#line 7503 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46682 "preproc.c"
break;
case 1128: /* function_with_argtypes: type_func_name_keyword */
#line 7507 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46690 "preproc.c"
break;
case 1129: /* function_with_argtypes: ColId */
#line 7511 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46698 "preproc.c"
break;
case 1130: /* function_with_argtypes: ColId indirection */
#line 7515 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46706 "preproc.c"
break;
case 1131: /* func_args_with_defaults: '(' func_args_with_defaults_list ')' */
#line 7523 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 46714 "preproc.c"
break;
case 1132: /* func_args_with_defaults: '(' ')' */
#line 7527 "preproc.y"
{
(yyval.str) = mm_strdup("( )");
}
#line 46722 "preproc.c"
break;
case 1133: /* func_args_with_defaults_list: func_arg_with_default */
#line 7535 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46730 "preproc.c"
break;
case 1134: /* func_args_with_defaults_list: func_args_with_defaults_list ',' func_arg_with_default */
#line 7539 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46738 "preproc.c"
break;
case 1135: /* func_arg: arg_class param_name func_type */
#line 7547 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46746 "preproc.c"
break;
case 1136: /* func_arg: param_name arg_class func_type */
#line 7551 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46754 "preproc.c"
break;
case 1137: /* func_arg: param_name func_type */
#line 7555 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46762 "preproc.c"
break;
case 1138: /* func_arg: arg_class func_type */
#line 7559 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46770 "preproc.c"
break;
case 1139: /* func_arg: func_type */
#line 7563 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46778 "preproc.c"
break;
case 1140: /* arg_class: IN_P */
#line 7571 "preproc.y"
{
(yyval.str) = mm_strdup("in");
}
#line 46786 "preproc.c"
break;
case 1141: /* arg_class: OUT_P */
#line 7575 "preproc.y"
{
(yyval.str) = mm_strdup("out");
}
#line 46794 "preproc.c"
break;
case 1142: /* arg_class: INOUT */
#line 7579 "preproc.y"
{
(yyval.str) = mm_strdup("inout");
}
#line 46802 "preproc.c"
break;
case 1143: /* arg_class: IN_P OUT_P */
#line 7583 "preproc.y"
{
(yyval.str) = mm_strdup("in out");
}
#line 46810 "preproc.c"
break;
case 1144: /* arg_class: VARIADIC */
#line 7587 "preproc.y"
{
(yyval.str) = mm_strdup("variadic");
}
#line 46818 "preproc.c"
break;
case 1145: /* param_name: type_function_name */
#line 7595 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46826 "preproc.c"
break;
case 1146: /* func_return: func_type */
#line 7603 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46834 "preproc.c"
break;
case 1147: /* func_type: Typename */
#line 7611 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46842 "preproc.c"
break;
case 1148: /* func_type: type_function_name attrs '%' TYPE_P */
#line 7615 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("% type"));
}
#line 46850 "preproc.c"
break;
case 1149: /* func_type: SETOF type_function_name attrs '%' TYPE_P */
#line 7619 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("setof"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("% type"));
}
#line 46858 "preproc.c"
break;
case 1150: /* func_arg_with_default: func_arg */
#line 7627 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46866 "preproc.c"
break;
case 1151: /* func_arg_with_default: func_arg DEFAULT a_expr */
#line 7631 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("default"),(yyvsp[0].str));
}
#line 46874 "preproc.c"
break;
case 1152: /* func_arg_with_default: func_arg '=' a_expr */
#line 7635 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 46882 "preproc.c"
break;
case 1153: /* aggr_arg: func_arg */
#line 7643 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46890 "preproc.c"
break;
case 1154: /* aggr_args: '(' '*' ')' */
#line 7651 "preproc.y"
{
(yyval.str) = mm_strdup("( * )");
}
#line 46898 "preproc.c"
break;
case 1155: /* aggr_args: '(' aggr_args_list ')' */
#line 7655 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 46906 "preproc.c"
break;
case 1156: /* aggr_args: '(' ORDER BY aggr_args_list ')' */
#line 7659 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("( order by"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 46914 "preproc.c"
break;
case 1157: /* aggr_args: '(' aggr_args_list ORDER BY aggr_args_list ')' */
#line 7663 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("("),(yyvsp[-4].str),mm_strdup("order by"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 46922 "preproc.c"
break;
case 1158: /* aggr_args_list: aggr_arg */
#line 7671 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46930 "preproc.c"
break;
case 1159: /* aggr_args_list: aggr_args_list ',' aggr_arg */
#line 7675 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46938 "preproc.c"
break;
case 1160: /* aggregate_with_argtypes: func_name aggr_args */
#line 7683 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46946 "preproc.c"
break;
case 1161: /* aggregate_with_argtypes_list: aggregate_with_argtypes */
#line 7691 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46954 "preproc.c"
break;
case 1162: /* aggregate_with_argtypes_list: aggregate_with_argtypes_list ',' aggregate_with_argtypes */
#line 7695 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 46962 "preproc.c"
break;
case 1163: /* opt_createfunc_opt_list: createfunc_opt_list */
#line 7703 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46970 "preproc.c"
break;
case 1164: /* opt_createfunc_opt_list: %empty */
#line 7707 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 46977 "preproc.c"
break;
case 1165: /* createfunc_opt_list: createfunc_opt_item */
#line 7714 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 46985 "preproc.c"
break;
case 1166: /* createfunc_opt_list: createfunc_opt_list createfunc_opt_item */
#line 7718 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 46993 "preproc.c"
break;
case 1167: /* common_func_opt_item: CALLED ON NULL_P INPUT_P */
#line 7726 "preproc.y"
{
(yyval.str) = mm_strdup("called on null input");
}
#line 47001 "preproc.c"
break;
case 1168: /* common_func_opt_item: RETURNS NULL_P ON NULL_P INPUT_P */
#line 7730 "preproc.y"
{
(yyval.str) = mm_strdup("returns null on null input");
}
#line 47009 "preproc.c"
break;
case 1169: /* common_func_opt_item: STRICT_P */
#line 7734 "preproc.y"
{
(yyval.str) = mm_strdup("strict");
}
#line 47017 "preproc.c"
break;
case 1170: /* common_func_opt_item: IMMUTABLE */
#line 7738 "preproc.y"
{
(yyval.str) = mm_strdup("immutable");
}
#line 47025 "preproc.c"
break;
case 1171: /* common_func_opt_item: STABLE */
#line 7742 "preproc.y"
{
(yyval.str) = mm_strdup("stable");
}
#line 47033 "preproc.c"
break;
case 1172: /* common_func_opt_item: VOLATILE */
#line 7746 "preproc.y"
{
(yyval.str) = mm_strdup("volatile");
}
#line 47041 "preproc.c"
break;
case 1173: /* common_func_opt_item: EXTERNAL SECURITY DEFINER */
#line 7750 "preproc.y"
{
(yyval.str) = mm_strdup("external security definer");
}
#line 47049 "preproc.c"
break;
case 1174: /* common_func_opt_item: EXTERNAL SECURITY INVOKER */
#line 7754 "preproc.y"
{
(yyval.str) = mm_strdup("external security invoker");
}
#line 47057 "preproc.c"
break;
case 1175: /* common_func_opt_item: SECURITY DEFINER */
#line 7758 "preproc.y"
{
(yyval.str) = mm_strdup("security definer");
}
#line 47065 "preproc.c"
break;
case 1176: /* common_func_opt_item: SECURITY INVOKER */
#line 7762 "preproc.y"
{
(yyval.str) = mm_strdup("security invoker");
}
#line 47073 "preproc.c"
break;
case 1177: /* common_func_opt_item: LEAKPROOF */
#line 7766 "preproc.y"
{
(yyval.str) = mm_strdup("leakproof");
}
#line 47081 "preproc.c"
break;
case 1178: /* common_func_opt_item: NOT LEAKPROOF */
#line 7770 "preproc.y"
{
(yyval.str) = mm_strdup("not leakproof");
}
#line 47089 "preproc.c"
break;
case 1179: /* common_func_opt_item: COST NumericOnly */
#line 7774 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("cost"),(yyvsp[0].str));
}
#line 47097 "preproc.c"
break;
case 1180: /* common_func_opt_item: ROWS NumericOnly */
#line 7778 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("rows"),(yyvsp[0].str));
}
#line 47105 "preproc.c"
break;
case 1181: /* common_func_opt_item: SUPPORT any_name */
#line 7782 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("support"),(yyvsp[0].str));
}
#line 47113 "preproc.c"
break;
case 1182: /* common_func_opt_item: FunctionSetResetClause */
#line 7786 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47121 "preproc.c"
break;
case 1183: /* common_func_opt_item: PARALLEL ColId */
#line 7790 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("parallel"),(yyvsp[0].str));
}
#line 47129 "preproc.c"
break;
case 1184: /* createfunc_opt_item: AS func_as */
#line 7798 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("as"),(yyvsp[0].str));
}
#line 47137 "preproc.c"
break;
case 1185: /* createfunc_opt_item: LANGUAGE NonReservedWord_or_Sconst */
#line 7802 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("language"),(yyvsp[0].str));
}
#line 47145 "preproc.c"
break;
case 1186: /* createfunc_opt_item: TRANSFORM transform_type_list */
#line 7806 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("transform"),(yyvsp[0].str));
}
#line 47153 "preproc.c"
break;
case 1187: /* createfunc_opt_item: WINDOW */
#line 7810 "preproc.y"
{
(yyval.str) = mm_strdup("window");
}
#line 47161 "preproc.c"
break;
case 1188: /* createfunc_opt_item: common_func_opt_item */
#line 7814 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47169 "preproc.c"
break;
case 1189: /* func_as: ecpg_sconst */
#line 7822 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47177 "preproc.c"
break;
case 1190: /* func_as: ecpg_sconst ',' ecpg_sconst */
#line 7826 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 47185 "preproc.c"
break;
case 1191: /* ReturnStmt: RETURN a_expr */
#line 7834 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("return"),(yyvsp[0].str));
}
#line 47193 "preproc.c"
break;
case 1192: /* opt_routine_body: ReturnStmt */
#line 7842 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47201 "preproc.c"
break;
case 1193: /* opt_routine_body: BEGIN_P ATOMIC routine_body_stmt_list END_P */
#line 7846 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("begin atomic"),(yyvsp[-1].str),mm_strdup("end"));
}
#line 47209 "preproc.c"
break;
case 1194: /* opt_routine_body: %empty */
#line 7850 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47216 "preproc.c"
break;
case 1195: /* routine_body_stmt_list: routine_body_stmt_list routine_body_stmt ';' */
#line 7857 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(";"));
}
#line 47224 "preproc.c"
break;
case 1196: /* routine_body_stmt_list: %empty */
#line 7861 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47231 "preproc.c"
break;
case 1197: /* routine_body_stmt: stmt */
#line 7868 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47239 "preproc.c"
break;
case 1198: /* routine_body_stmt: ReturnStmt */
#line 7872 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47247 "preproc.c"
break;
case 1199: /* transform_type_list: FOR TYPE_P Typename */
#line 7880 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("for type"),(yyvsp[0].str));
}
#line 47255 "preproc.c"
break;
case 1200: /* transform_type_list: transform_type_list ',' FOR TYPE_P Typename */
#line 7884 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-4].str),mm_strdup(", for type"),(yyvsp[0].str));
}
#line 47263 "preproc.c"
break;
case 1201: /* opt_definition: WITH definition */
#line 7892 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("with"),(yyvsp[0].str));
}
#line 47271 "preproc.c"
break;
case 1202: /* opt_definition: %empty */
#line 7896 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47278 "preproc.c"
break;
case 1203: /* table_func_column: param_name func_type */
#line 7903 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47286 "preproc.c"
break;
case 1204: /* table_func_column_list: table_func_column */
#line 7911 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47294 "preproc.c"
break;
case 1205: /* table_func_column_list: table_func_column_list ',' table_func_column */
#line 7915 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 47302 "preproc.c"
break;
case 1206: /* AlterFunctionStmt: ALTER FUNCTION function_with_argtypes alterfunc_opt_list opt_restrict */
#line 7923 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter function"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47310 "preproc.c"
break;
case 1207: /* AlterFunctionStmt: ALTER PROCEDURE function_with_argtypes alterfunc_opt_list opt_restrict */
#line 7927 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter procedure"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47318 "preproc.c"
break;
case 1208: /* AlterFunctionStmt: ALTER ROUTINE function_with_argtypes alterfunc_opt_list opt_restrict */
#line 7931 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter routine"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47326 "preproc.c"
break;
case 1209: /* alterfunc_opt_list: common_func_opt_item */
#line 7939 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47334 "preproc.c"
break;
case 1210: /* alterfunc_opt_list: alterfunc_opt_list common_func_opt_item */
#line 7943 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47342 "preproc.c"
break;
case 1211: /* opt_restrict: RESTRICT */
#line 7951 "preproc.y"
{
(yyval.str) = mm_strdup("restrict");
}
#line 47350 "preproc.c"
break;
case 1212: /* opt_restrict: %empty */
#line 7955 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47357 "preproc.c"
break;
case 1213: /* RemoveFuncStmt: DROP FUNCTION function_with_argtypes_list opt_drop_behavior */
#line 7962 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop function"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47365 "preproc.c"
break;
case 1214: /* RemoveFuncStmt: DROP FUNCTION IF_P EXISTS function_with_argtypes_list opt_drop_behavior */
#line 7966 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop function if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47373 "preproc.c"
break;
case 1215: /* RemoveFuncStmt: DROP PROCEDURE function_with_argtypes_list opt_drop_behavior */
#line 7970 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop procedure"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47381 "preproc.c"
break;
case 1216: /* RemoveFuncStmt: DROP PROCEDURE IF_P EXISTS function_with_argtypes_list opt_drop_behavior */
#line 7974 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop procedure if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47389 "preproc.c"
break;
case 1217: /* RemoveFuncStmt: DROP ROUTINE function_with_argtypes_list opt_drop_behavior */
#line 7978 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop routine"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47397 "preproc.c"
break;
case 1218: /* RemoveFuncStmt: DROP ROUTINE IF_P EXISTS function_with_argtypes_list opt_drop_behavior */
#line 7982 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop routine if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47405 "preproc.c"
break;
case 1219: /* RemoveAggrStmt: DROP AGGREGATE aggregate_with_argtypes_list opt_drop_behavior */
#line 7990 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop aggregate"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47413 "preproc.c"
break;
case 1220: /* RemoveAggrStmt: DROP AGGREGATE IF_P EXISTS aggregate_with_argtypes_list opt_drop_behavior */
#line 7994 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop aggregate if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47421 "preproc.c"
break;
case 1221: /* RemoveOperStmt: DROP OPERATOR operator_with_argtypes_list opt_drop_behavior */
#line 8002 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop operator"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47429 "preproc.c"
break;
case 1222: /* RemoveOperStmt: DROP OPERATOR IF_P EXISTS operator_with_argtypes_list opt_drop_behavior */
#line 8006 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop operator if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47437 "preproc.c"
break;
case 1223: /* oper_argtypes: '(' Typename ')' */
#line 8014 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 47445 "preproc.c"
break;
case 1224: /* oper_argtypes: '(' Typename ',' Typename ')' */
#line 8018 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("("),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 47453 "preproc.c"
break;
case 1225: /* oper_argtypes: '(' NONE ',' Typename ')' */
#line 8022 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("( none ,"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 47461 "preproc.c"
break;
case 1226: /* oper_argtypes: '(' Typename ',' NONE ')' */
#line 8026 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-3].str),mm_strdup(", none )"));
}
#line 47469 "preproc.c"
break;
case 1227: /* any_operator: all_Op */
#line 8034 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47477 "preproc.c"
break;
case 1228: /* any_operator: ColId '.' any_operator */
#line 8038 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("."),(yyvsp[0].str));
}
#line 47485 "preproc.c"
break;
case 1229: /* operator_with_argtypes_list: operator_with_argtypes */
#line 8046 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47493 "preproc.c"
break;
case 1230: /* operator_with_argtypes_list: operator_with_argtypes_list ',' operator_with_argtypes */
#line 8050 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 47501 "preproc.c"
break;
case 1231: /* operator_with_argtypes: any_operator oper_argtypes */
#line 8058 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47509 "preproc.c"
break;
case 1232: /* DoStmt: DO dostmt_opt_list */
#line 8066 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("do"),(yyvsp[0].str));
}
#line 47517 "preproc.c"
break;
case 1233: /* dostmt_opt_list: dostmt_opt_item */
#line 8074 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47525 "preproc.c"
break;
case 1234: /* dostmt_opt_list: dostmt_opt_list dostmt_opt_item */
#line 8078 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47533 "preproc.c"
break;
case 1235: /* dostmt_opt_item: ecpg_sconst */
#line 8086 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 47541 "preproc.c"
break;
case 1236: /* dostmt_opt_item: LANGUAGE NonReservedWord_or_Sconst */
#line 8090 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("language"),(yyvsp[0].str));
}
#line 47549 "preproc.c"
break;
case 1237: /* CreateCastStmt: CREATE CAST '(' Typename AS Typename ')' WITH FUNCTION function_with_argtypes cast_context */
#line 8098 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create cast ("),(yyvsp[-7].str),mm_strdup("as"),(yyvsp[-5].str),mm_strdup(") with function"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47557 "preproc.c"
break;
case 1238: /* CreateCastStmt: CREATE CAST '(' Typename AS Typename ')' WITHOUT FUNCTION cast_context */
#line 8102 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("create cast ("),(yyvsp[-6].str),mm_strdup("as"),(yyvsp[-4].str),mm_strdup(") without function"),(yyvsp[0].str));
}
#line 47565 "preproc.c"
break;
case 1239: /* CreateCastStmt: CREATE CAST '(' Typename AS Typename ')' WITH INOUT cast_context */
#line 8106 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("create cast ("),(yyvsp[-6].str),mm_strdup("as"),(yyvsp[-4].str),mm_strdup(") with inout"),(yyvsp[0].str));
}
#line 47573 "preproc.c"
break;
case 1240: /* cast_context: AS IMPLICIT_P */
#line 8114 "preproc.y"
{
(yyval.str) = mm_strdup("as implicit");
}
#line 47581 "preproc.c"
break;
case 1241: /* cast_context: AS ASSIGNMENT */
#line 8118 "preproc.y"
{
(yyval.str) = mm_strdup("as assignment");
}
#line 47589 "preproc.c"
break;
case 1242: /* cast_context: %empty */
#line 8122 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47596 "preproc.c"
break;
case 1243: /* DropCastStmt: DROP CAST opt_if_exists '(' Typename AS Typename ')' opt_drop_behavior */
#line 8129 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("drop cast"),(yyvsp[-6].str),mm_strdup("("),(yyvsp[-4].str),mm_strdup("as"),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 47604 "preproc.c"
break;
case 1244: /* opt_if_exists: IF_P EXISTS */
#line 8137 "preproc.y"
{
(yyval.str) = mm_strdup("if exists");
}
#line 47612 "preproc.c"
break;
case 1245: /* opt_if_exists: %empty */
#line 8141 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47619 "preproc.c"
break;
case 1246: /* CreateTransformStmt: CREATE opt_or_replace TRANSFORM FOR Typename LANGUAGE name '(' transform_element_list ')' */
#line 8148 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create"),(yyvsp[-8].str),mm_strdup("transform for"),(yyvsp[-5].str),mm_strdup("language"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 47627 "preproc.c"
break;
case 1247: /* transform_element_list: FROM SQL_P WITH FUNCTION function_with_argtypes ',' TO SQL_P WITH FUNCTION function_with_argtypes */
#line 8156 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("from sql with function"),(yyvsp[-6].str),mm_strdup(", to sql with function"),(yyvsp[0].str));
}
#line 47635 "preproc.c"
break;
case 1248: /* transform_element_list: TO SQL_P WITH FUNCTION function_with_argtypes ',' FROM SQL_P WITH FUNCTION function_with_argtypes */
#line 8160 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("to sql with function"),(yyvsp[-6].str),mm_strdup(", from sql with function"),(yyvsp[0].str));
}
#line 47643 "preproc.c"
break;
case 1249: /* transform_element_list: FROM SQL_P WITH FUNCTION function_with_argtypes */
#line 8164 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("from sql with function"),(yyvsp[0].str));
}
#line 47651 "preproc.c"
break;
case 1250: /* transform_element_list: TO SQL_P WITH FUNCTION function_with_argtypes */
#line 8168 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("to sql with function"),(yyvsp[0].str));
}
#line 47659 "preproc.c"
break;
case 1251: /* DropTransformStmt: DROP TRANSFORM opt_if_exists FOR Typename LANGUAGE name opt_drop_behavior */
#line 8176 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("drop transform"),(yyvsp[-5].str),mm_strdup("for"),(yyvsp[-3].str),mm_strdup("language"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47667 "preproc.c"
break;
case 1252: /* ReindexStmt: REINDEX opt_reindex_option_list reindex_target_relation opt_concurrently qualified_name */
#line 8184 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("reindex"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47675 "preproc.c"
break;
case 1253: /* ReindexStmt: REINDEX opt_reindex_option_list SCHEMA opt_concurrently name */
#line 8188 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("reindex"),(yyvsp[-3].str),mm_strdup("schema"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47683 "preproc.c"
break;
case 1254: /* ReindexStmt: REINDEX opt_reindex_option_list reindex_target_all opt_concurrently opt_single_name */
#line 8192 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("reindex"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 47691 "preproc.c"
break;
case 1255: /* reindex_target_relation: INDEX */
#line 8200 "preproc.y"
{
(yyval.str) = mm_strdup("index");
}
#line 47699 "preproc.c"
break;
case 1256: /* reindex_target_relation: TABLE */
#line 8204 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 47707 "preproc.c"
break;
case 1257: /* reindex_target_all: SYSTEM_P */
#line 8212 "preproc.y"
{
(yyval.str) = mm_strdup("system");
}
#line 47715 "preproc.c"
break;
case 1258: /* reindex_target_all: DATABASE */
#line 8216 "preproc.y"
{
(yyval.str) = mm_strdup("database");
}
#line 47723 "preproc.c"
break;
case 1259: /* opt_reindex_option_list: '(' utility_option_list ')' */
#line 8224 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 47731 "preproc.c"
break;
case 1260: /* opt_reindex_option_list: %empty */
#line 8228 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 47738 "preproc.c"
break;
case 1261: /* AlterTblSpcStmt: ALTER TABLESPACE name SET reloptions */
#line 8235 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter tablespace"),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 47746 "preproc.c"
break;
case 1262: /* AlterTblSpcStmt: ALTER TABLESPACE name RESET reloptions */
#line 8239 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter tablespace"),(yyvsp[-2].str),mm_strdup("reset"),(yyvsp[0].str));
}
#line 47754 "preproc.c"
break;
case 1263: /* RenameStmt: ALTER AGGREGATE aggregate_with_argtypes RENAME TO name */
#line 8247 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter aggregate"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47762 "preproc.c"
break;
case 1264: /* RenameStmt: ALTER COLLATION any_name RENAME TO name */
#line 8251 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter collation"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47770 "preproc.c"
break;
case 1265: /* RenameStmt: ALTER CONVERSION_P any_name RENAME TO name */
#line 8255 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter conversion"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47778 "preproc.c"
break;
case 1266: /* RenameStmt: ALTER DATABASE name RENAME TO name */
#line 8259 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter database"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47786 "preproc.c"
break;
case 1267: /* RenameStmt: ALTER DOMAIN_P any_name RENAME TO name */
#line 8263 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter domain"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47794 "preproc.c"
break;
case 1268: /* RenameStmt: ALTER DOMAIN_P any_name RENAME CONSTRAINT name TO name */
#line 8267 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter domain"),(yyvsp[-5].str),mm_strdup("rename constraint"),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 47802 "preproc.c"
break;
case 1269: /* RenameStmt: ALTER FOREIGN DATA_P WRAPPER name RENAME TO name */
#line 8271 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign data wrapper"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47810 "preproc.c"
break;
case 1270: /* RenameStmt: ALTER FUNCTION function_with_argtypes RENAME TO name */
#line 8275 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter function"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47818 "preproc.c"
break;
case 1271: /* RenameStmt: ALTER GROUP_P RoleId RENAME TO RoleId */
#line 8279 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter group"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47826 "preproc.c"
break;
case 1272: /* RenameStmt: ALTER opt_procedural LANGUAGE name RENAME TO name */
#line 8283 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter"),(yyvsp[-5].str),mm_strdup("language"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47834 "preproc.c"
break;
case 1273: /* RenameStmt: ALTER OPERATOR CLASS any_name USING name RENAME TO name */
#line 8287 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator class"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47842 "preproc.c"
break;
case 1274: /* RenameStmt: ALTER OPERATOR FAMILY any_name USING name RENAME TO name */
#line 8291 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator family"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47850 "preproc.c"
break;
case 1275: /* RenameStmt: ALTER POLICY name ON qualified_name RENAME TO name */
#line 8295 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter policy"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47858 "preproc.c"
break;
case 1276: /* RenameStmt: ALTER POLICY IF_P EXISTS name ON qualified_name RENAME TO name */
#line 8299 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter policy if exists"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47866 "preproc.c"
break;
case 1277: /* RenameStmt: ALTER PROCEDURE function_with_argtypes RENAME TO name */
#line 8303 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter procedure"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47874 "preproc.c"
break;
case 1278: /* RenameStmt: ALTER PUBLICATION name RENAME TO name */
#line 8307 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter publication"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47882 "preproc.c"
break;
case 1279: /* RenameStmt: ALTER ROUTINE function_with_argtypes RENAME TO name */
#line 8311 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter routine"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47890 "preproc.c"
break;
case 1280: /* RenameStmt: ALTER SCHEMA name RENAME TO name */
#line 8315 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter schema"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47898 "preproc.c"
break;
case 1281: /* RenameStmt: ALTER SERVER name RENAME TO name */
#line 8319 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter server"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47906 "preproc.c"
break;
case 1282: /* RenameStmt: ALTER SUBSCRIPTION name RENAME TO name */
#line 8323 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter subscription"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47914 "preproc.c"
break;
case 1283: /* RenameStmt: ALTER TABLE relation_expr RENAME TO name */
#line 8327 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter table"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47922 "preproc.c"
break;
case 1284: /* RenameStmt: ALTER TABLE IF_P EXISTS relation_expr RENAME TO name */
#line 8331 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter table if exists"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47930 "preproc.c"
break;
case 1285: /* RenameStmt: ALTER SEQUENCE qualified_name RENAME TO name */
#line 8335 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter sequence"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47938 "preproc.c"
break;
case 1286: /* RenameStmt: ALTER SEQUENCE IF_P EXISTS qualified_name RENAME TO name */
#line 8339 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter sequence if exists"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47946 "preproc.c"
break;
case 1287: /* RenameStmt: ALTER VIEW qualified_name RENAME TO name */
#line 8343 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter view"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47954 "preproc.c"
break;
case 1288: /* RenameStmt: ALTER VIEW IF_P EXISTS qualified_name RENAME TO name */
#line 8347 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter view if exists"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47962 "preproc.c"
break;
case 1289: /* RenameStmt: ALTER MATERIALIZED VIEW qualified_name RENAME TO name */
#line 8351 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter materialized view"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47970 "preproc.c"
break;
case 1290: /* RenameStmt: ALTER MATERIALIZED VIEW IF_P EXISTS qualified_name RENAME TO name */
#line 8355 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter materialized view if exists"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47978 "preproc.c"
break;
case 1291: /* RenameStmt: ALTER INDEX qualified_name RENAME TO name */
#line 8359 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter index"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47986 "preproc.c"
break;
case 1292: /* RenameStmt: ALTER INDEX IF_P EXISTS qualified_name RENAME TO name */
#line 8363 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter index if exists"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 47994 "preproc.c"
break;
case 1293: /* RenameStmt: ALTER FOREIGN TABLE relation_expr RENAME TO name */
#line 8367 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign table"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48002 "preproc.c"
break;
case 1294: /* RenameStmt: ALTER FOREIGN TABLE IF_P EXISTS relation_expr RENAME TO name */
#line 8371 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign table if exists"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48010 "preproc.c"
break;
case 1295: /* RenameStmt: ALTER TABLE relation_expr RENAME opt_column name TO name */
#line 8375 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter table"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48018 "preproc.c"
break;
case 1296: /* RenameStmt: ALTER TABLE IF_P EXISTS relation_expr RENAME opt_column name TO name */
#line 8379 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter table if exists"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48026 "preproc.c"
break;
case 1297: /* RenameStmt: ALTER VIEW qualified_name RENAME opt_column name TO name */
#line 8383 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter view"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48034 "preproc.c"
break;
case 1298: /* RenameStmt: ALTER VIEW IF_P EXISTS qualified_name RENAME opt_column name TO name */
#line 8387 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter view if exists"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48042 "preproc.c"
break;
case 1299: /* RenameStmt: ALTER MATERIALIZED VIEW qualified_name RENAME opt_column name TO name */
#line 8391 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter materialized view"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48050 "preproc.c"
break;
case 1300: /* RenameStmt: ALTER MATERIALIZED VIEW IF_P EXISTS qualified_name RENAME opt_column name TO name */
#line 8395 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter materialized view if exists"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48058 "preproc.c"
break;
case 1301: /* RenameStmt: ALTER TABLE relation_expr RENAME CONSTRAINT name TO name */
#line 8399 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter table"),(yyvsp[-5].str),mm_strdup("rename constraint"),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48066 "preproc.c"
break;
case 1302: /* RenameStmt: ALTER TABLE IF_P EXISTS relation_expr RENAME CONSTRAINT name TO name */
#line 8403 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter table if exists"),(yyvsp[-5].str),mm_strdup("rename constraint"),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48074 "preproc.c"
break;
case 1303: /* RenameStmt: ALTER FOREIGN TABLE relation_expr RENAME opt_column name TO name */
#line 8407 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter foreign table"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48082 "preproc.c"
break;
case 1304: /* RenameStmt: ALTER FOREIGN TABLE IF_P EXISTS relation_expr RENAME opt_column name TO name */
#line 8411 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter foreign table if exists"),(yyvsp[-5].str),mm_strdup("rename"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 48090 "preproc.c"
break;
case 1305: /* RenameStmt: ALTER RULE name ON qualified_name RENAME TO name */
#line 8415 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter rule"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48098 "preproc.c"
break;
case 1306: /* RenameStmt: ALTER TRIGGER name ON qualified_name RENAME TO name */
#line 8419 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter trigger"),(yyvsp[-5].str),mm_strdup("on"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48106 "preproc.c"
break;
case 1307: /* RenameStmt: ALTER EVENT TRIGGER name RENAME TO name */
#line 8423 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter event trigger"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48114 "preproc.c"
break;
case 1308: /* RenameStmt: ALTER ROLE RoleId RENAME TO RoleId */
#line 8427 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter role"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48122 "preproc.c"
break;
case 1309: /* RenameStmt: ALTER USER RoleId RENAME TO RoleId */
#line 8431 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter user"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48130 "preproc.c"
break;
case 1310: /* RenameStmt: ALTER TABLESPACE name RENAME TO name */
#line 8435 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter tablespace"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48138 "preproc.c"
break;
case 1311: /* RenameStmt: ALTER STATISTICS any_name RENAME TO name */
#line 8439 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter statistics"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48146 "preproc.c"
break;
case 1312: /* RenameStmt: ALTER TEXT_P SEARCH PARSER any_name RENAME TO name */
#line 8443 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search parser"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48154 "preproc.c"
break;
case 1313: /* RenameStmt: ALTER TEXT_P SEARCH DICTIONARY any_name RENAME TO name */
#line 8447 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search dictionary"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48162 "preproc.c"
break;
case 1314: /* RenameStmt: ALTER TEXT_P SEARCH TEMPLATE any_name RENAME TO name */
#line 8451 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search template"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48170 "preproc.c"
break;
case 1315: /* RenameStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name RENAME TO name */
#line 8455 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search configuration"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48178 "preproc.c"
break;
case 1316: /* RenameStmt: ALTER TYPE_P any_name RENAME TO name */
#line 8459 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter type"),(yyvsp[-3].str),mm_strdup("rename to"),(yyvsp[0].str));
}
#line 48186 "preproc.c"
break;
case 1317: /* RenameStmt: ALTER TYPE_P any_name RENAME ATTRIBUTE name TO name opt_drop_behavior */
#line 8463 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter type"),(yyvsp[-6].str),mm_strdup("rename attribute"),(yyvsp[-3].str),mm_strdup("to"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48194 "preproc.c"
break;
case 1318: /* opt_column: COLUMN */
#line 8471 "preproc.y"
{
(yyval.str) = mm_strdup("column");
}
#line 48202 "preproc.c"
break;
case 1319: /* opt_column: %empty */
#line 8475 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 48209 "preproc.c"
break;
case 1320: /* opt_set_data: SET DATA_P */
#line 8482 "preproc.y"
{
(yyval.str) = mm_strdup("set data");
}
#line 48217 "preproc.c"
break;
case 1321: /* opt_set_data: %empty */
#line 8486 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 48224 "preproc.c"
break;
case 1322: /* AlterObjectDependsStmt: ALTER FUNCTION function_with_argtypes opt_no DEPENDS ON EXTENSION name */
#line 8493 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter function"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("depends on extension"),(yyvsp[0].str));
}
#line 48232 "preproc.c"
break;
case 1323: /* AlterObjectDependsStmt: ALTER PROCEDURE function_with_argtypes opt_no DEPENDS ON EXTENSION name */
#line 8497 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter procedure"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("depends on extension"),(yyvsp[0].str));
}
#line 48240 "preproc.c"
break;
case 1324: /* AlterObjectDependsStmt: ALTER ROUTINE function_with_argtypes opt_no DEPENDS ON EXTENSION name */
#line 8501 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter routine"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("depends on extension"),(yyvsp[0].str));
}
#line 48248 "preproc.c"
break;
case 1325: /* AlterObjectDependsStmt: ALTER TRIGGER name ON qualified_name opt_no DEPENDS ON EXTENSION name */
#line 8505 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("alter trigger"),(yyvsp[-7].str),mm_strdup("on"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("depends on extension"),(yyvsp[0].str));
}
#line 48256 "preproc.c"
break;
case 1326: /* AlterObjectDependsStmt: ALTER MATERIALIZED VIEW qualified_name opt_no DEPENDS ON EXTENSION name */
#line 8509 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter materialized view"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("depends on extension"),(yyvsp[0].str));
}
#line 48264 "preproc.c"
break;
case 1327: /* AlterObjectDependsStmt: ALTER INDEX qualified_name opt_no DEPENDS ON EXTENSION name */
#line 8513 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter index"),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("depends on extension"),(yyvsp[0].str));
}
#line 48272 "preproc.c"
break;
case 1328: /* opt_no: NO */
#line 8521 "preproc.y"
{
(yyval.str) = mm_strdup("no");
}
#line 48280 "preproc.c"
break;
case 1329: /* opt_no: %empty */
#line 8525 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 48287 "preproc.c"
break;
case 1330: /* AlterObjectSchemaStmt: ALTER AGGREGATE aggregate_with_argtypes SET SCHEMA name */
#line 8532 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter aggregate"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48295 "preproc.c"
break;
case 1331: /* AlterObjectSchemaStmt: ALTER COLLATION any_name SET SCHEMA name */
#line 8536 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter collation"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48303 "preproc.c"
break;
case 1332: /* AlterObjectSchemaStmt: ALTER CONVERSION_P any_name SET SCHEMA name */
#line 8540 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter conversion"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48311 "preproc.c"
break;
case 1333: /* AlterObjectSchemaStmt: ALTER DOMAIN_P any_name SET SCHEMA name */
#line 8544 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter domain"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48319 "preproc.c"
break;
case 1334: /* AlterObjectSchemaStmt: ALTER EXTENSION name SET SCHEMA name */
#line 8548 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter extension"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48327 "preproc.c"
break;
case 1335: /* AlterObjectSchemaStmt: ALTER FUNCTION function_with_argtypes SET SCHEMA name */
#line 8552 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter function"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48335 "preproc.c"
break;
case 1336: /* AlterObjectSchemaStmt: ALTER OPERATOR operator_with_argtypes SET SCHEMA name */
#line 8556 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter operator"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48343 "preproc.c"
break;
case 1337: /* AlterObjectSchemaStmt: ALTER OPERATOR CLASS any_name USING name SET SCHEMA name */
#line 8560 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator class"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48351 "preproc.c"
break;
case 1338: /* AlterObjectSchemaStmt: ALTER OPERATOR FAMILY any_name USING name SET SCHEMA name */
#line 8564 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator family"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48359 "preproc.c"
break;
case 1339: /* AlterObjectSchemaStmt: ALTER PROCEDURE function_with_argtypes SET SCHEMA name */
#line 8568 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter procedure"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48367 "preproc.c"
break;
case 1340: /* AlterObjectSchemaStmt: ALTER ROUTINE function_with_argtypes SET SCHEMA name */
#line 8572 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter routine"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48375 "preproc.c"
break;
case 1341: /* AlterObjectSchemaStmt: ALTER TABLE relation_expr SET SCHEMA name */
#line 8576 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter table"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48383 "preproc.c"
break;
case 1342: /* AlterObjectSchemaStmt: ALTER TABLE IF_P EXISTS relation_expr SET SCHEMA name */
#line 8580 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter table if exists"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48391 "preproc.c"
break;
case 1343: /* AlterObjectSchemaStmt: ALTER STATISTICS any_name SET SCHEMA name */
#line 8584 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter statistics"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48399 "preproc.c"
break;
case 1344: /* AlterObjectSchemaStmt: ALTER TEXT_P SEARCH PARSER any_name SET SCHEMA name */
#line 8588 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search parser"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48407 "preproc.c"
break;
case 1345: /* AlterObjectSchemaStmt: ALTER TEXT_P SEARCH DICTIONARY any_name SET SCHEMA name */
#line 8592 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search dictionary"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48415 "preproc.c"
break;
case 1346: /* AlterObjectSchemaStmt: ALTER TEXT_P SEARCH TEMPLATE any_name SET SCHEMA name */
#line 8596 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search template"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48423 "preproc.c"
break;
case 1347: /* AlterObjectSchemaStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name SET SCHEMA name */
#line 8600 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search configuration"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48431 "preproc.c"
break;
case 1348: /* AlterObjectSchemaStmt: ALTER SEQUENCE qualified_name SET SCHEMA name */
#line 8604 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter sequence"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48439 "preproc.c"
break;
case 1349: /* AlterObjectSchemaStmt: ALTER SEQUENCE IF_P EXISTS qualified_name SET SCHEMA name */
#line 8608 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter sequence if exists"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48447 "preproc.c"
break;
case 1350: /* AlterObjectSchemaStmt: ALTER VIEW qualified_name SET SCHEMA name */
#line 8612 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter view"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48455 "preproc.c"
break;
case 1351: /* AlterObjectSchemaStmt: ALTER VIEW IF_P EXISTS qualified_name SET SCHEMA name */
#line 8616 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter view if exists"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48463 "preproc.c"
break;
case 1352: /* AlterObjectSchemaStmt: ALTER MATERIALIZED VIEW qualified_name SET SCHEMA name */
#line 8620 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter materialized view"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48471 "preproc.c"
break;
case 1353: /* AlterObjectSchemaStmt: ALTER MATERIALIZED VIEW IF_P EXISTS qualified_name SET SCHEMA name */
#line 8624 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter materialized view if exists"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48479 "preproc.c"
break;
case 1354: /* AlterObjectSchemaStmt: ALTER FOREIGN TABLE relation_expr SET SCHEMA name */
#line 8628 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign table"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48487 "preproc.c"
break;
case 1355: /* AlterObjectSchemaStmt: ALTER FOREIGN TABLE IF_P EXISTS relation_expr SET SCHEMA name */
#line 8632 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign table if exists"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48495 "preproc.c"
break;
case 1356: /* AlterObjectSchemaStmt: ALTER TYPE_P any_name SET SCHEMA name */
#line 8636 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter type"),(yyvsp[-3].str),mm_strdup("set schema"),(yyvsp[0].str));
}
#line 48503 "preproc.c"
break;
case 1357: /* AlterOperatorStmt: ALTER OPERATOR operator_with_argtypes SET '(' operator_def_list ')' */
#line 8644 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter operator"),(yyvsp[-4].str),mm_strdup("set ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 48511 "preproc.c"
break;
case 1358: /* operator_def_list: operator_def_elem */
#line 8652 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48519 "preproc.c"
break;
case 1359: /* operator_def_list: operator_def_list ',' operator_def_elem */
#line 8656 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 48527 "preproc.c"
break;
case 1360: /* operator_def_elem: ColLabel '=' NONE */
#line 8664 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("= none"));
}
#line 48535 "preproc.c"
break;
case 1361: /* operator_def_elem: ColLabel '=' operator_def_arg */
#line 8668 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 48543 "preproc.c"
break;
case 1362: /* operator_def_arg: func_type */
#line 8676 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48551 "preproc.c"
break;
case 1363: /* operator_def_arg: reserved_keyword */
#line 8680 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48559 "preproc.c"
break;
case 1364: /* operator_def_arg: qual_all_Op */
#line 8684 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48567 "preproc.c"
break;
case 1365: /* operator_def_arg: NumericOnly */
#line 8688 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48575 "preproc.c"
break;
case 1366: /* operator_def_arg: ecpg_sconst */
#line 8692 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48583 "preproc.c"
break;
case 1367: /* AlterTypeStmt: ALTER TYPE_P any_name SET '(' operator_def_list ')' */
#line 8700 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter type"),(yyvsp[-4].str),mm_strdup("set ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 48591 "preproc.c"
break;
case 1368: /* AlterOwnerStmt: ALTER AGGREGATE aggregate_with_argtypes OWNER TO RoleSpec */
#line 8708 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter aggregate"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48599 "preproc.c"
break;
case 1369: /* AlterOwnerStmt: ALTER COLLATION any_name OWNER TO RoleSpec */
#line 8712 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter collation"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48607 "preproc.c"
break;
case 1370: /* AlterOwnerStmt: ALTER CONVERSION_P any_name OWNER TO RoleSpec */
#line 8716 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter conversion"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48615 "preproc.c"
break;
case 1371: /* AlterOwnerStmt: ALTER DATABASE name OWNER TO RoleSpec */
#line 8720 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter database"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48623 "preproc.c"
break;
case 1372: /* AlterOwnerStmt: ALTER DOMAIN_P any_name OWNER TO RoleSpec */
#line 8724 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter domain"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48631 "preproc.c"
break;
case 1373: /* AlterOwnerStmt: ALTER FUNCTION function_with_argtypes OWNER TO RoleSpec */
#line 8728 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter function"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48639 "preproc.c"
break;
case 1374: /* AlterOwnerStmt: ALTER opt_procedural LANGUAGE name OWNER TO RoleSpec */
#line 8732 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter"),(yyvsp[-5].str),mm_strdup("language"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48647 "preproc.c"
break;
case 1375: /* AlterOwnerStmt: ALTER LARGE_P OBJECT_P NumericOnly OWNER TO RoleSpec */
#line 8736 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter large object"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48655 "preproc.c"
break;
case 1376: /* AlterOwnerStmt: ALTER OPERATOR operator_with_argtypes OWNER TO RoleSpec */
#line 8740 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter operator"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48663 "preproc.c"
break;
case 1377: /* AlterOwnerStmt: ALTER OPERATOR CLASS any_name USING name OWNER TO RoleSpec */
#line 8744 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator class"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48671 "preproc.c"
break;
case 1378: /* AlterOwnerStmt: ALTER OPERATOR FAMILY any_name USING name OWNER TO RoleSpec */
#line 8748 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter operator family"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48679 "preproc.c"
break;
case 1379: /* AlterOwnerStmt: ALTER PROCEDURE function_with_argtypes OWNER TO RoleSpec */
#line 8752 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter procedure"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48687 "preproc.c"
break;
case 1380: /* AlterOwnerStmt: ALTER ROUTINE function_with_argtypes OWNER TO RoleSpec */
#line 8756 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter routine"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48695 "preproc.c"
break;
case 1381: /* AlterOwnerStmt: ALTER SCHEMA name OWNER TO RoleSpec */
#line 8760 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter schema"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48703 "preproc.c"
break;
case 1382: /* AlterOwnerStmt: ALTER TYPE_P any_name OWNER TO RoleSpec */
#line 8764 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter type"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48711 "preproc.c"
break;
case 1383: /* AlterOwnerStmt: ALTER TABLESPACE name OWNER TO RoleSpec */
#line 8768 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter tablespace"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48719 "preproc.c"
break;
case 1384: /* AlterOwnerStmt: ALTER STATISTICS any_name OWNER TO RoleSpec */
#line 8772 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter statistics"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48727 "preproc.c"
break;
case 1385: /* AlterOwnerStmt: ALTER TEXT_P SEARCH DICTIONARY any_name OWNER TO RoleSpec */
#line 8776 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search dictionary"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48735 "preproc.c"
break;
case 1386: /* AlterOwnerStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name OWNER TO RoleSpec */
#line 8780 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search configuration"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48743 "preproc.c"
break;
case 1387: /* AlterOwnerStmt: ALTER FOREIGN DATA_P WRAPPER name OWNER TO RoleSpec */
#line 8784 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter foreign data wrapper"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48751 "preproc.c"
break;
case 1388: /* AlterOwnerStmt: ALTER SERVER name OWNER TO RoleSpec */
#line 8788 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter server"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48759 "preproc.c"
break;
case 1389: /* AlterOwnerStmt: ALTER EVENT TRIGGER name OWNER TO RoleSpec */
#line 8792 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter event trigger"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48767 "preproc.c"
break;
case 1390: /* AlterOwnerStmt: ALTER PUBLICATION name OWNER TO RoleSpec */
#line 8796 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter publication"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48775 "preproc.c"
break;
case 1391: /* AlterOwnerStmt: ALTER SUBSCRIPTION name OWNER TO RoleSpec */
#line 8800 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter subscription"),(yyvsp[-3].str),mm_strdup("owner to"),(yyvsp[0].str));
}
#line 48783 "preproc.c"
break;
case 1392: /* CreatePublicationStmt: CREATE PUBLICATION name opt_definition */
#line 8808 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("create publication"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48791 "preproc.c"
break;
case 1393: /* CreatePublicationStmt: CREATE PUBLICATION name FOR ALL TABLES opt_definition */
#line 8812 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create publication"),(yyvsp[-4].str),mm_strdup("for all tables"),(yyvsp[0].str));
}
#line 48799 "preproc.c"
break;
case 1394: /* CreatePublicationStmt: CREATE PUBLICATION name FOR pub_obj_list opt_definition */
#line 8816 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create publication"),(yyvsp[-3].str),mm_strdup("for"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48807 "preproc.c"
break;
case 1395: /* PublicationObjSpec: TABLE relation_expr opt_column_list OptWhereClause */
#line 8824 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("table"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48815 "preproc.c"
break;
case 1396: /* PublicationObjSpec: TABLES IN_P SCHEMA ColId */
#line 8828 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("tables in schema"),(yyvsp[0].str));
}
#line 48823 "preproc.c"
break;
case 1397: /* PublicationObjSpec: TABLES IN_P SCHEMA CURRENT_SCHEMA */
#line 8832 "preproc.y"
{
(yyval.str) = mm_strdup("tables in schema current_schema");
}
#line 48831 "preproc.c"
break;
case 1398: /* PublicationObjSpec: ColId opt_column_list OptWhereClause */
#line 8836 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48839 "preproc.c"
break;
case 1399: /* PublicationObjSpec: ColId indirection opt_column_list OptWhereClause */
#line 8840 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48847 "preproc.c"
break;
case 1400: /* PublicationObjSpec: extended_relation_expr opt_column_list OptWhereClause */
#line 8844 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48855 "preproc.c"
break;
case 1401: /* PublicationObjSpec: CURRENT_SCHEMA */
#line 8848 "preproc.y"
{
(yyval.str) = mm_strdup("current_schema");
}
#line 48863 "preproc.c"
break;
case 1402: /* pub_obj_list: PublicationObjSpec */
#line 8856 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 48871 "preproc.c"
break;
case 1403: /* pub_obj_list: pub_obj_list ',' PublicationObjSpec */
#line 8860 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 48879 "preproc.c"
break;
case 1404: /* AlterPublicationStmt: ALTER PUBLICATION name SET definition */
#line 8868 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter publication"),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 48887 "preproc.c"
break;
case 1405: /* AlterPublicationStmt: ALTER PUBLICATION name ADD_P pub_obj_list */
#line 8872 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter publication"),(yyvsp[-2].str),mm_strdup("add"),(yyvsp[0].str));
}
#line 48895 "preproc.c"
break;
case 1406: /* AlterPublicationStmt: ALTER PUBLICATION name SET pub_obj_list */
#line 8876 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter publication"),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 48903 "preproc.c"
break;
case 1407: /* AlterPublicationStmt: ALTER PUBLICATION name DROP pub_obj_list */
#line 8880 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter publication"),(yyvsp[-2].str),mm_strdup("drop"),(yyvsp[0].str));
}
#line 48911 "preproc.c"
break;
case 1408: /* CreateSubscriptionStmt: CREATE SUBSCRIPTION name CONNECTION ecpg_sconst PUBLICATION name_list opt_definition */
#line 8888 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("create subscription"),(yyvsp[-5].str),mm_strdup("connection"),(yyvsp[-3].str),mm_strdup("publication"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48919 "preproc.c"
break;
case 1409: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name SET definition */
#line 8896 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter subscription"),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 48927 "preproc.c"
break;
case 1410: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name CONNECTION ecpg_sconst */
#line 8900 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter subscription"),(yyvsp[-2].str),mm_strdup("connection"),(yyvsp[0].str));
}
#line 48935 "preproc.c"
break;
case 1411: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name REFRESH PUBLICATION opt_definition */
#line 8904 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter subscription"),(yyvsp[-3].str),mm_strdup("refresh publication"),(yyvsp[0].str));
}
#line 48943 "preproc.c"
break;
case 1412: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name ADD_P PUBLICATION name_list opt_definition */
#line 8908 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter subscription"),(yyvsp[-4].str),mm_strdup("add publication"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48951 "preproc.c"
break;
case 1413: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name DROP PUBLICATION name_list opt_definition */
#line 8912 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter subscription"),(yyvsp[-4].str),mm_strdup("drop publication"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48959 "preproc.c"
break;
case 1414: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name SET PUBLICATION name_list opt_definition */
#line 8916 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter subscription"),(yyvsp[-4].str),mm_strdup("set publication"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48967 "preproc.c"
break;
case 1415: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name ENABLE_P */
#line 8920 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter subscription"),(yyvsp[-1].str),mm_strdup("enable"));
}
#line 48975 "preproc.c"
break;
case 1416: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name DISABLE_P */
#line 8924 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter subscription"),(yyvsp[-1].str),mm_strdup("disable"));
}
#line 48983 "preproc.c"
break;
case 1417: /* AlterSubscriptionStmt: ALTER SUBSCRIPTION name SKIP definition */
#line 8928 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter subscription"),(yyvsp[-2].str),mm_strdup("skip"),(yyvsp[0].str));
}
#line 48991 "preproc.c"
break;
case 1418: /* DropSubscriptionStmt: DROP SUBSCRIPTION name opt_drop_behavior */
#line 8936 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop subscription"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 48999 "preproc.c"
break;
case 1419: /* DropSubscriptionStmt: DROP SUBSCRIPTION IF_P EXISTS name opt_drop_behavior */
#line 8940 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("drop subscription if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49007 "preproc.c"
break;
case 1420: /* RuleStmt: CREATE opt_or_replace RULE name AS ON event TO qualified_name where_clause DO opt_instead RuleActionList */
#line 8948 "preproc.y"
{
(yyval.str) = cat_str(12,mm_strdup("create"),(yyvsp[-11].str),mm_strdup("rule"),(yyvsp[-9].str),mm_strdup("as on"),(yyvsp[-6].str),mm_strdup("to"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("do"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49015 "preproc.c"
break;
case 1421: /* RuleActionList: NOTHING */
#line 8956 "preproc.y"
{
(yyval.str) = mm_strdup("nothing");
}
#line 49023 "preproc.c"
break;
case 1422: /* RuleActionList: RuleActionStmt */
#line 8960 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49031 "preproc.c"
break;
case 1423: /* RuleActionList: '(' RuleActionMulti ')' */
#line 8964 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 49039 "preproc.c"
break;
case 1424: /* RuleActionMulti: RuleActionMulti ';' RuleActionStmtOrEmpty */
#line 8972 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(";"),(yyvsp[0].str));
}
#line 49047 "preproc.c"
break;
case 1425: /* RuleActionMulti: RuleActionStmtOrEmpty */
#line 8976 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49055 "preproc.c"
break;
case 1426: /* RuleActionStmt: SelectStmt */
#line 8984 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49063 "preproc.c"
break;
case 1427: /* RuleActionStmt: InsertStmt */
#line 8988 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49071 "preproc.c"
break;
case 1428: /* RuleActionStmt: UpdateStmt */
#line 8992 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49079 "preproc.c"
break;
case 1429: /* RuleActionStmt: DeleteStmt */
#line 8996 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49087 "preproc.c"
break;
case 1430: /* RuleActionStmt: NotifyStmt */
#line 9000 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49095 "preproc.c"
break;
case 1431: /* RuleActionStmtOrEmpty: RuleActionStmt */
#line 9008 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49103 "preproc.c"
break;
case 1432: /* RuleActionStmtOrEmpty: %empty */
#line 9012 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49110 "preproc.c"
break;
case 1433: /* event: SELECT */
#line 9019 "preproc.y"
{
(yyval.str) = mm_strdup("select");
}
#line 49118 "preproc.c"
break;
case 1434: /* event: UPDATE */
#line 9023 "preproc.y"
{
(yyval.str) = mm_strdup("update");
}
#line 49126 "preproc.c"
break;
case 1435: /* event: DELETE_P */
#line 9027 "preproc.y"
{
(yyval.str) = mm_strdup("delete");
}
#line 49134 "preproc.c"
break;
case 1436: /* event: INSERT */
#line 9031 "preproc.y"
{
(yyval.str) = mm_strdup("insert");
}
#line 49142 "preproc.c"
break;
case 1437: /* opt_instead: INSTEAD */
#line 9039 "preproc.y"
{
(yyval.str) = mm_strdup("instead");
}
#line 49150 "preproc.c"
break;
case 1438: /* opt_instead: ALSO */
#line 9043 "preproc.y"
{
(yyval.str) = mm_strdup("also");
}
#line 49158 "preproc.c"
break;
case 1439: /* opt_instead: %empty */
#line 9047 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49165 "preproc.c"
break;
case 1440: /* NotifyStmt: NOTIFY ColId notify_payload */
#line 9054 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("notify"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49173 "preproc.c"
break;
case 1441: /* notify_payload: ',' ecpg_sconst */
#line 9062 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup(","),(yyvsp[0].str));
}
#line 49181 "preproc.c"
break;
case 1442: /* notify_payload: %empty */
#line 9066 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49188 "preproc.c"
break;
case 1443: /* ListenStmt: LISTEN ColId */
#line 9073 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("listen"),(yyvsp[0].str));
}
#line 49196 "preproc.c"
break;
case 1444: /* UnlistenStmt: UNLISTEN ColId */
#line 9081 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("unlisten"),(yyvsp[0].str));
}
#line 49204 "preproc.c"
break;
case 1445: /* UnlistenStmt: UNLISTEN '*' */
#line 9085 "preproc.y"
{
(yyval.str) = mm_strdup("unlisten *");
}
#line 49212 "preproc.c"
break;
case 1446: /* TransactionStmt: ABORT_P opt_transaction opt_transaction_chain */
#line 9093 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("abort"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49220 "preproc.c"
break;
case 1447: /* TransactionStmt: START TRANSACTION transaction_mode_list_or_empty */
#line 9097 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("start transaction"),(yyvsp[0].str));
}
#line 49228 "preproc.c"
break;
case 1448: /* TransactionStmt: COMMIT opt_transaction opt_transaction_chain */
#line 9101 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("commit"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49236 "preproc.c"
break;
case 1449: /* TransactionStmt: ROLLBACK opt_transaction opt_transaction_chain */
#line 9105 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("rollback"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49244 "preproc.c"
break;
case 1450: /* TransactionStmt: SAVEPOINT ColId */
#line 9109 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("savepoint"),(yyvsp[0].str));
}
#line 49252 "preproc.c"
break;
case 1451: /* TransactionStmt: RELEASE SAVEPOINT ColId */
#line 9113 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("release savepoint"),(yyvsp[0].str));
}
#line 49260 "preproc.c"
break;
case 1452: /* TransactionStmt: RELEASE ColId */
#line 9117 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("release"),(yyvsp[0].str));
}
#line 49268 "preproc.c"
break;
case 1453: /* TransactionStmt: ROLLBACK opt_transaction TO SAVEPOINT ColId */
#line 9121 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("rollback"),(yyvsp[-3].str),mm_strdup("to savepoint"),(yyvsp[0].str));
}
#line 49276 "preproc.c"
break;
case 1454: /* TransactionStmt: ROLLBACK opt_transaction TO ColId */
#line 9125 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("rollback"),(yyvsp[-2].str),mm_strdup("to"),(yyvsp[0].str));
}
#line 49284 "preproc.c"
break;
case 1455: /* TransactionStmt: PREPARE TRANSACTION ecpg_sconst */
#line 9129 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("prepare transaction"),(yyvsp[0].str));
}
#line 49292 "preproc.c"
break;
case 1456: /* TransactionStmt: COMMIT PREPARED ecpg_sconst */
#line 9133 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("commit prepared"),(yyvsp[0].str));
}
#line 49300 "preproc.c"
break;
case 1457: /* TransactionStmt: ROLLBACK PREPARED ecpg_sconst */
#line 9137 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("rollback prepared"),(yyvsp[0].str));
}
#line 49308 "preproc.c"
break;
case 1458: /* TransactionStmtLegacy: BEGIN_P opt_transaction transaction_mode_list_or_empty */
#line 9145 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("begin"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49316 "preproc.c"
break;
case 1459: /* TransactionStmtLegacy: END_P opt_transaction opt_transaction_chain */
#line 9149 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("end"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49324 "preproc.c"
break;
case 1460: /* opt_transaction: WORK */
#line 9157 "preproc.y"
{
(yyval.str) = mm_strdup("work");
}
#line 49332 "preproc.c"
break;
case 1461: /* opt_transaction: TRANSACTION */
#line 9161 "preproc.y"
{
(yyval.str) = mm_strdup("transaction");
}
#line 49340 "preproc.c"
break;
case 1462: /* opt_transaction: %empty */
#line 9165 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49347 "preproc.c"
break;
case 1463: /* transaction_mode_item: ISOLATION LEVEL iso_level */
#line 9172 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("isolation level"),(yyvsp[0].str));
}
#line 49355 "preproc.c"
break;
case 1464: /* transaction_mode_item: READ ONLY */
#line 9176 "preproc.y"
{
(yyval.str) = mm_strdup("read only");
}
#line 49363 "preproc.c"
break;
case 1465: /* transaction_mode_item: READ WRITE */
#line 9180 "preproc.y"
{
(yyval.str) = mm_strdup("read write");
}
#line 49371 "preproc.c"
break;
case 1466: /* transaction_mode_item: DEFERRABLE */
#line 9184 "preproc.y"
{
(yyval.str) = mm_strdup("deferrable");
}
#line 49379 "preproc.c"
break;
case 1467: /* transaction_mode_item: NOT DEFERRABLE */
#line 9188 "preproc.y"
{
(yyval.str) = mm_strdup("not deferrable");
}
#line 49387 "preproc.c"
break;
case 1468: /* transaction_mode_list: transaction_mode_item */
#line 9196 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49395 "preproc.c"
break;
case 1469: /* transaction_mode_list: transaction_mode_list ',' transaction_mode_item */
#line 9200 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 49403 "preproc.c"
break;
case 1470: /* transaction_mode_list: transaction_mode_list transaction_mode_item */
#line 9204 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49411 "preproc.c"
break;
case 1471: /* transaction_mode_list_or_empty: transaction_mode_list */
#line 9212 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49419 "preproc.c"
break;
case 1472: /* transaction_mode_list_or_empty: %empty */
#line 9216 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49426 "preproc.c"
break;
case 1473: /* opt_transaction_chain: AND CHAIN */
#line 9223 "preproc.y"
{
(yyval.str) = mm_strdup("and chain");
}
#line 49434 "preproc.c"
break;
case 1474: /* opt_transaction_chain: AND NO CHAIN */
#line 9227 "preproc.y"
{
(yyval.str) = mm_strdup("and no chain");
}
#line 49442 "preproc.c"
break;
case 1475: /* opt_transaction_chain: %empty */
#line 9231 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49449 "preproc.c"
break;
case 1476: /* ViewStmt: CREATE OptTemp VIEW qualified_name opt_column_list opt_reloptions AS SelectStmt opt_check_option */
#line 9238 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create"),(yyvsp[-7].str),mm_strdup("view"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49457 "preproc.c"
break;
case 1477: /* ViewStmt: CREATE OR REPLACE OptTemp VIEW qualified_name opt_column_list opt_reloptions AS SelectStmt opt_check_option */
#line 9242 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("create or replace"),(yyvsp[-7].str),mm_strdup("view"),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49465 "preproc.c"
break;
case 1478: /* ViewStmt: CREATE OptTemp RECURSIVE VIEW qualified_name '(' columnList ')' opt_reloptions AS SelectStmt opt_check_option */
#line 9246 "preproc.y"
{
(yyval.str) = cat_str(11,mm_strdup("create"),(yyvsp[-10].str),mm_strdup("recursive view"),(yyvsp[-7].str),mm_strdup("("),(yyvsp[-5].str),mm_strdup(")"),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49473 "preproc.c"
break;
case 1479: /* ViewStmt: CREATE OR REPLACE OptTemp RECURSIVE VIEW qualified_name '(' columnList ')' opt_reloptions AS SelectStmt opt_check_option */
#line 9250 "preproc.y"
{
(yyval.str) = cat_str(11,mm_strdup("create or replace"),(yyvsp[-10].str),mm_strdup("recursive view"),(yyvsp[-7].str),mm_strdup("("),(yyvsp[-5].str),mm_strdup(")"),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49481 "preproc.c"
break;
case 1480: /* opt_check_option: WITH CHECK OPTION */
#line 9258 "preproc.y"
{
(yyval.str) = mm_strdup("with check option");
}
#line 49489 "preproc.c"
break;
case 1481: /* opt_check_option: WITH CASCADED CHECK OPTION */
#line 9262 "preproc.y"
{
(yyval.str) = mm_strdup("with cascaded check option");
}
#line 49497 "preproc.c"
break;
case 1482: /* opt_check_option: WITH LOCAL CHECK OPTION */
#line 9266 "preproc.y"
{
(yyval.str) = mm_strdup("with local check option");
}
#line 49505 "preproc.c"
break;
case 1483: /* opt_check_option: %empty */
#line 9270 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49512 "preproc.c"
break;
case 1484: /* LoadStmt: LOAD file_name */
#line 9277 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("load"),(yyvsp[0].str));
}
#line 49520 "preproc.c"
break;
case 1485: /* CreatedbStmt: CREATE DATABASE name opt_with createdb_opt_list */
#line 9285 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("create database"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49528 "preproc.c"
break;
case 1486: /* createdb_opt_list: createdb_opt_items */
#line 9293 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49536 "preproc.c"
break;
case 1487: /* createdb_opt_list: %empty */
#line 9297 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49543 "preproc.c"
break;
case 1488: /* createdb_opt_items: createdb_opt_item */
#line 9304 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49551 "preproc.c"
break;
case 1489: /* createdb_opt_items: createdb_opt_items createdb_opt_item */
#line 9308 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49559 "preproc.c"
break;
case 1490: /* createdb_opt_item: createdb_opt_name opt_equal NumericOnly */
#line 9316 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49567 "preproc.c"
break;
case 1491: /* createdb_opt_item: createdb_opt_name opt_equal opt_boolean_or_string */
#line 9320 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49575 "preproc.c"
break;
case 1492: /* createdb_opt_item: createdb_opt_name opt_equal DEFAULT */
#line 9324 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup("default"));
}
#line 49583 "preproc.c"
break;
case 1493: /* createdb_opt_name: ecpg_ident */
#line 9332 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49591 "preproc.c"
break;
case 1494: /* createdb_opt_name: CONNECTION LIMIT */
#line 9336 "preproc.y"
{
(yyval.str) = mm_strdup("connection limit");
}
#line 49599 "preproc.c"
break;
case 1495: /* createdb_opt_name: ENCODING */
#line 9340 "preproc.y"
{
(yyval.str) = mm_strdup("encoding");
}
#line 49607 "preproc.c"
break;
case 1496: /* createdb_opt_name: LOCATION */
#line 9344 "preproc.y"
{
(yyval.str) = mm_strdup("location");
}
#line 49615 "preproc.c"
break;
case 1497: /* createdb_opt_name: OWNER */
#line 9348 "preproc.y"
{
(yyval.str) = mm_strdup("owner");
}
#line 49623 "preproc.c"
break;
case 1498: /* createdb_opt_name: TABLESPACE */
#line 9352 "preproc.y"
{
(yyval.str) = mm_strdup("tablespace");
}
#line 49631 "preproc.c"
break;
case 1499: /* createdb_opt_name: TEMPLATE */
#line 9356 "preproc.y"
{
(yyval.str) = mm_strdup("template");
}
#line 49639 "preproc.c"
break;
case 1500: /* opt_equal: '=' */
#line 9364 "preproc.y"
{
(yyval.str) = mm_strdup("=");
}
#line 49647 "preproc.c"
break;
case 1501: /* opt_equal: %empty */
#line 9368 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49654 "preproc.c"
break;
case 1502: /* AlterDatabaseStmt: ALTER DATABASE name WITH createdb_opt_list */
#line 9375 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter database"),(yyvsp[-2].str),mm_strdup("with"),(yyvsp[0].str));
}
#line 49662 "preproc.c"
break;
case 1503: /* AlterDatabaseStmt: ALTER DATABASE name createdb_opt_list */
#line 9379 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter database"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49670 "preproc.c"
break;
case 1504: /* AlterDatabaseStmt: ALTER DATABASE name SET TABLESPACE name */
#line 9383 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter database"),(yyvsp[-3].str),mm_strdup("set tablespace"),(yyvsp[0].str));
}
#line 49678 "preproc.c"
break;
case 1505: /* AlterDatabaseStmt: ALTER DATABASE name REFRESH COLLATION VERSION_P */
#line 9387 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter database"),(yyvsp[-3].str),mm_strdup("refresh collation version"));
}
#line 49686 "preproc.c"
break;
case 1506: /* AlterDatabaseSetStmt: ALTER DATABASE name SetResetClause */
#line 9395 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter database"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49694 "preproc.c"
break;
case 1507: /* DropdbStmt: DROP DATABASE name */
#line 9403 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop database"),(yyvsp[0].str));
}
#line 49702 "preproc.c"
break;
case 1508: /* DropdbStmt: DROP DATABASE IF_P EXISTS name */
#line 9407 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("drop database if exists"),(yyvsp[0].str));
}
#line 49710 "preproc.c"
break;
case 1509: /* DropdbStmt: DROP DATABASE name opt_with '(' drop_option_list ')' */
#line 9411 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("drop database"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 49718 "preproc.c"
break;
case 1510: /* DropdbStmt: DROP DATABASE IF_P EXISTS name opt_with '(' drop_option_list ')' */
#line 9415 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("drop database if exists"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 49726 "preproc.c"
break;
case 1511: /* drop_option_list: drop_option */
#line 9423 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 49734 "preproc.c"
break;
case 1512: /* drop_option_list: drop_option_list ',' drop_option */
#line 9427 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 49742 "preproc.c"
break;
case 1513: /* drop_option: FORCE */
#line 9435 "preproc.y"
{
(yyval.str) = mm_strdup("force");
}
#line 49750 "preproc.c"
break;
case 1514: /* AlterCollationStmt: ALTER COLLATION any_name REFRESH VERSION_P */
#line 9443 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter collation"),(yyvsp[-2].str),mm_strdup("refresh version"));
}
#line 49758 "preproc.c"
break;
case 1515: /* AlterSystemStmt: ALTER SYSTEM_P SET generic_set */
#line 9451 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("alter system set"),(yyvsp[0].str));
}
#line 49766 "preproc.c"
break;
case 1516: /* AlterSystemStmt: ALTER SYSTEM_P RESET generic_reset */
#line 9455 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("alter system reset"),(yyvsp[0].str));
}
#line 49774 "preproc.c"
break;
case 1517: /* CreateDomainStmt: CREATE DOMAIN_P any_name opt_as Typename ColQualList */
#line 9463 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("create domain"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49782 "preproc.c"
break;
case 1518: /* AlterDomainStmt: ALTER DOMAIN_P any_name alter_column_default */
#line 9471 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter domain"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49790 "preproc.c"
break;
case 1519: /* AlterDomainStmt: ALTER DOMAIN_P any_name DROP NOT NULL_P */
#line 9475 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter domain"),(yyvsp[-3].str),mm_strdup("drop not null"));
}
#line 49798 "preproc.c"
break;
case 1520: /* AlterDomainStmt: ALTER DOMAIN_P any_name SET NOT NULL_P */
#line 9479 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter domain"),(yyvsp[-3].str),mm_strdup("set not null"));
}
#line 49806 "preproc.c"
break;
case 1521: /* AlterDomainStmt: ALTER DOMAIN_P any_name ADD_P TableConstraint */
#line 9483 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter domain"),(yyvsp[-2].str),mm_strdup("add"),(yyvsp[0].str));
}
#line 49814 "preproc.c"
break;
case 1522: /* AlterDomainStmt: ALTER DOMAIN_P any_name DROP CONSTRAINT name opt_drop_behavior */
#line 9487 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter domain"),(yyvsp[-4].str),mm_strdup("drop constraint"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49822 "preproc.c"
break;
case 1523: /* AlterDomainStmt: ALTER DOMAIN_P any_name DROP CONSTRAINT IF_P EXISTS name opt_drop_behavior */
#line 9491 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("alter domain"),(yyvsp[-6].str),mm_strdup("drop constraint if exists"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49830 "preproc.c"
break;
case 1524: /* AlterDomainStmt: ALTER DOMAIN_P any_name VALIDATE CONSTRAINT name */
#line 9495 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter domain"),(yyvsp[-3].str),mm_strdup("validate constraint"),(yyvsp[0].str));
}
#line 49838 "preproc.c"
break;
case 1525: /* opt_as: AS */
#line 9503 "preproc.y"
{
(yyval.str) = mm_strdup("as");
}
#line 49846 "preproc.c"
break;
case 1526: /* opt_as: %empty */
#line 9507 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49853 "preproc.c"
break;
case 1527: /* AlterTSDictionaryStmt: ALTER TEXT_P SEARCH DICTIONARY any_name definition */
#line 9514 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("alter text search dictionary"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49861 "preproc.c"
break;
case 1528: /* AlterTSConfigurationStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name ADD_P MAPPING FOR name_list any_with any_name_list */
#line 9522 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter text search configuration"),(yyvsp[-6].str),mm_strdup("add mapping for"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49869 "preproc.c"
break;
case 1529: /* AlterTSConfigurationStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name ALTER MAPPING FOR name_list any_with any_name_list */
#line 9526 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter text search configuration"),(yyvsp[-6].str),mm_strdup("alter mapping for"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49877 "preproc.c"
break;
case 1530: /* AlterTSConfigurationStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name ALTER MAPPING REPLACE any_name any_with any_name */
#line 9530 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("alter text search configuration"),(yyvsp[-6].str),mm_strdup("alter mapping replace"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49885 "preproc.c"
break;
case 1531: /* AlterTSConfigurationStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name ALTER MAPPING FOR name_list REPLACE any_name any_with any_name */
#line 9534 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("alter text search configuration"),(yyvsp[-8].str),mm_strdup("alter mapping for"),(yyvsp[-4].str),mm_strdup("replace"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49893 "preproc.c"
break;
case 1532: /* AlterTSConfigurationStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name DROP MAPPING FOR name_list */
#line 9538 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search configuration"),(yyvsp[-4].str),mm_strdup("drop mapping for"),(yyvsp[0].str));
}
#line 49901 "preproc.c"
break;
case 1533: /* AlterTSConfigurationStmt: ALTER TEXT_P SEARCH CONFIGURATION any_name DROP MAPPING IF_P EXISTS FOR name_list */
#line 9542 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("alter text search configuration"),(yyvsp[-6].str),mm_strdup("drop mapping if exists for"),(yyvsp[0].str));
}
#line 49909 "preproc.c"
break;
case 1534: /* any_with: WITH */
#line 9550 "preproc.y"
{
(yyval.str) = mm_strdup("with");
}
#line 49917 "preproc.c"
break;
case 1535: /* any_with: WITH_LA */
#line 9554 "preproc.y"
{
(yyval.str) = mm_strdup("with");
}
#line 49925 "preproc.c"
break;
case 1536: /* CreateConversionStmt: CREATE opt_default CONVERSION_P any_name FOR ecpg_sconst TO ecpg_sconst FROM any_name */
#line 9562 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("create"),(yyvsp[-8].str),mm_strdup("conversion"),(yyvsp[-6].str),mm_strdup("for"),(yyvsp[-4].str),mm_strdup("to"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 49933 "preproc.c"
break;
case 1537: /* ClusterStmt: CLUSTER opt_verbose qualified_name cluster_index_specification */
#line 9570 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("cluster"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49941 "preproc.c"
break;
case 1538: /* ClusterStmt: CLUSTER '(' utility_option_list ')' qualified_name cluster_index_specification */
#line 9574 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("cluster ("),(yyvsp[-3].str),mm_strdup(")"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49949 "preproc.c"
break;
case 1539: /* ClusterStmt: CLUSTER opt_verbose */
#line 9578 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("cluster"),(yyvsp[0].str));
}
#line 49957 "preproc.c"
break;
case 1540: /* ClusterStmt: CLUSTER opt_verbose name ON qualified_name */
#line 9582 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("cluster"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("on"),(yyvsp[0].str));
}
#line 49965 "preproc.c"
break;
case 1541: /* cluster_index_specification: USING name */
#line 9590 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using"),(yyvsp[0].str));
}
#line 49973 "preproc.c"
break;
case 1542: /* cluster_index_specification: %empty */
#line 9594 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 49980 "preproc.c"
break;
case 1543: /* VacuumStmt: VACUUM opt_full opt_freeze opt_verbose opt_analyze opt_vacuum_relation_list */
#line 9601 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("vacuum"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 49988 "preproc.c"
break;
case 1544: /* VacuumStmt: VACUUM '(' utility_option_list ')' opt_vacuum_relation_list */
#line 9605 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("vacuum ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 49996 "preproc.c"
break;
case 1545: /* AnalyzeStmt: analyze_keyword opt_verbose opt_vacuum_relation_list */
#line 9613 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50004 "preproc.c"
break;
case 1546: /* AnalyzeStmt: analyze_keyword '(' utility_option_list ')' opt_vacuum_relation_list */
#line 9617 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 50012 "preproc.c"
break;
case 1547: /* utility_option_list: utility_option_elem */
#line 9625 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50020 "preproc.c"
break;
case 1548: /* utility_option_list: utility_option_list ',' utility_option_elem */
#line 9629 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 50028 "preproc.c"
break;
case 1549: /* analyze_keyword: ANALYZE */
#line 9637 "preproc.y"
{
(yyval.str) = mm_strdup("analyze");
}
#line 50036 "preproc.c"
break;
case 1550: /* analyze_keyword: ANALYSE */
#line 9641 "preproc.y"
{
(yyval.str) = mm_strdup("analyse");
}
#line 50044 "preproc.c"
break;
case 1551: /* utility_option_elem: utility_option_name utility_option_arg */
#line 9649 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50052 "preproc.c"
break;
case 1552: /* utility_option_name: NonReservedWord */
#line 9657 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50060 "preproc.c"
break;
case 1553: /* utility_option_name: analyze_keyword */
#line 9661 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50068 "preproc.c"
break;
case 1554: /* utility_option_name: FORMAT_LA */
#line 9665 "preproc.y"
{
(yyval.str) = mm_strdup("format");
}
#line 50076 "preproc.c"
break;
case 1555: /* utility_option_arg: opt_boolean_or_string */
#line 9673 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50084 "preproc.c"
break;
case 1556: /* utility_option_arg: NumericOnly */
#line 9677 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50092 "preproc.c"
break;
case 1557: /* utility_option_arg: %empty */
#line 9681 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50099 "preproc.c"
break;
case 1558: /* opt_analyze: analyze_keyword */
#line 9688 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50107 "preproc.c"
break;
case 1559: /* opt_analyze: %empty */
#line 9692 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50114 "preproc.c"
break;
case 1560: /* opt_verbose: VERBOSE */
#line 9699 "preproc.y"
{
(yyval.str) = mm_strdup("verbose");
}
#line 50122 "preproc.c"
break;
case 1561: /* opt_verbose: %empty */
#line 9703 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50129 "preproc.c"
break;
case 1562: /* opt_full: FULL */
#line 9710 "preproc.y"
{
(yyval.str) = mm_strdup("full");
}
#line 50137 "preproc.c"
break;
case 1563: /* opt_full: %empty */
#line 9714 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50144 "preproc.c"
break;
case 1564: /* opt_freeze: FREEZE */
#line 9721 "preproc.y"
{
(yyval.str) = mm_strdup("freeze");
}
#line 50152 "preproc.c"
break;
case 1565: /* opt_freeze: %empty */
#line 9725 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50159 "preproc.c"
break;
case 1566: /* opt_name_list: '(' name_list ')' */
#line 9732 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 50167 "preproc.c"
break;
case 1567: /* opt_name_list: %empty */
#line 9736 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50174 "preproc.c"
break;
case 1568: /* vacuum_relation: qualified_name opt_name_list */
#line 9743 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50182 "preproc.c"
break;
case 1569: /* vacuum_relation_list: vacuum_relation */
#line 9751 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50190 "preproc.c"
break;
case 1570: /* vacuum_relation_list: vacuum_relation_list ',' vacuum_relation */
#line 9755 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 50198 "preproc.c"
break;
case 1571: /* opt_vacuum_relation_list: vacuum_relation_list */
#line 9763 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50206 "preproc.c"
break;
case 1572: /* opt_vacuum_relation_list: %empty */
#line 9767 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50213 "preproc.c"
break;
case 1573: /* ExplainStmt: EXPLAIN ExplainableStmt */
#line 9774 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("explain"),(yyvsp[0].str));
}
#line 50221 "preproc.c"
break;
case 1574: /* ExplainStmt: EXPLAIN analyze_keyword opt_verbose ExplainableStmt */
#line 9778 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("explain"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50229 "preproc.c"
break;
case 1575: /* ExplainStmt: EXPLAIN VERBOSE ExplainableStmt */
#line 9782 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("explain verbose"),(yyvsp[0].str));
}
#line 50237 "preproc.c"
break;
case 1576: /* ExplainStmt: EXPLAIN '(' utility_option_list ')' ExplainableStmt */
#line 9786 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("explain ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 50245 "preproc.c"
break;
case 1577: /* ExplainableStmt: SelectStmt */
#line 9794 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50253 "preproc.c"
break;
case 1578: /* ExplainableStmt: InsertStmt */
#line 9798 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50261 "preproc.c"
break;
case 1579: /* ExplainableStmt: UpdateStmt */
#line 9802 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50269 "preproc.c"
break;
case 1580: /* ExplainableStmt: DeleteStmt */
#line 9806 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50277 "preproc.c"
break;
case 1581: /* ExplainableStmt: MergeStmt */
#line 9810 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50285 "preproc.c"
break;
case 1582: /* ExplainableStmt: DeclareCursorStmt */
#line 9814 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50293 "preproc.c"
break;
case 1583: /* ExplainableStmt: CreateAsStmt */
#line 9818 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50301 "preproc.c"
break;
case 1584: /* ExplainableStmt: CreateMatViewStmt */
#line 9822 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50309 "preproc.c"
break;
case 1585: /* ExplainableStmt: RefreshMatViewStmt */
#line 9826 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50317 "preproc.c"
break;
case 1586: /* ExplainableStmt: ExecuteStmt */
#line 9830 "preproc.y"
{
(yyval.str) = (yyvsp[0].exec).name;
}
#line 50325 "preproc.c"
break;
case 1587: /* PrepareStmt: PREPARE prepared_name prep_type_clause AS PreparableStmt */
#line 9838 "preproc.y"
{
(yyval.prep).name = (yyvsp[-3].str);
(yyval.prep).type = (yyvsp[-2].str);
(yyval.prep).stmt = (yyvsp[0].str);
}
#line 50335 "preproc.c"
break;
case 1588: /* PrepareStmt: PREPARE prepared_name FROM execstring */
#line 9844 "preproc.y"
{
(yyval.prep).name = (yyvsp[-2].str);
(yyval.prep).type = NULL;
(yyval.prep).stmt = (yyvsp[0].str);
}
#line 50345 "preproc.c"
break;
case 1589: /* prep_type_clause: '(' type_list ')' */
#line 9854 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 50353 "preproc.c"
break;
case 1590: /* prep_type_clause: %empty */
#line 9858 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50360 "preproc.c"
break;
case 1591: /* PreparableStmt: SelectStmt */
#line 9865 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50368 "preproc.c"
break;
case 1592: /* PreparableStmt: InsertStmt */
#line 9869 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50376 "preproc.c"
break;
case 1593: /* PreparableStmt: UpdateStmt */
#line 9873 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50384 "preproc.c"
break;
case 1594: /* PreparableStmt: DeleteStmt */
#line 9877 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50392 "preproc.c"
break;
case 1595: /* PreparableStmt: MergeStmt */
#line 9881 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50400 "preproc.c"
break;
case 1596: /* ExecuteStmt: EXECUTE prepared_name execute_param_clause execute_rest */
#line 9889 "preproc.y"
{
(yyval.exec).name = (yyvsp[-2].str);
(yyval.exec).type = (yyvsp[-1].str);
}
#line 50409 "preproc.c"
break;
case 1597: /* ExecuteStmt: CREATE OptTemp TABLE create_as_target AS EXECUTE prepared_name execute_param_clause opt_with_data execute_rest */
#line 9894 "preproc.y"
{
(yyval.exec).name = cat_str(8,mm_strdup("create"),(yyvsp[-8].str),mm_strdup("table"),(yyvsp[-6].str),mm_strdup("as execute"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str));
}
#line 50417 "preproc.c"
break;
case 1598: /* ExecuteStmt: CREATE OptTemp TABLE IF_P NOT EXISTS create_as_target AS EXECUTE prepared_name execute_param_clause opt_with_data execute_rest */
#line 9898 "preproc.y"
{
(yyval.exec).name = cat_str(8,mm_strdup("create"),(yyvsp[-11].str),mm_strdup("table if not exists"),(yyvsp[-6].str),mm_strdup("as execute"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str));
}
#line 50425 "preproc.c"
break;
case 1599: /* execute_param_clause: '(' expr_list ')' */
#line 9906 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 50433 "preproc.c"
break;
case 1600: /* execute_param_clause: %empty */
#line 9910 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50440 "preproc.c"
break;
case 1601: /* InsertStmt: opt_with_clause INSERT INTO insert_target insert_rest opt_on_conflict returning_clause */
#line 9917 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-6].str),mm_strdup("insert into"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50448 "preproc.c"
break;
case 1602: /* insert_target: qualified_name */
#line 9925 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50456 "preproc.c"
break;
case 1603: /* insert_target: qualified_name AS ColId */
#line 9929 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 50464 "preproc.c"
break;
case 1604: /* insert_rest: SelectStmt */
#line 9937 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50472 "preproc.c"
break;
case 1605: /* insert_rest: OVERRIDING override_kind VALUE_P SelectStmt */
#line 9941 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("overriding"),(yyvsp[-2].str),mm_strdup("value"),(yyvsp[0].str));
}
#line 50480 "preproc.c"
break;
case 1606: /* insert_rest: '(' insert_column_list ')' SelectStmt */
#line 9945 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 50488 "preproc.c"
break;
case 1607: /* insert_rest: '(' insert_column_list ')' OVERRIDING override_kind VALUE_P SelectStmt */
#line 9949 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("("),(yyvsp[-5].str),mm_strdup(") overriding"),(yyvsp[-2].str),mm_strdup("value"),(yyvsp[0].str));
}
#line 50496 "preproc.c"
break;
case 1608: /* insert_rest: DEFAULT VALUES */
#line 9953 "preproc.y"
{
(yyval.str) = mm_strdup("default values");
}
#line 50504 "preproc.c"
break;
case 1609: /* override_kind: USER */
#line 9961 "preproc.y"
{
(yyval.str) = mm_strdup("user");
}
#line 50512 "preproc.c"
break;
case 1610: /* override_kind: SYSTEM_P */
#line 9965 "preproc.y"
{
(yyval.str) = mm_strdup("system");
}
#line 50520 "preproc.c"
break;
case 1611: /* insert_column_list: insert_column_item */
#line 9973 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50528 "preproc.c"
break;
case 1612: /* insert_column_list: insert_column_list ',' insert_column_item */
#line 9977 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 50536 "preproc.c"
break;
case 1613: /* insert_column_item: ColId opt_indirection */
#line 9985 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50544 "preproc.c"
break;
case 1614: /* opt_on_conflict: ON CONFLICT opt_conf_expr DO UPDATE SET set_clause_list where_clause */
#line 9993 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("on conflict"),(yyvsp[-5].str),mm_strdup("do update set"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50552 "preproc.c"
break;
case 1615: /* opt_on_conflict: ON CONFLICT opt_conf_expr DO NOTHING */
#line 9997 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("on conflict"),(yyvsp[-2].str),mm_strdup("do nothing"));
}
#line 50560 "preproc.c"
break;
case 1616: /* opt_on_conflict: %empty */
#line 10001 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50567 "preproc.c"
break;
case 1617: /* opt_conf_expr: '(' index_params ')' where_clause */
#line 10008 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 50575 "preproc.c"
break;
case 1618: /* opt_conf_expr: ON CONSTRAINT name */
#line 10012 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("on constraint"),(yyvsp[0].str));
}
#line 50583 "preproc.c"
break;
case 1619: /* opt_conf_expr: %empty */
#line 10016 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50590 "preproc.c"
break;
case 1620: /* returning_clause: RETURNING target_list opt_ecpg_into */
#line 10023 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("returning"),(yyvsp[-1].str));
}
#line 50598 "preproc.c"
break;
case 1621: /* returning_clause: %empty */
#line 10027 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50605 "preproc.c"
break;
case 1622: /* DeleteStmt: opt_with_clause DELETE_P FROM relation_expr_opt_alias using_clause where_or_current_clause returning_clause */
#line 10034 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-6].str),mm_strdup("delete from"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50613 "preproc.c"
break;
case 1623: /* using_clause: USING from_list */
#line 10042 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("using"),(yyvsp[0].str));
}
#line 50621 "preproc.c"
break;
case 1624: /* using_clause: %empty */
#line 10046 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50628 "preproc.c"
break;
case 1625: /* LockStmt: LOCK_P opt_table relation_expr_list opt_lock opt_nowait */
#line 10053 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("lock"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50636 "preproc.c"
break;
case 1626: /* opt_lock: IN_P lock_type MODE */
#line 10061 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("in"),(yyvsp[-1].str),mm_strdup("mode"));
}
#line 50644 "preproc.c"
break;
case 1627: /* opt_lock: %empty */
#line 10065 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50651 "preproc.c"
break;
case 1628: /* lock_type: ACCESS SHARE */
#line 10072 "preproc.y"
{
(yyval.str) = mm_strdup("access share");
}
#line 50659 "preproc.c"
break;
case 1629: /* lock_type: ROW SHARE */
#line 10076 "preproc.y"
{
(yyval.str) = mm_strdup("row share");
}
#line 50667 "preproc.c"
break;
case 1630: /* lock_type: ROW EXCLUSIVE */
#line 10080 "preproc.y"
{
(yyval.str) = mm_strdup("row exclusive");
}
#line 50675 "preproc.c"
break;
case 1631: /* lock_type: SHARE UPDATE EXCLUSIVE */
#line 10084 "preproc.y"
{
(yyval.str) = mm_strdup("share update exclusive");
}
#line 50683 "preproc.c"
break;
case 1632: /* lock_type: SHARE */
#line 10088 "preproc.y"
{
(yyval.str) = mm_strdup("share");
}
#line 50691 "preproc.c"
break;
case 1633: /* lock_type: SHARE ROW EXCLUSIVE */
#line 10092 "preproc.y"
{
(yyval.str) = mm_strdup("share row exclusive");
}
#line 50699 "preproc.c"
break;
case 1634: /* lock_type: EXCLUSIVE */
#line 10096 "preproc.y"
{
(yyval.str) = mm_strdup("exclusive");
}
#line 50707 "preproc.c"
break;
case 1635: /* lock_type: ACCESS EXCLUSIVE */
#line 10100 "preproc.y"
{
(yyval.str) = mm_strdup("access exclusive");
}
#line 50715 "preproc.c"
break;
case 1636: /* opt_nowait: NOWAIT */
#line 10108 "preproc.y"
{
(yyval.str) = mm_strdup("nowait");
}
#line 50723 "preproc.c"
break;
case 1637: /* opt_nowait: %empty */
#line 10112 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50730 "preproc.c"
break;
case 1638: /* opt_nowait_or_skip: NOWAIT */
#line 10119 "preproc.y"
{
(yyval.str) = mm_strdup("nowait");
}
#line 50738 "preproc.c"
break;
case 1639: /* opt_nowait_or_skip: SKIP LOCKED */
#line 10123 "preproc.y"
{
(yyval.str) = mm_strdup("skip locked");
}
#line 50746 "preproc.c"
break;
case 1640: /* opt_nowait_or_skip: %empty */
#line 10127 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50753 "preproc.c"
break;
case 1641: /* UpdateStmt: opt_with_clause UPDATE relation_expr_opt_alias SET set_clause_list from_clause where_or_current_clause returning_clause */
#line 10134 "preproc.y"
{
(yyval.str) = cat_str(8,(yyvsp[-7].str),mm_strdup("update"),(yyvsp[-5].str),mm_strdup("set"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50761 "preproc.c"
break;
case 1642: /* set_clause_list: set_clause */
#line 10142 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50769 "preproc.c"
break;
case 1643: /* set_clause_list: set_clause_list ',' set_clause */
#line 10146 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 50777 "preproc.c"
break;
case 1644: /* set_clause: set_target '=' a_expr */
#line 10154 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 50785 "preproc.c"
break;
case 1645: /* set_clause: '(' set_target_list ')' '=' a_expr */
#line 10158 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("("),(yyvsp[-3].str),mm_strdup(") ="),(yyvsp[0].str));
}
#line 50793 "preproc.c"
break;
case 1646: /* set_target: ColId opt_indirection */
#line 10166 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50801 "preproc.c"
break;
case 1647: /* set_target_list: set_target */
#line 10174 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50809 "preproc.c"
break;
case 1648: /* set_target_list: set_target_list ',' set_target */
#line 10178 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 50817 "preproc.c"
break;
case 1649: /* MergeStmt: opt_with_clause MERGE INTO relation_expr_opt_alias USING table_ref ON a_expr merge_when_list */
#line 10186 "preproc.y"
{
(yyval.str) = cat_str(8,(yyvsp[-8].str),mm_strdup("merge into"),(yyvsp[-5].str),mm_strdup("using"),(yyvsp[-3].str),mm_strdup("on"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50825 "preproc.c"
break;
case 1650: /* merge_when_list: merge_when_clause */
#line 10194 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 50833 "preproc.c"
break;
case 1651: /* merge_when_list: merge_when_list merge_when_clause */
#line 10198 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 50841 "preproc.c"
break;
case 1652: /* merge_when_clause: WHEN MATCHED opt_merge_when_condition THEN merge_update */
#line 10206 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("when matched"),(yyvsp[-2].str),mm_strdup("then"),(yyvsp[0].str));
}
#line 50849 "preproc.c"
break;
case 1653: /* merge_when_clause: WHEN MATCHED opt_merge_when_condition THEN merge_delete */
#line 10210 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("when matched"),(yyvsp[-2].str),mm_strdup("then"),(yyvsp[0].str));
}
#line 50857 "preproc.c"
break;
case 1654: /* merge_when_clause: WHEN NOT MATCHED opt_merge_when_condition THEN merge_insert */
#line 10214 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("when not matched"),(yyvsp[-2].str),mm_strdup("then"),(yyvsp[0].str));
}
#line 50865 "preproc.c"
break;
case 1655: /* merge_when_clause: WHEN MATCHED opt_merge_when_condition THEN DO NOTHING */
#line 10218 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("when matched"),(yyvsp[-3].str),mm_strdup("then do nothing"));
}
#line 50873 "preproc.c"
break;
case 1656: /* merge_when_clause: WHEN NOT MATCHED opt_merge_when_condition THEN DO NOTHING */
#line 10222 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("when not matched"),(yyvsp[-3].str),mm_strdup("then do nothing"));
}
#line 50881 "preproc.c"
break;
case 1657: /* opt_merge_when_condition: AND a_expr */
#line 10230 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("and"),(yyvsp[0].str));
}
#line 50889 "preproc.c"
break;
case 1658: /* opt_merge_when_condition: %empty */
#line 10234 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 50896 "preproc.c"
break;
case 1659: /* merge_update: UPDATE SET set_clause_list */
#line 10241 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("update set"),(yyvsp[0].str));
}
#line 50904 "preproc.c"
break;
case 1660: /* merge_delete: DELETE_P */
#line 10249 "preproc.y"
{
(yyval.str) = mm_strdup("delete");
}
#line 50912 "preproc.c"
break;
case 1661: /* merge_insert: INSERT merge_values_clause */
#line 10257 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("insert"),(yyvsp[0].str));
}
#line 50920 "preproc.c"
break;
case 1662: /* merge_insert: INSERT OVERRIDING override_kind VALUE_P merge_values_clause */
#line 10261 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("insert overriding"),(yyvsp[-2].str),mm_strdup("value"),(yyvsp[0].str));
}
#line 50928 "preproc.c"
break;
case 1663: /* merge_insert: INSERT '(' insert_column_list ')' merge_values_clause */
#line 10265 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("insert ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 50936 "preproc.c"
break;
case 1664: /* merge_insert: INSERT '(' insert_column_list ')' OVERRIDING override_kind VALUE_P merge_values_clause */
#line 10269 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("insert ("),(yyvsp[-5].str),mm_strdup(") overriding"),(yyvsp[-2].str),mm_strdup("value"),(yyvsp[0].str));
}
#line 50944 "preproc.c"
break;
case 1665: /* merge_insert: INSERT DEFAULT VALUES */
#line 10273 "preproc.y"
{
(yyval.str) = mm_strdup("insert default values");
}
#line 50952 "preproc.c"
break;
case 1666: /* merge_values_clause: VALUES '(' expr_list ')' */
#line 10281 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("values ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 50960 "preproc.c"
break;
case 1667: /* DeclareCursorStmt: DECLARE cursor_name cursor_options CURSOR opt_hold FOR SelectStmt */
#line 10289 "preproc.y"
{
struct cursor *ptr, *this;
char *cursor_marker = (yyvsp[-5].str)[0] == ':' ? mm_strdup("$0") : mm_strdup((yyvsp[-5].str));
char *comment, *c1, *c2;
int (* strcmp_fn)(const char *, const char *) = (((yyvsp[-5].str)[0] == ':' || (yyvsp[-5].str)[0] == '"') ? strcmp : pg_strcasecmp);
if (INFORMIX_MODE && pg_strcasecmp((yyvsp[-5].str), "database") == 0)
mmfatal(PARSE_ERROR, "\"database\" cannot be used as cursor name in INFORMIX mode");
for (ptr = cur; ptr != NULL; ptr = ptr->next)
{
if (strcmp_fn((yyvsp[-5].str), ptr->name) == 0)
{
if ((yyvsp[-5].str)[0] == ':')
mmerror(PARSE_ERROR, ET_ERROR, "using variable \"%s\" in different declare statements is not supported", (yyvsp[-5].str)+1);
else
mmerror(PARSE_ERROR, ET_ERROR, "cursor \"%s\" is already defined", (yyvsp[-5].str));
}
}
this = (struct cursor *) mm_alloc(sizeof(struct cursor));
this->next = cur;
this->name = (yyvsp[-5].str);
this->function = (current_function ? mm_strdup(current_function) : NULL);
this->connection = connection ? mm_strdup(connection) : NULL;
this->opened = false;
this->command = cat_str(7, mm_strdup("declare"), cursor_marker, (yyvsp[-4].str), mm_strdup("cursor"), (yyvsp[-2].str), mm_strdup("for"), (yyvsp[0].str));
this->argsinsert = argsinsert;
this->argsinsert_oos = NULL;
this->argsresult = argsresult;
this->argsresult_oos = NULL;
argsinsert = argsresult = NULL;
cur = this;
c1 = mm_strdup(this->command);
if ((c2 = strstr(c1, "*/")) != NULL)
{
/* We put this text into a comment, so we better remove [*][/]. */
c2[0] = '.';
c2[1] = '.';
}
comment = cat_str(3, mm_strdup("/*"), c1, mm_strdup("*/"));
(yyval.str) = cat2_str(adjust_outofscope_cursor_vars(this), comment);
}
#line 51011 "preproc.c"
break;
case 1668: /* cursor_name: name */
#line 10340 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51019 "preproc.c"
break;
case 1669: /* cursor_name: char_civar */
#line 10344 "preproc.y"
{
char *curname = mm_alloc(strlen((yyvsp[0].str)) + 2);
sprintf(curname, ":%s", (yyvsp[0].str));
free((yyvsp[0].str));
(yyvsp[0].str) = curname;
(yyval.str) = (yyvsp[0].str);
}
#line 51031 "preproc.c"
break;
case 1670: /* cursor_options: %empty */
#line 10356 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51038 "preproc.c"
break;
case 1671: /* cursor_options: cursor_options NO SCROLL */
#line 10359 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("no scroll"));
}
#line 51046 "preproc.c"
break;
case 1672: /* cursor_options: cursor_options SCROLL */
#line 10363 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("scroll"));
}
#line 51054 "preproc.c"
break;
case 1673: /* cursor_options: cursor_options BINARY */
#line 10367 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("binary"));
}
#line 51062 "preproc.c"
break;
case 1674: /* cursor_options: cursor_options ASENSITIVE */
#line 10371 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("asensitive"));
}
#line 51070 "preproc.c"
break;
case 1675: /* cursor_options: cursor_options INSENSITIVE */
#line 10375 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("insensitive"));
}
#line 51078 "preproc.c"
break;
case 1676: /* opt_hold: %empty */
#line 10383 "preproc.y"
{
if (compat == ECPG_COMPAT_INFORMIX_SE && autocommit)
(yyval.str) = mm_strdup("with hold");
else
(yyval.str) = EMPTY;
}
#line 51089 "preproc.c"
break;
case 1677: /* opt_hold: WITH HOLD */
#line 10390 "preproc.y"
{
(yyval.str) = mm_strdup("with hold");
}
#line 51097 "preproc.c"
break;
case 1678: /* opt_hold: WITHOUT HOLD */
#line 10394 "preproc.y"
{
(yyval.str) = mm_strdup("without hold");
}
#line 51105 "preproc.c"
break;
case 1679: /* SelectStmt: select_no_parens */
#line 10402 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51113 "preproc.c"
break;
case 1680: /* SelectStmt: select_with_parens */
#line 10406 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51121 "preproc.c"
break;
case 1681: /* select_with_parens: '(' select_no_parens ')' */
#line 10414 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 51129 "preproc.c"
break;
case 1682: /* select_with_parens: '(' select_with_parens ')' */
#line 10418 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 51137 "preproc.c"
break;
case 1683: /* select_no_parens: simple_select */
#line 10426 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51145 "preproc.c"
break;
case 1684: /* select_no_parens: select_clause sort_clause */
#line 10430 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51153 "preproc.c"
break;
case 1685: /* select_no_parens: select_clause opt_sort_clause for_locking_clause opt_select_limit */
#line 10434 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51161 "preproc.c"
break;
case 1686: /* select_no_parens: select_clause opt_sort_clause select_limit opt_for_locking_clause */
#line 10438 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51169 "preproc.c"
break;
case 1687: /* select_no_parens: with_clause select_clause */
#line 10442 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51177 "preproc.c"
break;
case 1688: /* select_no_parens: with_clause select_clause sort_clause */
#line 10446 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51185 "preproc.c"
break;
case 1689: /* select_no_parens: with_clause select_clause opt_sort_clause for_locking_clause opt_select_limit */
#line 10450 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51193 "preproc.c"
break;
case 1690: /* select_no_parens: with_clause select_clause opt_sort_clause select_limit opt_for_locking_clause */
#line 10454 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51201 "preproc.c"
break;
case 1691: /* select_clause: simple_select */
#line 10462 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51209 "preproc.c"
break;
case 1692: /* select_clause: select_with_parens */
#line 10466 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51217 "preproc.c"
break;
case 1693: /* simple_select: SELECT opt_all_clause opt_target_list into_clause from_clause where_clause group_clause having_clause window_clause */
#line 10474 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("select"),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51225 "preproc.c"
break;
case 1694: /* simple_select: SELECT distinct_clause target_list into_clause from_clause where_clause group_clause having_clause window_clause */
#line 10478 "preproc.y"
{
(yyval.str) = cat_str(9,mm_strdup("select"),(yyvsp[-7].str),(yyvsp[-6].str),(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51233 "preproc.c"
break;
case 1695: /* simple_select: values_clause */
#line 10482 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51241 "preproc.c"
break;
case 1696: /* simple_select: TABLE relation_expr */
#line 10486 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("table"),(yyvsp[0].str));
}
#line 51249 "preproc.c"
break;
case 1697: /* simple_select: select_clause UNION set_quantifier select_clause */
#line 10490 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("union"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51257 "preproc.c"
break;
case 1698: /* simple_select: select_clause INTERSECT set_quantifier select_clause */
#line 10494 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("intersect"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51265 "preproc.c"
break;
case 1699: /* simple_select: select_clause EXCEPT set_quantifier select_clause */
#line 10498 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("except"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51273 "preproc.c"
break;
case 1700: /* with_clause: WITH cte_list */
#line 10506 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("with"),(yyvsp[0].str));
}
#line 51281 "preproc.c"
break;
case 1701: /* with_clause: WITH_LA cte_list */
#line 10510 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("with"),(yyvsp[0].str));
}
#line 51289 "preproc.c"
break;
case 1702: /* with_clause: WITH RECURSIVE cte_list */
#line 10514 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("with recursive"),(yyvsp[0].str));
}
#line 51297 "preproc.c"
break;
case 1703: /* cte_list: common_table_expr */
#line 10522 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51305 "preproc.c"
break;
case 1704: /* cte_list: cte_list ',' common_table_expr */
#line 10526 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 51313 "preproc.c"
break;
case 1705: /* common_table_expr: name opt_name_list AS opt_materialized '(' PreparableStmt ')' opt_search_clause opt_cycle_clause */
#line 10534 "preproc.y"
{
(yyval.str) = cat_str(9,(yyvsp[-8].str),(yyvsp[-7].str),mm_strdup("as"),(yyvsp[-5].str),mm_strdup("("),(yyvsp[-3].str),mm_strdup(")"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51321 "preproc.c"
break;
case 1706: /* opt_materialized: MATERIALIZED */
#line 10542 "preproc.y"
{
(yyval.str) = mm_strdup("materialized");
}
#line 51329 "preproc.c"
break;
case 1707: /* opt_materialized: NOT MATERIALIZED */
#line 10546 "preproc.y"
{
(yyval.str) = mm_strdup("not materialized");
}
#line 51337 "preproc.c"
break;
case 1708: /* opt_materialized: %empty */
#line 10550 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51344 "preproc.c"
break;
case 1709: /* opt_search_clause: SEARCH DEPTH FIRST_P BY columnList SET ColId */
#line 10557 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("search depth first by"),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 51352 "preproc.c"
break;
case 1710: /* opt_search_clause: SEARCH BREADTH FIRST_P BY columnList SET ColId */
#line 10561 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("search breadth first by"),(yyvsp[-2].str),mm_strdup("set"),(yyvsp[0].str));
}
#line 51360 "preproc.c"
break;
case 1711: /* opt_search_clause: %empty */
#line 10565 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51367 "preproc.c"
break;
case 1712: /* opt_cycle_clause: CYCLE columnList SET ColId TO AexprConst DEFAULT AexprConst USING ColId */
#line 10572 "preproc.y"
{
(yyval.str) = cat_str(10,mm_strdup("cycle"),(yyvsp[-8].str),mm_strdup("set"),(yyvsp[-6].str),mm_strdup("to"),(yyvsp[-4].str),mm_strdup("default"),(yyvsp[-2].str),mm_strdup("using"),(yyvsp[0].str));
}
#line 51375 "preproc.c"
break;
case 1713: /* opt_cycle_clause: CYCLE columnList SET ColId USING ColId */
#line 10576 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("cycle"),(yyvsp[-4].str),mm_strdup("set"),(yyvsp[-2].str),mm_strdup("using"),(yyvsp[0].str));
}
#line 51383 "preproc.c"
break;
case 1714: /* opt_cycle_clause: %empty */
#line 10580 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51390 "preproc.c"
break;
case 1715: /* opt_with_clause: with_clause */
#line 10587 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51398 "preproc.c"
break;
case 1716: /* opt_with_clause: %empty */
#line 10591 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51405 "preproc.c"
break;
case 1717: /* into_clause: INTO OptTempTableName */
#line 10598 "preproc.y"
{
FoundInto = 1;
(yyval.str)= cat2_str(mm_strdup("into"), (yyvsp[0].str));
}
#line 51414 "preproc.c"
break;
case 1718: /* into_clause: ecpg_into */
#line 10602 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 51420 "preproc.c"
break;
case 1719: /* into_clause: %empty */
#line 10604 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51427 "preproc.c"
break;
case 1720: /* OptTempTableName: TEMPORARY opt_table qualified_name */
#line 10611 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("temporary"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51435 "preproc.c"
break;
case 1721: /* OptTempTableName: TEMP opt_table qualified_name */
#line 10615 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("temp"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51443 "preproc.c"
break;
case 1722: /* OptTempTableName: LOCAL TEMPORARY opt_table qualified_name */
#line 10619 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("local temporary"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51451 "preproc.c"
break;
case 1723: /* OptTempTableName: LOCAL TEMP opt_table qualified_name */
#line 10623 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("local temp"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51459 "preproc.c"
break;
case 1724: /* OptTempTableName: GLOBAL TEMPORARY opt_table qualified_name */
#line 10627 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("global temporary"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51467 "preproc.c"
break;
case 1725: /* OptTempTableName: GLOBAL TEMP opt_table qualified_name */
#line 10631 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("global temp"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51475 "preproc.c"
break;
case 1726: /* OptTempTableName: UNLOGGED opt_table qualified_name */
#line 10635 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("unlogged"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51483 "preproc.c"
break;
case 1727: /* OptTempTableName: TABLE qualified_name */
#line 10639 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("table"),(yyvsp[0].str));
}
#line 51491 "preproc.c"
break;
case 1728: /* OptTempTableName: qualified_name */
#line 10643 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51499 "preproc.c"
break;
case 1729: /* opt_table: TABLE */
#line 10651 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 51507 "preproc.c"
break;
case 1730: /* opt_table: %empty */
#line 10655 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51514 "preproc.c"
break;
case 1731: /* set_quantifier: ALL */
#line 10662 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 51522 "preproc.c"
break;
case 1732: /* set_quantifier: DISTINCT */
#line 10666 "preproc.y"
{
(yyval.str) = mm_strdup("distinct");
}
#line 51530 "preproc.c"
break;
case 1733: /* set_quantifier: %empty */
#line 10670 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51537 "preproc.c"
break;
case 1734: /* distinct_clause: DISTINCT */
#line 10677 "preproc.y"
{
(yyval.str) = mm_strdup("distinct");
}
#line 51545 "preproc.c"
break;
case 1735: /* distinct_clause: DISTINCT ON '(' expr_list ')' */
#line 10681 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("distinct on ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 51553 "preproc.c"
break;
case 1736: /* opt_all_clause: ALL */
#line 10689 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 51561 "preproc.c"
break;
case 1737: /* opt_all_clause: %empty */
#line 10693 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51568 "preproc.c"
break;
case 1738: /* opt_sort_clause: sort_clause */
#line 10700 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51576 "preproc.c"
break;
case 1739: /* opt_sort_clause: %empty */
#line 10704 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51583 "preproc.c"
break;
case 1740: /* sort_clause: ORDER BY sortby_list */
#line 10711 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("order by"),(yyvsp[0].str));
}
#line 51591 "preproc.c"
break;
case 1741: /* sortby_list: sortby */
#line 10719 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51599 "preproc.c"
break;
case 1742: /* sortby_list: sortby_list ',' sortby */
#line 10723 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 51607 "preproc.c"
break;
case 1743: /* sortby: a_expr USING qual_all_Op opt_nulls_order */
#line 10731 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("using"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51615 "preproc.c"
break;
case 1744: /* sortby: a_expr opt_asc_desc opt_nulls_order */
#line 10735 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51623 "preproc.c"
break;
case 1745: /* select_limit: limit_clause offset_clause */
#line 10743 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51631 "preproc.c"
break;
case 1746: /* select_limit: offset_clause limit_clause */
#line 10747 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51639 "preproc.c"
break;
case 1747: /* select_limit: limit_clause */
#line 10751 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51647 "preproc.c"
break;
case 1748: /* select_limit: offset_clause */
#line 10755 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51655 "preproc.c"
break;
case 1749: /* opt_select_limit: select_limit */
#line 10763 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51663 "preproc.c"
break;
case 1750: /* opt_select_limit: %empty */
#line 10767 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51670 "preproc.c"
break;
case 1751: /* limit_clause: LIMIT select_limit_value */
#line 10774 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("limit"),(yyvsp[0].str));
}
#line 51678 "preproc.c"
break;
case 1752: /* limit_clause: LIMIT select_limit_value ',' select_offset_value */
#line 10778 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "no longer supported LIMIT #,# syntax passed to server");
(yyval.str) = cat_str(4, mm_strdup("limit"), (yyvsp[-2].str), mm_strdup(","), (yyvsp[0].str));
}
#line 51687 "preproc.c"
break;
case 1753: /* limit_clause: FETCH first_or_next select_fetch_first_value row_or_rows ONLY */
#line 10783 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("fetch"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup("only"));
}
#line 51695 "preproc.c"
break;
case 1754: /* limit_clause: FETCH first_or_next select_fetch_first_value row_or_rows WITH TIES */
#line 10787 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("fetch"),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("with ties"));
}
#line 51703 "preproc.c"
break;
case 1755: /* limit_clause: FETCH first_or_next row_or_rows ONLY */
#line 10791 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("fetch"),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup("only"));
}
#line 51711 "preproc.c"
break;
case 1756: /* limit_clause: FETCH first_or_next row_or_rows WITH TIES */
#line 10795 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("fetch"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("with ties"));
}
#line 51719 "preproc.c"
break;
case 1757: /* offset_clause: OFFSET select_offset_value */
#line 10803 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("offset"),(yyvsp[0].str));
}
#line 51727 "preproc.c"
break;
case 1758: /* offset_clause: OFFSET select_fetch_first_value row_or_rows */
#line 10807 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("offset"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51735 "preproc.c"
break;
case 1759: /* select_limit_value: a_expr */
#line 10815 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51743 "preproc.c"
break;
case 1760: /* select_limit_value: ALL */
#line 10819 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 51751 "preproc.c"
break;
case 1761: /* select_offset_value: a_expr */
#line 10827 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51759 "preproc.c"
break;
case 1762: /* select_fetch_first_value: c_expr */
#line 10835 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51767 "preproc.c"
break;
case 1763: /* select_fetch_first_value: '+' I_or_F_const */
#line 10839 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("+"),(yyvsp[0].str));
}
#line 51775 "preproc.c"
break;
case 1764: /* select_fetch_first_value: '-' I_or_F_const */
#line 10843 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("-"),(yyvsp[0].str));
}
#line 51783 "preproc.c"
break;
case 1765: /* I_or_F_const: Iconst */
#line 10851 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51791 "preproc.c"
break;
case 1766: /* I_or_F_const: ecpg_fconst */
#line 10855 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51799 "preproc.c"
break;
case 1767: /* row_or_rows: ROW */
#line 10863 "preproc.y"
{
(yyval.str) = mm_strdup("row");
}
#line 51807 "preproc.c"
break;
case 1768: /* row_or_rows: ROWS */
#line 10867 "preproc.y"
{
(yyval.str) = mm_strdup("rows");
}
#line 51815 "preproc.c"
break;
case 1769: /* first_or_next: FIRST_P */
#line 10875 "preproc.y"
{
(yyval.str) = mm_strdup("first");
}
#line 51823 "preproc.c"
break;
case 1770: /* first_or_next: NEXT */
#line 10879 "preproc.y"
{
(yyval.str) = mm_strdup("next");
}
#line 51831 "preproc.c"
break;
case 1771: /* group_clause: GROUP_P BY set_quantifier group_by_list */
#line 10887 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("group by"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51839 "preproc.c"
break;
case 1772: /* group_clause: %empty */
#line 10891 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51846 "preproc.c"
break;
case 1773: /* group_by_list: group_by_item */
#line 10898 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51854 "preproc.c"
break;
case 1774: /* group_by_list: group_by_list ',' group_by_item */
#line 10902 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 51862 "preproc.c"
break;
case 1775: /* group_by_item: a_expr */
#line 10910 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51870 "preproc.c"
break;
case 1776: /* group_by_item: empty_grouping_set */
#line 10914 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51878 "preproc.c"
break;
case 1777: /* group_by_item: cube_clause */
#line 10918 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51886 "preproc.c"
break;
case 1778: /* group_by_item: rollup_clause */
#line 10922 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51894 "preproc.c"
break;
case 1779: /* group_by_item: grouping_sets_clause */
#line 10926 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51902 "preproc.c"
break;
case 1780: /* empty_grouping_set: '(' ')' */
#line 10934 "preproc.y"
{
(yyval.str) = mm_strdup("( )");
}
#line 51910 "preproc.c"
break;
case 1781: /* rollup_clause: ROLLUP '(' expr_list ')' */
#line 10942 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("rollup ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 51918 "preproc.c"
break;
case 1782: /* cube_clause: CUBE '(' expr_list ')' */
#line 10950 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("cube ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 51926 "preproc.c"
break;
case 1783: /* grouping_sets_clause: GROUPING SETS '(' group_by_list ')' */
#line 10958 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("grouping sets ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 51934 "preproc.c"
break;
case 1784: /* having_clause: HAVING a_expr */
#line 10966 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("having"),(yyvsp[0].str));
}
#line 51942 "preproc.c"
break;
case 1785: /* having_clause: %empty */
#line 10970 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51949 "preproc.c"
break;
case 1786: /* for_locking_clause: for_locking_items */
#line 10977 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51957 "preproc.c"
break;
case 1787: /* for_locking_clause: FOR READ ONLY */
#line 10981 "preproc.y"
{
(yyval.str) = mm_strdup("for read only");
}
#line 51965 "preproc.c"
break;
case 1788: /* opt_for_locking_clause: for_locking_clause */
#line 10989 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51973 "preproc.c"
break;
case 1789: /* opt_for_locking_clause: %empty */
#line 10993 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 51980 "preproc.c"
break;
case 1790: /* for_locking_items: for_locking_item */
#line 11000 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 51988 "preproc.c"
break;
case 1791: /* for_locking_items: for_locking_items for_locking_item */
#line 11004 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 51996 "preproc.c"
break;
case 1792: /* for_locking_item: for_locking_strength locked_rels_list opt_nowait_or_skip */
#line 11012 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52004 "preproc.c"
break;
case 1793: /* for_locking_strength: FOR UPDATE */
#line 11020 "preproc.y"
{
(yyval.str) = mm_strdup("for update");
}
#line 52012 "preproc.c"
break;
case 1794: /* for_locking_strength: FOR NO KEY UPDATE */
#line 11024 "preproc.y"
{
(yyval.str) = mm_strdup("for no key update");
}
#line 52020 "preproc.c"
break;
case 1795: /* for_locking_strength: FOR SHARE */
#line 11028 "preproc.y"
{
(yyval.str) = mm_strdup("for share");
}
#line 52028 "preproc.c"
break;
case 1796: /* for_locking_strength: FOR KEY SHARE */
#line 11032 "preproc.y"
{
(yyval.str) = mm_strdup("for key share");
}
#line 52036 "preproc.c"
break;
case 1797: /* locked_rels_list: OF qualified_name_list */
#line 11040 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("of"),(yyvsp[0].str));
}
#line 52044 "preproc.c"
break;
case 1798: /* locked_rels_list: %empty */
#line 11044 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52051 "preproc.c"
break;
case 1799: /* values_clause: VALUES '(' expr_list ')' */
#line 11051 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("values ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52059 "preproc.c"
break;
case 1800: /* values_clause: values_clause ',' '(' expr_list ')' */
#line 11055 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-4].str),mm_strdup(", ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52067 "preproc.c"
break;
case 1801: /* from_clause: FROM from_list */
#line 11063 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("from"),(yyvsp[0].str));
}
#line 52075 "preproc.c"
break;
case 1802: /* from_clause: %empty */
#line 11067 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52082 "preproc.c"
break;
case 1803: /* from_list: table_ref */
#line 11074 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52090 "preproc.c"
break;
case 1804: /* from_list: from_list ',' table_ref */
#line 11078 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 52098 "preproc.c"
break;
case 1805: /* table_ref: relation_expr opt_alias_clause */
#line 11086 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52106 "preproc.c"
break;
case 1806: /* table_ref: relation_expr opt_alias_clause tablesample_clause */
#line 11090 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52114 "preproc.c"
break;
case 1807: /* table_ref: func_table func_alias_clause */
#line 11094 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52122 "preproc.c"
break;
case 1808: /* table_ref: LATERAL_P func_table func_alias_clause */
#line 11098 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("lateral"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52130 "preproc.c"
break;
case 1809: /* table_ref: xmltable opt_alias_clause */
#line 11102 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52138 "preproc.c"
break;
case 1810: /* table_ref: LATERAL_P xmltable opt_alias_clause */
#line 11106 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("lateral"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52146 "preproc.c"
break;
case 1811: /* table_ref: select_with_parens opt_alias_clause */
#line 11110 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52154 "preproc.c"
break;
case 1812: /* table_ref: LATERAL_P select_with_parens opt_alias_clause */
#line 11114 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("lateral"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52162 "preproc.c"
break;
case 1813: /* table_ref: joined_table */
#line 11118 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52170 "preproc.c"
break;
case 1814: /* table_ref: '(' joined_table ')' alias_clause */
#line 11122 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 52178 "preproc.c"
break;
case 1815: /* joined_table: '(' joined_table ')' */
#line 11130 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52186 "preproc.c"
break;
case 1816: /* joined_table: table_ref CROSS JOIN table_ref */
#line 11134 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("cross join"),(yyvsp[0].str));
}
#line 52194 "preproc.c"
break;
case 1817: /* joined_table: table_ref join_type JOIN table_ref join_qual */
#line 11138 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("join"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52202 "preproc.c"
break;
case 1818: /* joined_table: table_ref JOIN table_ref join_qual */
#line 11142 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("join"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52210 "preproc.c"
break;
case 1819: /* joined_table: table_ref NATURAL join_type JOIN table_ref */
#line 11146 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("natural"),(yyvsp[-2].str),mm_strdup("join"),(yyvsp[0].str));
}
#line 52218 "preproc.c"
break;
case 1820: /* joined_table: table_ref NATURAL JOIN table_ref */
#line 11150 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("natural join"),(yyvsp[0].str));
}
#line 52226 "preproc.c"
break;
case 1821: /* alias_clause: AS ColId '(' name_list ')' */
#line 11158 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("as"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52234 "preproc.c"
break;
case 1822: /* alias_clause: AS ColId */
#line 11162 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("as"),(yyvsp[0].str));
}
#line 52242 "preproc.c"
break;
case 1823: /* alias_clause: ColId '(' name_list ')' */
#line 11166 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52250 "preproc.c"
break;
case 1824: /* alias_clause: ColId */
#line 11170 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52258 "preproc.c"
break;
case 1825: /* opt_alias_clause: alias_clause */
#line 11178 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52266 "preproc.c"
break;
case 1826: /* opt_alias_clause: %empty */
#line 11182 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52273 "preproc.c"
break;
case 1827: /* opt_alias_clause_for_join_using: AS ColId */
#line 11189 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("as"),(yyvsp[0].str));
}
#line 52281 "preproc.c"
break;
case 1828: /* opt_alias_clause_for_join_using: %empty */
#line 11193 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52288 "preproc.c"
break;
case 1829: /* func_alias_clause: alias_clause */
#line 11200 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52296 "preproc.c"
break;
case 1830: /* func_alias_clause: AS '(' TableFuncElementList ')' */
#line 11204 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("as ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52304 "preproc.c"
break;
case 1831: /* func_alias_clause: AS ColId '(' TableFuncElementList ')' */
#line 11208 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("as"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52312 "preproc.c"
break;
case 1832: /* func_alias_clause: ColId '(' TableFuncElementList ')' */
#line 11212 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52320 "preproc.c"
break;
case 1833: /* func_alias_clause: %empty */
#line 11216 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52327 "preproc.c"
break;
case 1834: /* join_type: FULL opt_outer */
#line 11223 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("full"),(yyvsp[0].str));
}
#line 52335 "preproc.c"
break;
case 1835: /* join_type: LEFT opt_outer */
#line 11227 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("left"),(yyvsp[0].str));
}
#line 52343 "preproc.c"
break;
case 1836: /* join_type: RIGHT opt_outer */
#line 11231 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("right"),(yyvsp[0].str));
}
#line 52351 "preproc.c"
break;
case 1837: /* join_type: INNER_P */
#line 11235 "preproc.y"
{
(yyval.str) = mm_strdup("inner");
}
#line 52359 "preproc.c"
break;
case 1838: /* opt_outer: OUTER_P */
#line 11243 "preproc.y"
{
(yyval.str) = mm_strdup("outer");
}
#line 52367 "preproc.c"
break;
case 1839: /* opt_outer: %empty */
#line 11247 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52374 "preproc.c"
break;
case 1840: /* join_qual: USING '(' name_list ')' opt_alias_clause_for_join_using */
#line 11254 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("using ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 52382 "preproc.c"
break;
case 1841: /* join_qual: ON a_expr */
#line 11258 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("on"),(yyvsp[0].str));
}
#line 52390 "preproc.c"
break;
case 1842: /* relation_expr: qualified_name */
#line 11266 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52398 "preproc.c"
break;
case 1843: /* relation_expr: extended_relation_expr */
#line 11270 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52406 "preproc.c"
break;
case 1844: /* extended_relation_expr: qualified_name '*' */
#line 11278 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("*"));
}
#line 52414 "preproc.c"
break;
case 1845: /* extended_relation_expr: ONLY qualified_name */
#line 11282 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("only"),(yyvsp[0].str));
}
#line 52422 "preproc.c"
break;
case 1846: /* extended_relation_expr: ONLY '(' qualified_name ')' */
#line 11286 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("only ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52430 "preproc.c"
break;
case 1847: /* relation_expr_list: relation_expr */
#line 11294 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52438 "preproc.c"
break;
case 1848: /* relation_expr_list: relation_expr_list ',' relation_expr */
#line 11298 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 52446 "preproc.c"
break;
case 1849: /* relation_expr_opt_alias: relation_expr */
#line 11306 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52454 "preproc.c"
break;
case 1850: /* relation_expr_opt_alias: relation_expr ColId */
#line 11310 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52462 "preproc.c"
break;
case 1851: /* relation_expr_opt_alias: relation_expr AS ColId */
#line 11314 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 52470 "preproc.c"
break;
case 1852: /* tablesample_clause: TABLESAMPLE func_name '(' expr_list ')' opt_repeatable_clause */
#line 11322 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("tablesample"),(yyvsp[-4].str),mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 52478 "preproc.c"
break;
case 1853: /* opt_repeatable_clause: REPEATABLE '(' a_expr ')' */
#line 11330 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("repeatable ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52486 "preproc.c"
break;
case 1854: /* opt_repeatable_clause: %empty */
#line 11334 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52493 "preproc.c"
break;
case 1855: /* func_table: func_expr_windowless opt_ordinality */
#line 11341 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52501 "preproc.c"
break;
case 1856: /* func_table: ROWS FROM '(' rowsfrom_list ')' opt_ordinality */
#line 11345 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("rows from ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 52509 "preproc.c"
break;
case 1857: /* rowsfrom_item: func_expr_windowless opt_col_def_list */
#line 11353 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52517 "preproc.c"
break;
case 1858: /* rowsfrom_list: rowsfrom_item */
#line 11361 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52525 "preproc.c"
break;
case 1859: /* rowsfrom_list: rowsfrom_list ',' rowsfrom_item */
#line 11365 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 52533 "preproc.c"
break;
case 1860: /* opt_col_def_list: AS '(' TableFuncElementList ')' */
#line 11373 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("as ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52541 "preproc.c"
break;
case 1861: /* opt_col_def_list: %empty */
#line 11377 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52548 "preproc.c"
break;
case 1862: /* opt_ordinality: WITH_LA ORDINALITY */
#line 11384 "preproc.y"
{
(yyval.str) = mm_strdup("with ordinality");
}
#line 52556 "preproc.c"
break;
case 1863: /* opt_ordinality: %empty */
#line 11388 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52563 "preproc.c"
break;
case 1864: /* where_clause: WHERE a_expr */
#line 11395 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("where"),(yyvsp[0].str));
}
#line 52571 "preproc.c"
break;
case 1865: /* where_clause: %empty */
#line 11399 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52578 "preproc.c"
break;
case 1866: /* where_or_current_clause: WHERE a_expr */
#line 11406 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("where"),(yyvsp[0].str));
}
#line 52586 "preproc.c"
break;
case 1867: /* where_or_current_clause: WHERE CURRENT_P OF cursor_name */
#line 11410 "preproc.y"
{
char *cursor_marker = (yyvsp[0].str)[0] == ':' ? mm_strdup("$0") : (yyvsp[0].str);
(yyval.str) = cat_str(2,mm_strdup("where current of"), cursor_marker);
}
#line 52595 "preproc.c"
break;
case 1868: /* where_or_current_clause: %empty */
#line 11415 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52602 "preproc.c"
break;
case 1869: /* OptTableFuncElementList: TableFuncElementList */
#line 11422 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52610 "preproc.c"
break;
case 1870: /* OptTableFuncElementList: %empty */
#line 11426 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52617 "preproc.c"
break;
case 1871: /* TableFuncElementList: TableFuncElement */
#line 11433 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52625 "preproc.c"
break;
case 1872: /* TableFuncElementList: TableFuncElementList ',' TableFuncElement */
#line 11437 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 52633 "preproc.c"
break;
case 1873: /* TableFuncElement: ColId Typename opt_collate_clause */
#line 11445 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52641 "preproc.c"
break;
case 1874: /* xmltable: XMLTABLE '(' c_expr xmlexists_argument COLUMNS xmltable_column_list ')' */
#line 11453 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("xmltable ("),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("columns"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52649 "preproc.c"
break;
case 1875: /* xmltable: XMLTABLE '(' XMLNAMESPACES '(' xml_namespace_list ')' ',' c_expr xmlexists_argument COLUMNS xmltable_column_list ')' */
#line 11457 "preproc.y"
{
(yyval.str) = cat_str(8,mm_strdup("xmltable ( xmlnamespaces ("),(yyvsp[-7].str),mm_strdup(") ,"),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("columns"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52657 "preproc.c"
break;
case 1876: /* xmltable_column_list: xmltable_column_el */
#line 11465 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52665 "preproc.c"
break;
case 1877: /* xmltable_column_list: xmltable_column_list ',' xmltable_column_el */
#line 11469 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 52673 "preproc.c"
break;
case 1878: /* xmltable_column_el: ColId Typename */
#line 11477 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52681 "preproc.c"
break;
case 1879: /* xmltable_column_el: ColId Typename xmltable_column_option_list */
#line 11481 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52689 "preproc.c"
break;
case 1880: /* xmltable_column_el: ColId FOR ORDINALITY */
#line 11485 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("for ordinality"));
}
#line 52697 "preproc.c"
break;
case 1881: /* xmltable_column_option_list: xmltable_column_option_el */
#line 11493 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52705 "preproc.c"
break;
case 1882: /* xmltable_column_option_list: xmltable_column_option_list xmltable_column_option_el */
#line 11497 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52713 "preproc.c"
break;
case 1883: /* xmltable_column_option_el: ecpg_ident b_expr */
#line 11505 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52721 "preproc.c"
break;
case 1884: /* xmltable_column_option_el: DEFAULT b_expr */
#line 11509 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("default"),(yyvsp[0].str));
}
#line 52729 "preproc.c"
break;
case 1885: /* xmltable_column_option_el: NOT NULL_P */
#line 11513 "preproc.y"
{
(yyval.str) = mm_strdup("not null");
}
#line 52737 "preproc.c"
break;
case 1886: /* xmltable_column_option_el: NULL_P */
#line 11517 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 52745 "preproc.c"
break;
case 1887: /* xml_namespace_list: xml_namespace_el */
#line 11525 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52753 "preproc.c"
break;
case 1888: /* xml_namespace_list: xml_namespace_list ',' xml_namespace_el */
#line 11529 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 52761 "preproc.c"
break;
case 1889: /* xml_namespace_el: b_expr AS ColLabel */
#line 11537 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 52769 "preproc.c"
break;
case 1890: /* xml_namespace_el: DEFAULT b_expr */
#line 11541 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("default"),(yyvsp[0].str));
}
#line 52777 "preproc.c"
break;
case 1891: /* Typename: SimpleTypename opt_array_bounds */
#line 11549 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[-1].str), (yyvsp[0].index).str); }
#line 52783 "preproc.c"
break;
case 1892: /* Typename: SETOF SimpleTypename opt_array_bounds */
#line 11551 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("setof"), (yyvsp[-1].str), (yyvsp[0].index).str); }
#line 52789 "preproc.c"
break;
case 1893: /* Typename: SimpleTypename ARRAY '[' Iconst ']' */
#line 11553 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-4].str),mm_strdup("array ["),(yyvsp[-1].str),mm_strdup("]"));
}
#line 52797 "preproc.c"
break;
case 1894: /* Typename: SETOF SimpleTypename ARRAY '[' Iconst ']' */
#line 11557 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("setof"),(yyvsp[-4].str),mm_strdup("array ["),(yyvsp[-1].str),mm_strdup("]"));
}
#line 52805 "preproc.c"
break;
case 1895: /* Typename: SimpleTypename ARRAY */
#line 11561 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("array"));
}
#line 52813 "preproc.c"
break;
case 1896: /* Typename: SETOF SimpleTypename ARRAY */
#line 11565 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("setof"),(yyvsp[-1].str),mm_strdup("array"));
}
#line 52821 "preproc.c"
break;
case 1897: /* opt_array_bounds: opt_array_bounds '[' ']' */
#line 11573 "preproc.y"
{
(yyval.index).index1 = (yyvsp[-2].index).index1;
(yyval.index).index2 = (yyvsp[-2].index).index2;
if (strcmp((yyval.index).index1, "-1") == 0)
(yyval.index).index1 = mm_strdup("0");
else if (strcmp((yyvsp[-2].index).index2, "-1") == 0)
(yyval.index).index2 = mm_strdup("0");
(yyval.index).str = cat_str(2, (yyvsp[-2].index).str, mm_strdup("[]"));
}
#line 52835 "preproc.c"
break;
case 1898: /* opt_array_bounds: opt_array_bounds '[' Iresult ']' */
#line 11583 "preproc.y"
{
(yyval.index).index1 = (yyvsp[-3].index).index1;
(yyval.index).index2 = (yyvsp[-3].index).index2;
if (strcmp((yyvsp[-3].index).index1, "-1") == 0)
(yyval.index).index1 = mm_strdup((yyvsp[-1].str));
else if (strcmp((yyvsp[-3].index).index2, "-1") == 0)
(yyval.index).index2 = mm_strdup((yyvsp[-1].str));
(yyval.index).str = cat_str(4, (yyvsp[-3].index).str, mm_strdup("["), (yyvsp[-1].str), mm_strdup("]"));
}
#line 52849 "preproc.c"
break;
case 1899: /* opt_array_bounds: %empty */
#line 11593 "preproc.y"
{
(yyval.index).index1 = mm_strdup("-1");
(yyval.index).index2 = mm_strdup("-1");
(yyval.index).str= EMPTY;
}
#line 52859 "preproc.c"
break;
case 1900: /* SimpleTypename: GenericType */
#line 11603 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52867 "preproc.c"
break;
case 1901: /* SimpleTypename: Numeric */
#line 11607 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52875 "preproc.c"
break;
case 1902: /* SimpleTypename: Bit */
#line 11611 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52883 "preproc.c"
break;
case 1903: /* SimpleTypename: Character */
#line 11615 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52891 "preproc.c"
break;
case 1904: /* SimpleTypename: ConstDatetime */
#line 11619 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52899 "preproc.c"
break;
case 1905: /* SimpleTypename: ConstInterval opt_interval */
#line 11623 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52907 "preproc.c"
break;
case 1906: /* SimpleTypename: ConstInterval '(' Iconst ')' */
#line 11627 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52915 "preproc.c"
break;
case 1907: /* ConstTypename: Numeric */
#line 11635 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52923 "preproc.c"
break;
case 1908: /* ConstTypename: ConstBit */
#line 11639 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52931 "preproc.c"
break;
case 1909: /* ConstTypename: ConstCharacter */
#line 11643 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52939 "preproc.c"
break;
case 1910: /* ConstTypename: ConstDatetime */
#line 11647 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 52947 "preproc.c"
break;
case 1911: /* GenericType: type_function_name opt_type_modifiers */
#line 11655 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52955 "preproc.c"
break;
case 1912: /* GenericType: type_function_name attrs opt_type_modifiers */
#line 11659 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 52963 "preproc.c"
break;
case 1913: /* opt_type_modifiers: '(' expr_list ')' */
#line 11667 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 52971 "preproc.c"
break;
case 1914: /* opt_type_modifiers: %empty */
#line 11671 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 52978 "preproc.c"
break;
case 1915: /* Numeric: INT_P */
#line 11678 "preproc.y"
{
(yyval.str) = mm_strdup("int");
}
#line 52986 "preproc.c"
break;
case 1916: /* Numeric: INTEGER */
#line 11682 "preproc.y"
{
(yyval.str) = mm_strdup("integer");
}
#line 52994 "preproc.c"
break;
case 1917: /* Numeric: SMALLINT */
#line 11686 "preproc.y"
{
(yyval.str) = mm_strdup("smallint");
}
#line 53002 "preproc.c"
break;
case 1918: /* Numeric: BIGINT */
#line 11690 "preproc.y"
{
(yyval.str) = mm_strdup("bigint");
}
#line 53010 "preproc.c"
break;
case 1919: /* Numeric: REAL */
#line 11694 "preproc.y"
{
(yyval.str) = mm_strdup("real");
}
#line 53018 "preproc.c"
break;
case 1920: /* Numeric: FLOAT_P opt_float */
#line 11698 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("float"),(yyvsp[0].str));
}
#line 53026 "preproc.c"
break;
case 1921: /* Numeric: DOUBLE_P PRECISION */
#line 11702 "preproc.y"
{
(yyval.str) = mm_strdup("double precision");
}
#line 53034 "preproc.c"
break;
case 1922: /* Numeric: DECIMAL_P opt_type_modifiers */
#line 11706 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("decimal"),(yyvsp[0].str));
}
#line 53042 "preproc.c"
break;
case 1923: /* Numeric: DEC opt_type_modifiers */
#line 11710 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("dec"),(yyvsp[0].str));
}
#line 53050 "preproc.c"
break;
case 1924: /* Numeric: NUMERIC opt_type_modifiers */
#line 11714 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("numeric"),(yyvsp[0].str));
}
#line 53058 "preproc.c"
break;
case 1925: /* Numeric: BOOLEAN_P */
#line 11718 "preproc.y"
{
(yyval.str) = mm_strdup("boolean");
}
#line 53066 "preproc.c"
break;
case 1926: /* opt_float: '(' Iconst ')' */
#line 11726 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 53074 "preproc.c"
break;
case 1927: /* opt_float: %empty */
#line 11730 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 53081 "preproc.c"
break;
case 1928: /* Bit: BitWithLength */
#line 11737 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53089 "preproc.c"
break;
case 1929: /* Bit: BitWithoutLength */
#line 11741 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53097 "preproc.c"
break;
case 1930: /* ConstBit: BitWithLength */
#line 11749 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53105 "preproc.c"
break;
case 1931: /* ConstBit: BitWithoutLength */
#line 11753 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53113 "preproc.c"
break;
case 1932: /* BitWithLength: BIT opt_varying '(' expr_list ')' */
#line 11761 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("bit"),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 53121 "preproc.c"
break;
case 1933: /* BitWithoutLength: BIT opt_varying */
#line 11769 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("bit"),(yyvsp[0].str));
}
#line 53129 "preproc.c"
break;
case 1934: /* Character: CharacterWithLength */
#line 11777 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53137 "preproc.c"
break;
case 1935: /* Character: CharacterWithoutLength */
#line 11781 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53145 "preproc.c"
break;
case 1936: /* ConstCharacter: CharacterWithLength */
#line 11789 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53153 "preproc.c"
break;
case 1937: /* ConstCharacter: CharacterWithoutLength */
#line 11793 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53161 "preproc.c"
break;
case 1938: /* CharacterWithLength: character '(' Iconst ')' */
#line 11801 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 53169 "preproc.c"
break;
case 1939: /* CharacterWithoutLength: character */
#line 11809 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53177 "preproc.c"
break;
case 1940: /* character: CHARACTER opt_varying */
#line 11817 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("character"),(yyvsp[0].str));
}
#line 53185 "preproc.c"
break;
case 1941: /* character: CHAR_P opt_varying */
#line 11821 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("char"),(yyvsp[0].str));
}
#line 53193 "preproc.c"
break;
case 1942: /* character: VARCHAR */
#line 11825 "preproc.y"
{
(yyval.str) = mm_strdup("varchar");
}
#line 53201 "preproc.c"
break;
case 1943: /* character: NATIONAL CHARACTER opt_varying */
#line 11829 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("national character"),(yyvsp[0].str));
}
#line 53209 "preproc.c"
break;
case 1944: /* character: NATIONAL CHAR_P opt_varying */
#line 11833 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("national char"),(yyvsp[0].str));
}
#line 53217 "preproc.c"
break;
case 1945: /* character: NCHAR opt_varying */
#line 11837 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("nchar"),(yyvsp[0].str));
}
#line 53225 "preproc.c"
break;
case 1946: /* opt_varying: VARYING */
#line 11845 "preproc.y"
{
(yyval.str) = mm_strdup("varying");
}
#line 53233 "preproc.c"
break;
case 1947: /* opt_varying: %empty */
#line 11849 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 53240 "preproc.c"
break;
case 1948: /* ConstDatetime: TIMESTAMP '(' Iconst ')' opt_timezone */
#line 11856 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("timestamp ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 53248 "preproc.c"
break;
case 1949: /* ConstDatetime: TIMESTAMP opt_timezone */
#line 11860 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("timestamp"),(yyvsp[0].str));
}
#line 53256 "preproc.c"
break;
case 1950: /* ConstDatetime: TIME '(' Iconst ')' opt_timezone */
#line 11864 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("time ("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 53264 "preproc.c"
break;
case 1951: /* ConstDatetime: TIME opt_timezone */
#line 11868 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("time"),(yyvsp[0].str));
}
#line 53272 "preproc.c"
break;
case 1952: /* ConstInterval: INTERVAL */
#line 11876 "preproc.y"
{
(yyval.str) = mm_strdup("interval");
}
#line 53280 "preproc.c"
break;
case 1953: /* opt_timezone: WITH_LA TIME ZONE */
#line 11884 "preproc.y"
{
(yyval.str) = mm_strdup("with time zone");
}
#line 53288 "preproc.c"
break;
case 1954: /* opt_timezone: WITHOUT_LA TIME ZONE */
#line 11888 "preproc.y"
{
(yyval.str) = mm_strdup("without time zone");
}
#line 53296 "preproc.c"
break;
case 1955: /* opt_timezone: %empty */
#line 11892 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 53303 "preproc.c"
break;
case 1956: /* opt_interval: YEAR_P */
#line 11899 "preproc.y"
{
(yyval.str) = mm_strdup("year");
}
#line 53311 "preproc.c"
break;
case 1957: /* opt_interval: MONTH_P */
#line 11903 "preproc.y"
{
(yyval.str) = mm_strdup("month");
}
#line 53319 "preproc.c"
break;
case 1958: /* opt_interval: DAY_P */
#line 11907 "preproc.y"
{
(yyval.str) = mm_strdup("day");
}
#line 53327 "preproc.c"
break;
case 1959: /* opt_interval: HOUR_P */
#line 11911 "preproc.y"
{
(yyval.str) = mm_strdup("hour");
}
#line 53335 "preproc.c"
break;
case 1960: /* opt_interval: MINUTE_P */
#line 11915 "preproc.y"
{
(yyval.str) = mm_strdup("minute");
}
#line 53343 "preproc.c"
break;
case 1961: /* opt_interval: interval_second */
#line 11919 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53351 "preproc.c"
break;
case 1962: /* opt_interval: YEAR_P TO MONTH_P */
#line 11923 "preproc.y"
{
(yyval.str) = mm_strdup("year to month");
}
#line 53359 "preproc.c"
break;
case 1963: /* opt_interval: DAY_P TO HOUR_P */
#line 11927 "preproc.y"
{
(yyval.str) = mm_strdup("day to hour");
}
#line 53367 "preproc.c"
break;
case 1964: /* opt_interval: DAY_P TO MINUTE_P */
#line 11931 "preproc.y"
{
(yyval.str) = mm_strdup("day to minute");
}
#line 53375 "preproc.c"
break;
case 1965: /* opt_interval: DAY_P TO interval_second */
#line 11935 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("day to"),(yyvsp[0].str));
}
#line 53383 "preproc.c"
break;
case 1966: /* opt_interval: HOUR_P TO MINUTE_P */
#line 11939 "preproc.y"
{
(yyval.str) = mm_strdup("hour to minute");
}
#line 53391 "preproc.c"
break;
case 1967: /* opt_interval: HOUR_P TO interval_second */
#line 11943 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("hour to"),(yyvsp[0].str));
}
#line 53399 "preproc.c"
break;
case 1968: /* opt_interval: MINUTE_P TO interval_second */
#line 11947 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("minute to"),(yyvsp[0].str));
}
#line 53407 "preproc.c"
break;
case 1969: /* opt_interval: %empty */
#line 11951 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 53414 "preproc.c"
break;
case 1970: /* interval_second: SECOND_P */
#line 11958 "preproc.y"
{
(yyval.str) = mm_strdup("second");
}
#line 53422 "preproc.c"
break;
case 1971: /* interval_second: SECOND_P '(' Iconst ')' */
#line 11962 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("second ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 53430 "preproc.c"
break;
case 1972: /* a_expr: c_expr */
#line 11970 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53438 "preproc.c"
break;
case 1973: /* a_expr: a_expr TYPECAST Typename */
#line 11974 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("::"),(yyvsp[0].str));
}
#line 53446 "preproc.c"
break;
case 1974: /* a_expr: a_expr COLLATE any_name */
#line 11978 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("collate"),(yyvsp[0].str));
}
#line 53454 "preproc.c"
break;
case 1975: /* a_expr: a_expr AT TIME ZONE a_expr */
#line 11982 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-4].str),mm_strdup("at time zone"),(yyvsp[0].str));
}
#line 53462 "preproc.c"
break;
case 1976: /* a_expr: '+' a_expr */
#line 11986 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("+"),(yyvsp[0].str));
}
#line 53470 "preproc.c"
break;
case 1977: /* a_expr: '-' a_expr */
#line 11990 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("-"),(yyvsp[0].str));
}
#line 53478 "preproc.c"
break;
case 1978: /* a_expr: a_expr '+' a_expr */
#line 11994 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("+"),(yyvsp[0].str));
}
#line 53486 "preproc.c"
break;
case 1979: /* a_expr: a_expr '-' a_expr */
#line 11998 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("-"),(yyvsp[0].str));
}
#line 53494 "preproc.c"
break;
case 1980: /* a_expr: a_expr '*' a_expr */
#line 12002 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("*"),(yyvsp[0].str));
}
#line 53502 "preproc.c"
break;
case 1981: /* a_expr: a_expr '/' a_expr */
#line 12006 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("/"),(yyvsp[0].str));
}
#line 53510 "preproc.c"
break;
case 1982: /* a_expr: a_expr '%' a_expr */
#line 12010 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("%"),(yyvsp[0].str));
}
#line 53518 "preproc.c"
break;
case 1983: /* a_expr: a_expr '^' a_expr */
#line 12014 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("^"),(yyvsp[0].str));
}
#line 53526 "preproc.c"
break;
case 1984: /* a_expr: a_expr '<' a_expr */
#line 12018 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("<"),(yyvsp[0].str));
}
#line 53534 "preproc.c"
break;
case 1985: /* a_expr: a_expr '>' a_expr */
#line 12022 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(">"),(yyvsp[0].str));
}
#line 53542 "preproc.c"
break;
case 1986: /* a_expr: a_expr '=' a_expr */
#line 12026 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 53550 "preproc.c"
break;
case 1987: /* a_expr: a_expr LESS_EQUALS a_expr */
#line 12030 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("<="),(yyvsp[0].str));
}
#line 53558 "preproc.c"
break;
case 1988: /* a_expr: a_expr GREATER_EQUALS a_expr */
#line 12034 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(">="),(yyvsp[0].str));
}
#line 53566 "preproc.c"
break;
case 1989: /* a_expr: a_expr NOT_EQUALS a_expr */
#line 12038 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("<>"),(yyvsp[0].str));
}
#line 53574 "preproc.c"
break;
case 1990: /* a_expr: a_expr qual_Op a_expr */
#line 12042 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 53582 "preproc.c"
break;
case 1991: /* a_expr: qual_Op a_expr */
#line 12046 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 53590 "preproc.c"
break;
case 1992: /* a_expr: a_expr AND a_expr */
#line 12050 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 53598 "preproc.c"
break;
case 1993: /* a_expr: a_expr OR a_expr */
#line 12054 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("or"),(yyvsp[0].str));
}
#line 53606 "preproc.c"
break;
case 1994: /* a_expr: NOT a_expr */
#line 12058 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("not"),(yyvsp[0].str));
}
#line 53614 "preproc.c"
break;
case 1995: /* a_expr: NOT_LA a_expr */
#line 12062 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("not"),(yyvsp[0].str));
}
#line 53622 "preproc.c"
break;
case 1996: /* a_expr: a_expr LIKE a_expr */
#line 12066 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("like"),(yyvsp[0].str));
}
#line 53630 "preproc.c"
break;
case 1997: /* a_expr: a_expr LIKE a_expr ESCAPE a_expr */
#line 12070 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("like"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 53638 "preproc.c"
break;
case 1998: /* a_expr: a_expr NOT_LA LIKE a_expr */
#line 12074 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("not like"),(yyvsp[0].str));
}
#line 53646 "preproc.c"
break;
case 1999: /* a_expr: a_expr NOT_LA LIKE a_expr ESCAPE a_expr */
#line 12078 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("not like"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 53654 "preproc.c"
break;
case 2000: /* a_expr: a_expr ILIKE a_expr */
#line 12082 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("ilike"),(yyvsp[0].str));
}
#line 53662 "preproc.c"
break;
case 2001: /* a_expr: a_expr ILIKE a_expr ESCAPE a_expr */
#line 12086 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("ilike"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 53670 "preproc.c"
break;
case 2002: /* a_expr: a_expr NOT_LA ILIKE a_expr */
#line 12090 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("not ilike"),(yyvsp[0].str));
}
#line 53678 "preproc.c"
break;
case 2003: /* a_expr: a_expr NOT_LA ILIKE a_expr ESCAPE a_expr */
#line 12094 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("not ilike"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 53686 "preproc.c"
break;
case 2004: /* a_expr: a_expr SIMILAR TO a_expr */
#line 12098 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("similar to"),(yyvsp[0].str));
}
#line 53694 "preproc.c"
break;
case 2005: /* a_expr: a_expr SIMILAR TO a_expr ESCAPE a_expr */
#line 12102 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("similar to"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 53702 "preproc.c"
break;
case 2006: /* a_expr: a_expr NOT_LA SIMILAR TO a_expr */
#line 12106 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-4].str),mm_strdup("not similar to"),(yyvsp[0].str));
}
#line 53710 "preproc.c"
break;
case 2007: /* a_expr: a_expr NOT_LA SIMILAR TO a_expr ESCAPE a_expr */
#line 12110 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-6].str),mm_strdup("not similar to"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 53718 "preproc.c"
break;
case 2008: /* a_expr: a_expr IS NULL_P */
#line 12114 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is null"));
}
#line 53726 "preproc.c"
break;
case 2009: /* a_expr: a_expr ISNULL */
#line 12118 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("isnull"));
}
#line 53734 "preproc.c"
break;
case 2010: /* a_expr: a_expr IS NOT NULL_P */
#line 12122 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not null"));
}
#line 53742 "preproc.c"
break;
case 2011: /* a_expr: a_expr NOTNULL */
#line 12126 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("notnull"));
}
#line 53750 "preproc.c"
break;
case 2012: /* a_expr: row OVERLAPS row */
#line 12130 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("overlaps"),(yyvsp[0].str));
}
#line 53758 "preproc.c"
break;
case 2013: /* a_expr: a_expr IS TRUE_P */
#line 12134 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is true"));
}
#line 53766 "preproc.c"
break;
case 2014: /* a_expr: a_expr IS NOT TRUE_P */
#line 12138 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not true"));
}
#line 53774 "preproc.c"
break;
case 2015: /* a_expr: a_expr IS FALSE_P */
#line 12142 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is false"));
}
#line 53782 "preproc.c"
break;
case 2016: /* a_expr: a_expr IS NOT FALSE_P */
#line 12146 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not false"));
}
#line 53790 "preproc.c"
break;
case 2017: /* a_expr: a_expr IS UNKNOWN */
#line 12150 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is unknown"));
}
#line 53798 "preproc.c"
break;
case 2018: /* a_expr: a_expr IS NOT UNKNOWN */
#line 12154 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not unknown"));
}
#line 53806 "preproc.c"
break;
case 2019: /* a_expr: a_expr IS DISTINCT FROM a_expr */
#line 12158 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-4].str),mm_strdup("is distinct from"),(yyvsp[0].str));
}
#line 53814 "preproc.c"
break;
case 2020: /* a_expr: a_expr IS NOT DISTINCT FROM a_expr */
#line 12162 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-5].str),mm_strdup("is not distinct from"),(yyvsp[0].str));
}
#line 53822 "preproc.c"
break;
case 2021: /* a_expr: a_expr BETWEEN opt_asymmetric b_expr AND a_expr */
#line 12166 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-5].str),mm_strdup("between"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 53830 "preproc.c"
break;
case 2022: /* a_expr: a_expr NOT_LA BETWEEN opt_asymmetric b_expr AND a_expr */
#line 12170 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-6].str),mm_strdup("not between"),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 53838 "preproc.c"
break;
case 2023: /* a_expr: a_expr BETWEEN SYMMETRIC b_expr AND a_expr */
#line 12174 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("between symmetric"),(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 53846 "preproc.c"
break;
case 2024: /* a_expr: a_expr NOT_LA BETWEEN SYMMETRIC b_expr AND a_expr */
#line 12178 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-6].str),mm_strdup("not between symmetric"),(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 53854 "preproc.c"
break;
case 2025: /* a_expr: a_expr IN_P in_expr */
#line 12182 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("in"),(yyvsp[0].str));
}
#line 53862 "preproc.c"
break;
case 2026: /* a_expr: a_expr NOT_LA IN_P in_expr */
#line 12186 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-3].str),mm_strdup("not in"),(yyvsp[0].str));
}
#line 53870 "preproc.c"
break;
case 2027: /* a_expr: a_expr subquery_Op sub_type select_with_parens */
#line 12190 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 53878 "preproc.c"
break;
case 2028: /* a_expr: a_expr subquery_Op sub_type '(' a_expr ')' */
#line 12194 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-5].str),(yyvsp[-4].str),(yyvsp[-3].str),mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 53886 "preproc.c"
break;
case 2029: /* a_expr: UNIQUE opt_unique_null_treatment select_with_parens */
#line 12198 "preproc.y"
{
mmerror(PARSE_ERROR, ET_WARNING, "unsupported feature will be passed to server");
(yyval.str) = cat_str(3,mm_strdup("unique"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 53895 "preproc.c"
break;
case 2030: /* a_expr: a_expr IS DOCUMENT_P */
#line 12203 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is document"));
}
#line 53903 "preproc.c"
break;
case 2031: /* a_expr: a_expr IS NOT DOCUMENT_P */
#line 12207 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not document"));
}
#line 53911 "preproc.c"
break;
case 2032: /* a_expr: a_expr IS NORMALIZED */
#line 12211 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is normalized"));
}
#line 53919 "preproc.c"
break;
case 2033: /* a_expr: a_expr IS unicode_normal_form NORMALIZED */
#line 12215 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("is"),(yyvsp[-1].str),mm_strdup("normalized"));
}
#line 53927 "preproc.c"
break;
case 2034: /* a_expr: a_expr IS NOT NORMALIZED */
#line 12219 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not normalized"));
}
#line 53935 "preproc.c"
break;
case 2035: /* a_expr: a_expr IS NOT unicode_normal_form NORMALIZED */
#line 12223 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-4].str),mm_strdup("is not"),(yyvsp[-1].str),mm_strdup("normalized"));
}
#line 53943 "preproc.c"
break;
case 2036: /* a_expr: a_expr IS json_predicate_type_constraint json_key_uniqueness_constraint_opt */
#line 12227 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),mm_strdup("is"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 53951 "preproc.c"
break;
case 2037: /* a_expr: a_expr IS NOT json_predicate_type_constraint json_key_uniqueness_constraint_opt */
#line 12231 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-4].str),mm_strdup("is not"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 53959 "preproc.c"
break;
case 2038: /* a_expr: DEFAULT */
#line 12235 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 53967 "preproc.c"
break;
case 2039: /* b_expr: c_expr */
#line 12243 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 53975 "preproc.c"
break;
case 2040: /* b_expr: b_expr TYPECAST Typename */
#line 12247 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("::"),(yyvsp[0].str));
}
#line 53983 "preproc.c"
break;
case 2041: /* b_expr: '+' b_expr */
#line 12251 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("+"),(yyvsp[0].str));
}
#line 53991 "preproc.c"
break;
case 2042: /* b_expr: '-' b_expr */
#line 12255 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("-"),(yyvsp[0].str));
}
#line 53999 "preproc.c"
break;
case 2043: /* b_expr: b_expr '+' b_expr */
#line 12259 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("+"),(yyvsp[0].str));
}
#line 54007 "preproc.c"
break;
case 2044: /* b_expr: b_expr '-' b_expr */
#line 12263 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("-"),(yyvsp[0].str));
}
#line 54015 "preproc.c"
break;
case 2045: /* b_expr: b_expr '*' b_expr */
#line 12267 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("*"),(yyvsp[0].str));
}
#line 54023 "preproc.c"
break;
case 2046: /* b_expr: b_expr '/' b_expr */
#line 12271 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("/"),(yyvsp[0].str));
}
#line 54031 "preproc.c"
break;
case 2047: /* b_expr: b_expr '%' b_expr */
#line 12275 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("%"),(yyvsp[0].str));
}
#line 54039 "preproc.c"
break;
case 2048: /* b_expr: b_expr '^' b_expr */
#line 12279 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("^"),(yyvsp[0].str));
}
#line 54047 "preproc.c"
break;
case 2049: /* b_expr: b_expr '<' b_expr */
#line 12283 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("<"),(yyvsp[0].str));
}
#line 54055 "preproc.c"
break;
case 2050: /* b_expr: b_expr '>' b_expr */
#line 12287 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(">"),(yyvsp[0].str));
}
#line 54063 "preproc.c"
break;
case 2051: /* b_expr: b_expr '=' b_expr */
#line 12291 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("="),(yyvsp[0].str));
}
#line 54071 "preproc.c"
break;
case 2052: /* b_expr: b_expr LESS_EQUALS b_expr */
#line 12295 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("<="),(yyvsp[0].str));
}
#line 54079 "preproc.c"
break;
case 2053: /* b_expr: b_expr GREATER_EQUALS b_expr */
#line 12299 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(">="),(yyvsp[0].str));
}
#line 54087 "preproc.c"
break;
case 2054: /* b_expr: b_expr NOT_EQUALS b_expr */
#line 12303 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("<>"),(yyvsp[0].str));
}
#line 54095 "preproc.c"
break;
case 2055: /* b_expr: b_expr qual_Op b_expr */
#line 12307 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54103 "preproc.c"
break;
case 2056: /* b_expr: qual_Op b_expr */
#line 12311 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54111 "preproc.c"
break;
case 2057: /* b_expr: b_expr IS DISTINCT FROM b_expr */
#line 12315 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-4].str),mm_strdup("is distinct from"),(yyvsp[0].str));
}
#line 54119 "preproc.c"
break;
case 2058: /* b_expr: b_expr IS NOT DISTINCT FROM b_expr */
#line 12319 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-5].str),mm_strdup("is not distinct from"),(yyvsp[0].str));
}
#line 54127 "preproc.c"
break;
case 2059: /* b_expr: b_expr IS DOCUMENT_P */
#line 12323 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("is document"));
}
#line 54135 "preproc.c"
break;
case 2060: /* b_expr: b_expr IS NOT DOCUMENT_P */
#line 12327 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("is not document"));
}
#line 54143 "preproc.c"
break;
case 2061: /* c_expr: columnref */
#line 12335 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54151 "preproc.c"
break;
case 2062: /* c_expr: AexprConst */
#line 12339 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54159 "preproc.c"
break;
case 2063: /* c_expr: ecpg_param opt_indirection */
#line 12343 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54167 "preproc.c"
break;
case 2064: /* c_expr: '(' a_expr ')' opt_indirection */
#line 12347 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 54175 "preproc.c"
break;
case 2065: /* c_expr: case_expr */
#line 12351 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54183 "preproc.c"
break;
case 2066: /* c_expr: func_expr */
#line 12355 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54191 "preproc.c"
break;
case 2067: /* c_expr: select_with_parens */
#line 12359 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54199 "preproc.c"
break;
case 2068: /* c_expr: select_with_parens indirection */
#line 12363 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54207 "preproc.c"
break;
case 2069: /* c_expr: EXISTS select_with_parens */
#line 12367 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("exists"),(yyvsp[0].str));
}
#line 54215 "preproc.c"
break;
case 2070: /* c_expr: ARRAY select_with_parens */
#line 12371 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("array"),(yyvsp[0].str));
}
#line 54223 "preproc.c"
break;
case 2071: /* c_expr: ARRAY array_expr */
#line 12375 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("array"),(yyvsp[0].str));
}
#line 54231 "preproc.c"
break;
case 2072: /* c_expr: explicit_row */
#line 12379 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54239 "preproc.c"
break;
case 2073: /* c_expr: implicit_row */
#line 12383 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54247 "preproc.c"
break;
case 2074: /* c_expr: GROUPING '(' expr_list ')' */
#line 12387 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("grouping ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54255 "preproc.c"
break;
case 2075: /* func_application: func_name '(' ')' */
#line 12395 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-2].str),mm_strdup("( )"));
}
#line 54263 "preproc.c"
break;
case 2076: /* func_application: func_name '(' func_arg_list opt_sort_clause ')' */
#line 12399 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("("),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54271 "preproc.c"
break;
case 2077: /* func_application: func_name '(' VARIADIC func_arg_expr opt_sort_clause ')' */
#line 12403 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("( variadic"),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54279 "preproc.c"
break;
case 2078: /* func_application: func_name '(' func_arg_list ',' VARIADIC func_arg_expr opt_sort_clause ')' */
#line 12407 "preproc.y"
{
(yyval.str) = cat_str(7,(yyvsp[-7].str),mm_strdup("("),(yyvsp[-5].str),mm_strdup(", variadic"),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54287 "preproc.c"
break;
case 2079: /* func_application: func_name '(' ALL func_arg_list opt_sort_clause ')' */
#line 12411 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("( all"),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54295 "preproc.c"
break;
case 2080: /* func_application: func_name '(' DISTINCT func_arg_list opt_sort_clause ')' */
#line 12415 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-5].str),mm_strdup("( distinct"),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54303 "preproc.c"
break;
case 2081: /* func_application: func_name '(' '*' ')' */
#line 12419 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-3].str),mm_strdup("( * )"));
}
#line 54311 "preproc.c"
break;
case 2082: /* func_expr: func_application within_group_clause filter_clause over_clause */
#line 12427 "preproc.y"
{
(yyval.str) = cat_str(4,(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54319 "preproc.c"
break;
case 2083: /* func_expr: json_aggregate_func filter_clause over_clause */
#line 12431 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54327 "preproc.c"
break;
case 2084: /* func_expr: func_expr_common_subexpr */
#line 12435 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54335 "preproc.c"
break;
case 2085: /* func_expr_windowless: func_application */
#line 12443 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54343 "preproc.c"
break;
case 2086: /* func_expr_windowless: func_expr_common_subexpr */
#line 12447 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54351 "preproc.c"
break;
case 2087: /* func_expr_windowless: json_aggregate_func */
#line 12451 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54359 "preproc.c"
break;
case 2088: /* func_expr_common_subexpr: COLLATION FOR '(' a_expr ')' */
#line 12459 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("collation for ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54367 "preproc.c"
break;
case 2089: /* func_expr_common_subexpr: CURRENT_DATE */
#line 12463 "preproc.y"
{
(yyval.str) = mm_strdup("current_date");
}
#line 54375 "preproc.c"
break;
case 2090: /* func_expr_common_subexpr: CURRENT_TIME */
#line 12467 "preproc.y"
{
(yyval.str) = mm_strdup("current_time");
}
#line 54383 "preproc.c"
break;
case 2091: /* func_expr_common_subexpr: CURRENT_TIME '(' Iconst ')' */
#line 12471 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("current_time ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54391 "preproc.c"
break;
case 2092: /* func_expr_common_subexpr: CURRENT_TIMESTAMP */
#line 12475 "preproc.y"
{
(yyval.str) = mm_strdup("current_timestamp");
}
#line 54399 "preproc.c"
break;
case 2093: /* func_expr_common_subexpr: CURRENT_TIMESTAMP '(' Iconst ')' */
#line 12479 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("current_timestamp ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54407 "preproc.c"
break;
case 2094: /* func_expr_common_subexpr: LOCALTIME */
#line 12483 "preproc.y"
{
(yyval.str) = mm_strdup("localtime");
}
#line 54415 "preproc.c"
break;
case 2095: /* func_expr_common_subexpr: LOCALTIME '(' Iconst ')' */
#line 12487 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("localtime ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54423 "preproc.c"
break;
case 2096: /* func_expr_common_subexpr: LOCALTIMESTAMP */
#line 12491 "preproc.y"
{
(yyval.str) = mm_strdup("localtimestamp");
}
#line 54431 "preproc.c"
break;
case 2097: /* func_expr_common_subexpr: LOCALTIMESTAMP '(' Iconst ')' */
#line 12495 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("localtimestamp ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54439 "preproc.c"
break;
case 2098: /* func_expr_common_subexpr: CURRENT_ROLE */
#line 12499 "preproc.y"
{
(yyval.str) = mm_strdup("current_role");
}
#line 54447 "preproc.c"
break;
case 2099: /* func_expr_common_subexpr: CURRENT_USER */
#line 12503 "preproc.y"
{
(yyval.str) = mm_strdup("current_user");
}
#line 54455 "preproc.c"
break;
case 2100: /* func_expr_common_subexpr: SESSION_USER */
#line 12507 "preproc.y"
{
(yyval.str) = mm_strdup("session_user");
}
#line 54463 "preproc.c"
break;
case 2101: /* func_expr_common_subexpr: SYSTEM_USER */
#line 12511 "preproc.y"
{
(yyval.str) = mm_strdup("system_user");
}
#line 54471 "preproc.c"
break;
case 2102: /* func_expr_common_subexpr: USER */
#line 12515 "preproc.y"
{
(yyval.str) = mm_strdup("user");
}
#line 54479 "preproc.c"
break;
case 2103: /* func_expr_common_subexpr: CURRENT_CATALOG */
#line 12519 "preproc.y"
{
(yyval.str) = mm_strdup("current_catalog");
}
#line 54487 "preproc.c"
break;
case 2104: /* func_expr_common_subexpr: CURRENT_SCHEMA */
#line 12523 "preproc.y"
{
(yyval.str) = mm_strdup("current_schema");
}
#line 54495 "preproc.c"
break;
case 2105: /* func_expr_common_subexpr: CAST '(' a_expr AS Typename ')' */
#line 12527 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("cast ("),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54503 "preproc.c"
break;
case 2106: /* func_expr_common_subexpr: EXTRACT '(' extract_list ')' */
#line 12531 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("extract ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54511 "preproc.c"
break;
case 2107: /* func_expr_common_subexpr: NORMALIZE '(' a_expr ')' */
#line 12535 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("normalize ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54519 "preproc.c"
break;
case 2108: /* func_expr_common_subexpr: NORMALIZE '(' a_expr ',' unicode_normal_form ')' */
#line 12539 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("normalize ("),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54527 "preproc.c"
break;
case 2109: /* func_expr_common_subexpr: OVERLAY '(' overlay_list ')' */
#line 12543 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("overlay ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54535 "preproc.c"
break;
case 2110: /* func_expr_common_subexpr: OVERLAY '(' func_arg_list_opt ')' */
#line 12547 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("overlay ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54543 "preproc.c"
break;
case 2111: /* func_expr_common_subexpr: POSITION '(' position_list ')' */
#line 12551 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("position ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54551 "preproc.c"
break;
case 2112: /* func_expr_common_subexpr: SUBSTRING '(' substr_list ')' */
#line 12555 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("substring ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54559 "preproc.c"
break;
case 2113: /* func_expr_common_subexpr: SUBSTRING '(' func_arg_list_opt ')' */
#line 12559 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("substring ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54567 "preproc.c"
break;
case 2114: /* func_expr_common_subexpr: TREAT '(' a_expr AS Typename ')' */
#line 12563 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("treat ("),(yyvsp[-3].str),mm_strdup("as"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54575 "preproc.c"
break;
case 2115: /* func_expr_common_subexpr: TRIM '(' BOTH trim_list ')' */
#line 12567 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("trim ( both"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54583 "preproc.c"
break;
case 2116: /* func_expr_common_subexpr: TRIM '(' LEADING trim_list ')' */
#line 12571 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("trim ( leading"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54591 "preproc.c"
break;
case 2117: /* func_expr_common_subexpr: TRIM '(' TRAILING trim_list ')' */
#line 12575 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("trim ( trailing"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54599 "preproc.c"
break;
case 2118: /* func_expr_common_subexpr: TRIM '(' trim_list ')' */
#line 12579 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("trim ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54607 "preproc.c"
break;
case 2119: /* func_expr_common_subexpr: NULLIF '(' a_expr ',' a_expr ')' */
#line 12583 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("nullif ("),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54615 "preproc.c"
break;
case 2120: /* func_expr_common_subexpr: COALESCE '(' expr_list ')' */
#line 12587 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("coalesce ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54623 "preproc.c"
break;
case 2121: /* func_expr_common_subexpr: GREATEST '(' expr_list ')' */
#line 12591 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("greatest ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54631 "preproc.c"
break;
case 2122: /* func_expr_common_subexpr: LEAST '(' expr_list ')' */
#line 12595 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("least ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54639 "preproc.c"
break;
case 2123: /* func_expr_common_subexpr: XMLCONCAT '(' expr_list ')' */
#line 12599 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("xmlconcat ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54647 "preproc.c"
break;
case 2124: /* func_expr_common_subexpr: XMLELEMENT '(' NAME_P ColLabel ')' */
#line 12603 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("xmlelement ( name"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54655 "preproc.c"
break;
case 2125: /* func_expr_common_subexpr: XMLELEMENT '(' NAME_P ColLabel ',' xml_attributes ')' */
#line 12607 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("xmlelement ( name"),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54663 "preproc.c"
break;
case 2126: /* func_expr_common_subexpr: XMLELEMENT '(' NAME_P ColLabel ',' expr_list ')' */
#line 12611 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("xmlelement ( name"),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54671 "preproc.c"
break;
case 2127: /* func_expr_common_subexpr: XMLELEMENT '(' NAME_P ColLabel ',' xml_attributes ',' expr_list ')' */
#line 12615 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("xmlelement ( name"),(yyvsp[-5].str),mm_strdup(","),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54679 "preproc.c"
break;
case 2128: /* func_expr_common_subexpr: XMLEXISTS '(' c_expr xmlexists_argument ')' */
#line 12619 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("xmlexists ("),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54687 "preproc.c"
break;
case 2129: /* func_expr_common_subexpr: XMLFOREST '(' xml_attribute_list ')' */
#line 12623 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("xmlforest ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54695 "preproc.c"
break;
case 2130: /* func_expr_common_subexpr: XMLPARSE '(' document_or_content a_expr xml_whitespace_option ')' */
#line 12627 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("xmlparse ("),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54703 "preproc.c"
break;
case 2131: /* func_expr_common_subexpr: XMLPI '(' NAME_P ColLabel ')' */
#line 12631 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("xmlpi ( name"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54711 "preproc.c"
break;
case 2132: /* func_expr_common_subexpr: XMLPI '(' NAME_P ColLabel ',' a_expr ')' */
#line 12635 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("xmlpi ( name"),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54719 "preproc.c"
break;
case 2133: /* func_expr_common_subexpr: XMLROOT '(' a_expr ',' xml_root_version opt_xml_root_standalone ')' */
#line 12639 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("xmlroot ("),(yyvsp[-4].str),mm_strdup(","),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54727 "preproc.c"
break;
case 2134: /* func_expr_common_subexpr: XMLSERIALIZE '(' document_or_content a_expr AS SimpleTypename xml_indent_option ')' */
#line 12643 "preproc.y"
{
(yyval.str) = cat_str(7,mm_strdup("xmlserialize ("),(yyvsp[-5].str),(yyvsp[-4].str),mm_strdup("as"),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54735 "preproc.c"
break;
case 2135: /* func_expr_common_subexpr: JSON_OBJECT '(' func_arg_list ')' */
#line 12647 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("json_object ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54743 "preproc.c"
break;
case 2136: /* func_expr_common_subexpr: JSON_OBJECT '(' json_name_and_value_list json_object_constructor_null_clause_opt json_key_uniqueness_constraint_opt json_output_clause_opt ')' */
#line 12651 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("json_object ("),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54751 "preproc.c"
break;
case 2137: /* func_expr_common_subexpr: JSON_OBJECT '(' json_output_clause_opt ')' */
#line 12655 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("json_object ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54759 "preproc.c"
break;
case 2138: /* func_expr_common_subexpr: JSON_ARRAY '(' json_value_expr_list json_array_constructor_null_clause_opt json_output_clause_opt ')' */
#line 12659 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("json_array ("),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54767 "preproc.c"
break;
case 2139: /* func_expr_common_subexpr: JSON_ARRAY '(' select_no_parens json_format_clause_opt json_output_clause_opt ')' */
#line 12663 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("json_array ("),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54775 "preproc.c"
break;
case 2140: /* func_expr_common_subexpr: JSON_ARRAY '(' json_output_clause_opt ')' */
#line 12667 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("json_array ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54783 "preproc.c"
break;
case 2141: /* xml_root_version: VERSION_P a_expr */
#line 12675 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("version"),(yyvsp[0].str));
}
#line 54791 "preproc.c"
break;
case 2142: /* xml_root_version: VERSION_P NO VALUE_P */
#line 12679 "preproc.y"
{
(yyval.str) = mm_strdup("version no value");
}
#line 54799 "preproc.c"
break;
case 2143: /* opt_xml_root_standalone: ',' STANDALONE_P YES_P */
#line 12687 "preproc.y"
{
(yyval.str) = mm_strdup(", standalone yes");
}
#line 54807 "preproc.c"
break;
case 2144: /* opt_xml_root_standalone: ',' STANDALONE_P NO */
#line 12691 "preproc.y"
{
(yyval.str) = mm_strdup(", standalone no");
}
#line 54815 "preproc.c"
break;
case 2145: /* opt_xml_root_standalone: ',' STANDALONE_P NO VALUE_P */
#line 12695 "preproc.y"
{
(yyval.str) = mm_strdup(", standalone no value");
}
#line 54823 "preproc.c"
break;
case 2146: /* opt_xml_root_standalone: %empty */
#line 12699 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 54830 "preproc.c"
break;
case 2147: /* xml_attributes: XMLATTRIBUTES '(' xml_attribute_list ')' */
#line 12706 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("xmlattributes ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54838 "preproc.c"
break;
case 2148: /* xml_attribute_list: xml_attribute_el */
#line 12714 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54846 "preproc.c"
break;
case 2149: /* xml_attribute_list: xml_attribute_list ',' xml_attribute_el */
#line 12718 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 54854 "preproc.c"
break;
case 2150: /* xml_attribute_el: a_expr AS ColLabel */
#line 12726 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 54862 "preproc.c"
break;
case 2151: /* xml_attribute_el: a_expr */
#line 12730 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 54870 "preproc.c"
break;
case 2152: /* document_or_content: DOCUMENT_P */
#line 12738 "preproc.y"
{
(yyval.str) = mm_strdup("document");
}
#line 54878 "preproc.c"
break;
case 2153: /* document_or_content: CONTENT_P */
#line 12742 "preproc.y"
{
(yyval.str) = mm_strdup("content");
}
#line 54886 "preproc.c"
break;
case 2154: /* xml_indent_option: INDENT */
#line 12750 "preproc.y"
{
(yyval.str) = mm_strdup("indent");
}
#line 54894 "preproc.c"
break;
case 2155: /* xml_indent_option: NO INDENT */
#line 12754 "preproc.y"
{
(yyval.str) = mm_strdup("no indent");
}
#line 54902 "preproc.c"
break;
case 2156: /* xml_indent_option: %empty */
#line 12758 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 54909 "preproc.c"
break;
case 2157: /* xml_whitespace_option: PRESERVE WHITESPACE_P */
#line 12765 "preproc.y"
{
(yyval.str) = mm_strdup("preserve whitespace");
}
#line 54917 "preproc.c"
break;
case 2158: /* xml_whitespace_option: STRIP_P WHITESPACE_P */
#line 12769 "preproc.y"
{
(yyval.str) = mm_strdup("strip whitespace");
}
#line 54925 "preproc.c"
break;
case 2159: /* xml_whitespace_option: %empty */
#line 12773 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 54932 "preproc.c"
break;
case 2160: /* xmlexists_argument: PASSING c_expr */
#line 12780 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("passing"),(yyvsp[0].str));
}
#line 54940 "preproc.c"
break;
case 2161: /* xmlexists_argument: PASSING c_expr xml_passing_mech */
#line 12784 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("passing"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54948 "preproc.c"
break;
case 2162: /* xmlexists_argument: PASSING xml_passing_mech c_expr */
#line 12788 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("passing"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54956 "preproc.c"
break;
case 2163: /* xmlexists_argument: PASSING xml_passing_mech c_expr xml_passing_mech */
#line 12792 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("passing"),(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 54964 "preproc.c"
break;
case 2164: /* xml_passing_mech: BY REF_P */
#line 12800 "preproc.y"
{
(yyval.str) = mm_strdup("by ref");
}
#line 54972 "preproc.c"
break;
case 2165: /* xml_passing_mech: BY VALUE_P */
#line 12804 "preproc.y"
{
(yyval.str) = mm_strdup("by value");
}
#line 54980 "preproc.c"
break;
case 2166: /* within_group_clause: WITHIN GROUP_P '(' sort_clause ')' */
#line 12812 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("within group ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 54988 "preproc.c"
break;
case 2167: /* within_group_clause: %empty */
#line 12816 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 54995 "preproc.c"
break;
case 2168: /* filter_clause: FILTER '(' WHERE a_expr ')' */
#line 12823 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("filter ( where"),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55003 "preproc.c"
break;
case 2169: /* filter_clause: %empty */
#line 12827 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55010 "preproc.c"
break;
case 2170: /* window_clause: WINDOW window_definition_list */
#line 12834 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("window"),(yyvsp[0].str));
}
#line 55018 "preproc.c"
break;
case 2171: /* window_clause: %empty */
#line 12838 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55025 "preproc.c"
break;
case 2172: /* window_definition_list: window_definition */
#line 12845 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55033 "preproc.c"
break;
case 2173: /* window_definition_list: window_definition_list ',' window_definition */
#line 12849 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 55041 "preproc.c"
break;
case 2174: /* window_definition: ColId AS window_specification */
#line 12857 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 55049 "preproc.c"
break;
case 2175: /* over_clause: OVER window_specification */
#line 12865 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("over"),(yyvsp[0].str));
}
#line 55057 "preproc.c"
break;
case 2176: /* over_clause: OVER ColId */
#line 12869 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("over"),(yyvsp[0].str));
}
#line 55065 "preproc.c"
break;
case 2177: /* over_clause: %empty */
#line 12873 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55072 "preproc.c"
break;
case 2178: /* window_specification: '(' opt_existing_window_name opt_partition_clause opt_sort_clause opt_frame_clause ')' */
#line 12880 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("("),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55080 "preproc.c"
break;
case 2179: /* opt_existing_window_name: ColId */
#line 12888 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55088 "preproc.c"
break;
case 2180: /* opt_existing_window_name: %empty */
#line 12892 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55095 "preproc.c"
break;
case 2181: /* opt_partition_clause: PARTITION BY expr_list */
#line 12899 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("partition by"),(yyvsp[0].str));
}
#line 55103 "preproc.c"
break;
case 2182: /* opt_partition_clause: %empty */
#line 12903 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55110 "preproc.c"
break;
case 2183: /* opt_frame_clause: RANGE frame_extent opt_window_exclusion_clause */
#line 12910 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("range"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55118 "preproc.c"
break;
case 2184: /* opt_frame_clause: ROWS frame_extent opt_window_exclusion_clause */
#line 12914 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("rows"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55126 "preproc.c"
break;
case 2185: /* opt_frame_clause: GROUPS frame_extent opt_window_exclusion_clause */
#line 12918 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("groups"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55134 "preproc.c"
break;
case 2186: /* opt_frame_clause: %empty */
#line 12922 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55141 "preproc.c"
break;
case 2187: /* frame_extent: frame_bound */
#line 12929 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55149 "preproc.c"
break;
case 2188: /* frame_extent: BETWEEN frame_bound AND frame_bound */
#line 12933 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("between"),(yyvsp[-2].str),mm_strdup("and"),(yyvsp[0].str));
}
#line 55157 "preproc.c"
break;
case 2189: /* frame_bound: UNBOUNDED PRECEDING */
#line 12941 "preproc.y"
{
(yyval.str) = mm_strdup("unbounded preceding");
}
#line 55165 "preproc.c"
break;
case 2190: /* frame_bound: UNBOUNDED FOLLOWING */
#line 12945 "preproc.y"
{
(yyval.str) = mm_strdup("unbounded following");
}
#line 55173 "preproc.c"
break;
case 2191: /* frame_bound: CURRENT_P ROW */
#line 12949 "preproc.y"
{
(yyval.str) = mm_strdup("current row");
}
#line 55181 "preproc.c"
break;
case 2192: /* frame_bound: a_expr PRECEDING */
#line 12953 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("preceding"));
}
#line 55189 "preproc.c"
break;
case 2193: /* frame_bound: a_expr FOLLOWING */
#line 12957 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),mm_strdup("following"));
}
#line 55197 "preproc.c"
break;
case 2194: /* opt_window_exclusion_clause: EXCLUDE CURRENT_P ROW */
#line 12965 "preproc.y"
{
(yyval.str) = mm_strdup("exclude current row");
}
#line 55205 "preproc.c"
break;
case 2195: /* opt_window_exclusion_clause: EXCLUDE GROUP_P */
#line 12969 "preproc.y"
{
(yyval.str) = mm_strdup("exclude group");
}
#line 55213 "preproc.c"
break;
case 2196: /* opt_window_exclusion_clause: EXCLUDE TIES */
#line 12973 "preproc.y"
{
(yyval.str) = mm_strdup("exclude ties");
}
#line 55221 "preproc.c"
break;
case 2197: /* opt_window_exclusion_clause: EXCLUDE NO OTHERS */
#line 12977 "preproc.y"
{
(yyval.str) = mm_strdup("exclude no others");
}
#line 55229 "preproc.c"
break;
case 2198: /* opt_window_exclusion_clause: %empty */
#line 12981 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55236 "preproc.c"
break;
case 2199: /* row: ROW '(' expr_list ')' */
#line 12988 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("row ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55244 "preproc.c"
break;
case 2200: /* row: ROW '(' ')' */
#line 12992 "preproc.y"
{
(yyval.str) = mm_strdup("row ( )");
}
#line 55252 "preproc.c"
break;
case 2201: /* row: '(' expr_list ',' a_expr ')' */
#line 12996 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("("),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55260 "preproc.c"
break;
case 2202: /* explicit_row: ROW '(' expr_list ')' */
#line 13004 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("row ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55268 "preproc.c"
break;
case 2203: /* explicit_row: ROW '(' ')' */
#line 13008 "preproc.y"
{
(yyval.str) = mm_strdup("row ( )");
}
#line 55276 "preproc.c"
break;
case 2204: /* implicit_row: '(' expr_list ',' a_expr ')' */
#line 13016 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("("),(yyvsp[-3].str),mm_strdup(","),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55284 "preproc.c"
break;
case 2205: /* sub_type: ANY */
#line 13024 "preproc.y"
{
(yyval.str) = mm_strdup("any");
}
#line 55292 "preproc.c"
break;
case 2206: /* sub_type: SOME */
#line 13028 "preproc.y"
{
(yyval.str) = mm_strdup("some");
}
#line 55300 "preproc.c"
break;
case 2207: /* sub_type: ALL */
#line 13032 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 55308 "preproc.c"
break;
case 2208: /* all_Op: Op */
#line 13040 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55316 "preproc.c"
break;
case 2209: /* all_Op: MathOp */
#line 13044 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55324 "preproc.c"
break;
case 2210: /* MathOp: '+' */
#line 13052 "preproc.y"
{
(yyval.str) = mm_strdup("+");
}
#line 55332 "preproc.c"
break;
case 2211: /* MathOp: '-' */
#line 13056 "preproc.y"
{
(yyval.str) = mm_strdup("-");
}
#line 55340 "preproc.c"
break;
case 2212: /* MathOp: '*' */
#line 13060 "preproc.y"
{
(yyval.str) = mm_strdup("*");
}
#line 55348 "preproc.c"
break;
case 2213: /* MathOp: '/' */
#line 13064 "preproc.y"
{
(yyval.str) = mm_strdup("/");
}
#line 55356 "preproc.c"
break;
case 2214: /* MathOp: '%' */
#line 13068 "preproc.y"
{
(yyval.str) = mm_strdup("%");
}
#line 55364 "preproc.c"
break;
case 2215: /* MathOp: '^' */
#line 13072 "preproc.y"
{
(yyval.str) = mm_strdup("^");
}
#line 55372 "preproc.c"
break;
case 2216: /* MathOp: '<' */
#line 13076 "preproc.y"
{
(yyval.str) = mm_strdup("<");
}
#line 55380 "preproc.c"
break;
case 2217: /* MathOp: '>' */
#line 13080 "preproc.y"
{
(yyval.str) = mm_strdup(">");
}
#line 55388 "preproc.c"
break;
case 2218: /* MathOp: '=' */
#line 13084 "preproc.y"
{
(yyval.str) = mm_strdup("=");
}
#line 55396 "preproc.c"
break;
case 2219: /* MathOp: LESS_EQUALS */
#line 13088 "preproc.y"
{
(yyval.str) = mm_strdup("<=");
}
#line 55404 "preproc.c"
break;
case 2220: /* MathOp: GREATER_EQUALS */
#line 13092 "preproc.y"
{
(yyval.str) = mm_strdup(">=");
}
#line 55412 "preproc.c"
break;
case 2221: /* MathOp: NOT_EQUALS */
#line 13096 "preproc.y"
{
(yyval.str) = mm_strdup("<>");
}
#line 55420 "preproc.c"
break;
case 2222: /* qual_Op: Op */
#line 13104 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55428 "preproc.c"
break;
case 2223: /* qual_Op: OPERATOR '(' any_operator ')' */
#line 13108 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("operator ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55436 "preproc.c"
break;
case 2224: /* qual_all_Op: all_Op */
#line 13116 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55444 "preproc.c"
break;
case 2225: /* qual_all_Op: OPERATOR '(' any_operator ')' */
#line 13120 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("operator ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55452 "preproc.c"
break;
case 2226: /* subquery_Op: all_Op */
#line 13128 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55460 "preproc.c"
break;
case 2227: /* subquery_Op: OPERATOR '(' any_operator ')' */
#line 13132 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("operator ("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55468 "preproc.c"
break;
case 2228: /* subquery_Op: LIKE */
#line 13136 "preproc.y"
{
(yyval.str) = mm_strdup("like");
}
#line 55476 "preproc.c"
break;
case 2229: /* subquery_Op: NOT_LA LIKE */
#line 13140 "preproc.y"
{
(yyval.str) = mm_strdup("not like");
}
#line 55484 "preproc.c"
break;
case 2230: /* subquery_Op: ILIKE */
#line 13144 "preproc.y"
{
(yyval.str) = mm_strdup("ilike");
}
#line 55492 "preproc.c"
break;
case 2231: /* subquery_Op: NOT_LA ILIKE */
#line 13148 "preproc.y"
{
(yyval.str) = mm_strdup("not ilike");
}
#line 55500 "preproc.c"
break;
case 2232: /* expr_list: a_expr */
#line 13156 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55508 "preproc.c"
break;
case 2233: /* expr_list: expr_list ',' a_expr */
#line 13160 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 55516 "preproc.c"
break;
case 2234: /* func_arg_list: func_arg_expr */
#line 13168 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55524 "preproc.c"
break;
case 2235: /* func_arg_list: func_arg_list ',' func_arg_expr */
#line 13172 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 55532 "preproc.c"
break;
case 2236: /* func_arg_expr: a_expr */
#line 13180 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55540 "preproc.c"
break;
case 2237: /* func_arg_expr: param_name COLON_EQUALS a_expr */
#line 13184 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(":="),(yyvsp[0].str));
}
#line 55548 "preproc.c"
break;
case 2238: /* func_arg_expr: param_name EQUALS_GREATER a_expr */
#line 13188 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("=>"),(yyvsp[0].str));
}
#line 55556 "preproc.c"
break;
case 2239: /* func_arg_list_opt: func_arg_list */
#line 13196 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55564 "preproc.c"
break;
case 2240: /* func_arg_list_opt: %empty */
#line 13200 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55571 "preproc.c"
break;
case 2241: /* type_list: Typename */
#line 13207 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55579 "preproc.c"
break;
case 2242: /* type_list: type_list ',' Typename */
#line 13211 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 55587 "preproc.c"
break;
case 2243: /* array_expr: '[' expr_list ']' */
#line 13219 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("["),(yyvsp[-1].str),mm_strdup("]"));
}
#line 55595 "preproc.c"
break;
case 2244: /* array_expr: '[' array_expr_list ']' */
#line 13223 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("["),(yyvsp[-1].str),mm_strdup("]"));
}
#line 55603 "preproc.c"
break;
case 2245: /* array_expr: '[' ']' */
#line 13227 "preproc.y"
{
(yyval.str) = mm_strdup("[ ]");
}
#line 55611 "preproc.c"
break;
case 2246: /* array_expr_list: array_expr */
#line 13235 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55619 "preproc.c"
break;
case 2247: /* array_expr_list: array_expr_list ',' array_expr */
#line 13239 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 55627 "preproc.c"
break;
case 2248: /* extract_list: extract_arg FROM a_expr */
#line 13247 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 55635 "preproc.c"
break;
case 2249: /* extract_arg: ecpg_ident */
#line 13255 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55643 "preproc.c"
break;
case 2250: /* extract_arg: YEAR_P */
#line 13259 "preproc.y"
{
(yyval.str) = mm_strdup("year");
}
#line 55651 "preproc.c"
break;
case 2251: /* extract_arg: MONTH_P */
#line 13263 "preproc.y"
{
(yyval.str) = mm_strdup("month");
}
#line 55659 "preproc.c"
break;
case 2252: /* extract_arg: DAY_P */
#line 13267 "preproc.y"
{
(yyval.str) = mm_strdup("day");
}
#line 55667 "preproc.c"
break;
case 2253: /* extract_arg: HOUR_P */
#line 13271 "preproc.y"
{
(yyval.str) = mm_strdup("hour");
}
#line 55675 "preproc.c"
break;
case 2254: /* extract_arg: MINUTE_P */
#line 13275 "preproc.y"
{
(yyval.str) = mm_strdup("minute");
}
#line 55683 "preproc.c"
break;
case 2255: /* extract_arg: SECOND_P */
#line 13279 "preproc.y"
{
(yyval.str) = mm_strdup("second");
}
#line 55691 "preproc.c"
break;
case 2256: /* extract_arg: ecpg_sconst */
#line 13283 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55699 "preproc.c"
break;
case 2257: /* unicode_normal_form: NFC */
#line 13291 "preproc.y"
{
(yyval.str) = mm_strdup("nfc");
}
#line 55707 "preproc.c"
break;
case 2258: /* unicode_normal_form: NFD */
#line 13295 "preproc.y"
{
(yyval.str) = mm_strdup("nfd");
}
#line 55715 "preproc.c"
break;
case 2259: /* unicode_normal_form: NFKC */
#line 13299 "preproc.y"
{
(yyval.str) = mm_strdup("nfkc");
}
#line 55723 "preproc.c"
break;
case 2260: /* unicode_normal_form: NFKD */
#line 13303 "preproc.y"
{
(yyval.str) = mm_strdup("nfkd");
}
#line 55731 "preproc.c"
break;
case 2261: /* overlay_list: a_expr PLACING a_expr FROM a_expr FOR a_expr */
#line 13311 "preproc.y"
{
(yyval.str) = cat_str(7,(yyvsp[-6].str),mm_strdup("placing"),(yyvsp[-4].str),mm_strdup("from"),(yyvsp[-2].str),mm_strdup("for"),(yyvsp[0].str));
}
#line 55739 "preproc.c"
break;
case 2262: /* overlay_list: a_expr PLACING a_expr FROM a_expr */
#line 13315 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("placing"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 55747 "preproc.c"
break;
case 2263: /* position_list: b_expr IN_P b_expr */
#line 13323 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("in"),(yyvsp[0].str));
}
#line 55755 "preproc.c"
break;
case 2264: /* substr_list: a_expr FROM a_expr FOR a_expr */
#line 13331 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("from"),(yyvsp[-2].str),mm_strdup("for"),(yyvsp[0].str));
}
#line 55763 "preproc.c"
break;
case 2265: /* substr_list: a_expr FOR a_expr FROM a_expr */
#line 13335 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("for"),(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 55771 "preproc.c"
break;
case 2266: /* substr_list: a_expr FROM a_expr */
#line 13339 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 55779 "preproc.c"
break;
case 2267: /* substr_list: a_expr FOR a_expr */
#line 13343 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("for"),(yyvsp[0].str));
}
#line 55787 "preproc.c"
break;
case 2268: /* substr_list: a_expr SIMILAR a_expr ESCAPE a_expr */
#line 13347 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("similar"),(yyvsp[-2].str),mm_strdup("escape"),(yyvsp[0].str));
}
#line 55795 "preproc.c"
break;
case 2269: /* trim_list: a_expr FROM expr_list */
#line 13355 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("from"),(yyvsp[0].str));
}
#line 55803 "preproc.c"
break;
case 2270: /* trim_list: FROM expr_list */
#line 13359 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("from"),(yyvsp[0].str));
}
#line 55811 "preproc.c"
break;
case 2271: /* trim_list: expr_list */
#line 13363 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55819 "preproc.c"
break;
case 2272: /* in_expr: select_with_parens */
#line 13371 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55827 "preproc.c"
break;
case 2273: /* in_expr: '(' expr_list ')' */
#line 13375 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("("),(yyvsp[-1].str),mm_strdup(")"));
}
#line 55835 "preproc.c"
break;
case 2274: /* case_expr: CASE case_arg when_clause_list case_default END_P */
#line 13383 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("case"),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup("end"));
}
#line 55843 "preproc.c"
break;
case 2275: /* when_clause_list: when_clause */
#line 13391 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55851 "preproc.c"
break;
case 2276: /* when_clause_list: when_clause_list when_clause */
#line 13395 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55859 "preproc.c"
break;
case 2277: /* when_clause: WHEN a_expr THEN a_expr */
#line 13403 "preproc.y"
{
(yyval.str) = cat_str(4,mm_strdup("when"),(yyvsp[-2].str),mm_strdup("then"),(yyvsp[0].str));
}
#line 55867 "preproc.c"
break;
case 2278: /* case_default: ELSE a_expr */
#line 13411 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("else"),(yyvsp[0].str));
}
#line 55875 "preproc.c"
break;
case 2279: /* case_default: %empty */
#line 13415 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55882 "preproc.c"
break;
case 2280: /* case_arg: a_expr */
#line 13422 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55890 "preproc.c"
break;
case 2281: /* case_arg: %empty */
#line 13426 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55897 "preproc.c"
break;
case 2282: /* columnref: ColId */
#line 13433 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55905 "preproc.c"
break;
case 2283: /* columnref: ColId indirection */
#line 13437 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55913 "preproc.c"
break;
case 2284: /* indirection_el: '.' attr_name */
#line 13445 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("."),(yyvsp[0].str));
}
#line 55921 "preproc.c"
break;
case 2285: /* indirection_el: '.' '*' */
#line 13449 "preproc.y"
{
(yyval.str) = mm_strdup(". *");
}
#line 55929 "preproc.c"
break;
case 2286: /* indirection_el: '[' a_expr ']' */
#line 13453 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("["),(yyvsp[-1].str),mm_strdup("]"));
}
#line 55937 "preproc.c"
break;
case 2287: /* indirection_el: '[' opt_slice_bound ':' opt_slice_bound ']' */
#line 13457 "preproc.y"
{
(yyval.str) = cat_str(5,mm_strdup("["),(yyvsp[-3].str),mm_strdup(":"),(yyvsp[-1].str),mm_strdup("]"));
}
#line 55945 "preproc.c"
break;
case 2288: /* opt_slice_bound: a_expr */
#line 13465 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55953 "preproc.c"
break;
case 2289: /* opt_slice_bound: %empty */
#line 13469 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55960 "preproc.c"
break;
case 2290: /* indirection: indirection_el */
#line 13476 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 55968 "preproc.c"
break;
case 2291: /* indirection: indirection indirection_el */
#line 13480 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55976 "preproc.c"
break;
case 2292: /* opt_indirection: %empty */
#line 13488 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 55983 "preproc.c"
break;
case 2293: /* opt_indirection: opt_indirection indirection_el */
#line 13491 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 55991 "preproc.c"
break;
case 2294: /* opt_asymmetric: ASYMMETRIC */
#line 13499 "preproc.y"
{
(yyval.str) = mm_strdup("asymmetric");
}
#line 55999 "preproc.c"
break;
case 2295: /* opt_asymmetric: %empty */
#line 13503 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56006 "preproc.c"
break;
case 2296: /* json_value_expr: a_expr json_format_clause_opt */
#line 13510 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56014 "preproc.c"
break;
case 2297: /* json_format_clause_opt: FORMAT_LA JSON json_encoding_clause_opt */
#line 13518 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("format json"),(yyvsp[0].str));
}
#line 56022 "preproc.c"
break;
case 2298: /* json_format_clause_opt: %empty */
#line 13522 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56029 "preproc.c"
break;
case 2299: /* json_encoding_clause_opt: ENCODING name */
#line 13529 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("encoding"),(yyvsp[0].str));
}
#line 56037 "preproc.c"
break;
case 2300: /* json_encoding_clause_opt: %empty */
#line 13533 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56044 "preproc.c"
break;
case 2301: /* json_output_clause_opt: RETURNING Typename json_format_clause_opt */
#line 13540 "preproc.y"
{
(yyval.str) = cat_str(3,mm_strdup("returning"),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56052 "preproc.c"
break;
case 2302: /* json_output_clause_opt: %empty */
#line 13544 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56059 "preproc.c"
break;
case 2303: /* json_predicate_type_constraint: JSON */
#line 13551 "preproc.y"
{
(yyval.str) = mm_strdup("json");
}
#line 56067 "preproc.c"
break;
case 2304: /* json_predicate_type_constraint: JSON VALUE_P */
#line 13555 "preproc.y"
{
(yyval.str) = mm_strdup("json value");
}
#line 56075 "preproc.c"
break;
case 2305: /* json_predicate_type_constraint: JSON ARRAY */
#line 13559 "preproc.y"
{
(yyval.str) = mm_strdup("json array");
}
#line 56083 "preproc.c"
break;
case 2306: /* json_predicate_type_constraint: JSON OBJECT_P */
#line 13563 "preproc.y"
{
(yyval.str) = mm_strdup("json object");
}
#line 56091 "preproc.c"
break;
case 2307: /* json_predicate_type_constraint: JSON SCALAR */
#line 13567 "preproc.y"
{
(yyval.str) = mm_strdup("json scalar");
}
#line 56099 "preproc.c"
break;
case 2308: /* json_key_uniqueness_constraint_opt: WITH UNIQUE KEYS */
#line 13575 "preproc.y"
{
(yyval.str) = mm_strdup("with unique keys");
}
#line 56107 "preproc.c"
break;
case 2309: /* json_key_uniqueness_constraint_opt: WITH UNIQUE */
#line 13579 "preproc.y"
{
(yyval.str) = mm_strdup("with unique");
}
#line 56115 "preproc.c"
break;
case 2310: /* json_key_uniqueness_constraint_opt: WITHOUT UNIQUE KEYS */
#line 13583 "preproc.y"
{
(yyval.str) = mm_strdup("without unique keys");
}
#line 56123 "preproc.c"
break;
case 2311: /* json_key_uniqueness_constraint_opt: WITHOUT UNIQUE */
#line 13587 "preproc.y"
{
(yyval.str) = mm_strdup("without unique");
}
#line 56131 "preproc.c"
break;
case 2312: /* json_key_uniqueness_constraint_opt: %empty */
#line 13591 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56138 "preproc.c"
break;
case 2313: /* json_name_and_value_list: json_name_and_value */
#line 13598 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56146 "preproc.c"
break;
case 2314: /* json_name_and_value_list: json_name_and_value_list ',' json_name_and_value */
#line 13602 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 56154 "preproc.c"
break;
case 2315: /* json_name_and_value: c_expr VALUE_P json_value_expr */
#line 13610 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("value"),(yyvsp[0].str));
}
#line 56162 "preproc.c"
break;
case 2316: /* json_name_and_value: a_expr ':' json_value_expr */
#line 13614 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(":"),(yyvsp[0].str));
}
#line 56170 "preproc.c"
break;
case 2317: /* json_object_constructor_null_clause_opt: NULL_P ON NULL_P */
#line 13622 "preproc.y"
{
(yyval.str) = mm_strdup("null on null");
}
#line 56178 "preproc.c"
break;
case 2318: /* json_object_constructor_null_clause_opt: ABSENT ON NULL_P */
#line 13626 "preproc.y"
{
(yyval.str) = mm_strdup("absent on null");
}
#line 56186 "preproc.c"
break;
case 2319: /* json_object_constructor_null_clause_opt: %empty */
#line 13630 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56193 "preproc.c"
break;
case 2320: /* json_array_constructor_null_clause_opt: NULL_P ON NULL_P */
#line 13637 "preproc.y"
{
(yyval.str) = mm_strdup("null on null");
}
#line 56201 "preproc.c"
break;
case 2321: /* json_array_constructor_null_clause_opt: ABSENT ON NULL_P */
#line 13641 "preproc.y"
{
(yyval.str) = mm_strdup("absent on null");
}
#line 56209 "preproc.c"
break;
case 2322: /* json_array_constructor_null_clause_opt: %empty */
#line 13645 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56216 "preproc.c"
break;
case 2323: /* json_value_expr_list: json_value_expr */
#line 13652 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56224 "preproc.c"
break;
case 2324: /* json_value_expr_list: json_value_expr_list ',' json_value_expr */
#line 13656 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 56232 "preproc.c"
break;
case 2325: /* json_aggregate_func: JSON_OBJECTAGG '(' json_name_and_value json_object_constructor_null_clause_opt json_key_uniqueness_constraint_opt json_output_clause_opt ')' */
#line 13664 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("json_objectagg ("),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 56240 "preproc.c"
break;
case 2326: /* json_aggregate_func: JSON_ARRAYAGG '(' json_value_expr json_array_aggregate_order_by_clause_opt json_array_constructor_null_clause_opt json_output_clause_opt ')' */
#line 13668 "preproc.y"
{
(yyval.str) = cat_str(6,mm_strdup("json_arrayagg ("),(yyvsp[-4].str),(yyvsp[-3].str),(yyvsp[-2].str),(yyvsp[-1].str),mm_strdup(")"));
}
#line 56248 "preproc.c"
break;
case 2327: /* json_array_aggregate_order_by_clause_opt: ORDER BY sortby_list */
#line 13676 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("order by"),(yyvsp[0].str));
}
#line 56256 "preproc.c"
break;
case 2328: /* json_array_aggregate_order_by_clause_opt: %empty */
#line 13680 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56263 "preproc.c"
break;
case 2329: /* opt_target_list: target_list */
#line 13687 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56271 "preproc.c"
break;
case 2330: /* opt_target_list: %empty */
#line 13691 "preproc.y"
{
(yyval.str)=EMPTY; }
#line 56278 "preproc.c"
break;
case 2331: /* target_list: target_el */
#line 13698 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56286 "preproc.c"
break;
case 2332: /* target_list: target_list ',' target_el */
#line 13702 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 56294 "preproc.c"
break;
case 2333: /* target_el: a_expr AS ColLabel */
#line 13710 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup("as"),(yyvsp[0].str));
}
#line 56302 "preproc.c"
break;
case 2334: /* target_el: a_expr BareColLabel */
#line 13714 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56310 "preproc.c"
break;
case 2335: /* target_el: a_expr */
#line 13718 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56318 "preproc.c"
break;
case 2336: /* target_el: '*' */
#line 13722 "preproc.y"
{
(yyval.str) = mm_strdup("*");
}
#line 56326 "preproc.c"
break;
case 2337: /* qualified_name_list: qualified_name */
#line 13730 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56334 "preproc.c"
break;
case 2338: /* qualified_name_list: qualified_name_list ',' qualified_name */
#line 13734 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 56342 "preproc.c"
break;
case 2339: /* qualified_name: ColId */
#line 13742 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56350 "preproc.c"
break;
case 2340: /* qualified_name: ColId indirection */
#line 13746 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56358 "preproc.c"
break;
case 2341: /* name_list: name */
#line 13754 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56366 "preproc.c"
break;
case 2342: /* name_list: name_list ',' name */
#line 13758 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 56374 "preproc.c"
break;
case 2343: /* name: ColId */
#line 13766 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56382 "preproc.c"
break;
case 2344: /* attr_name: ColLabel */
#line 13774 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56390 "preproc.c"
break;
case 2345: /* file_name: ecpg_sconst */
#line 13782 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56398 "preproc.c"
break;
case 2346: /* func_name: type_function_name */
#line 13790 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56406 "preproc.c"
break;
case 2347: /* func_name: ColId indirection */
#line 13794 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56414 "preproc.c"
break;
case 2348: /* AexprConst: Iconst */
#line 13802 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56422 "preproc.c"
break;
case 2349: /* AexprConst: ecpg_fconst */
#line 13806 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56430 "preproc.c"
break;
case 2350: /* AexprConst: ecpg_sconst */
#line 13810 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56438 "preproc.c"
break;
case 2351: /* AexprConst: ecpg_bconst */
#line 13814 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56446 "preproc.c"
break;
case 2352: /* AexprConst: ecpg_xconst */
#line 13818 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56454 "preproc.c"
break;
case 2353: /* AexprConst: func_name ecpg_sconst */
#line 13822 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56462 "preproc.c"
break;
case 2354: /* AexprConst: func_name '(' func_arg_list opt_sort_clause ')' ecpg_sconst */
#line 13826 "preproc.y"
{
(yyval.str) = cat_str(6,(yyvsp[-5].str),mm_strdup("("),(yyvsp[-3].str),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 56470 "preproc.c"
break;
case 2355: /* AexprConst: ConstTypename ecpg_sconst */
#line 13830 "preproc.y"
{
(yyval.str) = cat_str(2,(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56478 "preproc.c"
break;
case 2356: /* AexprConst: ConstInterval ecpg_sconst opt_interval */
#line 13834 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),(yyvsp[-1].str),(yyvsp[0].str));
}
#line 56486 "preproc.c"
break;
case 2357: /* AexprConst: ConstInterval '(' Iconst ')' ecpg_sconst */
#line 13838 "preproc.y"
{
(yyval.str) = cat_str(5,(yyvsp[-4].str),mm_strdup("("),(yyvsp[-2].str),mm_strdup(")"),(yyvsp[0].str));
}
#line 56494 "preproc.c"
break;
case 2358: /* AexprConst: TRUE_P */
#line 13842 "preproc.y"
{
(yyval.str) = mm_strdup("true");
}
#line 56502 "preproc.c"
break;
case 2359: /* AexprConst: FALSE_P */
#line 13846 "preproc.y"
{
(yyval.str) = mm_strdup("false");
}
#line 56510 "preproc.c"
break;
case 2360: /* AexprConst: NULL_P */
#line 13850 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 56518 "preproc.c"
break;
case 2361: /* AexprConst: civar */
#line 13853 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 56524 "preproc.c"
break;
case 2362: /* AexprConst: civarind */
#line 13854 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 56530 "preproc.c"
break;
case 2363: /* Iconst: ICONST */
#line 13860 "preproc.y"
{ (yyval.str) = make_name(); }
#line 56536 "preproc.c"
break;
case 2364: /* SignedIconst: Iconst */
#line 13866 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56544 "preproc.c"
break;
case 2365: /* SignedIconst: civar */
#line 13869 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 56550 "preproc.c"
break;
case 2366: /* SignedIconst: '+' Iconst */
#line 13871 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("+"),(yyvsp[0].str));
}
#line 56558 "preproc.c"
break;
case 2367: /* SignedIconst: '-' Iconst */
#line 13875 "preproc.y"
{
(yyval.str) = cat_str(2,mm_strdup("-"),(yyvsp[0].str));
}
#line 56566 "preproc.c"
break;
case 2368: /* RoleId: RoleSpec */
#line 13883 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56574 "preproc.c"
break;
case 2369: /* RoleSpec: NonReservedWord */
#line 13891 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56582 "preproc.c"
break;
case 2370: /* RoleSpec: CURRENT_ROLE */
#line 13895 "preproc.y"
{
(yyval.str) = mm_strdup("current_role");
}
#line 56590 "preproc.c"
break;
case 2371: /* RoleSpec: CURRENT_USER */
#line 13899 "preproc.y"
{
(yyval.str) = mm_strdup("current_user");
}
#line 56598 "preproc.c"
break;
case 2372: /* RoleSpec: SESSION_USER */
#line 13903 "preproc.y"
{
(yyval.str) = mm_strdup("session_user");
}
#line 56606 "preproc.c"
break;
case 2373: /* role_list: RoleSpec */
#line 13911 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56614 "preproc.c"
break;
case 2374: /* role_list: role_list ',' RoleSpec */
#line 13915 "preproc.y"
{
(yyval.str) = cat_str(3,(yyvsp[-2].str),mm_strdup(","),(yyvsp[0].str));
}
#line 56622 "preproc.c"
break;
case 2375: /* NonReservedWord: ecpg_ident */
#line 13923 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56630 "preproc.c"
break;
case 2376: /* NonReservedWord: unreserved_keyword */
#line 13927 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56638 "preproc.c"
break;
case 2377: /* NonReservedWord: col_name_keyword */
#line 13931 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56646 "preproc.c"
break;
case 2378: /* NonReservedWord: type_func_name_keyword */
#line 13935 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56654 "preproc.c"
break;
case 2379: /* BareColLabel: ecpg_ident */
#line 13943 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56662 "preproc.c"
break;
case 2380: /* BareColLabel: bare_label_keyword */
#line 13947 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 56670 "preproc.c"
break;
case 2381: /* unreserved_keyword: ABORT_P */
#line 13955 "preproc.y"
{
(yyval.str) = mm_strdup("abort");
}
#line 56678 "preproc.c"
break;
case 2382: /* unreserved_keyword: ABSENT */
#line 13959 "preproc.y"
{
(yyval.str) = mm_strdup("absent");
}
#line 56686 "preproc.c"
break;
case 2383: /* unreserved_keyword: ABSOLUTE_P */
#line 13963 "preproc.y"
{
(yyval.str) = mm_strdup("absolute");
}
#line 56694 "preproc.c"
break;
case 2384: /* unreserved_keyword: ACCESS */
#line 13967 "preproc.y"
{
(yyval.str) = mm_strdup("access");
}
#line 56702 "preproc.c"
break;
case 2385: /* unreserved_keyword: ACTION */
#line 13971 "preproc.y"
{
(yyval.str) = mm_strdup("action");
}
#line 56710 "preproc.c"
break;
case 2386: /* unreserved_keyword: ADD_P */
#line 13975 "preproc.y"
{
(yyval.str) = mm_strdup("add");
}
#line 56718 "preproc.c"
break;
case 2387: /* unreserved_keyword: ADMIN */
#line 13979 "preproc.y"
{
(yyval.str) = mm_strdup("admin");
}
#line 56726 "preproc.c"
break;
case 2388: /* unreserved_keyword: AFTER */
#line 13983 "preproc.y"
{
(yyval.str) = mm_strdup("after");
}
#line 56734 "preproc.c"
break;
case 2389: /* unreserved_keyword: AGGREGATE */
#line 13987 "preproc.y"
{
(yyval.str) = mm_strdup("aggregate");
}
#line 56742 "preproc.c"
break;
case 2390: /* unreserved_keyword: ALSO */
#line 13991 "preproc.y"
{
(yyval.str) = mm_strdup("also");
}
#line 56750 "preproc.c"
break;
case 2391: /* unreserved_keyword: ALTER */
#line 13995 "preproc.y"
{
(yyval.str) = mm_strdup("alter");
}
#line 56758 "preproc.c"
break;
case 2392: /* unreserved_keyword: ALWAYS */
#line 13999 "preproc.y"
{
(yyval.str) = mm_strdup("always");
}
#line 56766 "preproc.c"
break;
case 2393: /* unreserved_keyword: ASENSITIVE */
#line 14003 "preproc.y"
{
(yyval.str) = mm_strdup("asensitive");
}
#line 56774 "preproc.c"
break;
case 2394: /* unreserved_keyword: ASSERTION */
#line 14007 "preproc.y"
{
(yyval.str) = mm_strdup("assertion");
}
#line 56782 "preproc.c"
break;
case 2395: /* unreserved_keyword: ASSIGNMENT */
#line 14011 "preproc.y"
{
(yyval.str) = mm_strdup("assignment");
}
#line 56790 "preproc.c"
break;
case 2396: /* unreserved_keyword: AT */
#line 14015 "preproc.y"
{
(yyval.str) = mm_strdup("at");
}
#line 56798 "preproc.c"
break;
case 2397: /* unreserved_keyword: ATOMIC */
#line 14019 "preproc.y"
{
(yyval.str) = mm_strdup("atomic");
}
#line 56806 "preproc.c"
break;
case 2398: /* unreserved_keyword: ATTACH */
#line 14023 "preproc.y"
{
(yyval.str) = mm_strdup("attach");
}
#line 56814 "preproc.c"
break;
case 2399: /* unreserved_keyword: ATTRIBUTE */
#line 14027 "preproc.y"
{
(yyval.str) = mm_strdup("attribute");
}
#line 56822 "preproc.c"
break;
case 2400: /* unreserved_keyword: BACKWARD */
#line 14031 "preproc.y"
{
(yyval.str) = mm_strdup("backward");
}
#line 56830 "preproc.c"
break;
case 2401: /* unreserved_keyword: BEFORE */
#line 14035 "preproc.y"
{
(yyval.str) = mm_strdup("before");
}
#line 56838 "preproc.c"
break;
case 2402: /* unreserved_keyword: BEGIN_P */
#line 14039 "preproc.y"
{
(yyval.str) = mm_strdup("begin");
}
#line 56846 "preproc.c"
break;
case 2403: /* unreserved_keyword: BREADTH */
#line 14043 "preproc.y"
{
(yyval.str) = mm_strdup("breadth");
}
#line 56854 "preproc.c"
break;
case 2404: /* unreserved_keyword: BY */
#line 14047 "preproc.y"
{
(yyval.str) = mm_strdup("by");
}
#line 56862 "preproc.c"
break;
case 2405: /* unreserved_keyword: CACHE */
#line 14051 "preproc.y"
{
(yyval.str) = mm_strdup("cache");
}
#line 56870 "preproc.c"
break;
case 2406: /* unreserved_keyword: CALL */
#line 14055 "preproc.y"
{
(yyval.str) = mm_strdup("call");
}
#line 56878 "preproc.c"
break;
case 2407: /* unreserved_keyword: CALLED */
#line 14059 "preproc.y"
{
(yyval.str) = mm_strdup("called");
}
#line 56886 "preproc.c"
break;
case 2408: /* unreserved_keyword: CASCADE */
#line 14063 "preproc.y"
{
(yyval.str) = mm_strdup("cascade");
}
#line 56894 "preproc.c"
break;
case 2409: /* unreserved_keyword: CASCADED */
#line 14067 "preproc.y"
{
(yyval.str) = mm_strdup("cascaded");
}
#line 56902 "preproc.c"
break;
case 2410: /* unreserved_keyword: CATALOG_P */
#line 14071 "preproc.y"
{
(yyval.str) = mm_strdup("catalog");
}
#line 56910 "preproc.c"
break;
case 2411: /* unreserved_keyword: CHAIN */
#line 14075 "preproc.y"
{
(yyval.str) = mm_strdup("chain");
}
#line 56918 "preproc.c"
break;
case 2412: /* unreserved_keyword: CHARACTERISTICS */
#line 14079 "preproc.y"
{
(yyval.str) = mm_strdup("characteristics");
}
#line 56926 "preproc.c"
break;
case 2413: /* unreserved_keyword: CHECKPOINT */
#line 14083 "preproc.y"
{
(yyval.str) = mm_strdup("checkpoint");
}
#line 56934 "preproc.c"
break;
case 2414: /* unreserved_keyword: CLASS */
#line 14087 "preproc.y"
{
(yyval.str) = mm_strdup("class");
}
#line 56942 "preproc.c"
break;
case 2415: /* unreserved_keyword: CLOSE */
#line 14091 "preproc.y"
{
(yyval.str) = mm_strdup("close");
}
#line 56950 "preproc.c"
break;
case 2416: /* unreserved_keyword: CLUSTER */
#line 14095 "preproc.y"
{
(yyval.str) = mm_strdup("cluster");
}
#line 56958 "preproc.c"
break;
case 2417: /* unreserved_keyword: COLUMNS */
#line 14099 "preproc.y"
{
(yyval.str) = mm_strdup("columns");
}
#line 56966 "preproc.c"
break;
case 2418: /* unreserved_keyword: COMMENT */
#line 14103 "preproc.y"
{
(yyval.str) = mm_strdup("comment");
}
#line 56974 "preproc.c"
break;
case 2419: /* unreserved_keyword: COMMENTS */
#line 14107 "preproc.y"
{
(yyval.str) = mm_strdup("comments");
}
#line 56982 "preproc.c"
break;
case 2420: /* unreserved_keyword: COMMIT */
#line 14111 "preproc.y"
{
(yyval.str) = mm_strdup("commit");
}
#line 56990 "preproc.c"
break;
case 2421: /* unreserved_keyword: COMMITTED */
#line 14115 "preproc.y"
{
(yyval.str) = mm_strdup("committed");
}
#line 56998 "preproc.c"
break;
case 2422: /* unreserved_keyword: COMPRESSION */
#line 14119 "preproc.y"
{
(yyval.str) = mm_strdup("compression");
}
#line 57006 "preproc.c"
break;
case 2423: /* unreserved_keyword: CONFIGURATION */
#line 14123 "preproc.y"
{
(yyval.str) = mm_strdup("configuration");
}
#line 57014 "preproc.c"
break;
case 2424: /* unreserved_keyword: CONFLICT */
#line 14127 "preproc.y"
{
(yyval.str) = mm_strdup("conflict");
}
#line 57022 "preproc.c"
break;
case 2425: /* unreserved_keyword: CONSTRAINTS */
#line 14131 "preproc.y"
{
(yyval.str) = mm_strdup("constraints");
}
#line 57030 "preproc.c"
break;
case 2426: /* unreserved_keyword: CONTENT_P */
#line 14135 "preproc.y"
{
(yyval.str) = mm_strdup("content");
}
#line 57038 "preproc.c"
break;
case 2427: /* unreserved_keyword: CONTINUE_P */
#line 14139 "preproc.y"
{
(yyval.str) = mm_strdup("continue");
}
#line 57046 "preproc.c"
break;
case 2428: /* unreserved_keyword: CONVERSION_P */
#line 14143 "preproc.y"
{
(yyval.str) = mm_strdup("conversion");
}
#line 57054 "preproc.c"
break;
case 2429: /* unreserved_keyword: COPY */
#line 14147 "preproc.y"
{
(yyval.str) = mm_strdup("copy");
}
#line 57062 "preproc.c"
break;
case 2430: /* unreserved_keyword: COST */
#line 14151 "preproc.y"
{
(yyval.str) = mm_strdup("cost");
}
#line 57070 "preproc.c"
break;
case 2431: /* unreserved_keyword: CSV */
#line 14155 "preproc.y"
{
(yyval.str) = mm_strdup("csv");
}
#line 57078 "preproc.c"
break;
case 2432: /* unreserved_keyword: CUBE */
#line 14159 "preproc.y"
{
(yyval.str) = mm_strdup("cube");
}
#line 57086 "preproc.c"
break;
case 2433: /* unreserved_keyword: CURSOR */
#line 14163 "preproc.y"
{
(yyval.str) = mm_strdup("cursor");
}
#line 57094 "preproc.c"
break;
case 2434: /* unreserved_keyword: CYCLE */
#line 14167 "preproc.y"
{
(yyval.str) = mm_strdup("cycle");
}
#line 57102 "preproc.c"
break;
case 2435: /* unreserved_keyword: DATA_P */
#line 14171 "preproc.y"
{
(yyval.str) = mm_strdup("data");
}
#line 57110 "preproc.c"
break;
case 2436: /* unreserved_keyword: DATABASE */
#line 14175 "preproc.y"
{
(yyval.str) = mm_strdup("database");
}
#line 57118 "preproc.c"
break;
case 2437: /* unreserved_keyword: DEALLOCATE */
#line 14179 "preproc.y"
{
(yyval.str) = mm_strdup("deallocate");
}
#line 57126 "preproc.c"
break;
case 2438: /* unreserved_keyword: DECLARE */
#line 14183 "preproc.y"
{
(yyval.str) = mm_strdup("declare");
}
#line 57134 "preproc.c"
break;
case 2439: /* unreserved_keyword: DEFAULTS */
#line 14187 "preproc.y"
{
(yyval.str) = mm_strdup("defaults");
}
#line 57142 "preproc.c"
break;
case 2440: /* unreserved_keyword: DEFERRED */
#line 14191 "preproc.y"
{
(yyval.str) = mm_strdup("deferred");
}
#line 57150 "preproc.c"
break;
case 2441: /* unreserved_keyword: DEFINER */
#line 14195 "preproc.y"
{
(yyval.str) = mm_strdup("definer");
}
#line 57158 "preproc.c"
break;
case 2442: /* unreserved_keyword: DELETE_P */
#line 14199 "preproc.y"
{
(yyval.str) = mm_strdup("delete");
}
#line 57166 "preproc.c"
break;
case 2443: /* unreserved_keyword: DELIMITER */
#line 14203 "preproc.y"
{
(yyval.str) = mm_strdup("delimiter");
}
#line 57174 "preproc.c"
break;
case 2444: /* unreserved_keyword: DELIMITERS */
#line 14207 "preproc.y"
{
(yyval.str) = mm_strdup("delimiters");
}
#line 57182 "preproc.c"
break;
case 2445: /* unreserved_keyword: DEPENDS */
#line 14211 "preproc.y"
{
(yyval.str) = mm_strdup("depends");
}
#line 57190 "preproc.c"
break;
case 2446: /* unreserved_keyword: DEPTH */
#line 14215 "preproc.y"
{
(yyval.str) = mm_strdup("depth");
}
#line 57198 "preproc.c"
break;
case 2447: /* unreserved_keyword: DETACH */
#line 14219 "preproc.y"
{
(yyval.str) = mm_strdup("detach");
}
#line 57206 "preproc.c"
break;
case 2448: /* unreserved_keyword: DICTIONARY */
#line 14223 "preproc.y"
{
(yyval.str) = mm_strdup("dictionary");
}
#line 57214 "preproc.c"
break;
case 2449: /* unreserved_keyword: DISABLE_P */
#line 14227 "preproc.y"
{
(yyval.str) = mm_strdup("disable");
}
#line 57222 "preproc.c"
break;
case 2450: /* unreserved_keyword: DISCARD */
#line 14231 "preproc.y"
{
(yyval.str) = mm_strdup("discard");
}
#line 57230 "preproc.c"
break;
case 2451: /* unreserved_keyword: DOCUMENT_P */
#line 14235 "preproc.y"
{
(yyval.str) = mm_strdup("document");
}
#line 57238 "preproc.c"
break;
case 2452: /* unreserved_keyword: DOMAIN_P */
#line 14239 "preproc.y"
{
(yyval.str) = mm_strdup("domain");
}
#line 57246 "preproc.c"
break;
case 2453: /* unreserved_keyword: DOUBLE_P */
#line 14243 "preproc.y"
{
(yyval.str) = mm_strdup("double");
}
#line 57254 "preproc.c"
break;
case 2454: /* unreserved_keyword: DROP */
#line 14247 "preproc.y"
{
(yyval.str) = mm_strdup("drop");
}
#line 57262 "preproc.c"
break;
case 2455: /* unreserved_keyword: EACH */
#line 14251 "preproc.y"
{
(yyval.str) = mm_strdup("each");
}
#line 57270 "preproc.c"
break;
case 2456: /* unreserved_keyword: ENABLE_P */
#line 14255 "preproc.y"
{
(yyval.str) = mm_strdup("enable");
}
#line 57278 "preproc.c"
break;
case 2457: /* unreserved_keyword: ENCODING */
#line 14259 "preproc.y"
{
(yyval.str) = mm_strdup("encoding");
}
#line 57286 "preproc.c"
break;
case 2458: /* unreserved_keyword: ENCRYPTED */
#line 14263 "preproc.y"
{
(yyval.str) = mm_strdup("encrypted");
}
#line 57294 "preproc.c"
break;
case 2459: /* unreserved_keyword: ENUM_P */
#line 14267 "preproc.y"
{
(yyval.str) = mm_strdup("enum");
}
#line 57302 "preproc.c"
break;
case 2460: /* unreserved_keyword: ESCAPE */
#line 14271 "preproc.y"
{
(yyval.str) = mm_strdup("escape");
}
#line 57310 "preproc.c"
break;
case 2461: /* unreserved_keyword: EVENT */
#line 14275 "preproc.y"
{
(yyval.str) = mm_strdup("event");
}
#line 57318 "preproc.c"
break;
case 2462: /* unreserved_keyword: EXCLUDE */
#line 14279 "preproc.y"
{
(yyval.str) = mm_strdup("exclude");
}
#line 57326 "preproc.c"
break;
case 2463: /* unreserved_keyword: EXCLUDING */
#line 14283 "preproc.y"
{
(yyval.str) = mm_strdup("excluding");
}
#line 57334 "preproc.c"
break;
case 2464: /* unreserved_keyword: EXCLUSIVE */
#line 14287 "preproc.y"
{
(yyval.str) = mm_strdup("exclusive");
}
#line 57342 "preproc.c"
break;
case 2465: /* unreserved_keyword: EXECUTE */
#line 14291 "preproc.y"
{
(yyval.str) = mm_strdup("execute");
}
#line 57350 "preproc.c"
break;
case 2466: /* unreserved_keyword: EXPLAIN */
#line 14295 "preproc.y"
{
(yyval.str) = mm_strdup("explain");
}
#line 57358 "preproc.c"
break;
case 2467: /* unreserved_keyword: EXPRESSION */
#line 14299 "preproc.y"
{
(yyval.str) = mm_strdup("expression");
}
#line 57366 "preproc.c"
break;
case 2468: /* unreserved_keyword: EXTENSION */
#line 14303 "preproc.y"
{
(yyval.str) = mm_strdup("extension");
}
#line 57374 "preproc.c"
break;
case 2469: /* unreserved_keyword: EXTERNAL */
#line 14307 "preproc.y"
{
(yyval.str) = mm_strdup("external");
}
#line 57382 "preproc.c"
break;
case 2470: /* unreserved_keyword: FAMILY */
#line 14311 "preproc.y"
{
(yyval.str) = mm_strdup("family");
}
#line 57390 "preproc.c"
break;
case 2471: /* unreserved_keyword: FILTER */
#line 14315 "preproc.y"
{
(yyval.str) = mm_strdup("filter");
}
#line 57398 "preproc.c"
break;
case 2472: /* unreserved_keyword: FINALIZE */
#line 14319 "preproc.y"
{
(yyval.str) = mm_strdup("finalize");
}
#line 57406 "preproc.c"
break;
case 2473: /* unreserved_keyword: FIRST_P */
#line 14323 "preproc.y"
{
(yyval.str) = mm_strdup("first");
}
#line 57414 "preproc.c"
break;
case 2474: /* unreserved_keyword: FOLLOWING */
#line 14327 "preproc.y"
{
(yyval.str) = mm_strdup("following");
}
#line 57422 "preproc.c"
break;
case 2475: /* unreserved_keyword: FORCE */
#line 14331 "preproc.y"
{
(yyval.str) = mm_strdup("force");
}
#line 57430 "preproc.c"
break;
case 2476: /* unreserved_keyword: FORMAT */
#line 14335 "preproc.y"
{
(yyval.str) = mm_strdup("format");
}
#line 57438 "preproc.c"
break;
case 2477: /* unreserved_keyword: FORWARD */
#line 14339 "preproc.y"
{
(yyval.str) = mm_strdup("forward");
}
#line 57446 "preproc.c"
break;
case 2478: /* unreserved_keyword: FUNCTION */
#line 14343 "preproc.y"
{
(yyval.str) = mm_strdup("function");
}
#line 57454 "preproc.c"
break;
case 2479: /* unreserved_keyword: FUNCTIONS */
#line 14347 "preproc.y"
{
(yyval.str) = mm_strdup("functions");
}
#line 57462 "preproc.c"
break;
case 2480: /* unreserved_keyword: GENERATED */
#line 14351 "preproc.y"
{
(yyval.str) = mm_strdup("generated");
}
#line 57470 "preproc.c"
break;
case 2481: /* unreserved_keyword: GLOBAL */
#line 14355 "preproc.y"
{
(yyval.str) = mm_strdup("global");
}
#line 57478 "preproc.c"
break;
case 2482: /* unreserved_keyword: GRANTED */
#line 14359 "preproc.y"
{
(yyval.str) = mm_strdup("granted");
}
#line 57486 "preproc.c"
break;
case 2483: /* unreserved_keyword: GROUPS */
#line 14363 "preproc.y"
{
(yyval.str) = mm_strdup("groups");
}
#line 57494 "preproc.c"
break;
case 2484: /* unreserved_keyword: HANDLER */
#line 14367 "preproc.y"
{
(yyval.str) = mm_strdup("handler");
}
#line 57502 "preproc.c"
break;
case 2485: /* unreserved_keyword: HEADER_P */
#line 14371 "preproc.y"
{
(yyval.str) = mm_strdup("header");
}
#line 57510 "preproc.c"
break;
case 2486: /* unreserved_keyword: HOLD */
#line 14375 "preproc.y"
{
(yyval.str) = mm_strdup("hold");
}
#line 57518 "preproc.c"
break;
case 2487: /* unreserved_keyword: IDENTITY_P */
#line 14379 "preproc.y"
{
(yyval.str) = mm_strdup("identity");
}
#line 57526 "preproc.c"
break;
case 2488: /* unreserved_keyword: IF_P */
#line 14383 "preproc.y"
{
(yyval.str) = mm_strdup("if");
}
#line 57534 "preproc.c"
break;
case 2489: /* unreserved_keyword: IMMEDIATE */
#line 14387 "preproc.y"
{
(yyval.str) = mm_strdup("immediate");
}
#line 57542 "preproc.c"
break;
case 2490: /* unreserved_keyword: IMMUTABLE */
#line 14391 "preproc.y"
{
(yyval.str) = mm_strdup("immutable");
}
#line 57550 "preproc.c"
break;
case 2491: /* unreserved_keyword: IMPLICIT_P */
#line 14395 "preproc.y"
{
(yyval.str) = mm_strdup("implicit");
}
#line 57558 "preproc.c"
break;
case 2492: /* unreserved_keyword: IMPORT_P */
#line 14399 "preproc.y"
{
(yyval.str) = mm_strdup("import");
}
#line 57566 "preproc.c"
break;
case 2493: /* unreserved_keyword: INCLUDE */
#line 14403 "preproc.y"
{
(yyval.str) = mm_strdup("include");
}
#line 57574 "preproc.c"
break;
case 2494: /* unreserved_keyword: INCLUDING */
#line 14407 "preproc.y"
{
(yyval.str) = mm_strdup("including");
}
#line 57582 "preproc.c"
break;
case 2495: /* unreserved_keyword: INCREMENT */
#line 14411 "preproc.y"
{
(yyval.str) = mm_strdup("increment");
}
#line 57590 "preproc.c"
break;
case 2496: /* unreserved_keyword: INDENT */
#line 14415 "preproc.y"
{
(yyval.str) = mm_strdup("indent");
}
#line 57598 "preproc.c"
break;
case 2497: /* unreserved_keyword: INDEX */
#line 14419 "preproc.y"
{
(yyval.str) = mm_strdup("index");
}
#line 57606 "preproc.c"
break;
case 2498: /* unreserved_keyword: INDEXES */
#line 14423 "preproc.y"
{
(yyval.str) = mm_strdup("indexes");
}
#line 57614 "preproc.c"
break;
case 2499: /* unreserved_keyword: INHERIT */
#line 14427 "preproc.y"
{
(yyval.str) = mm_strdup("inherit");
}
#line 57622 "preproc.c"
break;
case 2500: /* unreserved_keyword: INHERITS */
#line 14431 "preproc.y"
{
(yyval.str) = mm_strdup("inherits");
}
#line 57630 "preproc.c"
break;
case 2501: /* unreserved_keyword: INLINE_P */
#line 14435 "preproc.y"
{
(yyval.str) = mm_strdup("inline");
}
#line 57638 "preproc.c"
break;
case 2502: /* unreserved_keyword: INSENSITIVE */
#line 14439 "preproc.y"
{
(yyval.str) = mm_strdup("insensitive");
}
#line 57646 "preproc.c"
break;
case 2503: /* unreserved_keyword: INSERT */
#line 14443 "preproc.y"
{
(yyval.str) = mm_strdup("insert");
}
#line 57654 "preproc.c"
break;
case 2504: /* unreserved_keyword: INSTEAD */
#line 14447 "preproc.y"
{
(yyval.str) = mm_strdup("instead");
}
#line 57662 "preproc.c"
break;
case 2505: /* unreserved_keyword: INVOKER */
#line 14451 "preproc.y"
{
(yyval.str) = mm_strdup("invoker");
}
#line 57670 "preproc.c"
break;
case 2506: /* unreserved_keyword: ISOLATION */
#line 14455 "preproc.y"
{
(yyval.str) = mm_strdup("isolation");
}
#line 57678 "preproc.c"
break;
case 2507: /* unreserved_keyword: JSON */
#line 14459 "preproc.y"
{
(yyval.str) = mm_strdup("json");
}
#line 57686 "preproc.c"
break;
case 2508: /* unreserved_keyword: KEY */
#line 14463 "preproc.y"
{
(yyval.str) = mm_strdup("key");
}
#line 57694 "preproc.c"
break;
case 2509: /* unreserved_keyword: KEYS */
#line 14467 "preproc.y"
{
(yyval.str) = mm_strdup("keys");
}
#line 57702 "preproc.c"
break;
case 2510: /* unreserved_keyword: LABEL */
#line 14471 "preproc.y"
{
(yyval.str) = mm_strdup("label");
}
#line 57710 "preproc.c"
break;
case 2511: /* unreserved_keyword: LANGUAGE */
#line 14475 "preproc.y"
{
(yyval.str) = mm_strdup("language");
}
#line 57718 "preproc.c"
break;
case 2512: /* unreserved_keyword: LARGE_P */
#line 14479 "preproc.y"
{
(yyval.str) = mm_strdup("large");
}
#line 57726 "preproc.c"
break;
case 2513: /* unreserved_keyword: LAST_P */
#line 14483 "preproc.y"
{
(yyval.str) = mm_strdup("last");
}
#line 57734 "preproc.c"
break;
case 2514: /* unreserved_keyword: LEAKPROOF */
#line 14487 "preproc.y"
{
(yyval.str) = mm_strdup("leakproof");
}
#line 57742 "preproc.c"
break;
case 2515: /* unreserved_keyword: LEVEL */
#line 14491 "preproc.y"
{
(yyval.str) = mm_strdup("level");
}
#line 57750 "preproc.c"
break;
case 2516: /* unreserved_keyword: LISTEN */
#line 14495 "preproc.y"
{
(yyval.str) = mm_strdup("listen");
}
#line 57758 "preproc.c"
break;
case 2517: /* unreserved_keyword: LOAD */
#line 14499 "preproc.y"
{
(yyval.str) = mm_strdup("load");
}
#line 57766 "preproc.c"
break;
case 2518: /* unreserved_keyword: LOCAL */
#line 14503 "preproc.y"
{
(yyval.str) = mm_strdup("local");
}
#line 57774 "preproc.c"
break;
case 2519: /* unreserved_keyword: LOCATION */
#line 14507 "preproc.y"
{
(yyval.str) = mm_strdup("location");
}
#line 57782 "preproc.c"
break;
case 2520: /* unreserved_keyword: LOCK_P */
#line 14511 "preproc.y"
{
(yyval.str) = mm_strdup("lock");
}
#line 57790 "preproc.c"
break;
case 2521: /* unreserved_keyword: LOCKED */
#line 14515 "preproc.y"
{
(yyval.str) = mm_strdup("locked");
}
#line 57798 "preproc.c"
break;
case 2522: /* unreserved_keyword: LOGGED */
#line 14519 "preproc.y"
{
(yyval.str) = mm_strdup("logged");
}
#line 57806 "preproc.c"
break;
case 2523: /* unreserved_keyword: MAPPING */
#line 14523 "preproc.y"
{
(yyval.str) = mm_strdup("mapping");
}
#line 57814 "preproc.c"
break;
case 2524: /* unreserved_keyword: MATCH */
#line 14527 "preproc.y"
{
(yyval.str) = mm_strdup("match");
}
#line 57822 "preproc.c"
break;
case 2525: /* unreserved_keyword: MATCHED */
#line 14531 "preproc.y"
{
(yyval.str) = mm_strdup("matched");
}
#line 57830 "preproc.c"
break;
case 2526: /* unreserved_keyword: MATERIALIZED */
#line 14535 "preproc.y"
{
(yyval.str) = mm_strdup("materialized");
}
#line 57838 "preproc.c"
break;
case 2527: /* unreserved_keyword: MAXVALUE */
#line 14539 "preproc.y"
{
(yyval.str) = mm_strdup("maxvalue");
}
#line 57846 "preproc.c"
break;
case 2528: /* unreserved_keyword: MERGE */
#line 14543 "preproc.y"
{
(yyval.str) = mm_strdup("merge");
}
#line 57854 "preproc.c"
break;
case 2529: /* unreserved_keyword: METHOD */
#line 14547 "preproc.y"
{
(yyval.str) = mm_strdup("method");
}
#line 57862 "preproc.c"
break;
case 2530: /* unreserved_keyword: MINVALUE */
#line 14551 "preproc.y"
{
(yyval.str) = mm_strdup("minvalue");
}
#line 57870 "preproc.c"
break;
case 2531: /* unreserved_keyword: MODE */
#line 14555 "preproc.y"
{
(yyval.str) = mm_strdup("mode");
}
#line 57878 "preproc.c"
break;
case 2532: /* unreserved_keyword: MOVE */
#line 14559 "preproc.y"
{
(yyval.str) = mm_strdup("move");
}
#line 57886 "preproc.c"
break;
case 2533: /* unreserved_keyword: NAME_P */
#line 14563 "preproc.y"
{
(yyval.str) = mm_strdup("name");
}
#line 57894 "preproc.c"
break;
case 2534: /* unreserved_keyword: NAMES */
#line 14567 "preproc.y"
{
(yyval.str) = mm_strdup("names");
}
#line 57902 "preproc.c"
break;
case 2535: /* unreserved_keyword: NEW */
#line 14571 "preproc.y"
{
(yyval.str) = mm_strdup("new");
}
#line 57910 "preproc.c"
break;
case 2536: /* unreserved_keyword: NEXT */
#line 14575 "preproc.y"
{
(yyval.str) = mm_strdup("next");
}
#line 57918 "preproc.c"
break;
case 2537: /* unreserved_keyword: NFC */
#line 14579 "preproc.y"
{
(yyval.str) = mm_strdup("nfc");
}
#line 57926 "preproc.c"
break;
case 2538: /* unreserved_keyword: NFD */
#line 14583 "preproc.y"
{
(yyval.str) = mm_strdup("nfd");
}
#line 57934 "preproc.c"
break;
case 2539: /* unreserved_keyword: NFKC */
#line 14587 "preproc.y"
{
(yyval.str) = mm_strdup("nfkc");
}
#line 57942 "preproc.c"
break;
case 2540: /* unreserved_keyword: NFKD */
#line 14591 "preproc.y"
{
(yyval.str) = mm_strdup("nfkd");
}
#line 57950 "preproc.c"
break;
case 2541: /* unreserved_keyword: NO */
#line 14595 "preproc.y"
{
(yyval.str) = mm_strdup("no");
}
#line 57958 "preproc.c"
break;
case 2542: /* unreserved_keyword: NORMALIZED */
#line 14599 "preproc.y"
{
(yyval.str) = mm_strdup("normalized");
}
#line 57966 "preproc.c"
break;
case 2543: /* unreserved_keyword: NOTHING */
#line 14603 "preproc.y"
{
(yyval.str) = mm_strdup("nothing");
}
#line 57974 "preproc.c"
break;
case 2544: /* unreserved_keyword: NOTIFY */
#line 14607 "preproc.y"
{
(yyval.str) = mm_strdup("notify");
}
#line 57982 "preproc.c"
break;
case 2545: /* unreserved_keyword: NOWAIT */
#line 14611 "preproc.y"
{
(yyval.str) = mm_strdup("nowait");
}
#line 57990 "preproc.c"
break;
case 2546: /* unreserved_keyword: NULLS_P */
#line 14615 "preproc.y"
{
(yyval.str) = mm_strdup("nulls");
}
#line 57998 "preproc.c"
break;
case 2547: /* unreserved_keyword: OBJECT_P */
#line 14619 "preproc.y"
{
(yyval.str) = mm_strdup("object");
}
#line 58006 "preproc.c"
break;
case 2548: /* unreserved_keyword: OF */
#line 14623 "preproc.y"
{
(yyval.str) = mm_strdup("of");
}
#line 58014 "preproc.c"
break;
case 2549: /* unreserved_keyword: OFF */
#line 14627 "preproc.y"
{
(yyval.str) = mm_strdup("off");
}
#line 58022 "preproc.c"
break;
case 2550: /* unreserved_keyword: OIDS */
#line 14631 "preproc.y"
{
(yyval.str) = mm_strdup("oids");
}
#line 58030 "preproc.c"
break;
case 2551: /* unreserved_keyword: OLD */
#line 14635 "preproc.y"
{
(yyval.str) = mm_strdup("old");
}
#line 58038 "preproc.c"
break;
case 2552: /* unreserved_keyword: OPERATOR */
#line 14639 "preproc.y"
{
(yyval.str) = mm_strdup("operator");
}
#line 58046 "preproc.c"
break;
case 2553: /* unreserved_keyword: OPTION */
#line 14643 "preproc.y"
{
(yyval.str) = mm_strdup("option");
}
#line 58054 "preproc.c"
break;
case 2554: /* unreserved_keyword: OPTIONS */
#line 14647 "preproc.y"
{
(yyval.str) = mm_strdup("options");
}
#line 58062 "preproc.c"
break;
case 2555: /* unreserved_keyword: ORDINALITY */
#line 14651 "preproc.y"
{
(yyval.str) = mm_strdup("ordinality");
}
#line 58070 "preproc.c"
break;
case 2556: /* unreserved_keyword: OTHERS */
#line 14655 "preproc.y"
{
(yyval.str) = mm_strdup("others");
}
#line 58078 "preproc.c"
break;
case 2557: /* unreserved_keyword: OVER */
#line 14659 "preproc.y"
{
(yyval.str) = mm_strdup("over");
}
#line 58086 "preproc.c"
break;
case 2558: /* unreserved_keyword: OVERRIDING */
#line 14663 "preproc.y"
{
(yyval.str) = mm_strdup("overriding");
}
#line 58094 "preproc.c"
break;
case 2559: /* unreserved_keyword: OWNED */
#line 14667 "preproc.y"
{
(yyval.str) = mm_strdup("owned");
}
#line 58102 "preproc.c"
break;
case 2560: /* unreserved_keyword: OWNER */
#line 14671 "preproc.y"
{
(yyval.str) = mm_strdup("owner");
}
#line 58110 "preproc.c"
break;
case 2561: /* unreserved_keyword: PARALLEL */
#line 14675 "preproc.y"
{
(yyval.str) = mm_strdup("parallel");
}
#line 58118 "preproc.c"
break;
case 2562: /* unreserved_keyword: PARAMETER */
#line 14679 "preproc.y"
{
(yyval.str) = mm_strdup("parameter");
}
#line 58126 "preproc.c"
break;
case 2563: /* unreserved_keyword: PARSER */
#line 14683 "preproc.y"
{
(yyval.str) = mm_strdup("parser");
}
#line 58134 "preproc.c"
break;
case 2564: /* unreserved_keyword: PARTIAL */
#line 14687 "preproc.y"
{
(yyval.str) = mm_strdup("partial");
}
#line 58142 "preproc.c"
break;
case 2565: /* unreserved_keyword: PARTITION */
#line 14691 "preproc.y"
{
(yyval.str) = mm_strdup("partition");
}
#line 58150 "preproc.c"
break;
case 2566: /* unreserved_keyword: PASSING */
#line 14695 "preproc.y"
{
(yyval.str) = mm_strdup("passing");
}
#line 58158 "preproc.c"
break;
case 2567: /* unreserved_keyword: PASSWORD */
#line 14699 "preproc.y"
{
(yyval.str) = mm_strdup("password");
}
#line 58166 "preproc.c"
break;
case 2568: /* unreserved_keyword: PLANS */
#line 14703 "preproc.y"
{
(yyval.str) = mm_strdup("plans");
}
#line 58174 "preproc.c"
break;
case 2569: /* unreserved_keyword: POLICY */
#line 14707 "preproc.y"
{
(yyval.str) = mm_strdup("policy");
}
#line 58182 "preproc.c"
break;
case 2570: /* unreserved_keyword: PRECEDING */
#line 14711 "preproc.y"
{
(yyval.str) = mm_strdup("preceding");
}
#line 58190 "preproc.c"
break;
case 2571: /* unreserved_keyword: PREPARE */
#line 14715 "preproc.y"
{
(yyval.str) = mm_strdup("prepare");
}
#line 58198 "preproc.c"
break;
case 2572: /* unreserved_keyword: PREPARED */
#line 14719 "preproc.y"
{
(yyval.str) = mm_strdup("prepared");
}
#line 58206 "preproc.c"
break;
case 2573: /* unreserved_keyword: PRESERVE */
#line 14723 "preproc.y"
{
(yyval.str) = mm_strdup("preserve");
}
#line 58214 "preproc.c"
break;
case 2574: /* unreserved_keyword: PRIOR */
#line 14727 "preproc.y"
{
(yyval.str) = mm_strdup("prior");
}
#line 58222 "preproc.c"
break;
case 2575: /* unreserved_keyword: PRIVILEGES */
#line 14731 "preproc.y"
{
(yyval.str) = mm_strdup("privileges");
}
#line 58230 "preproc.c"
break;
case 2576: /* unreserved_keyword: PROCEDURAL */
#line 14735 "preproc.y"
{
(yyval.str) = mm_strdup("procedural");
}
#line 58238 "preproc.c"
break;
case 2577: /* unreserved_keyword: PROCEDURE */
#line 14739 "preproc.y"
{
(yyval.str) = mm_strdup("procedure");
}
#line 58246 "preproc.c"
break;
case 2578: /* unreserved_keyword: PROCEDURES */
#line 14743 "preproc.y"
{
(yyval.str) = mm_strdup("procedures");
}
#line 58254 "preproc.c"
break;
case 2579: /* unreserved_keyword: PROGRAM */
#line 14747 "preproc.y"
{
(yyval.str) = mm_strdup("program");
}
#line 58262 "preproc.c"
break;
case 2580: /* unreserved_keyword: PUBLICATION */
#line 14751 "preproc.y"
{
(yyval.str) = mm_strdup("publication");
}
#line 58270 "preproc.c"
break;
case 2581: /* unreserved_keyword: QUOTE */
#line 14755 "preproc.y"
{
(yyval.str) = mm_strdup("quote");
}
#line 58278 "preproc.c"
break;
case 2582: /* unreserved_keyword: RANGE */
#line 14759 "preproc.y"
{
(yyval.str) = mm_strdup("range");
}
#line 58286 "preproc.c"
break;
case 2583: /* unreserved_keyword: READ */
#line 14763 "preproc.y"
{
(yyval.str) = mm_strdup("read");
}
#line 58294 "preproc.c"
break;
case 2584: /* unreserved_keyword: REASSIGN */
#line 14767 "preproc.y"
{
(yyval.str) = mm_strdup("reassign");
}
#line 58302 "preproc.c"
break;
case 2585: /* unreserved_keyword: RECHECK */
#line 14771 "preproc.y"
{
(yyval.str) = mm_strdup("recheck");
}
#line 58310 "preproc.c"
break;
case 2586: /* unreserved_keyword: RECURSIVE */
#line 14775 "preproc.y"
{
(yyval.str) = mm_strdup("recursive");
}
#line 58318 "preproc.c"
break;
case 2587: /* unreserved_keyword: REF_P */
#line 14779 "preproc.y"
{
(yyval.str) = mm_strdup("ref");
}
#line 58326 "preproc.c"
break;
case 2588: /* unreserved_keyword: REFERENCING */
#line 14783 "preproc.y"
{
(yyval.str) = mm_strdup("referencing");
}
#line 58334 "preproc.c"
break;
case 2589: /* unreserved_keyword: REFRESH */
#line 14787 "preproc.y"
{
(yyval.str) = mm_strdup("refresh");
}
#line 58342 "preproc.c"
break;
case 2590: /* unreserved_keyword: REINDEX */
#line 14791 "preproc.y"
{
(yyval.str) = mm_strdup("reindex");
}
#line 58350 "preproc.c"
break;
case 2591: /* unreserved_keyword: RELATIVE_P */
#line 14795 "preproc.y"
{
(yyval.str) = mm_strdup("relative");
}
#line 58358 "preproc.c"
break;
case 2592: /* unreserved_keyword: RELEASE */
#line 14799 "preproc.y"
{
(yyval.str) = mm_strdup("release");
}
#line 58366 "preproc.c"
break;
case 2593: /* unreserved_keyword: RENAME */
#line 14803 "preproc.y"
{
(yyval.str) = mm_strdup("rename");
}
#line 58374 "preproc.c"
break;
case 2594: /* unreserved_keyword: REPEATABLE */
#line 14807 "preproc.y"
{
(yyval.str) = mm_strdup("repeatable");
}
#line 58382 "preproc.c"
break;
case 2595: /* unreserved_keyword: REPLACE */
#line 14811 "preproc.y"
{
(yyval.str) = mm_strdup("replace");
}
#line 58390 "preproc.c"
break;
case 2596: /* unreserved_keyword: REPLICA */
#line 14815 "preproc.y"
{
(yyval.str) = mm_strdup("replica");
}
#line 58398 "preproc.c"
break;
case 2597: /* unreserved_keyword: RESET */
#line 14819 "preproc.y"
{
(yyval.str) = mm_strdup("reset");
}
#line 58406 "preproc.c"
break;
case 2598: /* unreserved_keyword: RESTART */
#line 14823 "preproc.y"
{
(yyval.str) = mm_strdup("restart");
}
#line 58414 "preproc.c"
break;
case 2599: /* unreserved_keyword: RESTRICT */
#line 14827 "preproc.y"
{
(yyval.str) = mm_strdup("restrict");
}
#line 58422 "preproc.c"
break;
case 2600: /* unreserved_keyword: RETURN */
#line 14831 "preproc.y"
{
(yyval.str) = mm_strdup("return");
}
#line 58430 "preproc.c"
break;
case 2601: /* unreserved_keyword: RETURNS */
#line 14835 "preproc.y"
{
(yyval.str) = mm_strdup("returns");
}
#line 58438 "preproc.c"
break;
case 2602: /* unreserved_keyword: REVOKE */
#line 14839 "preproc.y"
{
(yyval.str) = mm_strdup("revoke");
}
#line 58446 "preproc.c"
break;
case 2603: /* unreserved_keyword: ROLE */
#line 14843 "preproc.y"
{
(yyval.str) = mm_strdup("role");
}
#line 58454 "preproc.c"
break;
case 2604: /* unreserved_keyword: ROLLBACK */
#line 14847 "preproc.y"
{
(yyval.str) = mm_strdup("rollback");
}
#line 58462 "preproc.c"
break;
case 2605: /* unreserved_keyword: ROLLUP */
#line 14851 "preproc.y"
{
(yyval.str) = mm_strdup("rollup");
}
#line 58470 "preproc.c"
break;
case 2606: /* unreserved_keyword: ROUTINE */
#line 14855 "preproc.y"
{
(yyval.str) = mm_strdup("routine");
}
#line 58478 "preproc.c"
break;
case 2607: /* unreserved_keyword: ROUTINES */
#line 14859 "preproc.y"
{
(yyval.str) = mm_strdup("routines");
}
#line 58486 "preproc.c"
break;
case 2608: /* unreserved_keyword: ROWS */
#line 14863 "preproc.y"
{
(yyval.str) = mm_strdup("rows");
}
#line 58494 "preproc.c"
break;
case 2609: /* unreserved_keyword: RULE */
#line 14867 "preproc.y"
{
(yyval.str) = mm_strdup("rule");
}
#line 58502 "preproc.c"
break;
case 2610: /* unreserved_keyword: SAVEPOINT */
#line 14871 "preproc.y"
{
(yyval.str) = mm_strdup("savepoint");
}
#line 58510 "preproc.c"
break;
case 2611: /* unreserved_keyword: SCALAR */
#line 14875 "preproc.y"
{
(yyval.str) = mm_strdup("scalar");
}
#line 58518 "preproc.c"
break;
case 2612: /* unreserved_keyword: SCHEMA */
#line 14879 "preproc.y"
{
(yyval.str) = mm_strdup("schema");
}
#line 58526 "preproc.c"
break;
case 2613: /* unreserved_keyword: SCHEMAS */
#line 14883 "preproc.y"
{
(yyval.str) = mm_strdup("schemas");
}
#line 58534 "preproc.c"
break;
case 2614: /* unreserved_keyword: SCROLL */
#line 14887 "preproc.y"
{
(yyval.str) = mm_strdup("scroll");
}
#line 58542 "preproc.c"
break;
case 2615: /* unreserved_keyword: SEARCH */
#line 14891 "preproc.y"
{
(yyval.str) = mm_strdup("search");
}
#line 58550 "preproc.c"
break;
case 2616: /* unreserved_keyword: SECURITY */
#line 14895 "preproc.y"
{
(yyval.str) = mm_strdup("security");
}
#line 58558 "preproc.c"
break;
case 2617: /* unreserved_keyword: SEQUENCE */
#line 14899 "preproc.y"
{
(yyval.str) = mm_strdup("sequence");
}
#line 58566 "preproc.c"
break;
case 2618: /* unreserved_keyword: SEQUENCES */
#line 14903 "preproc.y"
{
(yyval.str) = mm_strdup("sequences");
}
#line 58574 "preproc.c"
break;
case 2619: /* unreserved_keyword: SERIALIZABLE */
#line 14907 "preproc.y"
{
(yyval.str) = mm_strdup("serializable");
}
#line 58582 "preproc.c"
break;
case 2620: /* unreserved_keyword: SERVER */
#line 14911 "preproc.y"
{
(yyval.str) = mm_strdup("server");
}
#line 58590 "preproc.c"
break;
case 2621: /* unreserved_keyword: SESSION */
#line 14915 "preproc.y"
{
(yyval.str) = mm_strdup("session");
}
#line 58598 "preproc.c"
break;
case 2622: /* unreserved_keyword: SET */
#line 14919 "preproc.y"
{
(yyval.str) = mm_strdup("set");
}
#line 58606 "preproc.c"
break;
case 2623: /* unreserved_keyword: SETS */
#line 14923 "preproc.y"
{
(yyval.str) = mm_strdup("sets");
}
#line 58614 "preproc.c"
break;
case 2624: /* unreserved_keyword: SHARE */
#line 14927 "preproc.y"
{
(yyval.str) = mm_strdup("share");
}
#line 58622 "preproc.c"
break;
case 2625: /* unreserved_keyword: SHOW */
#line 14931 "preproc.y"
{
(yyval.str) = mm_strdup("show");
}
#line 58630 "preproc.c"
break;
case 2626: /* unreserved_keyword: SIMPLE */
#line 14935 "preproc.y"
{
(yyval.str) = mm_strdup("simple");
}
#line 58638 "preproc.c"
break;
case 2627: /* unreserved_keyword: SKIP */
#line 14939 "preproc.y"
{
(yyval.str) = mm_strdup("skip");
}
#line 58646 "preproc.c"
break;
case 2628: /* unreserved_keyword: SNAPSHOT */
#line 14943 "preproc.y"
{
(yyval.str) = mm_strdup("snapshot");
}
#line 58654 "preproc.c"
break;
case 2629: /* unreserved_keyword: SQL_P */
#line 14947 "preproc.y"
{
(yyval.str) = mm_strdup("sql");
}
#line 58662 "preproc.c"
break;
case 2630: /* unreserved_keyword: STABLE */
#line 14951 "preproc.y"
{
(yyval.str) = mm_strdup("stable");
}
#line 58670 "preproc.c"
break;
case 2631: /* unreserved_keyword: STANDALONE_P */
#line 14955 "preproc.y"
{
(yyval.str) = mm_strdup("standalone");
}
#line 58678 "preproc.c"
break;
case 2632: /* unreserved_keyword: START */
#line 14959 "preproc.y"
{
(yyval.str) = mm_strdup("start");
}
#line 58686 "preproc.c"
break;
case 2633: /* unreserved_keyword: STATEMENT */
#line 14963 "preproc.y"
{
(yyval.str) = mm_strdup("statement");
}
#line 58694 "preproc.c"
break;
case 2634: /* unreserved_keyword: STATISTICS */
#line 14967 "preproc.y"
{
(yyval.str) = mm_strdup("statistics");
}
#line 58702 "preproc.c"
break;
case 2635: /* unreserved_keyword: STDIN */
#line 14971 "preproc.y"
{
(yyval.str) = mm_strdup("stdin");
}
#line 58710 "preproc.c"
break;
case 2636: /* unreserved_keyword: STDOUT */
#line 14975 "preproc.y"
{
(yyval.str) = mm_strdup("stdout");
}
#line 58718 "preproc.c"
break;
case 2637: /* unreserved_keyword: STORAGE */
#line 14979 "preproc.y"
{
(yyval.str) = mm_strdup("storage");
}
#line 58726 "preproc.c"
break;
case 2638: /* unreserved_keyword: STORED */
#line 14983 "preproc.y"
{
(yyval.str) = mm_strdup("stored");
}
#line 58734 "preproc.c"
break;
case 2639: /* unreserved_keyword: STRICT_P */
#line 14987 "preproc.y"
{
(yyval.str) = mm_strdup("strict");
}
#line 58742 "preproc.c"
break;
case 2640: /* unreserved_keyword: STRIP_P */
#line 14991 "preproc.y"
{
(yyval.str) = mm_strdup("strip");
}
#line 58750 "preproc.c"
break;
case 2641: /* unreserved_keyword: SUBSCRIPTION */
#line 14995 "preproc.y"
{
(yyval.str) = mm_strdup("subscription");
}
#line 58758 "preproc.c"
break;
case 2642: /* unreserved_keyword: SUPPORT */
#line 14999 "preproc.y"
{
(yyval.str) = mm_strdup("support");
}
#line 58766 "preproc.c"
break;
case 2643: /* unreserved_keyword: SYSID */
#line 15003 "preproc.y"
{
(yyval.str) = mm_strdup("sysid");
}
#line 58774 "preproc.c"
break;
case 2644: /* unreserved_keyword: SYSTEM_P */
#line 15007 "preproc.y"
{
(yyval.str) = mm_strdup("system");
}
#line 58782 "preproc.c"
break;
case 2645: /* unreserved_keyword: TABLES */
#line 15011 "preproc.y"
{
(yyval.str) = mm_strdup("tables");
}
#line 58790 "preproc.c"
break;
case 2646: /* unreserved_keyword: TABLESPACE */
#line 15015 "preproc.y"
{
(yyval.str) = mm_strdup("tablespace");
}
#line 58798 "preproc.c"
break;
case 2647: /* unreserved_keyword: TEMP */
#line 15019 "preproc.y"
{
(yyval.str) = mm_strdup("temp");
}
#line 58806 "preproc.c"
break;
case 2648: /* unreserved_keyword: TEMPLATE */
#line 15023 "preproc.y"
{
(yyval.str) = mm_strdup("template");
}
#line 58814 "preproc.c"
break;
case 2649: /* unreserved_keyword: TEMPORARY */
#line 15027 "preproc.y"
{
(yyval.str) = mm_strdup("temporary");
}
#line 58822 "preproc.c"
break;
case 2650: /* unreserved_keyword: TEXT_P */
#line 15031 "preproc.y"
{
(yyval.str) = mm_strdup("text");
}
#line 58830 "preproc.c"
break;
case 2651: /* unreserved_keyword: TIES */
#line 15035 "preproc.y"
{
(yyval.str) = mm_strdup("ties");
}
#line 58838 "preproc.c"
break;
case 2652: /* unreserved_keyword: TRANSACTION */
#line 15039 "preproc.y"
{
(yyval.str) = mm_strdup("transaction");
}
#line 58846 "preproc.c"
break;
case 2653: /* unreserved_keyword: TRANSFORM */
#line 15043 "preproc.y"
{
(yyval.str) = mm_strdup("transform");
}
#line 58854 "preproc.c"
break;
case 2654: /* unreserved_keyword: TRIGGER */
#line 15047 "preproc.y"
{
(yyval.str) = mm_strdup("trigger");
}
#line 58862 "preproc.c"
break;
case 2655: /* unreserved_keyword: TRUNCATE */
#line 15051 "preproc.y"
{
(yyval.str) = mm_strdup("truncate");
}
#line 58870 "preproc.c"
break;
case 2656: /* unreserved_keyword: TRUSTED */
#line 15055 "preproc.y"
{
(yyval.str) = mm_strdup("trusted");
}
#line 58878 "preproc.c"
break;
case 2657: /* unreserved_keyword: TYPE_P */
#line 15059 "preproc.y"
{
(yyval.str) = mm_strdup("type");
}
#line 58886 "preproc.c"
break;
case 2658: /* unreserved_keyword: TYPES_P */
#line 15063 "preproc.y"
{
(yyval.str) = mm_strdup("types");
}
#line 58894 "preproc.c"
break;
case 2659: /* unreserved_keyword: UESCAPE */
#line 15067 "preproc.y"
{
(yyval.str) = mm_strdup("uescape");
}
#line 58902 "preproc.c"
break;
case 2660: /* unreserved_keyword: UNBOUNDED */
#line 15071 "preproc.y"
{
(yyval.str) = mm_strdup("unbounded");
}
#line 58910 "preproc.c"
break;
case 2661: /* unreserved_keyword: UNCOMMITTED */
#line 15075 "preproc.y"
{
(yyval.str) = mm_strdup("uncommitted");
}
#line 58918 "preproc.c"
break;
case 2662: /* unreserved_keyword: UNENCRYPTED */
#line 15079 "preproc.y"
{
(yyval.str) = mm_strdup("unencrypted");
}
#line 58926 "preproc.c"
break;
case 2663: /* unreserved_keyword: UNKNOWN */
#line 15083 "preproc.y"
{
(yyval.str) = mm_strdup("unknown");
}
#line 58934 "preproc.c"
break;
case 2664: /* unreserved_keyword: UNLISTEN */
#line 15087 "preproc.y"
{
(yyval.str) = mm_strdup("unlisten");
}
#line 58942 "preproc.c"
break;
case 2665: /* unreserved_keyword: UNLOGGED */
#line 15091 "preproc.y"
{
(yyval.str) = mm_strdup("unlogged");
}
#line 58950 "preproc.c"
break;
case 2666: /* unreserved_keyword: UNTIL */
#line 15095 "preproc.y"
{
(yyval.str) = mm_strdup("until");
}
#line 58958 "preproc.c"
break;
case 2667: /* unreserved_keyword: UPDATE */
#line 15099 "preproc.y"
{
(yyval.str) = mm_strdup("update");
}
#line 58966 "preproc.c"
break;
case 2668: /* unreserved_keyword: VACUUM */
#line 15103 "preproc.y"
{
(yyval.str) = mm_strdup("vacuum");
}
#line 58974 "preproc.c"
break;
case 2669: /* unreserved_keyword: VALID */
#line 15107 "preproc.y"
{
(yyval.str) = mm_strdup("valid");
}
#line 58982 "preproc.c"
break;
case 2670: /* unreserved_keyword: VALIDATE */
#line 15111 "preproc.y"
{
(yyval.str) = mm_strdup("validate");
}
#line 58990 "preproc.c"
break;
case 2671: /* unreserved_keyword: VALIDATOR */
#line 15115 "preproc.y"
{
(yyval.str) = mm_strdup("validator");
}
#line 58998 "preproc.c"
break;
case 2672: /* unreserved_keyword: VALUE_P */
#line 15119 "preproc.y"
{
(yyval.str) = mm_strdup("value");
}
#line 59006 "preproc.c"
break;
case 2673: /* unreserved_keyword: VARYING */
#line 15123 "preproc.y"
{
(yyval.str) = mm_strdup("varying");
}
#line 59014 "preproc.c"
break;
case 2674: /* unreserved_keyword: VERSION_P */
#line 15127 "preproc.y"
{
(yyval.str) = mm_strdup("version");
}
#line 59022 "preproc.c"
break;
case 2675: /* unreserved_keyword: VIEW */
#line 15131 "preproc.y"
{
(yyval.str) = mm_strdup("view");
}
#line 59030 "preproc.c"
break;
case 2676: /* unreserved_keyword: VIEWS */
#line 15135 "preproc.y"
{
(yyval.str) = mm_strdup("views");
}
#line 59038 "preproc.c"
break;
case 2677: /* unreserved_keyword: VOLATILE */
#line 15139 "preproc.y"
{
(yyval.str) = mm_strdup("volatile");
}
#line 59046 "preproc.c"
break;
case 2678: /* unreserved_keyword: WHITESPACE_P */
#line 15143 "preproc.y"
{
(yyval.str) = mm_strdup("whitespace");
}
#line 59054 "preproc.c"
break;
case 2679: /* unreserved_keyword: WITHIN */
#line 15147 "preproc.y"
{
(yyval.str) = mm_strdup("within");
}
#line 59062 "preproc.c"
break;
case 2680: /* unreserved_keyword: WITHOUT */
#line 15151 "preproc.y"
{
(yyval.str) = mm_strdup("without");
}
#line 59070 "preproc.c"
break;
case 2681: /* unreserved_keyword: WORK */
#line 15155 "preproc.y"
{
(yyval.str) = mm_strdup("work");
}
#line 59078 "preproc.c"
break;
case 2682: /* unreserved_keyword: WRAPPER */
#line 15159 "preproc.y"
{
(yyval.str) = mm_strdup("wrapper");
}
#line 59086 "preproc.c"
break;
case 2683: /* unreserved_keyword: WRITE */
#line 15163 "preproc.y"
{
(yyval.str) = mm_strdup("write");
}
#line 59094 "preproc.c"
break;
case 2684: /* unreserved_keyword: XML_P */
#line 15167 "preproc.y"
{
(yyval.str) = mm_strdup("xml");
}
#line 59102 "preproc.c"
break;
case 2685: /* unreserved_keyword: YES_P */
#line 15171 "preproc.y"
{
(yyval.str) = mm_strdup("yes");
}
#line 59110 "preproc.c"
break;
case 2686: /* unreserved_keyword: ZONE */
#line 15175 "preproc.y"
{
(yyval.str) = mm_strdup("zone");
}
#line 59118 "preproc.c"
break;
case 2687: /* col_name_keyword: BETWEEN */
#line 15183 "preproc.y"
{
(yyval.str) = mm_strdup("between");
}
#line 59126 "preproc.c"
break;
case 2688: /* col_name_keyword: BIGINT */
#line 15187 "preproc.y"
{
(yyval.str) = mm_strdup("bigint");
}
#line 59134 "preproc.c"
break;
case 2689: /* col_name_keyword: BIT */
#line 15191 "preproc.y"
{
(yyval.str) = mm_strdup("bit");
}
#line 59142 "preproc.c"
break;
case 2690: /* col_name_keyword: BOOLEAN_P */
#line 15195 "preproc.y"
{
(yyval.str) = mm_strdup("boolean");
}
#line 59150 "preproc.c"
break;
case 2691: /* col_name_keyword: CHARACTER */
#line 15199 "preproc.y"
{
(yyval.str) = mm_strdup("character");
}
#line 59158 "preproc.c"
break;
case 2692: /* col_name_keyword: COALESCE */
#line 15203 "preproc.y"
{
(yyval.str) = mm_strdup("coalesce");
}
#line 59166 "preproc.c"
break;
case 2693: /* col_name_keyword: DEC */
#line 15207 "preproc.y"
{
(yyval.str) = mm_strdup("dec");
}
#line 59174 "preproc.c"
break;
case 2694: /* col_name_keyword: DECIMAL_P */
#line 15211 "preproc.y"
{
(yyval.str) = mm_strdup("decimal");
}
#line 59182 "preproc.c"
break;
case 2695: /* col_name_keyword: EXISTS */
#line 15215 "preproc.y"
{
(yyval.str) = mm_strdup("exists");
}
#line 59190 "preproc.c"
break;
case 2696: /* col_name_keyword: EXTRACT */
#line 15219 "preproc.y"
{
(yyval.str) = mm_strdup("extract");
}
#line 59198 "preproc.c"
break;
case 2697: /* col_name_keyword: FLOAT_P */
#line 15223 "preproc.y"
{
(yyval.str) = mm_strdup("float");
}
#line 59206 "preproc.c"
break;
case 2698: /* col_name_keyword: GREATEST */
#line 15227 "preproc.y"
{
(yyval.str) = mm_strdup("greatest");
}
#line 59214 "preproc.c"
break;
case 2699: /* col_name_keyword: GROUPING */
#line 15231 "preproc.y"
{
(yyval.str) = mm_strdup("grouping");
}
#line 59222 "preproc.c"
break;
case 2700: /* col_name_keyword: INOUT */
#line 15235 "preproc.y"
{
(yyval.str) = mm_strdup("inout");
}
#line 59230 "preproc.c"
break;
case 2701: /* col_name_keyword: INTEGER */
#line 15239 "preproc.y"
{
(yyval.str) = mm_strdup("integer");
}
#line 59238 "preproc.c"
break;
case 2702: /* col_name_keyword: INTERVAL */
#line 15243 "preproc.y"
{
(yyval.str) = mm_strdup("interval");
}
#line 59246 "preproc.c"
break;
case 2703: /* col_name_keyword: JSON_ARRAY */
#line 15247 "preproc.y"
{
(yyval.str) = mm_strdup("json_array");
}
#line 59254 "preproc.c"
break;
case 2704: /* col_name_keyword: JSON_ARRAYAGG */
#line 15251 "preproc.y"
{
(yyval.str) = mm_strdup("json_arrayagg");
}
#line 59262 "preproc.c"
break;
case 2705: /* col_name_keyword: JSON_OBJECT */
#line 15255 "preproc.y"
{
(yyval.str) = mm_strdup("json_object");
}
#line 59270 "preproc.c"
break;
case 2706: /* col_name_keyword: JSON_OBJECTAGG */
#line 15259 "preproc.y"
{
(yyval.str) = mm_strdup("json_objectagg");
}
#line 59278 "preproc.c"
break;
case 2707: /* col_name_keyword: LEAST */
#line 15263 "preproc.y"
{
(yyval.str) = mm_strdup("least");
}
#line 59286 "preproc.c"
break;
case 2708: /* col_name_keyword: NATIONAL */
#line 15267 "preproc.y"
{
(yyval.str) = mm_strdup("national");
}
#line 59294 "preproc.c"
break;
case 2709: /* col_name_keyword: NCHAR */
#line 15271 "preproc.y"
{
(yyval.str) = mm_strdup("nchar");
}
#line 59302 "preproc.c"
break;
case 2710: /* col_name_keyword: NONE */
#line 15275 "preproc.y"
{
(yyval.str) = mm_strdup("none");
}
#line 59310 "preproc.c"
break;
case 2711: /* col_name_keyword: NORMALIZE */
#line 15279 "preproc.y"
{
(yyval.str) = mm_strdup("normalize");
}
#line 59318 "preproc.c"
break;
case 2712: /* col_name_keyword: NULLIF */
#line 15283 "preproc.y"
{
(yyval.str) = mm_strdup("nullif");
}
#line 59326 "preproc.c"
break;
case 2713: /* col_name_keyword: NUMERIC */
#line 15287 "preproc.y"
{
(yyval.str) = mm_strdup("numeric");
}
#line 59334 "preproc.c"
break;
case 2714: /* col_name_keyword: OUT_P */
#line 15291 "preproc.y"
{
(yyval.str) = mm_strdup("out");
}
#line 59342 "preproc.c"
break;
case 2715: /* col_name_keyword: OVERLAY */
#line 15295 "preproc.y"
{
(yyval.str) = mm_strdup("overlay");
}
#line 59350 "preproc.c"
break;
case 2716: /* col_name_keyword: POSITION */
#line 15299 "preproc.y"
{
(yyval.str) = mm_strdup("position");
}
#line 59358 "preproc.c"
break;
case 2717: /* col_name_keyword: PRECISION */
#line 15303 "preproc.y"
{
(yyval.str) = mm_strdup("precision");
}
#line 59366 "preproc.c"
break;
case 2718: /* col_name_keyword: REAL */
#line 15307 "preproc.y"
{
(yyval.str) = mm_strdup("real");
}
#line 59374 "preproc.c"
break;
case 2719: /* col_name_keyword: ROW */
#line 15311 "preproc.y"
{
(yyval.str) = mm_strdup("row");
}
#line 59382 "preproc.c"
break;
case 2720: /* col_name_keyword: SETOF */
#line 15315 "preproc.y"
{
(yyval.str) = mm_strdup("setof");
}
#line 59390 "preproc.c"
break;
case 2721: /* col_name_keyword: SMALLINT */
#line 15319 "preproc.y"
{
(yyval.str) = mm_strdup("smallint");
}
#line 59398 "preproc.c"
break;
case 2722: /* col_name_keyword: SUBSTRING */
#line 15323 "preproc.y"
{
(yyval.str) = mm_strdup("substring");
}
#line 59406 "preproc.c"
break;
case 2723: /* col_name_keyword: TIME */
#line 15327 "preproc.y"
{
(yyval.str) = mm_strdup("time");
}
#line 59414 "preproc.c"
break;
case 2724: /* col_name_keyword: TIMESTAMP */
#line 15331 "preproc.y"
{
(yyval.str) = mm_strdup("timestamp");
}
#line 59422 "preproc.c"
break;
case 2725: /* col_name_keyword: TREAT */
#line 15335 "preproc.y"
{
(yyval.str) = mm_strdup("treat");
}
#line 59430 "preproc.c"
break;
case 2726: /* col_name_keyword: TRIM */
#line 15339 "preproc.y"
{
(yyval.str) = mm_strdup("trim");
}
#line 59438 "preproc.c"
break;
case 2727: /* col_name_keyword: VARCHAR */
#line 15343 "preproc.y"
{
(yyval.str) = mm_strdup("varchar");
}
#line 59446 "preproc.c"
break;
case 2728: /* col_name_keyword: XMLATTRIBUTES */
#line 15347 "preproc.y"
{
(yyval.str) = mm_strdup("xmlattributes");
}
#line 59454 "preproc.c"
break;
case 2729: /* col_name_keyword: XMLCONCAT */
#line 15351 "preproc.y"
{
(yyval.str) = mm_strdup("xmlconcat");
}
#line 59462 "preproc.c"
break;
case 2730: /* col_name_keyword: XMLELEMENT */
#line 15355 "preproc.y"
{
(yyval.str) = mm_strdup("xmlelement");
}
#line 59470 "preproc.c"
break;
case 2731: /* col_name_keyword: XMLEXISTS */
#line 15359 "preproc.y"
{
(yyval.str) = mm_strdup("xmlexists");
}
#line 59478 "preproc.c"
break;
case 2732: /* col_name_keyword: XMLFOREST */
#line 15363 "preproc.y"
{
(yyval.str) = mm_strdup("xmlforest");
}
#line 59486 "preproc.c"
break;
case 2733: /* col_name_keyword: XMLNAMESPACES */
#line 15367 "preproc.y"
{
(yyval.str) = mm_strdup("xmlnamespaces");
}
#line 59494 "preproc.c"
break;
case 2734: /* col_name_keyword: XMLPARSE */
#line 15371 "preproc.y"
{
(yyval.str) = mm_strdup("xmlparse");
}
#line 59502 "preproc.c"
break;
case 2735: /* col_name_keyword: XMLPI */
#line 15375 "preproc.y"
{
(yyval.str) = mm_strdup("xmlpi");
}
#line 59510 "preproc.c"
break;
case 2736: /* col_name_keyword: XMLROOT */
#line 15379 "preproc.y"
{
(yyval.str) = mm_strdup("xmlroot");
}
#line 59518 "preproc.c"
break;
case 2737: /* col_name_keyword: XMLSERIALIZE */
#line 15383 "preproc.y"
{
(yyval.str) = mm_strdup("xmlserialize");
}
#line 59526 "preproc.c"
break;
case 2738: /* col_name_keyword: XMLTABLE */
#line 15387 "preproc.y"
{
(yyval.str) = mm_strdup("xmltable");
}
#line 59534 "preproc.c"
break;
case 2739: /* type_func_name_keyword: AUTHORIZATION */
#line 15395 "preproc.y"
{
(yyval.str) = mm_strdup("authorization");
}
#line 59542 "preproc.c"
break;
case 2740: /* type_func_name_keyword: BINARY */
#line 15399 "preproc.y"
{
(yyval.str) = mm_strdup("binary");
}
#line 59550 "preproc.c"
break;
case 2741: /* type_func_name_keyword: COLLATION */
#line 15403 "preproc.y"
{
(yyval.str) = mm_strdup("collation");
}
#line 59558 "preproc.c"
break;
case 2742: /* type_func_name_keyword: CONCURRENTLY */
#line 15407 "preproc.y"
{
(yyval.str) = mm_strdup("concurrently");
}
#line 59566 "preproc.c"
break;
case 2743: /* type_func_name_keyword: CROSS */
#line 15411 "preproc.y"
{
(yyval.str) = mm_strdup("cross");
}
#line 59574 "preproc.c"
break;
case 2744: /* type_func_name_keyword: CURRENT_SCHEMA */
#line 15415 "preproc.y"
{
(yyval.str) = mm_strdup("current_schema");
}
#line 59582 "preproc.c"
break;
case 2745: /* type_func_name_keyword: FREEZE */
#line 15419 "preproc.y"
{
(yyval.str) = mm_strdup("freeze");
}
#line 59590 "preproc.c"
break;
case 2746: /* type_func_name_keyword: FULL */
#line 15423 "preproc.y"
{
(yyval.str) = mm_strdup("full");
}
#line 59598 "preproc.c"
break;
case 2747: /* type_func_name_keyword: ILIKE */
#line 15427 "preproc.y"
{
(yyval.str) = mm_strdup("ilike");
}
#line 59606 "preproc.c"
break;
case 2748: /* type_func_name_keyword: INNER_P */
#line 15431 "preproc.y"
{
(yyval.str) = mm_strdup("inner");
}
#line 59614 "preproc.c"
break;
case 2749: /* type_func_name_keyword: IS */
#line 15435 "preproc.y"
{
(yyval.str) = mm_strdup("is");
}
#line 59622 "preproc.c"
break;
case 2750: /* type_func_name_keyword: ISNULL */
#line 15439 "preproc.y"
{
(yyval.str) = mm_strdup("isnull");
}
#line 59630 "preproc.c"
break;
case 2751: /* type_func_name_keyword: JOIN */
#line 15443 "preproc.y"
{
(yyval.str) = mm_strdup("join");
}
#line 59638 "preproc.c"
break;
case 2752: /* type_func_name_keyword: LEFT */
#line 15447 "preproc.y"
{
(yyval.str) = mm_strdup("left");
}
#line 59646 "preproc.c"
break;
case 2753: /* type_func_name_keyword: LIKE */
#line 15451 "preproc.y"
{
(yyval.str) = mm_strdup("like");
}
#line 59654 "preproc.c"
break;
case 2754: /* type_func_name_keyword: NATURAL */
#line 15455 "preproc.y"
{
(yyval.str) = mm_strdup("natural");
}
#line 59662 "preproc.c"
break;
case 2755: /* type_func_name_keyword: NOTNULL */
#line 15459 "preproc.y"
{
(yyval.str) = mm_strdup("notnull");
}
#line 59670 "preproc.c"
break;
case 2756: /* type_func_name_keyword: OUTER_P */
#line 15463 "preproc.y"
{
(yyval.str) = mm_strdup("outer");
}
#line 59678 "preproc.c"
break;
case 2757: /* type_func_name_keyword: OVERLAPS */
#line 15467 "preproc.y"
{
(yyval.str) = mm_strdup("overlaps");
}
#line 59686 "preproc.c"
break;
case 2758: /* type_func_name_keyword: RIGHT */
#line 15471 "preproc.y"
{
(yyval.str) = mm_strdup("right");
}
#line 59694 "preproc.c"
break;
case 2759: /* type_func_name_keyword: SIMILAR */
#line 15475 "preproc.y"
{
(yyval.str) = mm_strdup("similar");
}
#line 59702 "preproc.c"
break;
case 2760: /* type_func_name_keyword: TABLESAMPLE */
#line 15479 "preproc.y"
{
(yyval.str) = mm_strdup("tablesample");
}
#line 59710 "preproc.c"
break;
case 2761: /* type_func_name_keyword: VERBOSE */
#line 15483 "preproc.y"
{
(yyval.str) = mm_strdup("verbose");
}
#line 59718 "preproc.c"
break;
case 2762: /* reserved_keyword: ALL */
#line 15491 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 59726 "preproc.c"
break;
case 2763: /* reserved_keyword: ANALYSE */
#line 15495 "preproc.y"
{
(yyval.str) = mm_strdup("analyse");
}
#line 59734 "preproc.c"
break;
case 2764: /* reserved_keyword: ANALYZE */
#line 15499 "preproc.y"
{
(yyval.str) = mm_strdup("analyze");
}
#line 59742 "preproc.c"
break;
case 2765: /* reserved_keyword: AND */
#line 15503 "preproc.y"
{
(yyval.str) = mm_strdup("and");
}
#line 59750 "preproc.c"
break;
case 2766: /* reserved_keyword: ANY */
#line 15507 "preproc.y"
{
(yyval.str) = mm_strdup("any");
}
#line 59758 "preproc.c"
break;
case 2767: /* reserved_keyword: ARRAY */
#line 15511 "preproc.y"
{
(yyval.str) = mm_strdup("array");
}
#line 59766 "preproc.c"
break;
case 2768: /* reserved_keyword: AS */
#line 15515 "preproc.y"
{
(yyval.str) = mm_strdup("as");
}
#line 59774 "preproc.c"
break;
case 2769: /* reserved_keyword: ASC */
#line 15519 "preproc.y"
{
(yyval.str) = mm_strdup("asc");
}
#line 59782 "preproc.c"
break;
case 2770: /* reserved_keyword: ASYMMETRIC */
#line 15523 "preproc.y"
{
(yyval.str) = mm_strdup("asymmetric");
}
#line 59790 "preproc.c"
break;
case 2771: /* reserved_keyword: BOTH */
#line 15527 "preproc.y"
{
(yyval.str) = mm_strdup("both");
}
#line 59798 "preproc.c"
break;
case 2772: /* reserved_keyword: CASE */
#line 15531 "preproc.y"
{
(yyval.str) = mm_strdup("case");
}
#line 59806 "preproc.c"
break;
case 2773: /* reserved_keyword: CAST */
#line 15535 "preproc.y"
{
(yyval.str) = mm_strdup("cast");
}
#line 59814 "preproc.c"
break;
case 2774: /* reserved_keyword: CHECK */
#line 15539 "preproc.y"
{
(yyval.str) = mm_strdup("check");
}
#line 59822 "preproc.c"
break;
case 2775: /* reserved_keyword: COLLATE */
#line 15543 "preproc.y"
{
(yyval.str) = mm_strdup("collate");
}
#line 59830 "preproc.c"
break;
case 2776: /* reserved_keyword: COLUMN */
#line 15547 "preproc.y"
{
(yyval.str) = mm_strdup("column");
}
#line 59838 "preproc.c"
break;
case 2777: /* reserved_keyword: CONSTRAINT */
#line 15551 "preproc.y"
{
(yyval.str) = mm_strdup("constraint");
}
#line 59846 "preproc.c"
break;
case 2778: /* reserved_keyword: CREATE */
#line 15555 "preproc.y"
{
(yyval.str) = mm_strdup("create");
}
#line 59854 "preproc.c"
break;
case 2779: /* reserved_keyword: CURRENT_CATALOG */
#line 15559 "preproc.y"
{
(yyval.str) = mm_strdup("current_catalog");
}
#line 59862 "preproc.c"
break;
case 2780: /* reserved_keyword: CURRENT_DATE */
#line 15563 "preproc.y"
{
(yyval.str) = mm_strdup("current_date");
}
#line 59870 "preproc.c"
break;
case 2781: /* reserved_keyword: CURRENT_ROLE */
#line 15567 "preproc.y"
{
(yyval.str) = mm_strdup("current_role");
}
#line 59878 "preproc.c"
break;
case 2782: /* reserved_keyword: CURRENT_TIME */
#line 15571 "preproc.y"
{
(yyval.str) = mm_strdup("current_time");
}
#line 59886 "preproc.c"
break;
case 2783: /* reserved_keyword: CURRENT_TIMESTAMP */
#line 15575 "preproc.y"
{
(yyval.str) = mm_strdup("current_timestamp");
}
#line 59894 "preproc.c"
break;
case 2784: /* reserved_keyword: CURRENT_USER */
#line 15579 "preproc.y"
{
(yyval.str) = mm_strdup("current_user");
}
#line 59902 "preproc.c"
break;
case 2785: /* reserved_keyword: DEFAULT */
#line 15583 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 59910 "preproc.c"
break;
case 2786: /* reserved_keyword: DEFERRABLE */
#line 15587 "preproc.y"
{
(yyval.str) = mm_strdup("deferrable");
}
#line 59918 "preproc.c"
break;
case 2787: /* reserved_keyword: DESC */
#line 15591 "preproc.y"
{
(yyval.str) = mm_strdup("desc");
}
#line 59926 "preproc.c"
break;
case 2788: /* reserved_keyword: DISTINCT */
#line 15595 "preproc.y"
{
(yyval.str) = mm_strdup("distinct");
}
#line 59934 "preproc.c"
break;
case 2789: /* reserved_keyword: DO */
#line 15599 "preproc.y"
{
(yyval.str) = mm_strdup("do");
}
#line 59942 "preproc.c"
break;
case 2790: /* reserved_keyword: ELSE */
#line 15603 "preproc.y"
{
(yyval.str) = mm_strdup("else");
}
#line 59950 "preproc.c"
break;
case 2791: /* reserved_keyword: END_P */
#line 15607 "preproc.y"
{
(yyval.str) = mm_strdup("end");
}
#line 59958 "preproc.c"
break;
case 2792: /* reserved_keyword: EXCEPT */
#line 15611 "preproc.y"
{
(yyval.str) = mm_strdup("except");
}
#line 59966 "preproc.c"
break;
case 2793: /* reserved_keyword: FALSE_P */
#line 15615 "preproc.y"
{
(yyval.str) = mm_strdup("false");
}
#line 59974 "preproc.c"
break;
case 2794: /* reserved_keyword: FETCH */
#line 15619 "preproc.y"
{
(yyval.str) = mm_strdup("fetch");
}
#line 59982 "preproc.c"
break;
case 2795: /* reserved_keyword: FOR */
#line 15623 "preproc.y"
{
(yyval.str) = mm_strdup("for");
}
#line 59990 "preproc.c"
break;
case 2796: /* reserved_keyword: FOREIGN */
#line 15627 "preproc.y"
{
(yyval.str) = mm_strdup("foreign");
}
#line 59998 "preproc.c"
break;
case 2797: /* reserved_keyword: FROM */
#line 15631 "preproc.y"
{
(yyval.str) = mm_strdup("from");
}
#line 60006 "preproc.c"
break;
case 2798: /* reserved_keyword: GRANT */
#line 15635 "preproc.y"
{
(yyval.str) = mm_strdup("grant");
}
#line 60014 "preproc.c"
break;
case 2799: /* reserved_keyword: GROUP_P */
#line 15639 "preproc.y"
{
(yyval.str) = mm_strdup("group");
}
#line 60022 "preproc.c"
break;
case 2800: /* reserved_keyword: HAVING */
#line 15643 "preproc.y"
{
(yyval.str) = mm_strdup("having");
}
#line 60030 "preproc.c"
break;
case 2801: /* reserved_keyword: IN_P */
#line 15647 "preproc.y"
{
(yyval.str) = mm_strdup("in");
}
#line 60038 "preproc.c"
break;
case 2802: /* reserved_keyword: INITIALLY */
#line 15651 "preproc.y"
{
(yyval.str) = mm_strdup("initially");
}
#line 60046 "preproc.c"
break;
case 2803: /* reserved_keyword: INTERSECT */
#line 15655 "preproc.y"
{
(yyval.str) = mm_strdup("intersect");
}
#line 60054 "preproc.c"
break;
case 2804: /* reserved_keyword: INTO */
#line 15659 "preproc.y"
{
(yyval.str) = mm_strdup("into");
}
#line 60062 "preproc.c"
break;
case 2805: /* reserved_keyword: LATERAL_P */
#line 15663 "preproc.y"
{
(yyval.str) = mm_strdup("lateral");
}
#line 60070 "preproc.c"
break;
case 2806: /* reserved_keyword: LEADING */
#line 15667 "preproc.y"
{
(yyval.str) = mm_strdup("leading");
}
#line 60078 "preproc.c"
break;
case 2807: /* reserved_keyword: LIMIT */
#line 15671 "preproc.y"
{
(yyval.str) = mm_strdup("limit");
}
#line 60086 "preproc.c"
break;
case 2808: /* reserved_keyword: LOCALTIME */
#line 15675 "preproc.y"
{
(yyval.str) = mm_strdup("localtime");
}
#line 60094 "preproc.c"
break;
case 2809: /* reserved_keyword: LOCALTIMESTAMP */
#line 15679 "preproc.y"
{
(yyval.str) = mm_strdup("localtimestamp");
}
#line 60102 "preproc.c"
break;
case 2810: /* reserved_keyword: NOT */
#line 15683 "preproc.y"
{
(yyval.str) = mm_strdup("not");
}
#line 60110 "preproc.c"
break;
case 2811: /* reserved_keyword: NULL_P */
#line 15687 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 60118 "preproc.c"
break;
case 2812: /* reserved_keyword: OFFSET */
#line 15691 "preproc.y"
{
(yyval.str) = mm_strdup("offset");
}
#line 60126 "preproc.c"
break;
case 2813: /* reserved_keyword: ON */
#line 15695 "preproc.y"
{
(yyval.str) = mm_strdup("on");
}
#line 60134 "preproc.c"
break;
case 2814: /* reserved_keyword: ONLY */
#line 15699 "preproc.y"
{
(yyval.str) = mm_strdup("only");
}
#line 60142 "preproc.c"
break;
case 2815: /* reserved_keyword: OR */
#line 15703 "preproc.y"
{
(yyval.str) = mm_strdup("or");
}
#line 60150 "preproc.c"
break;
case 2816: /* reserved_keyword: ORDER */
#line 15707 "preproc.y"
{
(yyval.str) = mm_strdup("order");
}
#line 60158 "preproc.c"
break;
case 2817: /* reserved_keyword: PLACING */
#line 15711 "preproc.y"
{
(yyval.str) = mm_strdup("placing");
}
#line 60166 "preproc.c"
break;
case 2818: /* reserved_keyword: PRIMARY */
#line 15715 "preproc.y"
{
(yyval.str) = mm_strdup("primary");
}
#line 60174 "preproc.c"
break;
case 2819: /* reserved_keyword: REFERENCES */
#line 15719 "preproc.y"
{
(yyval.str) = mm_strdup("references");
}
#line 60182 "preproc.c"
break;
case 2820: /* reserved_keyword: RETURNING */
#line 15723 "preproc.y"
{
(yyval.str) = mm_strdup("returning");
}
#line 60190 "preproc.c"
break;
case 2821: /* reserved_keyword: SELECT */
#line 15727 "preproc.y"
{
(yyval.str) = mm_strdup("select");
}
#line 60198 "preproc.c"
break;
case 2822: /* reserved_keyword: SESSION_USER */
#line 15731 "preproc.y"
{
(yyval.str) = mm_strdup("session_user");
}
#line 60206 "preproc.c"
break;
case 2823: /* reserved_keyword: SOME */
#line 15735 "preproc.y"
{
(yyval.str) = mm_strdup("some");
}
#line 60214 "preproc.c"
break;
case 2824: /* reserved_keyword: SYMMETRIC */
#line 15739 "preproc.y"
{
(yyval.str) = mm_strdup("symmetric");
}
#line 60222 "preproc.c"
break;
case 2825: /* reserved_keyword: SYSTEM_USER */
#line 15743 "preproc.y"
{
(yyval.str) = mm_strdup("system_user");
}
#line 60230 "preproc.c"
break;
case 2826: /* reserved_keyword: TABLE */
#line 15747 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 60238 "preproc.c"
break;
case 2827: /* reserved_keyword: THEN */
#line 15751 "preproc.y"
{
(yyval.str) = mm_strdup("then");
}
#line 60246 "preproc.c"
break;
case 2828: /* reserved_keyword: TRAILING */
#line 15755 "preproc.y"
{
(yyval.str) = mm_strdup("trailing");
}
#line 60254 "preproc.c"
break;
case 2829: /* reserved_keyword: TRUE_P */
#line 15759 "preproc.y"
{
(yyval.str) = mm_strdup("true");
}
#line 60262 "preproc.c"
break;
case 2830: /* reserved_keyword: UNIQUE */
#line 15763 "preproc.y"
{
(yyval.str) = mm_strdup("unique");
}
#line 60270 "preproc.c"
break;
case 2831: /* reserved_keyword: USER */
#line 15767 "preproc.y"
{
(yyval.str) = mm_strdup("user");
}
#line 60278 "preproc.c"
break;
case 2832: /* reserved_keyword: USING */
#line 15771 "preproc.y"
{
(yyval.str) = mm_strdup("using");
}
#line 60286 "preproc.c"
break;
case 2833: /* reserved_keyword: VARIADIC */
#line 15775 "preproc.y"
{
(yyval.str) = mm_strdup("variadic");
}
#line 60294 "preproc.c"
break;
case 2834: /* reserved_keyword: WHEN */
#line 15779 "preproc.y"
{
(yyval.str) = mm_strdup("when");
}
#line 60302 "preproc.c"
break;
case 2835: /* reserved_keyword: WHERE */
#line 15783 "preproc.y"
{
(yyval.str) = mm_strdup("where");
}
#line 60310 "preproc.c"
break;
case 2836: /* reserved_keyword: WINDOW */
#line 15787 "preproc.y"
{
(yyval.str) = mm_strdup("window");
}
#line 60318 "preproc.c"
break;
case 2837: /* reserved_keyword: WITH */
#line 15791 "preproc.y"
{
(yyval.str) = mm_strdup("with");
}
#line 60326 "preproc.c"
break;
case 2838: /* bare_label_keyword: ABORT_P */
#line 15799 "preproc.y"
{
(yyval.str) = mm_strdup("abort");
}
#line 60334 "preproc.c"
break;
case 2839: /* bare_label_keyword: ABSENT */
#line 15803 "preproc.y"
{
(yyval.str) = mm_strdup("absent");
}
#line 60342 "preproc.c"
break;
case 2840: /* bare_label_keyword: ABSOLUTE_P */
#line 15807 "preproc.y"
{
(yyval.str) = mm_strdup("absolute");
}
#line 60350 "preproc.c"
break;
case 2841: /* bare_label_keyword: ACCESS */
#line 15811 "preproc.y"
{
(yyval.str) = mm_strdup("access");
}
#line 60358 "preproc.c"
break;
case 2842: /* bare_label_keyword: ACTION */
#line 15815 "preproc.y"
{
(yyval.str) = mm_strdup("action");
}
#line 60366 "preproc.c"
break;
case 2843: /* bare_label_keyword: ADD_P */
#line 15819 "preproc.y"
{
(yyval.str) = mm_strdup("add");
}
#line 60374 "preproc.c"
break;
case 2844: /* bare_label_keyword: ADMIN */
#line 15823 "preproc.y"
{
(yyval.str) = mm_strdup("admin");
}
#line 60382 "preproc.c"
break;
case 2845: /* bare_label_keyword: AFTER */
#line 15827 "preproc.y"
{
(yyval.str) = mm_strdup("after");
}
#line 60390 "preproc.c"
break;
case 2846: /* bare_label_keyword: AGGREGATE */
#line 15831 "preproc.y"
{
(yyval.str) = mm_strdup("aggregate");
}
#line 60398 "preproc.c"
break;
case 2847: /* bare_label_keyword: ALL */
#line 15835 "preproc.y"
{
(yyval.str) = mm_strdup("all");
}
#line 60406 "preproc.c"
break;
case 2848: /* bare_label_keyword: ALSO */
#line 15839 "preproc.y"
{
(yyval.str) = mm_strdup("also");
}
#line 60414 "preproc.c"
break;
case 2849: /* bare_label_keyword: ALTER */
#line 15843 "preproc.y"
{
(yyval.str) = mm_strdup("alter");
}
#line 60422 "preproc.c"
break;
case 2850: /* bare_label_keyword: ALWAYS */
#line 15847 "preproc.y"
{
(yyval.str) = mm_strdup("always");
}
#line 60430 "preproc.c"
break;
case 2851: /* bare_label_keyword: ANALYSE */
#line 15851 "preproc.y"
{
(yyval.str) = mm_strdup("analyse");
}
#line 60438 "preproc.c"
break;
case 2852: /* bare_label_keyword: ANALYZE */
#line 15855 "preproc.y"
{
(yyval.str) = mm_strdup("analyze");
}
#line 60446 "preproc.c"
break;
case 2853: /* bare_label_keyword: AND */
#line 15859 "preproc.y"
{
(yyval.str) = mm_strdup("and");
}
#line 60454 "preproc.c"
break;
case 2854: /* bare_label_keyword: ANY */
#line 15863 "preproc.y"
{
(yyval.str) = mm_strdup("any");
}
#line 60462 "preproc.c"
break;
case 2855: /* bare_label_keyword: ASC */
#line 15867 "preproc.y"
{
(yyval.str) = mm_strdup("asc");
}
#line 60470 "preproc.c"
break;
case 2856: /* bare_label_keyword: ASENSITIVE */
#line 15871 "preproc.y"
{
(yyval.str) = mm_strdup("asensitive");
}
#line 60478 "preproc.c"
break;
case 2857: /* bare_label_keyword: ASSERTION */
#line 15875 "preproc.y"
{
(yyval.str) = mm_strdup("assertion");
}
#line 60486 "preproc.c"
break;
case 2858: /* bare_label_keyword: ASSIGNMENT */
#line 15879 "preproc.y"
{
(yyval.str) = mm_strdup("assignment");
}
#line 60494 "preproc.c"
break;
case 2859: /* bare_label_keyword: ASYMMETRIC */
#line 15883 "preproc.y"
{
(yyval.str) = mm_strdup("asymmetric");
}
#line 60502 "preproc.c"
break;
case 2860: /* bare_label_keyword: AT */
#line 15887 "preproc.y"
{
(yyval.str) = mm_strdup("at");
}
#line 60510 "preproc.c"
break;
case 2861: /* bare_label_keyword: ATOMIC */
#line 15891 "preproc.y"
{
(yyval.str) = mm_strdup("atomic");
}
#line 60518 "preproc.c"
break;
case 2862: /* bare_label_keyword: ATTACH */
#line 15895 "preproc.y"
{
(yyval.str) = mm_strdup("attach");
}
#line 60526 "preproc.c"
break;
case 2863: /* bare_label_keyword: ATTRIBUTE */
#line 15899 "preproc.y"
{
(yyval.str) = mm_strdup("attribute");
}
#line 60534 "preproc.c"
break;
case 2864: /* bare_label_keyword: AUTHORIZATION */
#line 15903 "preproc.y"
{
(yyval.str) = mm_strdup("authorization");
}
#line 60542 "preproc.c"
break;
case 2865: /* bare_label_keyword: BACKWARD */
#line 15907 "preproc.y"
{
(yyval.str) = mm_strdup("backward");
}
#line 60550 "preproc.c"
break;
case 2866: /* bare_label_keyword: BEFORE */
#line 15911 "preproc.y"
{
(yyval.str) = mm_strdup("before");
}
#line 60558 "preproc.c"
break;
case 2867: /* bare_label_keyword: BEGIN_P */
#line 15915 "preproc.y"
{
(yyval.str) = mm_strdup("begin");
}
#line 60566 "preproc.c"
break;
case 2868: /* bare_label_keyword: BETWEEN */
#line 15919 "preproc.y"
{
(yyval.str) = mm_strdup("between");
}
#line 60574 "preproc.c"
break;
case 2869: /* bare_label_keyword: BIGINT */
#line 15923 "preproc.y"
{
(yyval.str) = mm_strdup("bigint");
}
#line 60582 "preproc.c"
break;
case 2870: /* bare_label_keyword: BINARY */
#line 15927 "preproc.y"
{
(yyval.str) = mm_strdup("binary");
}
#line 60590 "preproc.c"
break;
case 2871: /* bare_label_keyword: BIT */
#line 15931 "preproc.y"
{
(yyval.str) = mm_strdup("bit");
}
#line 60598 "preproc.c"
break;
case 2872: /* bare_label_keyword: BOOLEAN_P */
#line 15935 "preproc.y"
{
(yyval.str) = mm_strdup("boolean");
}
#line 60606 "preproc.c"
break;
case 2873: /* bare_label_keyword: BOTH */
#line 15939 "preproc.y"
{
(yyval.str) = mm_strdup("both");
}
#line 60614 "preproc.c"
break;
case 2874: /* bare_label_keyword: BREADTH */
#line 15943 "preproc.y"
{
(yyval.str) = mm_strdup("breadth");
}
#line 60622 "preproc.c"
break;
case 2875: /* bare_label_keyword: BY */
#line 15947 "preproc.y"
{
(yyval.str) = mm_strdup("by");
}
#line 60630 "preproc.c"
break;
case 2876: /* bare_label_keyword: CACHE */
#line 15951 "preproc.y"
{
(yyval.str) = mm_strdup("cache");
}
#line 60638 "preproc.c"
break;
case 2877: /* bare_label_keyword: CALL */
#line 15955 "preproc.y"
{
(yyval.str) = mm_strdup("call");
}
#line 60646 "preproc.c"
break;
case 2878: /* bare_label_keyword: CALLED */
#line 15959 "preproc.y"
{
(yyval.str) = mm_strdup("called");
}
#line 60654 "preproc.c"
break;
case 2879: /* bare_label_keyword: CASCADE */
#line 15963 "preproc.y"
{
(yyval.str) = mm_strdup("cascade");
}
#line 60662 "preproc.c"
break;
case 2880: /* bare_label_keyword: CASCADED */
#line 15967 "preproc.y"
{
(yyval.str) = mm_strdup("cascaded");
}
#line 60670 "preproc.c"
break;
case 2881: /* bare_label_keyword: CASE */
#line 15971 "preproc.y"
{
(yyval.str) = mm_strdup("case");
}
#line 60678 "preproc.c"
break;
case 2882: /* bare_label_keyword: CAST */
#line 15975 "preproc.y"
{
(yyval.str) = mm_strdup("cast");
}
#line 60686 "preproc.c"
break;
case 2883: /* bare_label_keyword: CATALOG_P */
#line 15979 "preproc.y"
{
(yyval.str) = mm_strdup("catalog");
}
#line 60694 "preproc.c"
break;
case 2884: /* bare_label_keyword: CHAIN */
#line 15983 "preproc.y"
{
(yyval.str) = mm_strdup("chain");
}
#line 60702 "preproc.c"
break;
case 2885: /* bare_label_keyword: CHARACTERISTICS */
#line 15987 "preproc.y"
{
(yyval.str) = mm_strdup("characteristics");
}
#line 60710 "preproc.c"
break;
case 2886: /* bare_label_keyword: CHECK */
#line 15991 "preproc.y"
{
(yyval.str) = mm_strdup("check");
}
#line 60718 "preproc.c"
break;
case 2887: /* bare_label_keyword: CHECKPOINT */
#line 15995 "preproc.y"
{
(yyval.str) = mm_strdup("checkpoint");
}
#line 60726 "preproc.c"
break;
case 2888: /* bare_label_keyword: CLASS */
#line 15999 "preproc.y"
{
(yyval.str) = mm_strdup("class");
}
#line 60734 "preproc.c"
break;
case 2889: /* bare_label_keyword: CLOSE */
#line 16003 "preproc.y"
{
(yyval.str) = mm_strdup("close");
}
#line 60742 "preproc.c"
break;
case 2890: /* bare_label_keyword: CLUSTER */
#line 16007 "preproc.y"
{
(yyval.str) = mm_strdup("cluster");
}
#line 60750 "preproc.c"
break;
case 2891: /* bare_label_keyword: COALESCE */
#line 16011 "preproc.y"
{
(yyval.str) = mm_strdup("coalesce");
}
#line 60758 "preproc.c"
break;
case 2892: /* bare_label_keyword: COLLATE */
#line 16015 "preproc.y"
{
(yyval.str) = mm_strdup("collate");
}
#line 60766 "preproc.c"
break;
case 2893: /* bare_label_keyword: COLLATION */
#line 16019 "preproc.y"
{
(yyval.str) = mm_strdup("collation");
}
#line 60774 "preproc.c"
break;
case 2894: /* bare_label_keyword: COLUMN */
#line 16023 "preproc.y"
{
(yyval.str) = mm_strdup("column");
}
#line 60782 "preproc.c"
break;
case 2895: /* bare_label_keyword: COLUMNS */
#line 16027 "preproc.y"
{
(yyval.str) = mm_strdup("columns");
}
#line 60790 "preproc.c"
break;
case 2896: /* bare_label_keyword: COMMENT */
#line 16031 "preproc.y"
{
(yyval.str) = mm_strdup("comment");
}
#line 60798 "preproc.c"
break;
case 2897: /* bare_label_keyword: COMMENTS */
#line 16035 "preproc.y"
{
(yyval.str) = mm_strdup("comments");
}
#line 60806 "preproc.c"
break;
case 2898: /* bare_label_keyword: COMMIT */
#line 16039 "preproc.y"
{
(yyval.str) = mm_strdup("commit");
}
#line 60814 "preproc.c"
break;
case 2899: /* bare_label_keyword: COMMITTED */
#line 16043 "preproc.y"
{
(yyval.str) = mm_strdup("committed");
}
#line 60822 "preproc.c"
break;
case 2900: /* bare_label_keyword: COMPRESSION */
#line 16047 "preproc.y"
{
(yyval.str) = mm_strdup("compression");
}
#line 60830 "preproc.c"
break;
case 2901: /* bare_label_keyword: CONCURRENTLY */
#line 16051 "preproc.y"
{
(yyval.str) = mm_strdup("concurrently");
}
#line 60838 "preproc.c"
break;
case 2902: /* bare_label_keyword: CONFIGURATION */
#line 16055 "preproc.y"
{
(yyval.str) = mm_strdup("configuration");
}
#line 60846 "preproc.c"
break;
case 2903: /* bare_label_keyword: CONFLICT */
#line 16059 "preproc.y"
{
(yyval.str) = mm_strdup("conflict");
}
#line 60854 "preproc.c"
break;
case 2904: /* bare_label_keyword: CONNECTION */
#line 16063 "preproc.y"
{
(yyval.str) = mm_strdup("connection");
}
#line 60862 "preproc.c"
break;
case 2905: /* bare_label_keyword: CONSTRAINT */
#line 16067 "preproc.y"
{
(yyval.str) = mm_strdup("constraint");
}
#line 60870 "preproc.c"
break;
case 2906: /* bare_label_keyword: CONSTRAINTS */
#line 16071 "preproc.y"
{
(yyval.str) = mm_strdup("constraints");
}
#line 60878 "preproc.c"
break;
case 2907: /* bare_label_keyword: CONTENT_P */
#line 16075 "preproc.y"
{
(yyval.str) = mm_strdup("content");
}
#line 60886 "preproc.c"
break;
case 2908: /* bare_label_keyword: CONTINUE_P */
#line 16079 "preproc.y"
{
(yyval.str) = mm_strdup("continue");
}
#line 60894 "preproc.c"
break;
case 2909: /* bare_label_keyword: CONVERSION_P */
#line 16083 "preproc.y"
{
(yyval.str) = mm_strdup("conversion");
}
#line 60902 "preproc.c"
break;
case 2910: /* bare_label_keyword: COPY */
#line 16087 "preproc.y"
{
(yyval.str) = mm_strdup("copy");
}
#line 60910 "preproc.c"
break;
case 2911: /* bare_label_keyword: COST */
#line 16091 "preproc.y"
{
(yyval.str) = mm_strdup("cost");
}
#line 60918 "preproc.c"
break;
case 2912: /* bare_label_keyword: CROSS */
#line 16095 "preproc.y"
{
(yyval.str) = mm_strdup("cross");
}
#line 60926 "preproc.c"
break;
case 2913: /* bare_label_keyword: CSV */
#line 16099 "preproc.y"
{
(yyval.str) = mm_strdup("csv");
}
#line 60934 "preproc.c"
break;
case 2914: /* bare_label_keyword: CUBE */
#line 16103 "preproc.y"
{
(yyval.str) = mm_strdup("cube");
}
#line 60942 "preproc.c"
break;
case 2915: /* bare_label_keyword: CURRENT_P */
#line 16107 "preproc.y"
{
(yyval.str) = mm_strdup("current");
}
#line 60950 "preproc.c"
break;
case 2916: /* bare_label_keyword: CURRENT_CATALOG */
#line 16111 "preproc.y"
{
(yyval.str) = mm_strdup("current_catalog");
}
#line 60958 "preproc.c"
break;
case 2917: /* bare_label_keyword: CURRENT_DATE */
#line 16115 "preproc.y"
{
(yyval.str) = mm_strdup("current_date");
}
#line 60966 "preproc.c"
break;
case 2918: /* bare_label_keyword: CURRENT_ROLE */
#line 16119 "preproc.y"
{
(yyval.str) = mm_strdup("current_role");
}
#line 60974 "preproc.c"
break;
case 2919: /* bare_label_keyword: CURRENT_SCHEMA */
#line 16123 "preproc.y"
{
(yyval.str) = mm_strdup("current_schema");
}
#line 60982 "preproc.c"
break;
case 2920: /* bare_label_keyword: CURRENT_TIME */
#line 16127 "preproc.y"
{
(yyval.str) = mm_strdup("current_time");
}
#line 60990 "preproc.c"
break;
case 2921: /* bare_label_keyword: CURRENT_TIMESTAMP */
#line 16131 "preproc.y"
{
(yyval.str) = mm_strdup("current_timestamp");
}
#line 60998 "preproc.c"
break;
case 2922: /* bare_label_keyword: CURRENT_USER */
#line 16135 "preproc.y"
{
(yyval.str) = mm_strdup("current_user");
}
#line 61006 "preproc.c"
break;
case 2923: /* bare_label_keyword: CURSOR */
#line 16139 "preproc.y"
{
(yyval.str) = mm_strdup("cursor");
}
#line 61014 "preproc.c"
break;
case 2924: /* bare_label_keyword: CYCLE */
#line 16143 "preproc.y"
{
(yyval.str) = mm_strdup("cycle");
}
#line 61022 "preproc.c"
break;
case 2925: /* bare_label_keyword: DATA_P */
#line 16147 "preproc.y"
{
(yyval.str) = mm_strdup("data");
}
#line 61030 "preproc.c"
break;
case 2926: /* bare_label_keyword: DATABASE */
#line 16151 "preproc.y"
{
(yyval.str) = mm_strdup("database");
}
#line 61038 "preproc.c"
break;
case 2927: /* bare_label_keyword: DEALLOCATE */
#line 16155 "preproc.y"
{
(yyval.str) = mm_strdup("deallocate");
}
#line 61046 "preproc.c"
break;
case 2928: /* bare_label_keyword: DEC */
#line 16159 "preproc.y"
{
(yyval.str) = mm_strdup("dec");
}
#line 61054 "preproc.c"
break;
case 2929: /* bare_label_keyword: DECIMAL_P */
#line 16163 "preproc.y"
{
(yyval.str) = mm_strdup("decimal");
}
#line 61062 "preproc.c"
break;
case 2930: /* bare_label_keyword: DECLARE */
#line 16167 "preproc.y"
{
(yyval.str) = mm_strdup("declare");
}
#line 61070 "preproc.c"
break;
case 2931: /* bare_label_keyword: DEFAULT */
#line 16171 "preproc.y"
{
(yyval.str) = mm_strdup("default");
}
#line 61078 "preproc.c"
break;
case 2932: /* bare_label_keyword: DEFAULTS */
#line 16175 "preproc.y"
{
(yyval.str) = mm_strdup("defaults");
}
#line 61086 "preproc.c"
break;
case 2933: /* bare_label_keyword: DEFERRABLE */
#line 16179 "preproc.y"
{
(yyval.str) = mm_strdup("deferrable");
}
#line 61094 "preproc.c"
break;
case 2934: /* bare_label_keyword: DEFERRED */
#line 16183 "preproc.y"
{
(yyval.str) = mm_strdup("deferred");
}
#line 61102 "preproc.c"
break;
case 2935: /* bare_label_keyword: DEFINER */
#line 16187 "preproc.y"
{
(yyval.str) = mm_strdup("definer");
}
#line 61110 "preproc.c"
break;
case 2936: /* bare_label_keyword: DELETE_P */
#line 16191 "preproc.y"
{
(yyval.str) = mm_strdup("delete");
}
#line 61118 "preproc.c"
break;
case 2937: /* bare_label_keyword: DELIMITER */
#line 16195 "preproc.y"
{
(yyval.str) = mm_strdup("delimiter");
}
#line 61126 "preproc.c"
break;
case 2938: /* bare_label_keyword: DELIMITERS */
#line 16199 "preproc.y"
{
(yyval.str) = mm_strdup("delimiters");
}
#line 61134 "preproc.c"
break;
case 2939: /* bare_label_keyword: DEPENDS */
#line 16203 "preproc.y"
{
(yyval.str) = mm_strdup("depends");
}
#line 61142 "preproc.c"
break;
case 2940: /* bare_label_keyword: DEPTH */
#line 16207 "preproc.y"
{
(yyval.str) = mm_strdup("depth");
}
#line 61150 "preproc.c"
break;
case 2941: /* bare_label_keyword: DESC */
#line 16211 "preproc.y"
{
(yyval.str) = mm_strdup("desc");
}
#line 61158 "preproc.c"
break;
case 2942: /* bare_label_keyword: DETACH */
#line 16215 "preproc.y"
{
(yyval.str) = mm_strdup("detach");
}
#line 61166 "preproc.c"
break;
case 2943: /* bare_label_keyword: DICTIONARY */
#line 16219 "preproc.y"
{
(yyval.str) = mm_strdup("dictionary");
}
#line 61174 "preproc.c"
break;
case 2944: /* bare_label_keyword: DISABLE_P */
#line 16223 "preproc.y"
{
(yyval.str) = mm_strdup("disable");
}
#line 61182 "preproc.c"
break;
case 2945: /* bare_label_keyword: DISCARD */
#line 16227 "preproc.y"
{
(yyval.str) = mm_strdup("discard");
}
#line 61190 "preproc.c"
break;
case 2946: /* bare_label_keyword: DISTINCT */
#line 16231 "preproc.y"
{
(yyval.str) = mm_strdup("distinct");
}
#line 61198 "preproc.c"
break;
case 2947: /* bare_label_keyword: DO */
#line 16235 "preproc.y"
{
(yyval.str) = mm_strdup("do");
}
#line 61206 "preproc.c"
break;
case 2948: /* bare_label_keyword: DOCUMENT_P */
#line 16239 "preproc.y"
{
(yyval.str) = mm_strdup("document");
}
#line 61214 "preproc.c"
break;
case 2949: /* bare_label_keyword: DOMAIN_P */
#line 16243 "preproc.y"
{
(yyval.str) = mm_strdup("domain");
}
#line 61222 "preproc.c"
break;
case 2950: /* bare_label_keyword: DOUBLE_P */
#line 16247 "preproc.y"
{
(yyval.str) = mm_strdup("double");
}
#line 61230 "preproc.c"
break;
case 2951: /* bare_label_keyword: DROP */
#line 16251 "preproc.y"
{
(yyval.str) = mm_strdup("drop");
}
#line 61238 "preproc.c"
break;
case 2952: /* bare_label_keyword: EACH */
#line 16255 "preproc.y"
{
(yyval.str) = mm_strdup("each");
}
#line 61246 "preproc.c"
break;
case 2953: /* bare_label_keyword: ELSE */
#line 16259 "preproc.y"
{
(yyval.str) = mm_strdup("else");
}
#line 61254 "preproc.c"
break;
case 2954: /* bare_label_keyword: ENABLE_P */
#line 16263 "preproc.y"
{
(yyval.str) = mm_strdup("enable");
}
#line 61262 "preproc.c"
break;
case 2955: /* bare_label_keyword: ENCODING */
#line 16267 "preproc.y"
{
(yyval.str) = mm_strdup("encoding");
}
#line 61270 "preproc.c"
break;
case 2956: /* bare_label_keyword: ENCRYPTED */
#line 16271 "preproc.y"
{
(yyval.str) = mm_strdup("encrypted");
}
#line 61278 "preproc.c"
break;
case 2957: /* bare_label_keyword: END_P */
#line 16275 "preproc.y"
{
(yyval.str) = mm_strdup("end");
}
#line 61286 "preproc.c"
break;
case 2958: /* bare_label_keyword: ENUM_P */
#line 16279 "preproc.y"
{
(yyval.str) = mm_strdup("enum");
}
#line 61294 "preproc.c"
break;
case 2959: /* bare_label_keyword: ESCAPE */
#line 16283 "preproc.y"
{
(yyval.str) = mm_strdup("escape");
}
#line 61302 "preproc.c"
break;
case 2960: /* bare_label_keyword: EVENT */
#line 16287 "preproc.y"
{
(yyval.str) = mm_strdup("event");
}
#line 61310 "preproc.c"
break;
case 2961: /* bare_label_keyword: EXCLUDE */
#line 16291 "preproc.y"
{
(yyval.str) = mm_strdup("exclude");
}
#line 61318 "preproc.c"
break;
case 2962: /* bare_label_keyword: EXCLUDING */
#line 16295 "preproc.y"
{
(yyval.str) = mm_strdup("excluding");
}
#line 61326 "preproc.c"
break;
case 2963: /* bare_label_keyword: EXCLUSIVE */
#line 16299 "preproc.y"
{
(yyval.str) = mm_strdup("exclusive");
}
#line 61334 "preproc.c"
break;
case 2964: /* bare_label_keyword: EXECUTE */
#line 16303 "preproc.y"
{
(yyval.str) = mm_strdup("execute");
}
#line 61342 "preproc.c"
break;
case 2965: /* bare_label_keyword: EXISTS */
#line 16307 "preproc.y"
{
(yyval.str) = mm_strdup("exists");
}
#line 61350 "preproc.c"
break;
case 2966: /* bare_label_keyword: EXPLAIN */
#line 16311 "preproc.y"
{
(yyval.str) = mm_strdup("explain");
}
#line 61358 "preproc.c"
break;
case 2967: /* bare_label_keyword: EXPRESSION */
#line 16315 "preproc.y"
{
(yyval.str) = mm_strdup("expression");
}
#line 61366 "preproc.c"
break;
case 2968: /* bare_label_keyword: EXTENSION */
#line 16319 "preproc.y"
{
(yyval.str) = mm_strdup("extension");
}
#line 61374 "preproc.c"
break;
case 2969: /* bare_label_keyword: EXTERNAL */
#line 16323 "preproc.y"
{
(yyval.str) = mm_strdup("external");
}
#line 61382 "preproc.c"
break;
case 2970: /* bare_label_keyword: EXTRACT */
#line 16327 "preproc.y"
{
(yyval.str) = mm_strdup("extract");
}
#line 61390 "preproc.c"
break;
case 2971: /* bare_label_keyword: FALSE_P */
#line 16331 "preproc.y"
{
(yyval.str) = mm_strdup("false");
}
#line 61398 "preproc.c"
break;
case 2972: /* bare_label_keyword: FAMILY */
#line 16335 "preproc.y"
{
(yyval.str) = mm_strdup("family");
}
#line 61406 "preproc.c"
break;
case 2973: /* bare_label_keyword: FINALIZE */
#line 16339 "preproc.y"
{
(yyval.str) = mm_strdup("finalize");
}
#line 61414 "preproc.c"
break;
case 2974: /* bare_label_keyword: FIRST_P */
#line 16343 "preproc.y"
{
(yyval.str) = mm_strdup("first");
}
#line 61422 "preproc.c"
break;
case 2975: /* bare_label_keyword: FLOAT_P */
#line 16347 "preproc.y"
{
(yyval.str) = mm_strdup("float");
}
#line 61430 "preproc.c"
break;
case 2976: /* bare_label_keyword: FOLLOWING */
#line 16351 "preproc.y"
{
(yyval.str) = mm_strdup("following");
}
#line 61438 "preproc.c"
break;
case 2977: /* bare_label_keyword: FORCE */
#line 16355 "preproc.y"
{
(yyval.str) = mm_strdup("force");
}
#line 61446 "preproc.c"
break;
case 2978: /* bare_label_keyword: FOREIGN */
#line 16359 "preproc.y"
{
(yyval.str) = mm_strdup("foreign");
}
#line 61454 "preproc.c"
break;
case 2979: /* bare_label_keyword: FORMAT */
#line 16363 "preproc.y"
{
(yyval.str) = mm_strdup("format");
}
#line 61462 "preproc.c"
break;
case 2980: /* bare_label_keyword: FORWARD */
#line 16367 "preproc.y"
{
(yyval.str) = mm_strdup("forward");
}
#line 61470 "preproc.c"
break;
case 2981: /* bare_label_keyword: FREEZE */
#line 16371 "preproc.y"
{
(yyval.str) = mm_strdup("freeze");
}
#line 61478 "preproc.c"
break;
case 2982: /* bare_label_keyword: FULL */
#line 16375 "preproc.y"
{
(yyval.str) = mm_strdup("full");
}
#line 61486 "preproc.c"
break;
case 2983: /* bare_label_keyword: FUNCTION */
#line 16379 "preproc.y"
{
(yyval.str) = mm_strdup("function");
}
#line 61494 "preproc.c"
break;
case 2984: /* bare_label_keyword: FUNCTIONS */
#line 16383 "preproc.y"
{
(yyval.str) = mm_strdup("functions");
}
#line 61502 "preproc.c"
break;
case 2985: /* bare_label_keyword: GENERATED */
#line 16387 "preproc.y"
{
(yyval.str) = mm_strdup("generated");
}
#line 61510 "preproc.c"
break;
case 2986: /* bare_label_keyword: GLOBAL */
#line 16391 "preproc.y"
{
(yyval.str) = mm_strdup("global");
}
#line 61518 "preproc.c"
break;
case 2987: /* bare_label_keyword: GRANTED */
#line 16395 "preproc.y"
{
(yyval.str) = mm_strdup("granted");
}
#line 61526 "preproc.c"
break;
case 2988: /* bare_label_keyword: GREATEST */
#line 16399 "preproc.y"
{
(yyval.str) = mm_strdup("greatest");
}
#line 61534 "preproc.c"
break;
case 2989: /* bare_label_keyword: GROUPING */
#line 16403 "preproc.y"
{
(yyval.str) = mm_strdup("grouping");
}
#line 61542 "preproc.c"
break;
case 2990: /* bare_label_keyword: GROUPS */
#line 16407 "preproc.y"
{
(yyval.str) = mm_strdup("groups");
}
#line 61550 "preproc.c"
break;
case 2991: /* bare_label_keyword: HANDLER */
#line 16411 "preproc.y"
{
(yyval.str) = mm_strdup("handler");
}
#line 61558 "preproc.c"
break;
case 2992: /* bare_label_keyword: HEADER_P */
#line 16415 "preproc.y"
{
(yyval.str) = mm_strdup("header");
}
#line 61566 "preproc.c"
break;
case 2993: /* bare_label_keyword: HOLD */
#line 16419 "preproc.y"
{
(yyval.str) = mm_strdup("hold");
}
#line 61574 "preproc.c"
break;
case 2994: /* bare_label_keyword: IDENTITY_P */
#line 16423 "preproc.y"
{
(yyval.str) = mm_strdup("identity");
}
#line 61582 "preproc.c"
break;
case 2995: /* bare_label_keyword: IF_P */
#line 16427 "preproc.y"
{
(yyval.str) = mm_strdup("if");
}
#line 61590 "preproc.c"
break;
case 2996: /* bare_label_keyword: ILIKE */
#line 16431 "preproc.y"
{
(yyval.str) = mm_strdup("ilike");
}
#line 61598 "preproc.c"
break;
case 2997: /* bare_label_keyword: IMMEDIATE */
#line 16435 "preproc.y"
{
(yyval.str) = mm_strdup("immediate");
}
#line 61606 "preproc.c"
break;
case 2998: /* bare_label_keyword: IMMUTABLE */
#line 16439 "preproc.y"
{
(yyval.str) = mm_strdup("immutable");
}
#line 61614 "preproc.c"
break;
case 2999: /* bare_label_keyword: IMPLICIT_P */
#line 16443 "preproc.y"
{
(yyval.str) = mm_strdup("implicit");
}
#line 61622 "preproc.c"
break;
case 3000: /* bare_label_keyword: IMPORT_P */
#line 16447 "preproc.y"
{
(yyval.str) = mm_strdup("import");
}
#line 61630 "preproc.c"
break;
case 3001: /* bare_label_keyword: IN_P */
#line 16451 "preproc.y"
{
(yyval.str) = mm_strdup("in");
}
#line 61638 "preproc.c"
break;
case 3002: /* bare_label_keyword: INCLUDE */
#line 16455 "preproc.y"
{
(yyval.str) = mm_strdup("include");
}
#line 61646 "preproc.c"
break;
case 3003: /* bare_label_keyword: INCLUDING */
#line 16459 "preproc.y"
{
(yyval.str) = mm_strdup("including");
}
#line 61654 "preproc.c"
break;
case 3004: /* bare_label_keyword: INCREMENT */
#line 16463 "preproc.y"
{
(yyval.str) = mm_strdup("increment");
}
#line 61662 "preproc.c"
break;
case 3005: /* bare_label_keyword: INDENT */
#line 16467 "preproc.y"
{
(yyval.str) = mm_strdup("indent");
}
#line 61670 "preproc.c"
break;
case 3006: /* bare_label_keyword: INDEX */
#line 16471 "preproc.y"
{
(yyval.str) = mm_strdup("index");
}
#line 61678 "preproc.c"
break;
case 3007: /* bare_label_keyword: INDEXES */
#line 16475 "preproc.y"
{
(yyval.str) = mm_strdup("indexes");
}
#line 61686 "preproc.c"
break;
case 3008: /* bare_label_keyword: INHERIT */
#line 16479 "preproc.y"
{
(yyval.str) = mm_strdup("inherit");
}
#line 61694 "preproc.c"
break;
case 3009: /* bare_label_keyword: INHERITS */
#line 16483 "preproc.y"
{
(yyval.str) = mm_strdup("inherits");
}
#line 61702 "preproc.c"
break;
case 3010: /* bare_label_keyword: INITIALLY */
#line 16487 "preproc.y"
{
(yyval.str) = mm_strdup("initially");
}
#line 61710 "preproc.c"
break;
case 3011: /* bare_label_keyword: INLINE_P */
#line 16491 "preproc.y"
{
(yyval.str) = mm_strdup("inline");
}
#line 61718 "preproc.c"
break;
case 3012: /* bare_label_keyword: INNER_P */
#line 16495 "preproc.y"
{
(yyval.str) = mm_strdup("inner");
}
#line 61726 "preproc.c"
break;
case 3013: /* bare_label_keyword: INOUT */
#line 16499 "preproc.y"
{
(yyval.str) = mm_strdup("inout");
}
#line 61734 "preproc.c"
break;
case 3014: /* bare_label_keyword: INPUT_P */
#line 16503 "preproc.y"
{
(yyval.str) = mm_strdup("input");
}
#line 61742 "preproc.c"
break;
case 3015: /* bare_label_keyword: INSENSITIVE */
#line 16507 "preproc.y"
{
(yyval.str) = mm_strdup("insensitive");
}
#line 61750 "preproc.c"
break;
case 3016: /* bare_label_keyword: INSERT */
#line 16511 "preproc.y"
{
(yyval.str) = mm_strdup("insert");
}
#line 61758 "preproc.c"
break;
case 3017: /* bare_label_keyword: INSTEAD */
#line 16515 "preproc.y"
{
(yyval.str) = mm_strdup("instead");
}
#line 61766 "preproc.c"
break;
case 3018: /* bare_label_keyword: INT_P */
#line 16519 "preproc.y"
{
(yyval.str) = mm_strdup("int");
}
#line 61774 "preproc.c"
break;
case 3019: /* bare_label_keyword: INTEGER */
#line 16523 "preproc.y"
{
(yyval.str) = mm_strdup("integer");
}
#line 61782 "preproc.c"
break;
case 3020: /* bare_label_keyword: INTERVAL */
#line 16527 "preproc.y"
{
(yyval.str) = mm_strdup("interval");
}
#line 61790 "preproc.c"
break;
case 3021: /* bare_label_keyword: INVOKER */
#line 16531 "preproc.y"
{
(yyval.str) = mm_strdup("invoker");
}
#line 61798 "preproc.c"
break;
case 3022: /* bare_label_keyword: IS */
#line 16535 "preproc.y"
{
(yyval.str) = mm_strdup("is");
}
#line 61806 "preproc.c"
break;
case 3023: /* bare_label_keyword: ISOLATION */
#line 16539 "preproc.y"
{
(yyval.str) = mm_strdup("isolation");
}
#line 61814 "preproc.c"
break;
case 3024: /* bare_label_keyword: JOIN */
#line 16543 "preproc.y"
{
(yyval.str) = mm_strdup("join");
}
#line 61822 "preproc.c"
break;
case 3025: /* bare_label_keyword: JSON */
#line 16547 "preproc.y"
{
(yyval.str) = mm_strdup("json");
}
#line 61830 "preproc.c"
break;
case 3026: /* bare_label_keyword: JSON_ARRAY */
#line 16551 "preproc.y"
{
(yyval.str) = mm_strdup("json_array");
}
#line 61838 "preproc.c"
break;
case 3027: /* bare_label_keyword: JSON_ARRAYAGG */
#line 16555 "preproc.y"
{
(yyval.str) = mm_strdup("json_arrayagg");
}
#line 61846 "preproc.c"
break;
case 3028: /* bare_label_keyword: JSON_OBJECT */
#line 16559 "preproc.y"
{
(yyval.str) = mm_strdup("json_object");
}
#line 61854 "preproc.c"
break;
case 3029: /* bare_label_keyword: JSON_OBJECTAGG */
#line 16563 "preproc.y"
{
(yyval.str) = mm_strdup("json_objectagg");
}
#line 61862 "preproc.c"
break;
case 3030: /* bare_label_keyword: KEY */
#line 16567 "preproc.y"
{
(yyval.str) = mm_strdup("key");
}
#line 61870 "preproc.c"
break;
case 3031: /* bare_label_keyword: KEYS */
#line 16571 "preproc.y"
{
(yyval.str) = mm_strdup("keys");
}
#line 61878 "preproc.c"
break;
case 3032: /* bare_label_keyword: LABEL */
#line 16575 "preproc.y"
{
(yyval.str) = mm_strdup("label");
}
#line 61886 "preproc.c"
break;
case 3033: /* bare_label_keyword: LANGUAGE */
#line 16579 "preproc.y"
{
(yyval.str) = mm_strdup("language");
}
#line 61894 "preproc.c"
break;
case 3034: /* bare_label_keyword: LARGE_P */
#line 16583 "preproc.y"
{
(yyval.str) = mm_strdup("large");
}
#line 61902 "preproc.c"
break;
case 3035: /* bare_label_keyword: LAST_P */
#line 16587 "preproc.y"
{
(yyval.str) = mm_strdup("last");
}
#line 61910 "preproc.c"
break;
case 3036: /* bare_label_keyword: LATERAL_P */
#line 16591 "preproc.y"
{
(yyval.str) = mm_strdup("lateral");
}
#line 61918 "preproc.c"
break;
case 3037: /* bare_label_keyword: LEADING */
#line 16595 "preproc.y"
{
(yyval.str) = mm_strdup("leading");
}
#line 61926 "preproc.c"
break;
case 3038: /* bare_label_keyword: LEAKPROOF */
#line 16599 "preproc.y"
{
(yyval.str) = mm_strdup("leakproof");
}
#line 61934 "preproc.c"
break;
case 3039: /* bare_label_keyword: LEAST */
#line 16603 "preproc.y"
{
(yyval.str) = mm_strdup("least");
}
#line 61942 "preproc.c"
break;
case 3040: /* bare_label_keyword: LEFT */
#line 16607 "preproc.y"
{
(yyval.str) = mm_strdup("left");
}
#line 61950 "preproc.c"
break;
case 3041: /* bare_label_keyword: LEVEL */
#line 16611 "preproc.y"
{
(yyval.str) = mm_strdup("level");
}
#line 61958 "preproc.c"
break;
case 3042: /* bare_label_keyword: LIKE */
#line 16615 "preproc.y"
{
(yyval.str) = mm_strdup("like");
}
#line 61966 "preproc.c"
break;
case 3043: /* bare_label_keyword: LISTEN */
#line 16619 "preproc.y"
{
(yyval.str) = mm_strdup("listen");
}
#line 61974 "preproc.c"
break;
case 3044: /* bare_label_keyword: LOAD */
#line 16623 "preproc.y"
{
(yyval.str) = mm_strdup("load");
}
#line 61982 "preproc.c"
break;
case 3045: /* bare_label_keyword: LOCAL */
#line 16627 "preproc.y"
{
(yyval.str) = mm_strdup("local");
}
#line 61990 "preproc.c"
break;
case 3046: /* bare_label_keyword: LOCALTIME */
#line 16631 "preproc.y"
{
(yyval.str) = mm_strdup("localtime");
}
#line 61998 "preproc.c"
break;
case 3047: /* bare_label_keyword: LOCALTIMESTAMP */
#line 16635 "preproc.y"
{
(yyval.str) = mm_strdup("localtimestamp");
}
#line 62006 "preproc.c"
break;
case 3048: /* bare_label_keyword: LOCATION */
#line 16639 "preproc.y"
{
(yyval.str) = mm_strdup("location");
}
#line 62014 "preproc.c"
break;
case 3049: /* bare_label_keyword: LOCK_P */
#line 16643 "preproc.y"
{
(yyval.str) = mm_strdup("lock");
}
#line 62022 "preproc.c"
break;
case 3050: /* bare_label_keyword: LOCKED */
#line 16647 "preproc.y"
{
(yyval.str) = mm_strdup("locked");
}
#line 62030 "preproc.c"
break;
case 3051: /* bare_label_keyword: LOGGED */
#line 16651 "preproc.y"
{
(yyval.str) = mm_strdup("logged");
}
#line 62038 "preproc.c"
break;
case 3052: /* bare_label_keyword: MAPPING */
#line 16655 "preproc.y"
{
(yyval.str) = mm_strdup("mapping");
}
#line 62046 "preproc.c"
break;
case 3053: /* bare_label_keyword: MATCH */
#line 16659 "preproc.y"
{
(yyval.str) = mm_strdup("match");
}
#line 62054 "preproc.c"
break;
case 3054: /* bare_label_keyword: MATCHED */
#line 16663 "preproc.y"
{
(yyval.str) = mm_strdup("matched");
}
#line 62062 "preproc.c"
break;
case 3055: /* bare_label_keyword: MATERIALIZED */
#line 16667 "preproc.y"
{
(yyval.str) = mm_strdup("materialized");
}
#line 62070 "preproc.c"
break;
case 3056: /* bare_label_keyword: MAXVALUE */
#line 16671 "preproc.y"
{
(yyval.str) = mm_strdup("maxvalue");
}
#line 62078 "preproc.c"
break;
case 3057: /* bare_label_keyword: MERGE */
#line 16675 "preproc.y"
{
(yyval.str) = mm_strdup("merge");
}
#line 62086 "preproc.c"
break;
case 3058: /* bare_label_keyword: METHOD */
#line 16679 "preproc.y"
{
(yyval.str) = mm_strdup("method");
}
#line 62094 "preproc.c"
break;
case 3059: /* bare_label_keyword: MINVALUE */
#line 16683 "preproc.y"
{
(yyval.str) = mm_strdup("minvalue");
}
#line 62102 "preproc.c"
break;
case 3060: /* bare_label_keyword: MODE */
#line 16687 "preproc.y"
{
(yyval.str) = mm_strdup("mode");
}
#line 62110 "preproc.c"
break;
case 3061: /* bare_label_keyword: MOVE */
#line 16691 "preproc.y"
{
(yyval.str) = mm_strdup("move");
}
#line 62118 "preproc.c"
break;
case 3062: /* bare_label_keyword: NAME_P */
#line 16695 "preproc.y"
{
(yyval.str) = mm_strdup("name");
}
#line 62126 "preproc.c"
break;
case 3063: /* bare_label_keyword: NAMES */
#line 16699 "preproc.y"
{
(yyval.str) = mm_strdup("names");
}
#line 62134 "preproc.c"
break;
case 3064: /* bare_label_keyword: NATIONAL */
#line 16703 "preproc.y"
{
(yyval.str) = mm_strdup("national");
}
#line 62142 "preproc.c"
break;
case 3065: /* bare_label_keyword: NATURAL */
#line 16707 "preproc.y"
{
(yyval.str) = mm_strdup("natural");
}
#line 62150 "preproc.c"
break;
case 3066: /* bare_label_keyword: NCHAR */
#line 16711 "preproc.y"
{
(yyval.str) = mm_strdup("nchar");
}
#line 62158 "preproc.c"
break;
case 3067: /* bare_label_keyword: NEW */
#line 16715 "preproc.y"
{
(yyval.str) = mm_strdup("new");
}
#line 62166 "preproc.c"
break;
case 3068: /* bare_label_keyword: NEXT */
#line 16719 "preproc.y"
{
(yyval.str) = mm_strdup("next");
}
#line 62174 "preproc.c"
break;
case 3069: /* bare_label_keyword: NFC */
#line 16723 "preproc.y"
{
(yyval.str) = mm_strdup("nfc");
}
#line 62182 "preproc.c"
break;
case 3070: /* bare_label_keyword: NFD */
#line 16727 "preproc.y"
{
(yyval.str) = mm_strdup("nfd");
}
#line 62190 "preproc.c"
break;
case 3071: /* bare_label_keyword: NFKC */
#line 16731 "preproc.y"
{
(yyval.str) = mm_strdup("nfkc");
}
#line 62198 "preproc.c"
break;
case 3072: /* bare_label_keyword: NFKD */
#line 16735 "preproc.y"
{
(yyval.str) = mm_strdup("nfkd");
}
#line 62206 "preproc.c"
break;
case 3073: /* bare_label_keyword: NO */
#line 16739 "preproc.y"
{
(yyval.str) = mm_strdup("no");
}
#line 62214 "preproc.c"
break;
case 3074: /* bare_label_keyword: NONE */
#line 16743 "preproc.y"
{
(yyval.str) = mm_strdup("none");
}
#line 62222 "preproc.c"
break;
case 3075: /* bare_label_keyword: NORMALIZE */
#line 16747 "preproc.y"
{
(yyval.str) = mm_strdup("normalize");
}
#line 62230 "preproc.c"
break;
case 3076: /* bare_label_keyword: NORMALIZED */
#line 16751 "preproc.y"
{
(yyval.str) = mm_strdup("normalized");
}
#line 62238 "preproc.c"
break;
case 3077: /* bare_label_keyword: NOT */
#line 16755 "preproc.y"
{
(yyval.str) = mm_strdup("not");
}
#line 62246 "preproc.c"
break;
case 3078: /* bare_label_keyword: NOTHING */
#line 16759 "preproc.y"
{
(yyval.str) = mm_strdup("nothing");
}
#line 62254 "preproc.c"
break;
case 3079: /* bare_label_keyword: NOTIFY */
#line 16763 "preproc.y"
{
(yyval.str) = mm_strdup("notify");
}
#line 62262 "preproc.c"
break;
case 3080: /* bare_label_keyword: NOWAIT */
#line 16767 "preproc.y"
{
(yyval.str) = mm_strdup("nowait");
}
#line 62270 "preproc.c"
break;
case 3081: /* bare_label_keyword: NULL_P */
#line 16771 "preproc.y"
{
(yyval.str) = mm_strdup("null");
}
#line 62278 "preproc.c"
break;
case 3082: /* bare_label_keyword: NULLIF */
#line 16775 "preproc.y"
{
(yyval.str) = mm_strdup("nullif");
}
#line 62286 "preproc.c"
break;
case 3083: /* bare_label_keyword: NULLS_P */
#line 16779 "preproc.y"
{
(yyval.str) = mm_strdup("nulls");
}
#line 62294 "preproc.c"
break;
case 3084: /* bare_label_keyword: NUMERIC */
#line 16783 "preproc.y"
{
(yyval.str) = mm_strdup("numeric");
}
#line 62302 "preproc.c"
break;
case 3085: /* bare_label_keyword: OBJECT_P */
#line 16787 "preproc.y"
{
(yyval.str) = mm_strdup("object");
}
#line 62310 "preproc.c"
break;
case 3086: /* bare_label_keyword: OF */
#line 16791 "preproc.y"
{
(yyval.str) = mm_strdup("of");
}
#line 62318 "preproc.c"
break;
case 3087: /* bare_label_keyword: OFF */
#line 16795 "preproc.y"
{
(yyval.str) = mm_strdup("off");
}
#line 62326 "preproc.c"
break;
case 3088: /* bare_label_keyword: OIDS */
#line 16799 "preproc.y"
{
(yyval.str) = mm_strdup("oids");
}
#line 62334 "preproc.c"
break;
case 3089: /* bare_label_keyword: OLD */
#line 16803 "preproc.y"
{
(yyval.str) = mm_strdup("old");
}
#line 62342 "preproc.c"
break;
case 3090: /* bare_label_keyword: ONLY */
#line 16807 "preproc.y"
{
(yyval.str) = mm_strdup("only");
}
#line 62350 "preproc.c"
break;
case 3091: /* bare_label_keyword: OPERATOR */
#line 16811 "preproc.y"
{
(yyval.str) = mm_strdup("operator");
}
#line 62358 "preproc.c"
break;
case 3092: /* bare_label_keyword: OPTION */
#line 16815 "preproc.y"
{
(yyval.str) = mm_strdup("option");
}
#line 62366 "preproc.c"
break;
case 3093: /* bare_label_keyword: OPTIONS */
#line 16819 "preproc.y"
{
(yyval.str) = mm_strdup("options");
}
#line 62374 "preproc.c"
break;
case 3094: /* bare_label_keyword: OR */
#line 16823 "preproc.y"
{
(yyval.str) = mm_strdup("or");
}
#line 62382 "preproc.c"
break;
case 3095: /* bare_label_keyword: ORDINALITY */
#line 16827 "preproc.y"
{
(yyval.str) = mm_strdup("ordinality");
}
#line 62390 "preproc.c"
break;
case 3096: /* bare_label_keyword: OTHERS */
#line 16831 "preproc.y"
{
(yyval.str) = mm_strdup("others");
}
#line 62398 "preproc.c"
break;
case 3097: /* bare_label_keyword: OUT_P */
#line 16835 "preproc.y"
{
(yyval.str) = mm_strdup("out");
}
#line 62406 "preproc.c"
break;
case 3098: /* bare_label_keyword: OUTER_P */
#line 16839 "preproc.y"
{
(yyval.str) = mm_strdup("outer");
}
#line 62414 "preproc.c"
break;
case 3099: /* bare_label_keyword: OVERLAY */
#line 16843 "preproc.y"
{
(yyval.str) = mm_strdup("overlay");
}
#line 62422 "preproc.c"
break;
case 3100: /* bare_label_keyword: OVERRIDING */
#line 16847 "preproc.y"
{
(yyval.str) = mm_strdup("overriding");
}
#line 62430 "preproc.c"
break;
case 3101: /* bare_label_keyword: OWNED */
#line 16851 "preproc.y"
{
(yyval.str) = mm_strdup("owned");
}
#line 62438 "preproc.c"
break;
case 3102: /* bare_label_keyword: OWNER */
#line 16855 "preproc.y"
{
(yyval.str) = mm_strdup("owner");
}
#line 62446 "preproc.c"
break;
case 3103: /* bare_label_keyword: PARALLEL */
#line 16859 "preproc.y"
{
(yyval.str) = mm_strdup("parallel");
}
#line 62454 "preproc.c"
break;
case 3104: /* bare_label_keyword: PARAMETER */
#line 16863 "preproc.y"
{
(yyval.str) = mm_strdup("parameter");
}
#line 62462 "preproc.c"
break;
case 3105: /* bare_label_keyword: PARSER */
#line 16867 "preproc.y"
{
(yyval.str) = mm_strdup("parser");
}
#line 62470 "preproc.c"
break;
case 3106: /* bare_label_keyword: PARTIAL */
#line 16871 "preproc.y"
{
(yyval.str) = mm_strdup("partial");
}
#line 62478 "preproc.c"
break;
case 3107: /* bare_label_keyword: PARTITION */
#line 16875 "preproc.y"
{
(yyval.str) = mm_strdup("partition");
}
#line 62486 "preproc.c"
break;
case 3108: /* bare_label_keyword: PASSING */
#line 16879 "preproc.y"
{
(yyval.str) = mm_strdup("passing");
}
#line 62494 "preproc.c"
break;
case 3109: /* bare_label_keyword: PASSWORD */
#line 16883 "preproc.y"
{
(yyval.str) = mm_strdup("password");
}
#line 62502 "preproc.c"
break;
case 3110: /* bare_label_keyword: PLACING */
#line 16887 "preproc.y"
{
(yyval.str) = mm_strdup("placing");
}
#line 62510 "preproc.c"
break;
case 3111: /* bare_label_keyword: PLANS */
#line 16891 "preproc.y"
{
(yyval.str) = mm_strdup("plans");
}
#line 62518 "preproc.c"
break;
case 3112: /* bare_label_keyword: POLICY */
#line 16895 "preproc.y"
{
(yyval.str) = mm_strdup("policy");
}
#line 62526 "preproc.c"
break;
case 3113: /* bare_label_keyword: POSITION */
#line 16899 "preproc.y"
{
(yyval.str) = mm_strdup("position");
}
#line 62534 "preproc.c"
break;
case 3114: /* bare_label_keyword: PRECEDING */
#line 16903 "preproc.y"
{
(yyval.str) = mm_strdup("preceding");
}
#line 62542 "preproc.c"
break;
case 3115: /* bare_label_keyword: PREPARE */
#line 16907 "preproc.y"
{
(yyval.str) = mm_strdup("prepare");
}
#line 62550 "preproc.c"
break;
case 3116: /* bare_label_keyword: PREPARED */
#line 16911 "preproc.y"
{
(yyval.str) = mm_strdup("prepared");
}
#line 62558 "preproc.c"
break;
case 3117: /* bare_label_keyword: PRESERVE */
#line 16915 "preproc.y"
{
(yyval.str) = mm_strdup("preserve");
}
#line 62566 "preproc.c"
break;
case 3118: /* bare_label_keyword: PRIMARY */
#line 16919 "preproc.y"
{
(yyval.str) = mm_strdup("primary");
}
#line 62574 "preproc.c"
break;
case 3119: /* bare_label_keyword: PRIOR */
#line 16923 "preproc.y"
{
(yyval.str) = mm_strdup("prior");
}
#line 62582 "preproc.c"
break;
case 3120: /* bare_label_keyword: PRIVILEGES */
#line 16927 "preproc.y"
{
(yyval.str) = mm_strdup("privileges");
}
#line 62590 "preproc.c"
break;
case 3121: /* bare_label_keyword: PROCEDURAL */
#line 16931 "preproc.y"
{
(yyval.str) = mm_strdup("procedural");
}
#line 62598 "preproc.c"
break;
case 3122: /* bare_label_keyword: PROCEDURE */
#line 16935 "preproc.y"
{
(yyval.str) = mm_strdup("procedure");
}
#line 62606 "preproc.c"
break;
case 3123: /* bare_label_keyword: PROCEDURES */
#line 16939 "preproc.y"
{
(yyval.str) = mm_strdup("procedures");
}
#line 62614 "preproc.c"
break;
case 3124: /* bare_label_keyword: PROGRAM */
#line 16943 "preproc.y"
{
(yyval.str) = mm_strdup("program");
}
#line 62622 "preproc.c"
break;
case 3125: /* bare_label_keyword: PUBLICATION */
#line 16947 "preproc.y"
{
(yyval.str) = mm_strdup("publication");
}
#line 62630 "preproc.c"
break;
case 3126: /* bare_label_keyword: QUOTE */
#line 16951 "preproc.y"
{
(yyval.str) = mm_strdup("quote");
}
#line 62638 "preproc.c"
break;
case 3127: /* bare_label_keyword: RANGE */
#line 16955 "preproc.y"
{
(yyval.str) = mm_strdup("range");
}
#line 62646 "preproc.c"
break;
case 3128: /* bare_label_keyword: READ */
#line 16959 "preproc.y"
{
(yyval.str) = mm_strdup("read");
}
#line 62654 "preproc.c"
break;
case 3129: /* bare_label_keyword: REAL */
#line 16963 "preproc.y"
{
(yyval.str) = mm_strdup("real");
}
#line 62662 "preproc.c"
break;
case 3130: /* bare_label_keyword: REASSIGN */
#line 16967 "preproc.y"
{
(yyval.str) = mm_strdup("reassign");
}
#line 62670 "preproc.c"
break;
case 3131: /* bare_label_keyword: RECHECK */
#line 16971 "preproc.y"
{
(yyval.str) = mm_strdup("recheck");
}
#line 62678 "preproc.c"
break;
case 3132: /* bare_label_keyword: RECURSIVE */
#line 16975 "preproc.y"
{
(yyval.str) = mm_strdup("recursive");
}
#line 62686 "preproc.c"
break;
case 3133: /* bare_label_keyword: REF_P */
#line 16979 "preproc.y"
{
(yyval.str) = mm_strdup("ref");
}
#line 62694 "preproc.c"
break;
case 3134: /* bare_label_keyword: REFERENCES */
#line 16983 "preproc.y"
{
(yyval.str) = mm_strdup("references");
}
#line 62702 "preproc.c"
break;
case 3135: /* bare_label_keyword: REFERENCING */
#line 16987 "preproc.y"
{
(yyval.str) = mm_strdup("referencing");
}
#line 62710 "preproc.c"
break;
case 3136: /* bare_label_keyword: REFRESH */
#line 16991 "preproc.y"
{
(yyval.str) = mm_strdup("refresh");
}
#line 62718 "preproc.c"
break;
case 3137: /* bare_label_keyword: REINDEX */
#line 16995 "preproc.y"
{
(yyval.str) = mm_strdup("reindex");
}
#line 62726 "preproc.c"
break;
case 3138: /* bare_label_keyword: RELATIVE_P */
#line 16999 "preproc.y"
{
(yyval.str) = mm_strdup("relative");
}
#line 62734 "preproc.c"
break;
case 3139: /* bare_label_keyword: RELEASE */
#line 17003 "preproc.y"
{
(yyval.str) = mm_strdup("release");
}
#line 62742 "preproc.c"
break;
case 3140: /* bare_label_keyword: RENAME */
#line 17007 "preproc.y"
{
(yyval.str) = mm_strdup("rename");
}
#line 62750 "preproc.c"
break;
case 3141: /* bare_label_keyword: REPEATABLE */
#line 17011 "preproc.y"
{
(yyval.str) = mm_strdup("repeatable");
}
#line 62758 "preproc.c"
break;
case 3142: /* bare_label_keyword: REPLACE */
#line 17015 "preproc.y"
{
(yyval.str) = mm_strdup("replace");
}
#line 62766 "preproc.c"
break;
case 3143: /* bare_label_keyword: REPLICA */
#line 17019 "preproc.y"
{
(yyval.str) = mm_strdup("replica");
}
#line 62774 "preproc.c"
break;
case 3144: /* bare_label_keyword: RESET */
#line 17023 "preproc.y"
{
(yyval.str) = mm_strdup("reset");
}
#line 62782 "preproc.c"
break;
case 3145: /* bare_label_keyword: RESTART */
#line 17027 "preproc.y"
{
(yyval.str) = mm_strdup("restart");
}
#line 62790 "preproc.c"
break;
case 3146: /* bare_label_keyword: RESTRICT */
#line 17031 "preproc.y"
{
(yyval.str) = mm_strdup("restrict");
}
#line 62798 "preproc.c"
break;
case 3147: /* bare_label_keyword: RETURN */
#line 17035 "preproc.y"
{
(yyval.str) = mm_strdup("return");
}
#line 62806 "preproc.c"
break;
case 3148: /* bare_label_keyword: RETURNS */
#line 17039 "preproc.y"
{
(yyval.str) = mm_strdup("returns");
}
#line 62814 "preproc.c"
break;
case 3149: /* bare_label_keyword: REVOKE */
#line 17043 "preproc.y"
{
(yyval.str) = mm_strdup("revoke");
}
#line 62822 "preproc.c"
break;
case 3150: /* bare_label_keyword: RIGHT */
#line 17047 "preproc.y"
{
(yyval.str) = mm_strdup("right");
}
#line 62830 "preproc.c"
break;
case 3151: /* bare_label_keyword: ROLE */
#line 17051 "preproc.y"
{
(yyval.str) = mm_strdup("role");
}
#line 62838 "preproc.c"
break;
case 3152: /* bare_label_keyword: ROLLBACK */
#line 17055 "preproc.y"
{
(yyval.str) = mm_strdup("rollback");
}
#line 62846 "preproc.c"
break;
case 3153: /* bare_label_keyword: ROLLUP */
#line 17059 "preproc.y"
{
(yyval.str) = mm_strdup("rollup");
}
#line 62854 "preproc.c"
break;
case 3154: /* bare_label_keyword: ROUTINE */
#line 17063 "preproc.y"
{
(yyval.str) = mm_strdup("routine");
}
#line 62862 "preproc.c"
break;
case 3155: /* bare_label_keyword: ROUTINES */
#line 17067 "preproc.y"
{
(yyval.str) = mm_strdup("routines");
}
#line 62870 "preproc.c"
break;
case 3156: /* bare_label_keyword: ROW */
#line 17071 "preproc.y"
{
(yyval.str) = mm_strdup("row");
}
#line 62878 "preproc.c"
break;
case 3157: /* bare_label_keyword: ROWS */
#line 17075 "preproc.y"
{
(yyval.str) = mm_strdup("rows");
}
#line 62886 "preproc.c"
break;
case 3158: /* bare_label_keyword: RULE */
#line 17079 "preproc.y"
{
(yyval.str) = mm_strdup("rule");
}
#line 62894 "preproc.c"
break;
case 3159: /* bare_label_keyword: SAVEPOINT */
#line 17083 "preproc.y"
{
(yyval.str) = mm_strdup("savepoint");
}
#line 62902 "preproc.c"
break;
case 3160: /* bare_label_keyword: SCALAR */
#line 17087 "preproc.y"
{
(yyval.str) = mm_strdup("scalar");
}
#line 62910 "preproc.c"
break;
case 3161: /* bare_label_keyword: SCHEMA */
#line 17091 "preproc.y"
{
(yyval.str) = mm_strdup("schema");
}
#line 62918 "preproc.c"
break;
case 3162: /* bare_label_keyword: SCHEMAS */
#line 17095 "preproc.y"
{
(yyval.str) = mm_strdup("schemas");
}
#line 62926 "preproc.c"
break;
case 3163: /* bare_label_keyword: SCROLL */
#line 17099 "preproc.y"
{
(yyval.str) = mm_strdup("scroll");
}
#line 62934 "preproc.c"
break;
case 3164: /* bare_label_keyword: SEARCH */
#line 17103 "preproc.y"
{
(yyval.str) = mm_strdup("search");
}
#line 62942 "preproc.c"
break;
case 3165: /* bare_label_keyword: SECURITY */
#line 17107 "preproc.y"
{
(yyval.str) = mm_strdup("security");
}
#line 62950 "preproc.c"
break;
case 3166: /* bare_label_keyword: SELECT */
#line 17111 "preproc.y"
{
(yyval.str) = mm_strdup("select");
}
#line 62958 "preproc.c"
break;
case 3167: /* bare_label_keyword: SEQUENCE */
#line 17115 "preproc.y"
{
(yyval.str) = mm_strdup("sequence");
}
#line 62966 "preproc.c"
break;
case 3168: /* bare_label_keyword: SEQUENCES */
#line 17119 "preproc.y"
{
(yyval.str) = mm_strdup("sequences");
}
#line 62974 "preproc.c"
break;
case 3169: /* bare_label_keyword: SERIALIZABLE */
#line 17123 "preproc.y"
{
(yyval.str) = mm_strdup("serializable");
}
#line 62982 "preproc.c"
break;
case 3170: /* bare_label_keyword: SERVER */
#line 17127 "preproc.y"
{
(yyval.str) = mm_strdup("server");
}
#line 62990 "preproc.c"
break;
case 3171: /* bare_label_keyword: SESSION */
#line 17131 "preproc.y"
{
(yyval.str) = mm_strdup("session");
}
#line 62998 "preproc.c"
break;
case 3172: /* bare_label_keyword: SESSION_USER */
#line 17135 "preproc.y"
{
(yyval.str) = mm_strdup("session_user");
}
#line 63006 "preproc.c"
break;
case 3173: /* bare_label_keyword: SET */
#line 17139 "preproc.y"
{
(yyval.str) = mm_strdup("set");
}
#line 63014 "preproc.c"
break;
case 3174: /* bare_label_keyword: SETOF */
#line 17143 "preproc.y"
{
(yyval.str) = mm_strdup("setof");
}
#line 63022 "preproc.c"
break;
case 3175: /* bare_label_keyword: SETS */
#line 17147 "preproc.y"
{
(yyval.str) = mm_strdup("sets");
}
#line 63030 "preproc.c"
break;
case 3176: /* bare_label_keyword: SHARE */
#line 17151 "preproc.y"
{
(yyval.str) = mm_strdup("share");
}
#line 63038 "preproc.c"
break;
case 3177: /* bare_label_keyword: SHOW */
#line 17155 "preproc.y"
{
(yyval.str) = mm_strdup("show");
}
#line 63046 "preproc.c"
break;
case 3178: /* bare_label_keyword: SIMILAR */
#line 17159 "preproc.y"
{
(yyval.str) = mm_strdup("similar");
}
#line 63054 "preproc.c"
break;
case 3179: /* bare_label_keyword: SIMPLE */
#line 17163 "preproc.y"
{
(yyval.str) = mm_strdup("simple");
}
#line 63062 "preproc.c"
break;
case 3180: /* bare_label_keyword: SKIP */
#line 17167 "preproc.y"
{
(yyval.str) = mm_strdup("skip");
}
#line 63070 "preproc.c"
break;
case 3181: /* bare_label_keyword: SMALLINT */
#line 17171 "preproc.y"
{
(yyval.str) = mm_strdup("smallint");
}
#line 63078 "preproc.c"
break;
case 3182: /* bare_label_keyword: SNAPSHOT */
#line 17175 "preproc.y"
{
(yyval.str) = mm_strdup("snapshot");
}
#line 63086 "preproc.c"
break;
case 3183: /* bare_label_keyword: SOME */
#line 17179 "preproc.y"
{
(yyval.str) = mm_strdup("some");
}
#line 63094 "preproc.c"
break;
case 3184: /* bare_label_keyword: SQL_P */
#line 17183 "preproc.y"
{
(yyval.str) = mm_strdup("sql");
}
#line 63102 "preproc.c"
break;
case 3185: /* bare_label_keyword: STABLE */
#line 17187 "preproc.y"
{
(yyval.str) = mm_strdup("stable");
}
#line 63110 "preproc.c"
break;
case 3186: /* bare_label_keyword: STANDALONE_P */
#line 17191 "preproc.y"
{
(yyval.str) = mm_strdup("standalone");
}
#line 63118 "preproc.c"
break;
case 3187: /* bare_label_keyword: START */
#line 17195 "preproc.y"
{
(yyval.str) = mm_strdup("start");
}
#line 63126 "preproc.c"
break;
case 3188: /* bare_label_keyword: STATEMENT */
#line 17199 "preproc.y"
{
(yyval.str) = mm_strdup("statement");
}
#line 63134 "preproc.c"
break;
case 3189: /* bare_label_keyword: STATISTICS */
#line 17203 "preproc.y"
{
(yyval.str) = mm_strdup("statistics");
}
#line 63142 "preproc.c"
break;
case 3190: /* bare_label_keyword: STDIN */
#line 17207 "preproc.y"
{
(yyval.str) = mm_strdup("stdin");
}
#line 63150 "preproc.c"
break;
case 3191: /* bare_label_keyword: STDOUT */
#line 17211 "preproc.y"
{
(yyval.str) = mm_strdup("stdout");
}
#line 63158 "preproc.c"
break;
case 3192: /* bare_label_keyword: STORAGE */
#line 17215 "preproc.y"
{
(yyval.str) = mm_strdup("storage");
}
#line 63166 "preproc.c"
break;
case 3193: /* bare_label_keyword: STORED */
#line 17219 "preproc.y"
{
(yyval.str) = mm_strdup("stored");
}
#line 63174 "preproc.c"
break;
case 3194: /* bare_label_keyword: STRICT_P */
#line 17223 "preproc.y"
{
(yyval.str) = mm_strdup("strict");
}
#line 63182 "preproc.c"
break;
case 3195: /* bare_label_keyword: STRIP_P */
#line 17227 "preproc.y"
{
(yyval.str) = mm_strdup("strip");
}
#line 63190 "preproc.c"
break;
case 3196: /* bare_label_keyword: SUBSCRIPTION */
#line 17231 "preproc.y"
{
(yyval.str) = mm_strdup("subscription");
}
#line 63198 "preproc.c"
break;
case 3197: /* bare_label_keyword: SUBSTRING */
#line 17235 "preproc.y"
{
(yyval.str) = mm_strdup("substring");
}
#line 63206 "preproc.c"
break;
case 3198: /* bare_label_keyword: SUPPORT */
#line 17239 "preproc.y"
{
(yyval.str) = mm_strdup("support");
}
#line 63214 "preproc.c"
break;
case 3199: /* bare_label_keyword: SYMMETRIC */
#line 17243 "preproc.y"
{
(yyval.str) = mm_strdup("symmetric");
}
#line 63222 "preproc.c"
break;
case 3200: /* bare_label_keyword: SYSID */
#line 17247 "preproc.y"
{
(yyval.str) = mm_strdup("sysid");
}
#line 63230 "preproc.c"
break;
case 3201: /* bare_label_keyword: SYSTEM_P */
#line 17251 "preproc.y"
{
(yyval.str) = mm_strdup("system");
}
#line 63238 "preproc.c"
break;
case 3202: /* bare_label_keyword: SYSTEM_USER */
#line 17255 "preproc.y"
{
(yyval.str) = mm_strdup("system_user");
}
#line 63246 "preproc.c"
break;
case 3203: /* bare_label_keyword: TABLE */
#line 17259 "preproc.y"
{
(yyval.str) = mm_strdup("table");
}
#line 63254 "preproc.c"
break;
case 3204: /* bare_label_keyword: TABLES */
#line 17263 "preproc.y"
{
(yyval.str) = mm_strdup("tables");
}
#line 63262 "preproc.c"
break;
case 3205: /* bare_label_keyword: TABLESAMPLE */
#line 17267 "preproc.y"
{
(yyval.str) = mm_strdup("tablesample");
}
#line 63270 "preproc.c"
break;
case 3206: /* bare_label_keyword: TABLESPACE */
#line 17271 "preproc.y"
{
(yyval.str) = mm_strdup("tablespace");
}
#line 63278 "preproc.c"
break;
case 3207: /* bare_label_keyword: TEMP */
#line 17275 "preproc.y"
{
(yyval.str) = mm_strdup("temp");
}
#line 63286 "preproc.c"
break;
case 3208: /* bare_label_keyword: TEMPLATE */
#line 17279 "preproc.y"
{
(yyval.str) = mm_strdup("template");
}
#line 63294 "preproc.c"
break;
case 3209: /* bare_label_keyword: TEMPORARY */
#line 17283 "preproc.y"
{
(yyval.str) = mm_strdup("temporary");
}
#line 63302 "preproc.c"
break;
case 3210: /* bare_label_keyword: TEXT_P */
#line 17287 "preproc.y"
{
(yyval.str) = mm_strdup("text");
}
#line 63310 "preproc.c"
break;
case 3211: /* bare_label_keyword: THEN */
#line 17291 "preproc.y"
{
(yyval.str) = mm_strdup("then");
}
#line 63318 "preproc.c"
break;
case 3212: /* bare_label_keyword: TIES */
#line 17295 "preproc.y"
{
(yyval.str) = mm_strdup("ties");
}
#line 63326 "preproc.c"
break;
case 3213: /* bare_label_keyword: TIME */
#line 17299 "preproc.y"
{
(yyval.str) = mm_strdup("time");
}
#line 63334 "preproc.c"
break;
case 3214: /* bare_label_keyword: TIMESTAMP */
#line 17303 "preproc.y"
{
(yyval.str) = mm_strdup("timestamp");
}
#line 63342 "preproc.c"
break;
case 3215: /* bare_label_keyword: TRAILING */
#line 17307 "preproc.y"
{
(yyval.str) = mm_strdup("trailing");
}
#line 63350 "preproc.c"
break;
case 3216: /* bare_label_keyword: TRANSACTION */
#line 17311 "preproc.y"
{
(yyval.str) = mm_strdup("transaction");
}
#line 63358 "preproc.c"
break;
case 3217: /* bare_label_keyword: TRANSFORM */
#line 17315 "preproc.y"
{
(yyval.str) = mm_strdup("transform");
}
#line 63366 "preproc.c"
break;
case 3218: /* bare_label_keyword: TREAT */
#line 17319 "preproc.y"
{
(yyval.str) = mm_strdup("treat");
}
#line 63374 "preproc.c"
break;
case 3219: /* bare_label_keyword: TRIGGER */
#line 17323 "preproc.y"
{
(yyval.str) = mm_strdup("trigger");
}
#line 63382 "preproc.c"
break;
case 3220: /* bare_label_keyword: TRIM */
#line 17327 "preproc.y"
{
(yyval.str) = mm_strdup("trim");
}
#line 63390 "preproc.c"
break;
case 3221: /* bare_label_keyword: TRUE_P */
#line 17331 "preproc.y"
{
(yyval.str) = mm_strdup("true");
}
#line 63398 "preproc.c"
break;
case 3222: /* bare_label_keyword: TRUNCATE */
#line 17335 "preproc.y"
{
(yyval.str) = mm_strdup("truncate");
}
#line 63406 "preproc.c"
break;
case 3223: /* bare_label_keyword: TRUSTED */
#line 17339 "preproc.y"
{
(yyval.str) = mm_strdup("trusted");
}
#line 63414 "preproc.c"
break;
case 3224: /* bare_label_keyword: TYPE_P */
#line 17343 "preproc.y"
{
(yyval.str) = mm_strdup("type");
}
#line 63422 "preproc.c"
break;
case 3225: /* bare_label_keyword: TYPES_P */
#line 17347 "preproc.y"
{
(yyval.str) = mm_strdup("types");
}
#line 63430 "preproc.c"
break;
case 3226: /* bare_label_keyword: UESCAPE */
#line 17351 "preproc.y"
{
(yyval.str) = mm_strdup("uescape");
}
#line 63438 "preproc.c"
break;
case 3227: /* bare_label_keyword: UNBOUNDED */
#line 17355 "preproc.y"
{
(yyval.str) = mm_strdup("unbounded");
}
#line 63446 "preproc.c"
break;
case 3228: /* bare_label_keyword: UNCOMMITTED */
#line 17359 "preproc.y"
{
(yyval.str) = mm_strdup("uncommitted");
}
#line 63454 "preproc.c"
break;
case 3229: /* bare_label_keyword: UNENCRYPTED */
#line 17363 "preproc.y"
{
(yyval.str) = mm_strdup("unencrypted");
}
#line 63462 "preproc.c"
break;
case 3230: /* bare_label_keyword: UNIQUE */
#line 17367 "preproc.y"
{
(yyval.str) = mm_strdup("unique");
}
#line 63470 "preproc.c"
break;
case 3231: /* bare_label_keyword: UNKNOWN */
#line 17371 "preproc.y"
{
(yyval.str) = mm_strdup("unknown");
}
#line 63478 "preproc.c"
break;
case 3232: /* bare_label_keyword: UNLISTEN */
#line 17375 "preproc.y"
{
(yyval.str) = mm_strdup("unlisten");
}
#line 63486 "preproc.c"
break;
case 3233: /* bare_label_keyword: UNLOGGED */
#line 17379 "preproc.y"
{
(yyval.str) = mm_strdup("unlogged");
}
#line 63494 "preproc.c"
break;
case 3234: /* bare_label_keyword: UNTIL */
#line 17383 "preproc.y"
{
(yyval.str) = mm_strdup("until");
}
#line 63502 "preproc.c"
break;
case 3235: /* bare_label_keyword: UPDATE */
#line 17387 "preproc.y"
{
(yyval.str) = mm_strdup("update");
}
#line 63510 "preproc.c"
break;
case 3236: /* bare_label_keyword: USER */
#line 17391 "preproc.y"
{
(yyval.str) = mm_strdup("user");
}
#line 63518 "preproc.c"
break;
case 3237: /* bare_label_keyword: USING */
#line 17395 "preproc.y"
{
(yyval.str) = mm_strdup("using");
}
#line 63526 "preproc.c"
break;
case 3238: /* bare_label_keyword: VACUUM */
#line 17399 "preproc.y"
{
(yyval.str) = mm_strdup("vacuum");
}
#line 63534 "preproc.c"
break;
case 3239: /* bare_label_keyword: VALID */
#line 17403 "preproc.y"
{
(yyval.str) = mm_strdup("valid");
}
#line 63542 "preproc.c"
break;
case 3240: /* bare_label_keyword: VALIDATE */
#line 17407 "preproc.y"
{
(yyval.str) = mm_strdup("validate");
}
#line 63550 "preproc.c"
break;
case 3241: /* bare_label_keyword: VALIDATOR */
#line 17411 "preproc.y"
{
(yyval.str) = mm_strdup("validator");
}
#line 63558 "preproc.c"
break;
case 3242: /* bare_label_keyword: VALUE_P */
#line 17415 "preproc.y"
{
(yyval.str) = mm_strdup("value");
}
#line 63566 "preproc.c"
break;
case 3243: /* bare_label_keyword: VALUES */
#line 17419 "preproc.y"
{
(yyval.str) = mm_strdup("values");
}
#line 63574 "preproc.c"
break;
case 3244: /* bare_label_keyword: VARCHAR */
#line 17423 "preproc.y"
{
(yyval.str) = mm_strdup("varchar");
}
#line 63582 "preproc.c"
break;
case 3245: /* bare_label_keyword: VARIADIC */
#line 17427 "preproc.y"
{
(yyval.str) = mm_strdup("variadic");
}
#line 63590 "preproc.c"
break;
case 3246: /* bare_label_keyword: VERBOSE */
#line 17431 "preproc.y"
{
(yyval.str) = mm_strdup("verbose");
}
#line 63598 "preproc.c"
break;
case 3247: /* bare_label_keyword: VERSION_P */
#line 17435 "preproc.y"
{
(yyval.str) = mm_strdup("version");
}
#line 63606 "preproc.c"
break;
case 3248: /* bare_label_keyword: VIEW */
#line 17439 "preproc.y"
{
(yyval.str) = mm_strdup("view");
}
#line 63614 "preproc.c"
break;
case 3249: /* bare_label_keyword: VIEWS */
#line 17443 "preproc.y"
{
(yyval.str) = mm_strdup("views");
}
#line 63622 "preproc.c"
break;
case 3250: /* bare_label_keyword: VOLATILE */
#line 17447 "preproc.y"
{
(yyval.str) = mm_strdup("volatile");
}
#line 63630 "preproc.c"
break;
case 3251: /* bare_label_keyword: WHEN */
#line 17451 "preproc.y"
{
(yyval.str) = mm_strdup("when");
}
#line 63638 "preproc.c"
break;
case 3252: /* bare_label_keyword: WHITESPACE_P */
#line 17455 "preproc.y"
{
(yyval.str) = mm_strdup("whitespace");
}
#line 63646 "preproc.c"
break;
case 3253: /* bare_label_keyword: WORK */
#line 17459 "preproc.y"
{
(yyval.str) = mm_strdup("work");
}
#line 63654 "preproc.c"
break;
case 3254: /* bare_label_keyword: WRAPPER */
#line 17463 "preproc.y"
{
(yyval.str) = mm_strdup("wrapper");
}
#line 63662 "preproc.c"
break;
case 3255: /* bare_label_keyword: WRITE */
#line 17467 "preproc.y"
{
(yyval.str) = mm_strdup("write");
}
#line 63670 "preproc.c"
break;
case 3256: /* bare_label_keyword: XML_P */
#line 17471 "preproc.y"
{
(yyval.str) = mm_strdup("xml");
}
#line 63678 "preproc.c"
break;
case 3257: /* bare_label_keyword: XMLATTRIBUTES */
#line 17475 "preproc.y"
{
(yyval.str) = mm_strdup("xmlattributes");
}
#line 63686 "preproc.c"
break;
case 3258: /* bare_label_keyword: XMLCONCAT */
#line 17479 "preproc.y"
{
(yyval.str) = mm_strdup("xmlconcat");
}
#line 63694 "preproc.c"
break;
case 3259: /* bare_label_keyword: XMLELEMENT */
#line 17483 "preproc.y"
{
(yyval.str) = mm_strdup("xmlelement");
}
#line 63702 "preproc.c"
break;
case 3260: /* bare_label_keyword: XMLEXISTS */
#line 17487 "preproc.y"
{
(yyval.str) = mm_strdup("xmlexists");
}
#line 63710 "preproc.c"
break;
case 3261: /* bare_label_keyword: XMLFOREST */
#line 17491 "preproc.y"
{
(yyval.str) = mm_strdup("xmlforest");
}
#line 63718 "preproc.c"
break;
case 3262: /* bare_label_keyword: XMLNAMESPACES */
#line 17495 "preproc.y"
{
(yyval.str) = mm_strdup("xmlnamespaces");
}
#line 63726 "preproc.c"
break;
case 3263: /* bare_label_keyword: XMLPARSE */
#line 17499 "preproc.y"
{
(yyval.str) = mm_strdup("xmlparse");
}
#line 63734 "preproc.c"
break;
case 3264: /* bare_label_keyword: XMLPI */
#line 17503 "preproc.y"
{
(yyval.str) = mm_strdup("xmlpi");
}
#line 63742 "preproc.c"
break;
case 3265: /* bare_label_keyword: XMLROOT */
#line 17507 "preproc.y"
{
(yyval.str) = mm_strdup("xmlroot");
}
#line 63750 "preproc.c"
break;
case 3266: /* bare_label_keyword: XMLSERIALIZE */
#line 17511 "preproc.y"
{
(yyval.str) = mm_strdup("xmlserialize");
}
#line 63758 "preproc.c"
break;
case 3267: /* bare_label_keyword: XMLTABLE */
#line 17515 "preproc.y"
{
(yyval.str) = mm_strdup("xmltable");
}
#line 63766 "preproc.c"
break;
case 3268: /* bare_label_keyword: YES_P */
#line 17519 "preproc.y"
{
(yyval.str) = mm_strdup("yes");
}
#line 63774 "preproc.c"
break;
case 3269: /* bare_label_keyword: ZONE */
#line 17523 "preproc.y"
{
(yyval.str) = mm_strdup("zone");
}
#line 63782 "preproc.c"
break;
case 3272: /* statement: ecpgstart at toplevel_stmt ';' */
#line 17537 "preproc.y"
{
if (connection)
free(connection);
connection = NULL;
}
#line 63792 "preproc.c"
break;
case 3273: /* statement: ecpgstart toplevel_stmt ';' */
#line 17543 "preproc.y"
{
if (connection)
free(connection);
connection = NULL;
}
#line 63802 "preproc.c"
break;
case 3274: /* statement: ecpgstart ECPGVarDeclaration */
#line 17549 "preproc.y"
{
fprintf(base_yyout, "%s", (yyvsp[0].str));
free((yyvsp[0].str));
output_line_number();
}
#line 63812 "preproc.c"
break;
case 3276: /* statement: c_thing */
#line 17555 "preproc.y"
{ fprintf(base_yyout, "%s", (yyvsp[0].str)); free((yyvsp[0].str)); }
#line 63818 "preproc.c"
break;
case 3277: /* statement: CPP_LINE */
#line 17556 "preproc.y"
{ fprintf(base_yyout, "%s", (yyvsp[0].str)); free((yyvsp[0].str)); }
#line 63824 "preproc.c"
break;
case 3278: /* statement: '{' */
#line 17557 "preproc.y"
{ braces_open++; fputs("{", base_yyout); }
#line 63830 "preproc.c"
break;
case 3279: /* statement: '}' */
#line 17559 "preproc.y"
{
remove_typedefs(braces_open);
remove_variables(braces_open--);
if (braces_open == 0)
{
free(current_function);
current_function = NULL;
}
fputs("}", base_yyout);
}
#line 63845 "preproc.c"
break;
case 3280: /* $@1: %empty */
#line 17571 "preproc.y"
{FoundInto = 0;}
#line 63851 "preproc.c"
break;
case 3281: /* CreateAsStmt: CREATE OptTemp TABLE create_as_target AS $@1 SelectStmt opt_with_data */
#line 17572 "preproc.y"
{
if (FoundInto == 1)
mmerror(PARSE_ERROR, ET_ERROR, "CREATE TABLE AS cannot specify INTO");
(yyval.str) = cat_str(7, mm_strdup("create"), (yyvsp[-6].str), mm_strdup("table"), (yyvsp[-4].str), mm_strdup("as"), (yyvsp[-1].str), (yyvsp[0].str));
}
#line 63862 "preproc.c"
break;
case 3282: /* $@2: %empty */
#line 17578 "preproc.y"
{FoundInto = 0;}
#line 63868 "preproc.c"
break;
case 3283: /* CreateAsStmt: CREATE OptTemp TABLE IF_P NOT EXISTS create_as_target AS $@2 SelectStmt opt_with_data */
#line 17579 "preproc.y"
{
if (FoundInto == 1)
mmerror(PARSE_ERROR, ET_ERROR, "CREATE TABLE AS cannot specify INTO");
(yyval.str) = cat_str(7, mm_strdup("create"), (yyvsp[-9].str), mm_strdup("table if not exists"), (yyvsp[-4].str), mm_strdup("as"), (yyvsp[-1].str), (yyvsp[0].str));
}
#line 63879 "preproc.c"
break;
case 3284: /* at: AT connection_object */
#line 17588 "preproc.y"
{
connection = (yyvsp[0].str);
/*
* Do we have a variable as connection target? Remove the variable
* from the variable list or else it will be used twice.
*/
if (argsinsert != NULL)
argsinsert = NULL;
}
#line 63893 "preproc.c"
break;
case 3285: /* ECPGConnect: SQL_CONNECT TO connection_target opt_connection_name opt_user */
#line 17603 "preproc.y"
{ (yyval.str) = cat_str(5, (yyvsp[-2].str), mm_strdup(","), (yyvsp[0].str), mm_strdup(","), (yyvsp[-1].str)); }
#line 63899 "preproc.c"
break;
case 3286: /* ECPGConnect: SQL_CONNECT TO DEFAULT */
#line 17605 "preproc.y"
{ (yyval.str) = mm_strdup("NULL, NULL, NULL, \"DEFAULT\""); }
#line 63905 "preproc.c"
break;
case 3287: /* ECPGConnect: SQL_CONNECT ora_user */
#line 17608 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("NULL,"), (yyvsp[0].str), mm_strdup(", NULL")); }
#line 63911 "preproc.c"
break;
case 3288: /* ECPGConnect: DATABASE connection_target */
#line 17610 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[0].str), mm_strdup(", NULL, NULL, NULL")); }
#line 63917 "preproc.c"
break;
case 3289: /* connection_target: opt_database_name opt_server opt_port */
#line 17614 "preproc.y"
{
/* old style: dbname[@server][:port] */
if (strlen((yyvsp[-1].str)) > 0 && *((yyvsp[-1].str)) != '@')
mmerror(PARSE_ERROR, ET_ERROR, "expected \"@\", found \"%s\"", (yyvsp[-1].str));
/* C strings need to be handled differently */
if ((yyvsp[-2].str)[0] == '\"')
(yyval.str) = (yyvsp[-2].str);
else
(yyval.str) = make3_str(mm_strdup("\""), make3_str((yyvsp[-2].str), (yyvsp[-1].str), (yyvsp[0].str)), mm_strdup("\""));
}
#line 63933 "preproc.c"
break;
case 3290: /* connection_target: db_prefix ':' server opt_port '/' opt_database_name opt_options */
#line 17626 "preproc.y"
{
/* new style: :postgresql://server[:port][/dbname] */
if (strncmp((yyvsp[-6].str), "unix:postgresql", strlen("unix:postgresql")) != 0 && strncmp((yyvsp[-6].str), "tcp:postgresql", strlen("tcp:postgresql")) != 0)
mmerror(PARSE_ERROR, ET_ERROR, "only protocols \"tcp\" and \"unix\" and database type \"postgresql\" are supported");
if (strncmp((yyvsp[-4].str), "//", strlen("//")) != 0)
mmerror(PARSE_ERROR, ET_ERROR, "expected \"://\", found \"%s\"", (yyvsp[-4].str));
if (strncmp((yyvsp[-6].str), "unix", strlen("unix")) == 0 &&
strncmp((yyvsp[-4].str) + strlen("//"), "localhost", strlen("localhost")) != 0 &&
strncmp((yyvsp[-4].str) + strlen("//"), "127.0.0.1", strlen("127.0.0.1")) != 0)
mmerror(PARSE_ERROR, ET_ERROR, "Unix-domain sockets only work on \"localhost\" but not on \"%s\"", (yyvsp[-4].str) + strlen("//"));
(yyval.str) = make3_str(make3_str(mm_strdup("\""), (yyvsp[-6].str), mm_strdup(":")), (yyvsp[-4].str), make3_str(make3_str((yyvsp[-3].str), mm_strdup("/"), (yyvsp[-1].str)), (yyvsp[0].str), mm_strdup("\"")));
}
#line 63953 "preproc.c"
break;
case 3291: /* connection_target: char_variable */
#line 17642 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 63961 "preproc.c"
break;
case 3292: /* connection_target: ecpg_sconst */
#line 17646 "preproc.y"
{
/* We can only process double quoted strings not single quotes ones,
* so we change the quotes.
* Note, that the rule for ecpg_sconst adds these single quotes. */
(yyvsp[0].str)[0] = '\"';
(yyvsp[0].str)[strlen((yyvsp[0].str))-1] = '\"';
(yyval.str) = (yyvsp[0].str);
}
#line 63974 "preproc.c"
break;
case 3293: /* opt_database_name: name */
#line 17656 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 63980 "preproc.c"
break;
case 3294: /* opt_database_name: %empty */
#line 17657 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 63986 "preproc.c"
break;
case 3295: /* db_prefix: ecpg_ident cvariable */
#line 17661 "preproc.y"
{
if (strcmp((yyvsp[0].str), "postgresql") != 0 && strcmp((yyvsp[0].str), "postgres") != 0)
mmerror(PARSE_ERROR, ET_ERROR, "expected \"postgresql\", found \"%s\"", (yyvsp[0].str));
if (strcmp((yyvsp[-1].str), "tcp") != 0 && strcmp((yyvsp[-1].str), "unix") != 0)
mmerror(PARSE_ERROR, ET_ERROR, "invalid connection type: %s", (yyvsp[-1].str));
(yyval.str) = make3_str((yyvsp[-1].str), mm_strdup(":"), (yyvsp[0].str));
}
#line 64000 "preproc.c"
break;
case 3296: /* server: Op server_name */
#line 17673 "preproc.y"
{
if (strcmp((yyvsp[-1].str), "@") != 0 && strcmp((yyvsp[-1].str), "//") != 0)
mmerror(PARSE_ERROR, ET_ERROR, "expected \"@\" or \"://\", found \"%s\"", (yyvsp[-1].str));
(yyval.str) = make2_str((yyvsp[-1].str), (yyvsp[0].str));
}
#line 64011 "preproc.c"
break;
case 3297: /* opt_server: server */
#line 17681 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64017 "preproc.c"
break;
case 3298: /* opt_server: %empty */
#line 17682 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64023 "preproc.c"
break;
case 3299: /* server_name: ColId */
#line 17685 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64029 "preproc.c"
break;
case 3300: /* server_name: ColId '.' server_name */
#line 17686 "preproc.y"
{ (yyval.str) = make3_str((yyvsp[-2].str), mm_strdup("."), (yyvsp[0].str)); }
#line 64035 "preproc.c"
break;
case 3301: /* server_name: IP */
#line 17687 "preproc.y"
{ (yyval.str) = make_name(); }
#line 64041 "preproc.c"
break;
case 3302: /* opt_port: ':' Iconst */
#line 17690 "preproc.y"
{ (yyval.str) = make2_str(mm_strdup(":"), (yyvsp[0].str)); }
#line 64047 "preproc.c"
break;
case 3303: /* opt_port: %empty */
#line 17691 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64053 "preproc.c"
break;
case 3304: /* opt_connection_name: AS connection_object */
#line 17694 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64059 "preproc.c"
break;
case 3305: /* opt_connection_name: %empty */
#line 17695 "preproc.y"
{ (yyval.str) = mm_strdup("NULL"); }
#line 64065 "preproc.c"
break;
case 3306: /* opt_user: USER ora_user */
#line 17698 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64071 "preproc.c"
break;
case 3307: /* opt_user: %empty */
#line 17699 "preproc.y"
{ (yyval.str) = mm_strdup("NULL, NULL"); }
#line 64077 "preproc.c"
break;
case 3308: /* ora_user: user_name */
#line 17703 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[0].str), mm_strdup(", NULL")); }
#line 64083 "preproc.c"
break;
case 3309: /* ora_user: user_name '/' user_name */
#line 17705 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup(","), (yyvsp[0].str)); }
#line 64089 "preproc.c"
break;
case 3310: /* ora_user: user_name SQL_IDENTIFIED BY user_name */
#line 17707 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-3].str), mm_strdup(","), (yyvsp[0].str)); }
#line 64095 "preproc.c"
break;
case 3311: /* ora_user: user_name USING user_name */
#line 17709 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup(","), (yyvsp[0].str)); }
#line 64101 "preproc.c"
break;
case 3312: /* user_name: RoleId */
#line 17713 "preproc.y"
{
if ((yyvsp[0].str)[0] == '\"')
(yyval.str) = (yyvsp[0].str);
else
(yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\""));
}
#line 64112 "preproc.c"
break;
case 3313: /* user_name: ecpg_sconst */
#line 17720 "preproc.y"
{
if ((yyvsp[0].str)[0] == '\"')
(yyval.str) = (yyvsp[0].str);
else
(yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\""));
}
#line 64123 "preproc.c"
break;
case 3314: /* user_name: civar */
#line 17727 "preproc.y"
{
enum ECPGttype type = argsinsert->variable->type->type;
/* if array see what's inside */
if (type == ECPGt_array)
type = argsinsert->variable->type->u.element->type;
/* handle varchars */
if (type == ECPGt_varchar)
(yyval.str) = make2_str(mm_strdup(argsinsert->variable->name), mm_strdup(".arr"));
else
(yyval.str) = mm_strdup(argsinsert->variable->name);
}
#line 64141 "preproc.c"
break;
case 3315: /* char_variable: cvariable */
#line 17743 "preproc.y"
{
/* check if we have a string variable */
struct variable *p = find_variable((yyvsp[0].str));
enum ECPGttype type = p->type->type;
/* If we have just one character this is not a string */
if (atol(p->type->size) == 1)
mmerror(PARSE_ERROR, ET_ERROR, "invalid data type");
else
{
/* if array see what's inside */
if (type == ECPGt_array)
type = p->type->u.element->type;
switch (type)
{
case ECPGt_char:
case ECPGt_unsigned_char:
case ECPGt_string:
(yyval.str) = (yyvsp[0].str);
break;
case ECPGt_varchar:
(yyval.str) = make2_str((yyvsp[0].str), mm_strdup(".arr"));
break;
default:
mmerror(PARSE_ERROR, ET_ERROR, "invalid data type");
(yyval.str) = (yyvsp[0].str);
break;
}
}
}
#line 64177 "preproc.c"
break;
case 3316: /* opt_options: Op connect_options */
#line 17777 "preproc.y"
{
if (strlen((yyvsp[-1].str)) == 0)
mmerror(PARSE_ERROR, ET_ERROR, "incomplete statement");
if (strcmp((yyvsp[-1].str), "?") != 0)
mmerror(PARSE_ERROR, ET_ERROR, "unrecognized token \"%s\"", (yyvsp[-1].str));
(yyval.str) = make2_str(mm_strdup("?"), (yyvsp[0].str));
}
#line 64191 "preproc.c"
break;
case 3317: /* opt_options: %empty */
#line 17786 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64197 "preproc.c"
break;
case 3318: /* connect_options: ColId opt_opt_value */
#line 17790 "preproc.y"
{
(yyval.str) = make2_str((yyvsp[-1].str), (yyvsp[0].str));
}
#line 64205 "preproc.c"
break;
case 3319: /* connect_options: ColId opt_opt_value Op connect_options */
#line 17794 "preproc.y"
{
if (strlen((yyvsp[-1].str)) == 0)
mmerror(PARSE_ERROR, ET_ERROR, "incomplete statement");
if (strcmp((yyvsp[-1].str), "&") != 0)
mmerror(PARSE_ERROR, ET_ERROR, "unrecognized token \"%s\"", (yyvsp[-1].str));
(yyval.str) = cat_str(3, make2_str((yyvsp[-3].str), (yyvsp[-2].str)), (yyvsp[-1].str), (yyvsp[0].str));
}
#line 64219 "preproc.c"
break;
case 3320: /* opt_opt_value: %empty */
#line 17806 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64225 "preproc.c"
break;
case 3321: /* opt_opt_value: '=' Iconst */
#line 17808 "preproc.y"
{ (yyval.str) = make2_str(mm_strdup("="), (yyvsp[0].str)); }
#line 64231 "preproc.c"
break;
case 3322: /* opt_opt_value: '=' ecpg_ident */
#line 17810 "preproc.y"
{ (yyval.str) = make2_str(mm_strdup("="), (yyvsp[0].str)); }
#line 64237 "preproc.c"
break;
case 3323: /* opt_opt_value: '=' civar */
#line 17812 "preproc.y"
{ (yyval.str) = make2_str(mm_strdup("="), (yyvsp[0].str)); }
#line 64243 "preproc.c"
break;
case 3324: /* prepared_name: name */
#line 17816 "preproc.y"
{
if ((yyvsp[0].str)[0] == '\"' && (yyvsp[0].str)[strlen((yyvsp[0].str))-1] == '\"') /* already quoted? */
(yyval.str) = (yyvsp[0].str);
else /* not quoted => convert to lowercase */
{
size_t i;
for (i = 0; i< strlen((yyvsp[0].str)); i++)
(yyvsp[0].str)[i] = tolower((unsigned char) (yyvsp[0].str)[i]);
(yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\""));
}
}
#line 64261 "preproc.c"
break;
case 3325: /* prepared_name: char_variable */
#line 17829 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64267 "preproc.c"
break;
case 3326: /* ECPGDeclareStmt: DECLARE prepared_name STATEMENT */
#line 17836 "preproc.y"
{
struct declared_list *ptr = NULL;
/* Check whether the declared name has been defined or not */
for (ptr = g_declared_list; ptr != NULL; ptr = ptr->next)
{
if (strcmp((yyvsp[-1].str), ptr->name) == 0)
{
/* re-definition is not allowed */
mmerror(PARSE_ERROR, ET_ERROR, "name \"%s\" is already declared", ptr->name);
}
}
/* Add a new declared name into the g_declared_list */
ptr = NULL;
ptr = (struct declared_list *)mm_alloc(sizeof(struct declared_list));
if (ptr)
{
/* initial definition */
ptr -> name = (yyvsp[-1].str);
if (connection)
ptr -> connection = mm_strdup(connection);
else
ptr -> connection = NULL;
ptr -> next = g_declared_list;
g_declared_list = ptr;
}
(yyval.str) = cat_str(3 , mm_strdup("/* declare "), mm_strdup((yyvsp[-1].str)), mm_strdup(" as an SQL identifier */"));
}
#line 64302 "preproc.c"
break;
case 3327: /* ECPGCursorStmt: DECLARE cursor_name cursor_options CURSOR opt_hold FOR prepared_name */
#line 17873 "preproc.y"
{
struct cursor *ptr, *this;
char *cursor_marker = (yyvsp[-5].str)[0] == ':' ? mm_strdup("$0") : mm_strdup((yyvsp[-5].str));
int (* strcmp_fn)(const char *, const char *) = (((yyvsp[-5].str)[0] == ':' || (yyvsp[-5].str)[0] == '"') ? strcmp : pg_strcasecmp);
struct variable *thisquery = (struct variable *)mm_alloc(sizeof(struct variable));
char *comment;
char *con;
if (INFORMIX_MODE && pg_strcasecmp((yyvsp[-5].str), "database") == 0)
mmfatal(PARSE_ERROR, "\"database\" cannot be used as cursor name in INFORMIX mode");
check_declared_list((yyvsp[0].str));
con = connection ? connection : "NULL";
for (ptr = cur; ptr != NULL; ptr = ptr->next)
{
if (strcmp_fn((yyvsp[-5].str), ptr->name) == 0)
{
/* re-definition is a bug */
if ((yyvsp[-5].str)[0] == ':')
mmerror(PARSE_ERROR, ET_ERROR, "using variable \"%s\" in different declare statements is not supported", (yyvsp[-5].str)+1);
else
mmerror(PARSE_ERROR, ET_ERROR, "cursor \"%s\" is already defined", (yyvsp[-5].str));
}
}
this = (struct cursor *) mm_alloc(sizeof(struct cursor));
/* initial definition */
this->next = cur;
this->name = (yyvsp[-5].str);
this->function = (current_function ? mm_strdup(current_function) : NULL);
this->connection = connection ? mm_strdup(connection) : NULL;
this->command = cat_str(6, mm_strdup("declare"), cursor_marker, (yyvsp[-4].str), mm_strdup("cursor"), (yyvsp[-2].str), mm_strdup("for $1"));
this->argsresult = NULL;
this->argsresult_oos = NULL;
thisquery->type = &ecpg_query;
thisquery->brace_level = 0;
thisquery->next = NULL;
thisquery->name = (char *) mm_alloc(sizeof("ECPGprepared_statement(, , __LINE__)") + strlen(con) + strlen((yyvsp[0].str)));
sprintf(thisquery->name, "ECPGprepared_statement(%s, %s, __LINE__)", con, (yyvsp[0].str));
this->argsinsert = NULL;
this->argsinsert_oos = NULL;
if ((yyvsp[-5].str)[0] == ':')
{
struct variable *var = find_variable((yyvsp[-5].str) + 1);
remove_variable_from_list(&argsinsert, var);
add_variable_to_head(&(this->argsinsert), var, &no_indicator);
}
add_variable_to_head(&(this->argsinsert), thisquery, &no_indicator);
cur = this;
comment = cat_str(3, mm_strdup("/*"), mm_strdup(this->command), mm_strdup("*/"));
(yyval.str) = cat_str(2, adjust_outofscope_cursor_vars(this),
comment);
}
#line 64366 "preproc.c"
break;
case 3328: /* ECPGExecuteImmediateStmt: EXECUTE IMMEDIATE execstring */
#line 17935 "preproc.y"
{
/* execute immediate means prepare the statement and
* immediately execute it */
(yyval.str) = (yyvsp[0].str);
}
#line 64376 "preproc.c"
break;
case 3330: /* single_vt_declaration: type_declaration */
#line 17945 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64382 "preproc.c"
break;
case 3331: /* single_vt_declaration: var_declaration */
#line 17946 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64388 "preproc.c"
break;
case 3332: /* precision: NumericOnly */
#line 17949 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64394 "preproc.c"
break;
case 3333: /* opt_scale: ',' NumericOnly */
#line 17951 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64400 "preproc.c"
break;
case 3334: /* opt_scale: %empty */
#line 17952 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64406 "preproc.c"
break;
case 3335: /* ecpg_interval: opt_interval */
#line 17955 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64412 "preproc.c"
break;
case 3336: /* ecpg_interval: YEAR_P TO MINUTE_P */
#line 17956 "preproc.y"
{ (yyval.str) = mm_strdup("year to minute"); }
#line 64418 "preproc.c"
break;
case 3337: /* ecpg_interval: YEAR_P TO SECOND_P */
#line 17957 "preproc.y"
{ (yyval.str) = mm_strdup("year to second"); }
#line 64424 "preproc.c"
break;
case 3338: /* ecpg_interval: DAY_P TO DAY_P */
#line 17958 "preproc.y"
{ (yyval.str) = mm_strdup("day to day"); }
#line 64430 "preproc.c"
break;
case 3339: /* ecpg_interval: MONTH_P TO MONTH_P */
#line 17959 "preproc.y"
{ (yyval.str) = mm_strdup("month to month"); }
#line 64436 "preproc.c"
break;
case 3340: /* $@3: %empty */
#line 17966 "preproc.y"
{ fputs("/* exec sql begin declare section */", base_yyout); }
#line 64442 "preproc.c"
break;
case 3341: /* ECPGDeclaration: sql_startdeclare $@3 var_type_declarations sql_enddeclare */
#line 17968 "preproc.y"
{
fprintf(base_yyout, "%s/* exec sql end declare section */", (yyvsp[-1].str));
free((yyvsp[-1].str));
output_line_number();
}
#line 64452 "preproc.c"
break;
case 3342: /* sql_startdeclare: ecpgstart BEGIN_P DECLARE SQL_SECTION ';' */
#line 17975 "preproc.y"
{}
#line 64458 "preproc.c"
break;
case 3343: /* sql_enddeclare: ecpgstart END_P DECLARE SQL_SECTION ';' */
#line 17977 "preproc.y"
{}
#line 64464 "preproc.c"
break;
case 3344: /* var_type_declarations: %empty */
#line 17979 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64470 "preproc.c"
break;
case 3345: /* var_type_declarations: vt_declarations */
#line 17980 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64476 "preproc.c"
break;
case 3346: /* vt_declarations: single_vt_declaration */
#line 17983 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64482 "preproc.c"
break;
case 3347: /* vt_declarations: CPP_LINE */
#line 17984 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64488 "preproc.c"
break;
case 3348: /* vt_declarations: vt_declarations single_vt_declaration */
#line 17985 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[-1].str), (yyvsp[0].str)); }
#line 64494 "preproc.c"
break;
case 3349: /* vt_declarations: vt_declarations CPP_LINE */
#line 17986 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[-1].str), (yyvsp[0].str)); }
#line 64500 "preproc.c"
break;
case 3350: /* variable_declarations: var_declaration */
#line 17989 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 64506 "preproc.c"
break;
case 3351: /* variable_declarations: variable_declarations var_declaration */
#line 17990 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[-1].str), (yyvsp[0].str)); }
#line 64512 "preproc.c"
break;
case 3352: /* $@4: %empty */
#line 17994 "preproc.y"
{
/* reset this variable so we see if there was */
/* an initializer specified */
initializer = 0;
}
#line 64522 "preproc.c"
break;
case 3353: /* type_declaration: S_TYPEDEF $@4 var_type opt_pointer ECPGColLabel opt_array_bounds ';' */
#line 18000 "preproc.y"
{
add_typedef((yyvsp[-2].str), (yyvsp[-1].index).index1, (yyvsp[-1].index).index2, (yyvsp[-4].type).type_enum, (yyvsp[-4].type).type_dimension, (yyvsp[-4].type).type_index, initializer, *(yyvsp[-3].str) ? 1 : 0);
fprintf(base_yyout, "typedef %s %s %s %s;\n", (yyvsp[-4].type).type_str, *(yyvsp[-3].str) ? "*" : "", (yyvsp[-2].str), (yyvsp[-1].index).str);
output_line_number();
(yyval.str) = mm_strdup("");
}
#line 64534 "preproc.c"
break;
case 3354: /* $@5: %empty */
#line 18010 "preproc.y"
{
actual_type[struct_level].type_storage = (yyvsp[-1].str);
actual_type[struct_level].type_enum = (yyvsp[0].type).type_enum;
actual_type[struct_level].type_str = (yyvsp[0].type).type_str;
actual_type[struct_level].type_dimension = (yyvsp[0].type).type_dimension;
actual_type[struct_level].type_index = (yyvsp[0].type).type_index;
actual_type[struct_level].type_sizeof = (yyvsp[0].type).type_sizeof;
actual_startline[struct_level] = hashline_number();
}
#line 64549 "preproc.c"
break;
case 3355: /* var_declaration: storage_declaration var_type $@5 variable_list ';' */
#line 18021 "preproc.y"
{
(yyval.str) = cat_str(5, actual_startline[struct_level], (yyvsp[-4].str), (yyvsp[-3].type).type_str, (yyvsp[-1].str), mm_strdup(";\n"));
}
#line 64557 "preproc.c"
break;
case 3356: /* $@6: %empty */
#line 18025 "preproc.y"
{
actual_type[struct_level].type_storage = EMPTY;
actual_type[struct_level].type_enum = (yyvsp[0].type).type_enum;
actual_type[struct_level].type_str = (yyvsp[0].type).type_str;
actual_type[struct_level].type_dimension = (yyvsp[0].type).type_dimension;
actual_type[struct_level].type_index = (yyvsp[0].type).type_index;
actual_type[struct_level].type_sizeof = (yyvsp[0].type).type_sizeof;
actual_startline[struct_level] = hashline_number();
}
#line 64572 "preproc.c"
break;
case 3357: /* var_declaration: var_type $@6 variable_list ';' */
#line 18036 "preproc.y"
{
(yyval.str) = cat_str(4, actual_startline[struct_level], (yyvsp[-3].type).type_str, (yyvsp[-1].str), mm_strdup(";\n"));
}
#line 64580 "preproc.c"
break;
case 3358: /* var_declaration: struct_union_type_with_symbol ';' */
#line 18040 "preproc.y"
{
(yyval.str) = cat2_str((yyvsp[-1].str), mm_strdup(";"));
}
#line 64588 "preproc.c"
break;
case 3359: /* opt_bit_field: ':' Iconst */
#line 18045 "preproc.y"
{ (yyval.str) =cat2_str(mm_strdup(":"), (yyvsp[0].str)); }
#line 64594 "preproc.c"
break;
case 3360: /* opt_bit_field: %empty */
#line 18046 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 64600 "preproc.c"
break;
case 3361: /* storage_declaration: storage_clause storage_modifier */
#line 18050 "preproc.y"
{(yyval.str) = cat2_str ((yyvsp[-1].str), (yyvsp[0].str)); }
#line 64606 "preproc.c"
break;
case 3362: /* storage_declaration: storage_clause */
#line 18051 "preproc.y"
{(yyval.str) = (yyvsp[0].str); }
#line 64612 "preproc.c"
break;
case 3363: /* storage_declaration: storage_modifier */
#line 18052 "preproc.y"
{(yyval.str) = (yyvsp[0].str); }
#line 64618 "preproc.c"
break;
case 3364: /* storage_clause: S_EXTERN */
#line 18055 "preproc.y"
{ (yyval.str) = mm_strdup("extern"); }
#line 64624 "preproc.c"
break;
case 3365: /* storage_clause: S_STATIC */
#line 18056 "preproc.y"
{ (yyval.str) = mm_strdup("static"); }
#line 64630 "preproc.c"
break;
case 3366: /* storage_clause: S_REGISTER */
#line 18057 "preproc.y"
{ (yyval.str) = mm_strdup("register"); }
#line 64636 "preproc.c"
break;
case 3367: /* storage_clause: S_AUTO */
#line 18058 "preproc.y"
{ (yyval.str) = mm_strdup("auto"); }
#line 64642 "preproc.c"
break;
case 3368: /* storage_modifier: S_CONST */
#line 18061 "preproc.y"
{ (yyval.str) = mm_strdup("const"); }
#line 64648 "preproc.c"
break;
case 3369: /* storage_modifier: S_VOLATILE */
#line 18062 "preproc.y"
{ (yyval.str) = mm_strdup("volatile"); }
#line 64654 "preproc.c"
break;
case 3370: /* var_type: simple_type */
#line 18066 "preproc.y"
{
(yyval.type).type_enum = (yyvsp[0].type_enum);
(yyval.type).type_str = mm_strdup(ecpg_type_name((yyvsp[0].type_enum)));
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64666 "preproc.c"
break;
case 3371: /* var_type: struct_union_type */
#line 18074 "preproc.y"
{
(yyval.type).type_str = (yyvsp[0].str);
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
if (strncmp((yyvsp[0].str), "struct", sizeof("struct")-1) == 0)
{
(yyval.type).type_enum = ECPGt_struct;
(yyval.type).type_sizeof = ECPGstruct_sizeof;
}
else
{
(yyval.type).type_enum = ECPGt_union;
(yyval.type).type_sizeof = NULL;
}
}
#line 64687 "preproc.c"
break;
case 3372: /* var_type: enum_type */
#line 18091 "preproc.y"
{
(yyval.type).type_str = (yyvsp[0].str);
(yyval.type).type_enum = ECPGt_int;
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64699 "preproc.c"
break;
case 3373: /* var_type: NUMERIC '(' precision opt_scale ')' */
#line 18099 "preproc.y"
{
(yyval.type).type_enum = ECPGt_numeric;
(yyval.type).type_str = mm_strdup("numeric");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64711 "preproc.c"
break;
case 3374: /* var_type: DECIMAL_P '(' precision opt_scale ')' */
#line 18107 "preproc.y"
{
(yyval.type).type_enum = ECPGt_decimal;
(yyval.type).type_str = mm_strdup("decimal");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64723 "preproc.c"
break;
case 3375: /* var_type: IDENT '(' precision opt_scale ')' */
#line 18115 "preproc.y"
{
/*
* In C parsing mode, NUMERIC and DECIMAL are not keywords, so
* they will show up here as a plain identifier, and we need
* this duplicate code to recognize them.
*/
if (strcmp((yyvsp[-4].str), "numeric") == 0)
{
(yyval.type).type_enum = ECPGt_numeric;
(yyval.type).type_str = mm_strdup("numeric");
}
else if (strcmp((yyvsp[-4].str), "decimal") == 0)
{
(yyval.type).type_enum = ECPGt_decimal;
(yyval.type).type_str = mm_strdup("decimal");
}
else
{
mmerror(PARSE_ERROR, ET_ERROR, "only data types numeric and decimal have precision/scale argument");
(yyval.type).type_enum = ECPGt_numeric;
(yyval.type).type_str = mm_strdup("numeric");
}
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64755 "preproc.c"
break;
case 3376: /* var_type: VARCHAR */
#line 18143 "preproc.y"
{
(yyval.type).type_enum = ECPGt_varchar;
(yyval.type).type_str = EMPTY; /*mm_strdup("varchar");*/
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64767 "preproc.c"
break;
case 3377: /* var_type: FLOAT_P */
#line 18151 "preproc.y"
{
/* Note: DOUBLE is handled in simple_type */
(yyval.type).type_enum = ECPGt_float;
(yyval.type).type_str = mm_strdup("float");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64780 "preproc.c"
break;
case 3378: /* var_type: NUMERIC */
#line 18160 "preproc.y"
{
(yyval.type).type_enum = ECPGt_numeric;
(yyval.type).type_str = mm_strdup("numeric");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64792 "preproc.c"
break;
case 3379: /* var_type: DECIMAL_P */
#line 18168 "preproc.y"
{
(yyval.type).type_enum = ECPGt_decimal;
(yyval.type).type_str = mm_strdup("decimal");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64804 "preproc.c"
break;
case 3380: /* var_type: TIMESTAMP */
#line 18176 "preproc.y"
{
(yyval.type).type_enum = ECPGt_timestamp;
(yyval.type).type_str = mm_strdup("timestamp");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64816 "preproc.c"
break;
case 3381: /* var_type: INTERVAL ecpg_interval */
#line 18184 "preproc.y"
{
(yyval.type).type_enum = ECPGt_interval;
(yyval.type).type_str = mm_strdup("interval");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
#line 64828 "preproc.c"
break;
case 3382: /* var_type: IDENT ecpg_interval */
#line 18192 "preproc.y"
{
/*
* In C parsing mode, the above SQL type names are not keywords,
* so they will show up here as a plain identifier, and we need
* this duplicate code to recognize them.
*
* Note that we also handle the type names bytea, date, and
* datetime here, but not above because those are not currently
* SQL keywords. If they ever become so, they must gain duplicate
* productions above.
*/
if (strlen((yyvsp[0].str)) != 0 && strcmp ((yyvsp[-1].str), "datetime") != 0 && strcmp ((yyvsp[-1].str), "interval") != 0)
mmerror (PARSE_ERROR, ET_ERROR, "interval specification not allowed here");
if (strcmp((yyvsp[-1].str), "varchar") == 0)
{
(yyval.type).type_enum = ECPGt_varchar;
(yyval.type).type_str = EMPTY; /*mm_strdup("varchar");*/
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "bytea") == 0)
{
(yyval.type).type_enum = ECPGt_bytea;
(yyval.type).type_str = EMPTY;
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "float") == 0)
{
(yyval.type).type_enum = ECPGt_float;
(yyval.type).type_str = mm_strdup("float");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "double") == 0)
{
(yyval.type).type_enum = ECPGt_double;
(yyval.type).type_str = mm_strdup("double");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "numeric") == 0)
{
(yyval.type).type_enum = ECPGt_numeric;
(yyval.type).type_str = mm_strdup("numeric");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "decimal") == 0)
{
(yyval.type).type_enum = ECPGt_decimal;
(yyval.type).type_str = mm_strdup("decimal");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "date") == 0)
{
(yyval.type).type_enum = ECPGt_date;
(yyval.type).type_str = mm_strdup("date");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "timestamp") == 0)
{
(yyval.type).type_enum = ECPGt_timestamp;
(yyval.type).type_str = mm_strdup("timestamp");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "interval") == 0)
{
(yyval.type).type_enum = ECPGt_interval;
(yyval.type).type_str = mm_strdup("interval");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if (strcmp((yyvsp[-1].str), "datetime") == 0)
{
(yyval.type).type_enum = ECPGt_timestamp;
(yyval.type).type_str = mm_strdup("timestamp");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else if ((strcmp((yyvsp[-1].str), "string") == 0) && INFORMIX_MODE)
{
(yyval.type).type_enum = ECPGt_string;
(yyval.type).type_str = mm_strdup("char");
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = NULL;
}
else
{
/* Otherwise, it must be a user-defined typedef name */
struct typedefs *this = get_typedef((yyvsp[-1].str), false);
(yyval.type).type_str = (this->type->type_enum == ECPGt_varchar || this->type->type_enum == ECPGt_bytea) ? EMPTY : mm_strdup(this->name);
(yyval.type).type_enum = this->type->type_enum;
(yyval.type).type_dimension = this->type->type_dimension;
(yyval.type).type_index = this->type->type_index;
if (this->type->type_sizeof && strlen(this->type->type_sizeof) != 0)
(yyval.type).type_sizeof = this->type->type_sizeof;
else
(yyval.type).type_sizeof = cat_str(3, mm_strdup("sizeof("), mm_strdup(this->name), mm_strdup(")"));
struct_member_list[struct_level] = ECPGstruct_member_dup(this->struct_member_list);
}
}
#line 64952 "preproc.c"
break;
case 3383: /* var_type: s_struct_union_symbol */
#line 18312 "preproc.y"
{
/* this is for named structs/unions */
char *name;
struct typedefs *this;
bool forward = (forward_name != NULL && strcmp((yyvsp[0].struct_union).symbol, forward_name) == 0 && strcmp((yyvsp[0].struct_union).su, "struct") == 0);
name = cat2_str((yyvsp[0].struct_union).su, (yyvsp[0].struct_union).symbol);
/* Do we have a forward definition? */
if (!forward)
{
/* No */
this = get_typedef(name, false);
(yyval.type).type_str = mm_strdup(this->name);
(yyval.type).type_enum = this->type->type_enum;
(yyval.type).type_dimension = this->type->type_dimension;
(yyval.type).type_index = this->type->type_index;
(yyval.type).type_sizeof = this->type->type_sizeof;
struct_member_list[struct_level] = ECPGstruct_member_dup(this->struct_member_list);
free(name);
}
else
{
(yyval.type).type_str = name;
(yyval.type).type_enum = ECPGt_long;
(yyval.type).type_dimension = mm_strdup("-1");
(yyval.type).type_index = mm_strdup("-1");
(yyval.type).type_sizeof = mm_strdup("");
struct_member_list[struct_level] = NULL;
}
}
#line 64988 "preproc.c"
break;
case 3384: /* enum_type: ENUM_P symbol enum_definition */
#line 18346 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("enum"), (yyvsp[-1].str), (yyvsp[0].str)); }
#line 64994 "preproc.c"
break;
case 3385: /* enum_type: ENUM_P enum_definition */
#line 18348 "preproc.y"
{ (yyval.str) = cat2_str(mm_strdup("enum"), (yyvsp[0].str)); }
#line 65000 "preproc.c"
break;
case 3386: /* enum_type: ENUM_P symbol */
#line 18350 "preproc.y"
{ (yyval.str) = cat2_str(mm_strdup("enum"), (yyvsp[0].str)); }
#line 65006 "preproc.c"
break;
case 3387: /* enum_definition: '{' c_list '}' */
#line 18354 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("{"), (yyvsp[-1].str), mm_strdup("}")); }
#line 65012 "preproc.c"
break;
case 3388: /* $@7: %empty */
#line 18357 "preproc.y"
{
struct_member_list[struct_level++] = NULL;
if (struct_level >= STRUCT_DEPTH)
mmerror(PARSE_ERROR, ET_ERROR, "too many levels in nested structure/union definition");
forward_name = mm_strdup((yyvsp[0].struct_union).symbol);
}
#line 65023 "preproc.c"
break;
case 3389: /* struct_union_type_with_symbol: s_struct_union_symbol $@7 '{' variable_declarations '}' */
#line 18364 "preproc.y"
{
struct typedefs *ptr, *this;
struct this_type su_type;
ECPGfree_struct_member(struct_member_list[struct_level]);
struct_member_list[struct_level] = NULL;
struct_level--;
if (strncmp((yyvsp[-4].struct_union).su, "struct", sizeof("struct")-1) == 0)
su_type.type_enum = ECPGt_struct;
else
su_type.type_enum = ECPGt_union;
su_type.type_str = cat2_str((yyvsp[-4].struct_union).su, (yyvsp[-4].struct_union).symbol);
free(forward_name);
forward_name = NULL;
/* This is essentially a typedef but needs the keyword struct/union as well.
* So we create the typedef for each struct definition with symbol */
for (ptr = types; ptr != NULL; ptr = ptr->next)
{
if (strcmp(su_type.type_str, ptr->name) == 0)
/* re-definition is a bug */
mmerror(PARSE_ERROR, ET_ERROR, "type \"%s\" is already defined", su_type.type_str);
}
this = (struct typedefs *) mm_alloc(sizeof(struct typedefs));
/* initial definition */
this->next = types;
this->name = mm_strdup(su_type.type_str);
this->brace_level = braces_open;
this->type = (struct this_type *) mm_alloc(sizeof(struct this_type));
this->type->type_enum = su_type.type_enum;
this->type->type_str = mm_strdup(su_type.type_str);
this->type->type_dimension = mm_strdup("-1"); /* dimension of array */
this->type->type_index = mm_strdup("-1"); /* length of string */
this->type->type_sizeof = ECPGstruct_sizeof;
this->struct_member_list = struct_member_list[struct_level];
types = this;
(yyval.str) = cat_str(4, su_type.type_str, mm_strdup("{"), (yyvsp[-1].str), mm_strdup("}"));
}
#line 65069 "preproc.c"
break;
case 3390: /* struct_union_type: struct_union_type_with_symbol */
#line 18407 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65075 "preproc.c"
break;
case 3391: /* $@8: %empty */
#line 18409 "preproc.y"
{
struct_member_list[struct_level++] = NULL;
if (struct_level >= STRUCT_DEPTH)
mmerror(PARSE_ERROR, ET_ERROR, "too many levels in nested structure/union definition");
}
#line 65085 "preproc.c"
break;
case 3392: /* struct_union_type: s_struct_union $@8 '{' variable_declarations '}' */
#line 18415 "preproc.y"
{
ECPGfree_struct_member(struct_member_list[struct_level]);
struct_member_list[struct_level] = NULL;
struct_level--;
(yyval.str) = cat_str(4, (yyvsp[-4].str), mm_strdup("{"), (yyvsp[-1].str), mm_strdup("}"));
}
#line 65096 "preproc.c"
break;
case 3393: /* s_struct_union_symbol: SQL_STRUCT symbol */
#line 18424 "preproc.y"
{
(yyval.struct_union).su = mm_strdup("struct");
(yyval.struct_union).symbol = (yyvsp[0].str);
ECPGstruct_sizeof = cat_str(3, mm_strdup("sizeof("), cat2_str(mm_strdup((yyval.struct_union).su), mm_strdup((yyval.struct_union).symbol)), mm_strdup(")"));
}
#line 65106 "preproc.c"
break;
case 3394: /* s_struct_union_symbol: UNION symbol */
#line 18430 "preproc.y"
{
(yyval.struct_union).su = mm_strdup("union");
(yyval.struct_union).symbol = (yyvsp[0].str);
}
#line 65115 "preproc.c"
break;
case 3395: /* s_struct_union: SQL_STRUCT */
#line 18437 "preproc.y"
{
ECPGstruct_sizeof = mm_strdup(""); /* This must not be NULL to distinguish from simple types. */
(yyval.str) = mm_strdup("struct");
}
#line 65124 "preproc.c"
break;
case 3396: /* s_struct_union: UNION */
#line 18442 "preproc.y"
{
(yyval.str) = mm_strdup("union");
}
#line 65132 "preproc.c"
break;
case 3397: /* simple_type: unsigned_type */
#line 18447 "preproc.y"
{ (yyval.type_enum)=(yyvsp[0].type_enum); }
#line 65138 "preproc.c"
break;
case 3398: /* simple_type: opt_signed signed_type */
#line 18448 "preproc.y"
{ (yyval.type_enum)=(yyvsp[0].type_enum); }
#line 65144 "preproc.c"
break;
case 3399: /* unsigned_type: SQL_UNSIGNED SQL_SHORT */
#line 18451 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_short; }
#line 65150 "preproc.c"
break;
case 3400: /* unsigned_type: SQL_UNSIGNED SQL_SHORT INT_P */
#line 18452 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_short; }
#line 65156 "preproc.c"
break;
case 3401: /* unsigned_type: SQL_UNSIGNED */
#line 18453 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_int; }
#line 65162 "preproc.c"
break;
case 3402: /* unsigned_type: SQL_UNSIGNED INT_P */
#line 18454 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_int; }
#line 65168 "preproc.c"
break;
case 3403: /* unsigned_type: SQL_UNSIGNED SQL_LONG */
#line 18455 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_long; }
#line 65174 "preproc.c"
break;
case 3404: /* unsigned_type: SQL_UNSIGNED SQL_LONG INT_P */
#line 18456 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_long; }
#line 65180 "preproc.c"
break;
case 3405: /* unsigned_type: SQL_UNSIGNED SQL_LONG SQL_LONG */
#line 18457 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_long_long; }
#line 65186 "preproc.c"
break;
case 3406: /* unsigned_type: SQL_UNSIGNED SQL_LONG SQL_LONG INT_P */
#line 18458 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_long_long; }
#line 65192 "preproc.c"
break;
case 3407: /* unsigned_type: SQL_UNSIGNED CHAR_P */
#line 18459 "preproc.y"
{ (yyval.type_enum) = ECPGt_unsigned_char; }
#line 65198 "preproc.c"
break;
case 3408: /* signed_type: SQL_SHORT */
#line 18462 "preproc.y"
{ (yyval.type_enum) = ECPGt_short; }
#line 65204 "preproc.c"
break;
case 3409: /* signed_type: SQL_SHORT INT_P */
#line 18463 "preproc.y"
{ (yyval.type_enum) = ECPGt_short; }
#line 65210 "preproc.c"
break;
case 3410: /* signed_type: INT_P */
#line 18464 "preproc.y"
{ (yyval.type_enum) = ECPGt_int; }
#line 65216 "preproc.c"
break;
case 3411: /* signed_type: SQL_LONG */
#line 18465 "preproc.y"
{ (yyval.type_enum) = ECPGt_long; }
#line 65222 "preproc.c"
break;
case 3412: /* signed_type: SQL_LONG INT_P */
#line 18466 "preproc.y"
{ (yyval.type_enum) = ECPGt_long; }
#line 65228 "preproc.c"
break;
case 3413: /* signed_type: SQL_LONG SQL_LONG */
#line 18467 "preproc.y"
{ (yyval.type_enum) = ECPGt_long_long; }
#line 65234 "preproc.c"
break;
case 3414: /* signed_type: SQL_LONG SQL_LONG INT_P */
#line 18468 "preproc.y"
{ (yyval.type_enum) = ECPGt_long_long; }
#line 65240 "preproc.c"
break;
case 3415: /* signed_type: SQL_BOOL */
#line 18469 "preproc.y"
{ (yyval.type_enum) = ECPGt_bool; }
#line 65246 "preproc.c"
break;
case 3416: /* signed_type: CHAR_P */
#line 18470 "preproc.y"
{ (yyval.type_enum) = ECPGt_char; }
#line 65252 "preproc.c"
break;
case 3417: /* signed_type: DOUBLE_P */
#line 18471 "preproc.y"
{ (yyval.type_enum) = ECPGt_double; }
#line 65258 "preproc.c"
break;
case 3420: /* variable_list: variable */
#line 18479 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65264 "preproc.c"
break;
case 3421: /* variable_list: variable_list ',' variable */
#line 18481 "preproc.y"
{
if (actual_type[struct_level].type_enum == ECPGt_varchar || actual_type[struct_level].type_enum == ECPGt_bytea)
(yyval.str) = cat_str(4, (yyvsp[-2].str), mm_strdup(";"), mm_strdup(actual_type[struct_level].type_storage), (yyvsp[0].str));
else
(yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup(","), (yyvsp[0].str));
}
#line 65275 "preproc.c"
break;
case 3422: /* variable: opt_pointer ECPGColLabel opt_array_bounds opt_bit_field opt_initializer */
#line 18490 "preproc.y"
{
struct ECPGtype * type;
char *dimension = (yyvsp[-2].index).index1; /* dimension of array */
char *length = (yyvsp[-2].index).index2; /* length of string */
char *dim_str;
char *vcn;
int *varlen_type_counter;
char *struct_name;
adjust_array(actual_type[struct_level].type_enum, &dimension, &length, actual_type[struct_level].type_dimension, actual_type[struct_level].type_index, strlen((yyvsp[-4].str)), false);
switch (actual_type[struct_level].type_enum)
{
case ECPGt_struct:
case ECPGt_union:
if (atoi(dimension) < 0)
type = ECPGmake_struct_type(struct_member_list[struct_level], actual_type[struct_level].type_enum, actual_type[struct_level].type_str, actual_type[struct_level].type_sizeof);
else
type = ECPGmake_array_type(ECPGmake_struct_type(struct_member_list[struct_level], actual_type[struct_level].type_enum, actual_type[struct_level].type_str, actual_type[struct_level].type_sizeof), dimension);
(yyval.str) = cat_str(5, (yyvsp[-4].str), mm_strdup((yyvsp[-3].str)), (yyvsp[-2].index).str, (yyvsp[-1].str), (yyvsp[0].str));
break;
case ECPGt_varchar:
case ECPGt_bytea:
if (actual_type[struct_level].type_enum == ECPGt_varchar)
{
varlen_type_counter = &varchar_counter;
struct_name = " struct varchar_";
}
else
{
varlen_type_counter = &bytea_counter;
struct_name = " struct bytea_";
}
if (atoi(dimension) < 0)
type = ECPGmake_simple_type(actual_type[struct_level].type_enum, length, *varlen_type_counter);
else
type = ECPGmake_array_type(ECPGmake_simple_type(actual_type[struct_level].type_enum, length, *varlen_type_counter), dimension);
if (strcmp(dimension, "0") == 0 || abs(atoi(dimension)) == 1)
dim_str=mm_strdup("");
else
dim_str=cat_str(3, mm_strdup("["), mm_strdup(dimension), mm_strdup("]"));
/* cannot check for atoi <= 0 because a defined constant will yield 0 here as well */
if (atoi(length) < 0 || strcmp(length, "0") == 0)
mmerror(PARSE_ERROR, ET_ERROR, "pointers to varchar are not implemented");
/* make sure varchar struct name is unique by adding a unique counter to its definition */
vcn = (char *) mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
sprintf(vcn, "%d", *varlen_type_counter);
if (strcmp(dimension, "0") == 0)
(yyval.str) = cat_str(7, make2_str(mm_strdup(struct_name), vcn), mm_strdup(" { int len; char arr["), mm_strdup(length), mm_strdup("]; } *"), mm_strdup((yyvsp[-3].str)), (yyvsp[-1].str), (yyvsp[0].str));
else
(yyval.str) = cat_str(8, make2_str(mm_strdup(struct_name), vcn), mm_strdup(" { int len; char arr["), mm_strdup(length), mm_strdup("]; } "), mm_strdup((yyvsp[-3].str)), dim_str, (yyvsp[-1].str), (yyvsp[0].str));
(*varlen_type_counter)++;
break;
case ECPGt_char:
case ECPGt_unsigned_char:
case ECPGt_string:
if (atoi(dimension) == -1)
{
int i = strlen((yyvsp[0].str));
if (atoi(length) == -1 && i > 0) /* char [] = "string" */
{
/* if we have an initializer but no string size set, let's use the initializer's length */
free(length);
length = mm_alloc(i+sizeof("sizeof()"));
sprintf(length, "sizeof(%s)", (yyvsp[0].str)+2);
}
type = ECPGmake_simple_type(actual_type[struct_level].type_enum, length, 0);
}
else
type = ECPGmake_array_type(ECPGmake_simple_type(actual_type[struct_level].type_enum, length, 0), dimension);
(yyval.str) = cat_str(5, (yyvsp[-4].str), mm_strdup((yyvsp[-3].str)), (yyvsp[-2].index).str, (yyvsp[-1].str), (yyvsp[0].str));
break;
default:
if (atoi(dimension) < 0)
type = ECPGmake_simple_type(actual_type[struct_level].type_enum, mm_strdup("1"), 0);
else
type = ECPGmake_array_type(ECPGmake_simple_type(actual_type[struct_level].type_enum, mm_strdup("1"), 0), dimension);
(yyval.str) = cat_str(5, (yyvsp[-4].str), mm_strdup((yyvsp[-3].str)), (yyvsp[-2].index).str, (yyvsp[-1].str), (yyvsp[0].str));
break;
}
if (struct_level == 0)
new_variable((yyvsp[-3].str), type, braces_open);
else
ECPGmake_struct_member((yyvsp[-3].str), type, &(struct_member_list[struct_level - 1]));
free((yyvsp[-3].str));
}
#line 65376 "preproc.c"
break;
case 3423: /* opt_initializer: %empty */
#line 18589 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65382 "preproc.c"
break;
case 3424: /* opt_initializer: '=' c_term */
#line 18591 "preproc.y"
{
initializer = 1;
(yyval.str) = cat2_str(mm_strdup("="), (yyvsp[0].str));
}
#line 65391 "preproc.c"
break;
case 3425: /* opt_pointer: %empty */
#line 18597 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65397 "preproc.c"
break;
case 3426: /* opt_pointer: '*' */
#line 18598 "preproc.y"
{ (yyval.str) = mm_strdup("*"); }
#line 65403 "preproc.c"
break;
case 3427: /* opt_pointer: '*' '*' */
#line 18599 "preproc.y"
{ (yyval.str) = mm_strdup("**"); }
#line 65409 "preproc.c"
break;
case 3428: /* ECPGDeclare: DECLARE STATEMENT ecpg_ident */
#line 18606 "preproc.y"
{
/* this is only supported for compatibility */
(yyval.str) = cat_str(3, mm_strdup("/* declare statement"), (yyvsp[0].str), mm_strdup("*/"));
}
#line 65418 "preproc.c"
break;
case 3429: /* ECPGDisconnect: SQL_DISCONNECT dis_name */
#line 18614 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65424 "preproc.c"
break;
case 3430: /* dis_name: connection_object */
#line 18617 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65430 "preproc.c"
break;
case 3431: /* dis_name: CURRENT_P */
#line 18618 "preproc.y"
{ (yyval.str) = mm_strdup("\"CURRENT\""); }
#line 65436 "preproc.c"
break;
case 3432: /* dis_name: ALL */
#line 18619 "preproc.y"
{ (yyval.str) = mm_strdup("\"ALL\""); }
#line 65442 "preproc.c"
break;
case 3433: /* dis_name: %empty */
#line 18620 "preproc.y"
{ (yyval.str) = mm_strdup("\"CURRENT\""); }
#line 65448 "preproc.c"
break;
case 3434: /* connection_object: name */
#line 18623 "preproc.y"
{ (yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\"")); }
#line 65454 "preproc.c"
break;
case 3435: /* connection_object: DEFAULT */
#line 18624 "preproc.y"
{ (yyval.str) = mm_strdup("\"DEFAULT\""); }
#line 65460 "preproc.c"
break;
case 3436: /* connection_object: char_variable */
#line 18625 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65466 "preproc.c"
break;
case 3437: /* execstring: char_variable */
#line 18629 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65472 "preproc.c"
break;
case 3438: /* execstring: CSTRING */
#line 18631 "preproc.y"
{ (yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\"")); }
#line 65478 "preproc.c"
break;
case 3439: /* ECPGFree: SQL_FREE cursor_name */
#line 18638 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65484 "preproc.c"
break;
case 3440: /* ECPGFree: SQL_FREE ALL */
#line 18639 "preproc.y"
{ (yyval.str) = mm_strdup("all"); }
#line 65490 "preproc.c"
break;
case 3441: /* ECPGOpen: SQL_OPEN cursor_name opt_ecpg_using */
#line 18646 "preproc.y"
{
if ((yyvsp[-1].str)[0] == ':')
remove_variable_from_list(&argsinsert, find_variable((yyvsp[-1].str) + 1));
(yyval.str) = (yyvsp[-1].str);
}
#line 65500 "preproc.c"
break;
case 3442: /* opt_ecpg_using: %empty */
#line 18653 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65506 "preproc.c"
break;
case 3443: /* opt_ecpg_using: ecpg_using */
#line 18654 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65512 "preproc.c"
break;
case 3444: /* ecpg_using: USING using_list */
#line 18657 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65518 "preproc.c"
break;
case 3445: /* ecpg_using: using_descriptor */
#line 18658 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65524 "preproc.c"
break;
case 3446: /* using_descriptor: USING SQL_P SQL_DESCRIPTOR quoted_ident_stringvar */
#line 18662 "preproc.y"
{
add_variable_to_head(&argsinsert, descriptor_variable((yyvsp[0].str),0), &no_indicator);
(yyval.str) = EMPTY;
}
#line 65533 "preproc.c"
break;
case 3447: /* using_descriptor: USING SQL_DESCRIPTOR name */
#line 18667 "preproc.y"
{
add_variable_to_head(&argsinsert, sqlda_variable((yyvsp[0].str)), &no_indicator);
(yyval.str) = EMPTY;
}
#line 65542 "preproc.c"
break;
case 3448: /* into_descriptor: INTO SQL_P SQL_DESCRIPTOR quoted_ident_stringvar */
#line 18674 "preproc.y"
{
add_variable_to_head(&argsresult, descriptor_variable((yyvsp[0].str),1), &no_indicator);
(yyval.str) = EMPTY;
}
#line 65551 "preproc.c"
break;
case 3449: /* into_descriptor: INTO SQL_DESCRIPTOR name */
#line 18679 "preproc.y"
{
add_variable_to_head(&argsresult, sqlda_variable((yyvsp[0].str)), &no_indicator);
(yyval.str) = EMPTY;
}
#line 65560 "preproc.c"
break;
case 3450: /* into_sqlda: INTO name */
#line 18686 "preproc.y"
{
add_variable_to_head(&argsresult, sqlda_variable((yyvsp[0].str)), &no_indicator);
(yyval.str) = EMPTY;
}
#line 65569 "preproc.c"
break;
case 3453: /* UsingValue: UsingConst */
#line 18695 "preproc.y"
{
char *length = mm_alloc(32);
sprintf(length, "%zu", strlen((yyvsp[0].str)));
add_variable_to_head(&argsinsert, new_variable((yyvsp[0].str), ECPGmake_simple_type(ECPGt_const, length, 0), 0), &no_indicator);
}
#line 65580 "preproc.c"
break;
case 3454: /* UsingValue: civar */
#line 18701 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65586 "preproc.c"
break;
case 3455: /* UsingValue: civarind */
#line 18702 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65592 "preproc.c"
break;
case 3456: /* UsingConst: Iconst */
#line 18705 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65598 "preproc.c"
break;
case 3457: /* UsingConst: '+' Iconst */
#line 18706 "preproc.y"
{ (yyval.str) = cat_str(2, mm_strdup("+"), (yyvsp[0].str)); }
#line 65604 "preproc.c"
break;
case 3458: /* UsingConst: '-' Iconst */
#line 18707 "preproc.y"
{ (yyval.str) = cat_str(2, mm_strdup("-"), (yyvsp[0].str)); }
#line 65610 "preproc.c"
break;
case 3459: /* UsingConst: ecpg_fconst */
#line 18708 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65616 "preproc.c"
break;
case 3460: /* UsingConst: '+' ecpg_fconst */
#line 18709 "preproc.y"
{ (yyval.str) = cat_str(2, mm_strdup("+"), (yyvsp[0].str)); }
#line 65622 "preproc.c"
break;
case 3461: /* UsingConst: '-' ecpg_fconst */
#line 18710 "preproc.y"
{ (yyval.str) = cat_str(2, mm_strdup("-"), (yyvsp[0].str)); }
#line 65628 "preproc.c"
break;
case 3462: /* UsingConst: ecpg_sconst */
#line 18711 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65634 "preproc.c"
break;
case 3463: /* UsingConst: ecpg_bconst */
#line 18712 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65640 "preproc.c"
break;
case 3464: /* UsingConst: ecpg_xconst */
#line 18713 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65646 "preproc.c"
break;
case 3465: /* ECPGDescribe: SQL_DESCRIBE INPUT_P prepared_name using_descriptor */
#line 18720 "preproc.y"
{
(yyval.describe).input = 1;
(yyval.describe).stmt_name = (yyvsp[-1].str);
}
#line 65655 "preproc.c"
break;
case 3466: /* ECPGDescribe: SQL_DESCRIBE opt_output prepared_name using_descriptor */
#line 18725 "preproc.y"
{
struct variable *var;
var = argsinsert->variable;
remove_variable_from_list(&argsinsert, var);
add_variable_to_head(&argsresult, var, &no_indicator);
(yyval.describe).input = 0;
(yyval.describe).stmt_name = (yyvsp[-1].str);
}
#line 65669 "preproc.c"
break;
case 3467: /* ECPGDescribe: SQL_DESCRIBE opt_output prepared_name into_descriptor */
#line 18735 "preproc.y"
{
(yyval.describe).input = 0;
(yyval.describe).stmt_name = (yyvsp[-1].str);
}
#line 65678 "preproc.c"
break;
case 3468: /* ECPGDescribe: SQL_DESCRIBE INPUT_P prepared_name into_sqlda */
#line 18740 "preproc.y"
{
(yyval.describe).input = 1;
(yyval.describe).stmt_name = (yyvsp[-1].str);
}
#line 65687 "preproc.c"
break;
case 3469: /* ECPGDescribe: SQL_DESCRIBE opt_output prepared_name into_sqlda */
#line 18745 "preproc.y"
{
(yyval.describe).input = 0;
(yyval.describe).stmt_name = (yyvsp[-1].str);
}
#line 65696 "preproc.c"
break;
case 3470: /* opt_output: SQL_OUTPUT */
#line 18751 "preproc.y"
{ (yyval.str) = mm_strdup("output"); }
#line 65702 "preproc.c"
break;
case 3471: /* opt_output: %empty */
#line 18752 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 65708 "preproc.c"
break;
case 3472: /* ECPGAllocateDescr: SQL_ALLOCATE SQL_DESCRIPTOR quoted_ident_stringvar */
#line 18765 "preproc.y"
{
add_descriptor((yyvsp[0].str),connection);
(yyval.str) = (yyvsp[0].str);
}
#line 65717 "preproc.c"
break;
case 3473: /* ECPGDeallocateDescr: DEALLOCATE SQL_DESCRIPTOR quoted_ident_stringvar */
#line 18776 "preproc.y"
{
drop_descriptor((yyvsp[0].str),connection);
(yyval.str) = (yyvsp[0].str);
}
#line 65726 "preproc.c"
break;
case 3474: /* ECPGGetDescriptorHeader: SQL_GET SQL_DESCRIPTOR quoted_ident_stringvar ECPGGetDescHeaderItems */
#line 18787 "preproc.y"
{ (yyval.str) = (yyvsp[-1].str); }
#line 65732 "preproc.c"
break;
case 3477: /* ECPGGetDescHeaderItem: cvariable '=' desc_header_item */
#line 18795 "preproc.y"
{ push_assignment((yyvsp[-2].str), (yyvsp[0].dtype_enum)); }
#line 65738 "preproc.c"
break;
case 3478: /* ECPGSetDescriptorHeader: SET SQL_DESCRIPTOR quoted_ident_stringvar ECPGSetDescHeaderItems */
#line 18800 "preproc.y"
{ (yyval.str) = (yyvsp[-1].str); }
#line 65744 "preproc.c"
break;
case 3481: /* ECPGSetDescHeaderItem: desc_header_item '=' IntConstVar */
#line 18808 "preproc.y"
{
push_assignment((yyvsp[0].str), (yyvsp[-2].dtype_enum));
}
#line 65752 "preproc.c"
break;
case 3482: /* IntConstVar: Iconst */
#line 18814 "preproc.y"
{
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
sprintf(length, "%zu", strlen((yyvsp[0].str)));
new_variable((yyvsp[0].str), ECPGmake_simple_type(ECPGt_const, length, 0), 0);
(yyval.str) = (yyvsp[0].str);
}
#line 65764 "preproc.c"
break;
case 3483: /* IntConstVar: cvariable */
#line 18822 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 65772 "preproc.c"
break;
case 3484: /* desc_header_item: SQL_COUNT */
#line 18827 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_count; }
#line 65778 "preproc.c"
break;
case 3485: /* ECPGGetDescriptor: SQL_GET SQL_DESCRIPTOR quoted_ident_stringvar VALUE_P IntConstVar ECPGGetDescItems */
#line 18835 "preproc.y"
{ (yyval.descriptor).str = (yyvsp[-1].str); (yyval.descriptor).name = (yyvsp[-3].str); }
#line 65784 "preproc.c"
break;
case 3488: /* ECPGGetDescItem: cvariable '=' descriptor_item */
#line 18842 "preproc.y"
{ push_assignment((yyvsp[-2].str), (yyvsp[0].dtype_enum)); }
#line 65790 "preproc.c"
break;
case 3489: /* ECPGSetDescriptor: SET SQL_DESCRIPTOR quoted_ident_stringvar VALUE_P IntConstVar ECPGSetDescItems */
#line 18846 "preproc.y"
{ (yyval.descriptor).str = (yyvsp[-1].str); (yyval.descriptor).name = (yyvsp[-3].str); }
#line 65796 "preproc.c"
break;
case 3492: /* ECPGSetDescItem: descriptor_item '=' AllConstVar */
#line 18854 "preproc.y"
{
push_assignment((yyvsp[0].str), (yyvsp[-2].dtype_enum));
}
#line 65804 "preproc.c"
break;
case 3493: /* AllConstVar: ecpg_fconst */
#line 18860 "preproc.y"
{
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
sprintf(length, "%zu", strlen((yyvsp[0].str)));
new_variable((yyvsp[0].str), ECPGmake_simple_type(ECPGt_const, length, 0), 0);
(yyval.str) = (yyvsp[0].str);
}
#line 65816 "preproc.c"
break;
case 3494: /* AllConstVar: IntConstVar */
#line 18869 "preproc.y"
{
(yyval.str) = (yyvsp[0].str);
}
#line 65824 "preproc.c"
break;
case 3495: /* AllConstVar: '-' ecpg_fconst */
#line 18874 "preproc.y"
{
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
char *var = cat2_str(mm_strdup("-"), (yyvsp[0].str));
sprintf(length, "%zu", strlen(var));
new_variable(var, ECPGmake_simple_type(ECPGt_const, length, 0), 0);
(yyval.str) = var;
}
#line 65837 "preproc.c"
break;
case 3496: /* AllConstVar: '-' Iconst */
#line 18884 "preproc.y"
{
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
char *var = cat2_str(mm_strdup("-"), (yyvsp[0].str));
sprintf(length, "%zu", strlen(var));
new_variable(var, ECPGmake_simple_type(ECPGt_const, length, 0), 0);
(yyval.str) = var;
}
#line 65850 "preproc.c"
break;
case 3497: /* AllConstVar: ecpg_sconst */
#line 18894 "preproc.y"
{
char *length = mm_alloc(sizeof(int) * CHAR_BIT * 10 / 3);
char *var = (yyvsp[0].str) + 1;
var[strlen(var) - 1] = '\0';
sprintf(length, "%zu", strlen(var));
new_variable(var, ECPGmake_simple_type(ECPGt_const, length, 0), 0);
(yyval.str) = var;
}
#line 65864 "preproc.c"
break;
case 3498: /* descriptor_item: SQL_CARDINALITY */
#line 18905 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_cardinality; }
#line 65870 "preproc.c"
break;
case 3499: /* descriptor_item: DATA_P */
#line 18906 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_data; }
#line 65876 "preproc.c"
break;
case 3500: /* descriptor_item: SQL_DATETIME_INTERVAL_CODE */
#line 18907 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_di_code; }
#line 65882 "preproc.c"
break;
case 3501: /* descriptor_item: SQL_DATETIME_INTERVAL_PRECISION */
#line 18908 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_di_precision; }
#line 65888 "preproc.c"
break;
case 3502: /* descriptor_item: SQL_INDICATOR */
#line 18909 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_indicator; }
#line 65894 "preproc.c"
break;
case 3503: /* descriptor_item: SQL_KEY_MEMBER */
#line 18910 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_key_member; }
#line 65900 "preproc.c"
break;
case 3504: /* descriptor_item: SQL_LENGTH */
#line 18911 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_length; }
#line 65906 "preproc.c"
break;
case 3505: /* descriptor_item: NAME_P */
#line 18912 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_name; }
#line 65912 "preproc.c"
break;
case 3506: /* descriptor_item: SQL_NULLABLE */
#line 18913 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_nullable; }
#line 65918 "preproc.c"
break;
case 3507: /* descriptor_item: SQL_OCTET_LENGTH */
#line 18914 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_octet; }
#line 65924 "preproc.c"
break;
case 3508: /* descriptor_item: PRECISION */
#line 18915 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_precision; }
#line 65930 "preproc.c"
break;
case 3509: /* descriptor_item: SQL_RETURNED_LENGTH */
#line 18916 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_length; }
#line 65936 "preproc.c"
break;
case 3510: /* descriptor_item: SQL_RETURNED_OCTET_LENGTH */
#line 18917 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_ret_octet; }
#line 65942 "preproc.c"
break;
case 3511: /* descriptor_item: SQL_SCALE */
#line 18918 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_scale; }
#line 65948 "preproc.c"
break;
case 3512: /* descriptor_item: TYPE_P */
#line 18919 "preproc.y"
{ (yyval.dtype_enum) = ECPGd_type; }
#line 65954 "preproc.c"
break;
case 3513: /* ECPGSetAutocommit: SET SQL_AUTOCOMMIT '=' on_off */
#line 18926 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65960 "preproc.c"
break;
case 3514: /* ECPGSetAutocommit: SET SQL_AUTOCOMMIT TO on_off */
#line 18927 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65966 "preproc.c"
break;
case 3515: /* on_off: ON */
#line 18930 "preproc.y"
{ (yyval.str) = mm_strdup("on"); }
#line 65972 "preproc.c"
break;
case 3516: /* on_off: OFF */
#line 18931 "preproc.y"
{ (yyval.str) = mm_strdup("off"); }
#line 65978 "preproc.c"
break;
case 3517: /* ECPGSetConnection: SET CONNECTION TO connection_object */
#line 18938 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65984 "preproc.c"
break;
case 3518: /* ECPGSetConnection: SET CONNECTION '=' connection_object */
#line 18939 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65990 "preproc.c"
break;
case 3519: /* ECPGSetConnection: SET CONNECTION connection_object */
#line 18940 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 65996 "preproc.c"
break;
case 3520: /* $@9: %empty */
#line 18947 "preproc.y"
{
/* reset this variable so we see if there was */
/* an initializer specified */
initializer = 0;
}
#line 66006 "preproc.c"
break;
case 3521: /* ECPGTypedef: TYPE_P $@9 ECPGColLabel IS var_type opt_array_bounds opt_reference */
#line 18953 "preproc.y"
{
add_typedef((yyvsp[-4].str), (yyvsp[-1].index).index1, (yyvsp[-1].index).index2, (yyvsp[-2].type).type_enum, (yyvsp[-2].type).type_dimension, (yyvsp[-2].type).type_index, initializer, *(yyvsp[0].str) ? 1 : 0);
if (auto_create_c == false)
(yyval.str) = cat_str(7, mm_strdup("/* exec sql type"), mm_strdup((yyvsp[-4].str)), mm_strdup("is"), mm_strdup((yyvsp[-2].type).type_str), mm_strdup((yyvsp[-1].index).str), (yyvsp[0].str), mm_strdup("*/"));
else
(yyval.str) = cat_str(6, mm_strdup("typedef "), mm_strdup((yyvsp[-2].type).type_str), *(yyvsp[0].str)?mm_strdup("*"):mm_strdup(""), mm_strdup((yyvsp[-4].str)), mm_strdup((yyvsp[-1].index).str), mm_strdup(";"));
}
#line 66019 "preproc.c"
break;
case 3522: /* opt_reference: SQL_REFERENCE */
#line 18963 "preproc.y"
{ (yyval.str) = mm_strdup("reference"); }
#line 66025 "preproc.c"
break;
case 3523: /* opt_reference: %empty */
#line 18964 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 66031 "preproc.c"
break;
case 3524: /* $@10: %empty */
#line 18971 "preproc.y"
{
/* reset this variable so we see if there was */
/* an initializer specified */
initializer = 0;
}
#line 66041 "preproc.c"
break;
case 3525: /* ECPGVar: SQL_VAR $@10 ColLabel IS var_type opt_array_bounds opt_reference */
#line 18977 "preproc.y"
{
struct variable *p = find_variable((yyvsp[-4].str));
char *dimension = (yyvsp[-1].index).index1;
char *length = (yyvsp[-1].index).index2;
struct ECPGtype * type;
if (((yyvsp[-2].type).type_enum == ECPGt_struct ||
(yyvsp[-2].type).type_enum == ECPGt_union) &&
initializer == 1)
mmerror(PARSE_ERROR, ET_ERROR, "initializer not allowed in EXEC SQL VAR command");
else
{
adjust_array((yyvsp[-2].type).type_enum, &dimension, &length, (yyvsp[-2].type).type_dimension, (yyvsp[-2].type).type_index, *(yyvsp[0].str)?1:0, false);
switch ((yyvsp[-2].type).type_enum)
{
case ECPGt_struct:
case ECPGt_union:
if (atoi(dimension) < 0)
type = ECPGmake_struct_type(struct_member_list[struct_level], (yyvsp[-2].type).type_enum, (yyvsp[-2].type).type_str, (yyvsp[-2].type).type_sizeof);
else
type = ECPGmake_array_type(ECPGmake_struct_type(struct_member_list[struct_level], (yyvsp[-2].type).type_enum, (yyvsp[-2].type).type_str, (yyvsp[-2].type).type_sizeof), dimension);
break;
case ECPGt_varchar:
case ECPGt_bytea:
if (atoi(dimension) == -1)
type = ECPGmake_simple_type((yyvsp[-2].type).type_enum, length, 0);
else
type = ECPGmake_array_type(ECPGmake_simple_type((yyvsp[-2].type).type_enum, length, 0), dimension);
break;
case ECPGt_char:
case ECPGt_unsigned_char:
case ECPGt_string:
if (atoi(dimension) == -1)
type = ECPGmake_simple_type((yyvsp[-2].type).type_enum, length, 0);
else
type = ECPGmake_array_type(ECPGmake_simple_type((yyvsp[-2].type).type_enum, length, 0), dimension);
break;
default:
if (atoi(length) >= 0)
mmerror(PARSE_ERROR, ET_ERROR, "multidimensional arrays for simple data types are not supported");
if (atoi(dimension) < 0)
type = ECPGmake_simple_type((yyvsp[-2].type).type_enum, mm_strdup("1"), 0);
else
type = ECPGmake_array_type(ECPGmake_simple_type((yyvsp[-2].type).type_enum, mm_strdup("1"), 0), dimension);
break;
}
ECPGfree_type(p->type);
p->type = type;
}
(yyval.str) = cat_str(7, mm_strdup("/* exec sql var"), mm_strdup((yyvsp[-4].str)), mm_strdup("is"), mm_strdup((yyvsp[-2].type).type_str), mm_strdup((yyvsp[-1].index).str), (yyvsp[0].str), mm_strdup("*/"));
}
#line 66104 "preproc.c"
break;
case 3526: /* ECPGWhenever: SQL_WHENEVER SQL_SQLERROR action */
#line 19042 "preproc.y"
{
when_error.code = (yyvsp[0].action).code;
when_error.command = (yyvsp[0].action).command;
(yyval.str) = cat_str(3, mm_strdup("/* exec sql whenever sqlerror "), (yyvsp[0].action).str, mm_strdup("; */"));
}
#line 66114 "preproc.c"
break;
case 3527: /* ECPGWhenever: SQL_WHENEVER NOT SQL_FOUND action */
#line 19048 "preproc.y"
{
when_nf.code = (yyvsp[0].action).code;
when_nf.command = (yyvsp[0].action).command;
(yyval.str) = cat_str(3, mm_strdup("/* exec sql whenever not found "), (yyvsp[0].action).str, mm_strdup("; */"));
}
#line 66124 "preproc.c"
break;
case 3528: /* ECPGWhenever: SQL_WHENEVER SQL_SQLWARNING action */
#line 19054 "preproc.y"
{
when_warn.code = (yyvsp[0].action).code;
when_warn.command = (yyvsp[0].action).command;
(yyval.str) = cat_str(3, mm_strdup("/* exec sql whenever sql_warning "), (yyvsp[0].action).str, mm_strdup("; */"));
}
#line 66134 "preproc.c"
break;
case 3529: /* action: CONTINUE_P */
#line 19062 "preproc.y"
{
(yyval.action).code = W_NOTHING;
(yyval.action).command = NULL;
(yyval.action).str = mm_strdup("continue");
}
#line 66144 "preproc.c"
break;
case 3530: /* action: SQL_SQLPRINT */
#line 19068 "preproc.y"
{
(yyval.action).code = W_SQLPRINT;
(yyval.action).command = NULL;
(yyval.action).str = mm_strdup("sqlprint");
}
#line 66154 "preproc.c"
break;
case 3531: /* action: SQL_STOP */
#line 19074 "preproc.y"
{
(yyval.action).code = W_STOP;
(yyval.action).command = NULL;
(yyval.action).str = mm_strdup("stop");
}
#line 66164 "preproc.c"
break;
case 3532: /* action: SQL_GOTO name */
#line 19080 "preproc.y"
{
(yyval.action).code = W_GOTO;
(yyval.action).command = mm_strdup((yyvsp[0].str));
(yyval.action).str = cat2_str(mm_strdup("goto "), (yyvsp[0].str));
}
#line 66174 "preproc.c"
break;
case 3533: /* action: SQL_GO TO name */
#line 19086 "preproc.y"
{
(yyval.action).code = W_GOTO;
(yyval.action).command = mm_strdup((yyvsp[0].str));
(yyval.action).str = cat2_str(mm_strdup("goto "), (yyvsp[0].str));
}
#line 66184 "preproc.c"
break;
case 3534: /* action: DO name '(' c_args ')' */
#line 19092 "preproc.y"
{
(yyval.action).code = W_DO;
(yyval.action).command = cat_str(4, (yyvsp[-3].str), mm_strdup("("), (yyvsp[-1].str), mm_strdup(")"));
(yyval.action).str = cat2_str(mm_strdup("do"), mm_strdup((yyval.action).command));
}
#line 66194 "preproc.c"
break;
case 3535: /* action: DO SQL_BREAK */
#line 19098 "preproc.y"
{
(yyval.action).code = W_BREAK;
(yyval.action).command = NULL;
(yyval.action).str = mm_strdup("break");
}
#line 66204 "preproc.c"
break;
case 3536: /* action: DO CONTINUE_P */
#line 19104 "preproc.y"
{
(yyval.action).code = W_CONTINUE;
(yyval.action).command = NULL;
(yyval.action).str = mm_strdup("continue");
}
#line 66214 "preproc.c"
break;
case 3537: /* action: CALL name '(' c_args ')' */
#line 19110 "preproc.y"
{
(yyval.action).code = W_DO;
(yyval.action).command = cat_str(4, (yyvsp[-3].str), mm_strdup("("), (yyvsp[-1].str), mm_strdup(")"));
(yyval.action).str = cat2_str(mm_strdup("call"), mm_strdup((yyval.action).command));
}
#line 66224 "preproc.c"
break;
case 3538: /* action: CALL name */
#line 19116 "preproc.y"
{
(yyval.action).code = W_DO;
(yyval.action).command = cat2_str((yyvsp[0].str), mm_strdup("()"));
(yyval.action).str = cat2_str(mm_strdup("call"), mm_strdup((yyval.action).command));
}
#line 66234 "preproc.c"
break;
case 3539: /* ECPGKeywords: ECPGKeywords_vanames */
#line 19126 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66240 "preproc.c"
break;
case 3540: /* ECPGKeywords: ECPGKeywords_rest */
#line 19127 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66246 "preproc.c"
break;
case 3541: /* ECPGKeywords_vanames: SQL_BREAK */
#line 19130 "preproc.y"
{ (yyval.str) = mm_strdup("break"); }
#line 66252 "preproc.c"
break;
case 3542: /* ECPGKeywords_vanames: SQL_CARDINALITY */
#line 19131 "preproc.y"
{ (yyval.str) = mm_strdup("cardinality"); }
#line 66258 "preproc.c"
break;
case 3543: /* ECPGKeywords_vanames: SQL_COUNT */
#line 19132 "preproc.y"
{ (yyval.str) = mm_strdup("count"); }
#line 66264 "preproc.c"
break;
case 3544: /* ECPGKeywords_vanames: SQL_DATETIME_INTERVAL_CODE */
#line 19133 "preproc.y"
{ (yyval.str) = mm_strdup("datetime_interval_code"); }
#line 66270 "preproc.c"
break;
case 3545: /* ECPGKeywords_vanames: SQL_DATETIME_INTERVAL_PRECISION */
#line 19134 "preproc.y"
{ (yyval.str) = mm_strdup("datetime_interval_precision"); }
#line 66276 "preproc.c"
break;
case 3546: /* ECPGKeywords_vanames: SQL_FOUND */
#line 19135 "preproc.y"
{ (yyval.str) = mm_strdup("found"); }
#line 66282 "preproc.c"
break;
case 3547: /* ECPGKeywords_vanames: SQL_GO */
#line 19136 "preproc.y"
{ (yyval.str) = mm_strdup("go"); }
#line 66288 "preproc.c"
break;
case 3548: /* ECPGKeywords_vanames: SQL_GOTO */
#line 19137 "preproc.y"
{ (yyval.str) = mm_strdup("goto"); }
#line 66294 "preproc.c"
break;
case 3549: /* ECPGKeywords_vanames: SQL_IDENTIFIED */
#line 19138 "preproc.y"
{ (yyval.str) = mm_strdup("identified"); }
#line 66300 "preproc.c"
break;
case 3550: /* ECPGKeywords_vanames: SQL_INDICATOR */
#line 19139 "preproc.y"
{ (yyval.str) = mm_strdup("indicator"); }
#line 66306 "preproc.c"
break;
case 3551: /* ECPGKeywords_vanames: SQL_KEY_MEMBER */
#line 19140 "preproc.y"
{ (yyval.str) = mm_strdup("key_member"); }
#line 66312 "preproc.c"
break;
case 3552: /* ECPGKeywords_vanames: SQL_LENGTH */
#line 19141 "preproc.y"
{ (yyval.str) = mm_strdup("length"); }
#line 66318 "preproc.c"
break;
case 3553: /* ECPGKeywords_vanames: SQL_NULLABLE */
#line 19142 "preproc.y"
{ (yyval.str) = mm_strdup("nullable"); }
#line 66324 "preproc.c"
break;
case 3554: /* ECPGKeywords_vanames: SQL_OCTET_LENGTH */
#line 19143 "preproc.y"
{ (yyval.str) = mm_strdup("octet_length"); }
#line 66330 "preproc.c"
break;
case 3555: /* ECPGKeywords_vanames: SQL_RETURNED_LENGTH */
#line 19144 "preproc.y"
{ (yyval.str) = mm_strdup("returned_length"); }
#line 66336 "preproc.c"
break;
case 3556: /* ECPGKeywords_vanames: SQL_RETURNED_OCTET_LENGTH */
#line 19145 "preproc.y"
{ (yyval.str) = mm_strdup("returned_octet_length"); }
#line 66342 "preproc.c"
break;
case 3557: /* ECPGKeywords_vanames: SQL_SCALE */
#line 19146 "preproc.y"
{ (yyval.str) = mm_strdup("scale"); }
#line 66348 "preproc.c"
break;
case 3558: /* ECPGKeywords_vanames: SQL_SECTION */
#line 19147 "preproc.y"
{ (yyval.str) = mm_strdup("section"); }
#line 66354 "preproc.c"
break;
case 3559: /* ECPGKeywords_vanames: SQL_SQLERROR */
#line 19148 "preproc.y"
{ (yyval.str) = mm_strdup("sqlerror"); }
#line 66360 "preproc.c"
break;
case 3560: /* ECPGKeywords_vanames: SQL_SQLPRINT */
#line 19149 "preproc.y"
{ (yyval.str) = mm_strdup("sqlprint"); }
#line 66366 "preproc.c"
break;
case 3561: /* ECPGKeywords_vanames: SQL_SQLWARNING */
#line 19150 "preproc.y"
{ (yyval.str) = mm_strdup("sqlwarning"); }
#line 66372 "preproc.c"
break;
case 3562: /* ECPGKeywords_vanames: SQL_STOP */
#line 19151 "preproc.y"
{ (yyval.str) = mm_strdup("stop"); }
#line 66378 "preproc.c"
break;
case 3563: /* ECPGKeywords_rest: SQL_CONNECT */
#line 19154 "preproc.y"
{ (yyval.str) = mm_strdup("connect"); }
#line 66384 "preproc.c"
break;
case 3564: /* ECPGKeywords_rest: SQL_DESCRIBE */
#line 19155 "preproc.y"
{ (yyval.str) = mm_strdup("describe"); }
#line 66390 "preproc.c"
break;
case 3565: /* ECPGKeywords_rest: SQL_DISCONNECT */
#line 19156 "preproc.y"
{ (yyval.str) = mm_strdup("disconnect"); }
#line 66396 "preproc.c"
break;
case 3566: /* ECPGKeywords_rest: SQL_OPEN */
#line 19157 "preproc.y"
{ (yyval.str) = mm_strdup("open"); }
#line 66402 "preproc.c"
break;
case 3567: /* ECPGKeywords_rest: SQL_VAR */
#line 19158 "preproc.y"
{ (yyval.str) = mm_strdup("var"); }
#line 66408 "preproc.c"
break;
case 3568: /* ECPGKeywords_rest: SQL_WHENEVER */
#line 19159 "preproc.y"
{ (yyval.str) = mm_strdup("whenever"); }
#line 66414 "preproc.c"
break;
case 3569: /* ECPGTypeName: SQL_BOOL */
#line 19163 "preproc.y"
{ (yyval.str) = mm_strdup("bool"); }
#line 66420 "preproc.c"
break;
case 3570: /* ECPGTypeName: SQL_LONG */
#line 19164 "preproc.y"
{ (yyval.str) = mm_strdup("long"); }
#line 66426 "preproc.c"
break;
case 3571: /* ECPGTypeName: SQL_OUTPUT */
#line 19165 "preproc.y"
{ (yyval.str) = mm_strdup("output"); }
#line 66432 "preproc.c"
break;
case 3572: /* ECPGTypeName: SQL_SHORT */
#line 19166 "preproc.y"
{ (yyval.str) = mm_strdup("short"); }
#line 66438 "preproc.c"
break;
case 3573: /* ECPGTypeName: SQL_STRUCT */
#line 19167 "preproc.y"
{ (yyval.str) = mm_strdup("struct"); }
#line 66444 "preproc.c"
break;
case 3574: /* ECPGTypeName: SQL_SIGNED */
#line 19168 "preproc.y"
{ (yyval.str) = mm_strdup("signed"); }
#line 66450 "preproc.c"
break;
case 3575: /* ECPGTypeName: SQL_UNSIGNED */
#line 19169 "preproc.y"
{ (yyval.str) = mm_strdup("unsigned"); }
#line 66456 "preproc.c"
break;
case 3576: /* symbol: ColLabel */
#line 19172 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66462 "preproc.c"
break;
case 3577: /* ECPGColId: ecpg_ident */
#line 19175 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66468 "preproc.c"
break;
case 3578: /* ECPGColId: unreserved_keyword */
#line 19176 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66474 "preproc.c"
break;
case 3579: /* ECPGColId: col_name_keyword */
#line 19177 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66480 "preproc.c"
break;
case 3580: /* ECPGColId: ECPGunreserved_interval */
#line 19178 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66486 "preproc.c"
break;
case 3581: /* ECPGColId: ECPGKeywords */
#line 19179 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66492 "preproc.c"
break;
case 3582: /* ECPGColId: ECPGCKeywords */
#line 19180 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66498 "preproc.c"
break;
case 3583: /* ECPGColId: CHAR_P */
#line 19181 "preproc.y"
{ (yyval.str) = mm_strdup("char"); }
#line 66504 "preproc.c"
break;
case 3584: /* ECPGColId: VALUES */
#line 19182 "preproc.y"
{ (yyval.str) = mm_strdup("values"); }
#line 66510 "preproc.c"
break;
case 3585: /* ColId: ecpg_ident */
#line 19195 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66516 "preproc.c"
break;
case 3586: /* ColId: all_unreserved_keyword */
#line 19196 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66522 "preproc.c"
break;
case 3587: /* ColId: col_name_keyword */
#line 19197 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66528 "preproc.c"
break;
case 3588: /* ColId: ECPGKeywords */
#line 19198 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66534 "preproc.c"
break;
case 3589: /* ColId: ECPGCKeywords */
#line 19199 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66540 "preproc.c"
break;
case 3590: /* ColId: CHAR_P */
#line 19200 "preproc.y"
{ (yyval.str) = mm_strdup("char"); }
#line 66546 "preproc.c"
break;
case 3591: /* ColId: VALUES */
#line 19201 "preproc.y"
{ (yyval.str) = mm_strdup("values"); }
#line 66552 "preproc.c"
break;
case 3592: /* type_function_name: ecpg_ident */
#line 19206 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66558 "preproc.c"
break;
case 3593: /* type_function_name: all_unreserved_keyword */
#line 19207 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66564 "preproc.c"
break;
case 3594: /* type_function_name: type_func_name_keyword */
#line 19208 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66570 "preproc.c"
break;
case 3595: /* type_function_name: ECPGKeywords */
#line 19209 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66576 "preproc.c"
break;
case 3596: /* type_function_name: ECPGCKeywords */
#line 19210 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66582 "preproc.c"
break;
case 3597: /* type_function_name: ECPGTypeName */
#line 19211 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66588 "preproc.c"
break;
case 3598: /* ColLabel: ECPGColLabel */
#line 19217 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66594 "preproc.c"
break;
case 3599: /* ColLabel: ECPGTypeName */
#line 19218 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66600 "preproc.c"
break;
case 3600: /* ColLabel: CHAR_P */
#line 19219 "preproc.y"
{ (yyval.str) = mm_strdup("char"); }
#line 66606 "preproc.c"
break;
case 3601: /* ColLabel: CURRENT_P */
#line 19220 "preproc.y"
{ (yyval.str) = mm_strdup("current"); }
#line 66612 "preproc.c"
break;
case 3602: /* ColLabel: INPUT_P */
#line 19221 "preproc.y"
{ (yyval.str) = mm_strdup("input"); }
#line 66618 "preproc.c"
break;
case 3603: /* ColLabel: INT_P */
#line 19222 "preproc.y"
{ (yyval.str) = mm_strdup("int"); }
#line 66624 "preproc.c"
break;
case 3604: /* ColLabel: TO */
#line 19223 "preproc.y"
{ (yyval.str) = mm_strdup("to"); }
#line 66630 "preproc.c"
break;
case 3605: /* ColLabel: UNION */
#line 19224 "preproc.y"
{ (yyval.str) = mm_strdup("union"); }
#line 66636 "preproc.c"
break;
case 3606: /* ColLabel: VALUES */
#line 19225 "preproc.y"
{ (yyval.str) = mm_strdup("values"); }
#line 66642 "preproc.c"
break;
case 3607: /* ColLabel: ECPGCKeywords */
#line 19226 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66648 "preproc.c"
break;
case 3608: /* ColLabel: ECPGunreserved_interval */
#line 19227 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66654 "preproc.c"
break;
case 3609: /* ECPGColLabel: ecpg_ident */
#line 19230 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66660 "preproc.c"
break;
case 3610: /* ECPGColLabel: unreserved_keyword */
#line 19231 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66666 "preproc.c"
break;
case 3611: /* ECPGColLabel: col_name_keyword */
#line 19232 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66672 "preproc.c"
break;
case 3612: /* ECPGColLabel: type_func_name_keyword */
#line 19233 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66678 "preproc.c"
break;
case 3613: /* ECPGColLabel: reserved_keyword */
#line 19234 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66684 "preproc.c"
break;
case 3614: /* ECPGColLabel: ECPGKeywords_vanames */
#line 19235 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66690 "preproc.c"
break;
case 3615: /* ECPGColLabel: ECPGKeywords_rest */
#line 19236 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66696 "preproc.c"
break;
case 3616: /* ECPGColLabel: CONNECTION */
#line 19237 "preproc.y"
{ (yyval.str) = mm_strdup("connection"); }
#line 66702 "preproc.c"
break;
case 3617: /* ECPGCKeywords: S_AUTO */
#line 19240 "preproc.y"
{ (yyval.str) = mm_strdup("auto"); }
#line 66708 "preproc.c"
break;
case 3618: /* ECPGCKeywords: S_CONST */
#line 19241 "preproc.y"
{ (yyval.str) = mm_strdup("const"); }
#line 66714 "preproc.c"
break;
case 3619: /* ECPGCKeywords: S_EXTERN */
#line 19242 "preproc.y"
{ (yyval.str) = mm_strdup("extern"); }
#line 66720 "preproc.c"
break;
case 3620: /* ECPGCKeywords: S_REGISTER */
#line 19243 "preproc.y"
{ (yyval.str) = mm_strdup("register"); }
#line 66726 "preproc.c"
break;
case 3621: /* ECPGCKeywords: S_STATIC */
#line 19244 "preproc.y"
{ (yyval.str) = mm_strdup("static"); }
#line 66732 "preproc.c"
break;
case 3622: /* ECPGCKeywords: S_TYPEDEF */
#line 19245 "preproc.y"
{ (yyval.str) = mm_strdup("typedef"); }
#line 66738 "preproc.c"
break;
case 3623: /* ECPGCKeywords: S_VOLATILE */
#line 19246 "preproc.y"
{ (yyval.str) = mm_strdup("volatile"); }
#line 66744 "preproc.c"
break;
case 3624: /* all_unreserved_keyword: unreserved_keyword */
#line 19263 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66750 "preproc.c"
break;
case 3625: /* all_unreserved_keyword: ECPGunreserved_interval */
#line 19264 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66756 "preproc.c"
break;
case 3626: /* all_unreserved_keyword: CONNECTION */
#line 19265 "preproc.y"
{ (yyval.str) = mm_strdup("connection"); }
#line 66762 "preproc.c"
break;
case 3627: /* ECPGunreserved_interval: DAY_P */
#line 19268 "preproc.y"
{ (yyval.str) = mm_strdup("day"); }
#line 66768 "preproc.c"
break;
case 3628: /* ECPGunreserved_interval: HOUR_P */
#line 19269 "preproc.y"
{ (yyval.str) = mm_strdup("hour"); }
#line 66774 "preproc.c"
break;
case 3629: /* ECPGunreserved_interval: MINUTE_P */
#line 19270 "preproc.y"
{ (yyval.str) = mm_strdup("minute"); }
#line 66780 "preproc.c"
break;
case 3630: /* ECPGunreserved_interval: MONTH_P */
#line 19271 "preproc.y"
{ (yyval.str) = mm_strdup("month"); }
#line 66786 "preproc.c"
break;
case 3631: /* ECPGunreserved_interval: SECOND_P */
#line 19272 "preproc.y"
{ (yyval.str) = mm_strdup("second"); }
#line 66792 "preproc.c"
break;
case 3632: /* ECPGunreserved_interval: YEAR_P */
#line 19273 "preproc.y"
{ (yyval.str) = mm_strdup("year"); }
#line 66798 "preproc.c"
break;
case 3635: /* ecpgstart: SQL_START */
#line 19280 "preproc.y"
{
reset_variables();
pacounter = 1;
}
#line 66807 "preproc.c"
break;
case 3636: /* c_args: %empty */
#line 19286 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 66813 "preproc.c"
break;
case 3637: /* c_args: c_list */
#line 19287 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66819 "preproc.c"
break;
case 3638: /* coutputvariable: cvariable indicator */
#line 19291 "preproc.y"
{ add_variable_to_head(&argsresult, find_variable((yyvsp[-1].str)), find_variable((yyvsp[0].str))); }
#line 66825 "preproc.c"
break;
case 3639: /* coutputvariable: cvariable */
#line 19293 "preproc.y"
{ add_variable_to_head(&argsresult, find_variable((yyvsp[0].str)), &no_indicator); }
#line 66831 "preproc.c"
break;
case 3640: /* civarind: cvariable indicator */
#line 19298 "preproc.y"
{
if (find_variable((yyvsp[0].str))->type->type == ECPGt_array)
mmerror(PARSE_ERROR, ET_ERROR, "arrays of indicators are not allowed on input");
add_variable_to_head(&argsinsert, find_variable((yyvsp[-1].str)), find_variable((yyvsp[0].str)));
(yyval.str) = create_questionmarks((yyvsp[-1].str), false);
}
#line 66843 "preproc.c"
break;
case 3641: /* char_civar: char_variable */
#line 19308 "preproc.y"
{
char *ptr = strstr((yyvsp[0].str), ".arr");
if (ptr) /* varchar, we need the struct name here, not the struct element */
*ptr = '\0';
add_variable_to_head(&argsinsert, find_variable((yyvsp[0].str)), &no_indicator);
(yyval.str) = (yyvsp[0].str);
}
#line 66856 "preproc.c"
break;
case 3642: /* civar: cvariable */
#line 19319 "preproc.y"
{
add_variable_to_head(&argsinsert, find_variable((yyvsp[0].str)), &no_indicator);
(yyval.str) = create_questionmarks((yyvsp[0].str), false);
}
#line 66865 "preproc.c"
break;
case 3643: /* indicator: cvariable */
#line 19325 "preproc.y"
{ check_indicator((find_variable((yyvsp[0].str)))->type); (yyval.str) = (yyvsp[0].str); }
#line 66871 "preproc.c"
break;
case 3644: /* indicator: SQL_INDICATOR cvariable */
#line 19326 "preproc.y"
{ check_indicator((find_variable((yyvsp[0].str)))->type); (yyval.str) = (yyvsp[0].str); }
#line 66877 "preproc.c"
break;
case 3645: /* indicator: SQL_INDICATOR name */
#line 19327 "preproc.y"
{ check_indicator((find_variable((yyvsp[0].str)))->type); (yyval.str) = (yyvsp[0].str); }
#line 66883 "preproc.c"
break;
case 3646: /* cvariable: CVARIABLE */
#line 19331 "preproc.y"
{
/* As long as multidimensional arrays are not implemented we have to check for those here */
char *ptr = (yyvsp[0].str);
int brace_open=0, brace = false;
for (; *ptr; ptr++)
{
switch (*ptr)
{
case '[':
if (brace)
mmfatal(PARSE_ERROR, "multidimensional arrays for simple data types are not supported");
brace_open++;
break;
case ']':
brace_open--;
if (brace_open == 0)
brace = true;
break;
case '\t':
case ' ':
break;
default:
if (brace_open == 0)
brace = false;
break;
}
}
(yyval.str) = (yyvsp[0].str);
}
#line 66918 "preproc.c"
break;
case 3647: /* ecpg_param: PARAM */
#line 19363 "preproc.y"
{ (yyval.str) = make_name(); }
#line 66924 "preproc.c"
break;
case 3648: /* ecpg_bconst: BCONST */
#line 19365 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66930 "preproc.c"
break;
case 3649: /* ecpg_fconst: FCONST */
#line 19367 "preproc.y"
{ (yyval.str) = make_name(); }
#line 66936 "preproc.c"
break;
case 3650: /* ecpg_sconst: SCONST */
#line 19369 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66942 "preproc.c"
break;
case 3651: /* ecpg_xconst: XCONST */
#line 19371 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66948 "preproc.c"
break;
case 3652: /* ecpg_ident: IDENT */
#line 19373 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66954 "preproc.c"
break;
case 3653: /* ecpg_ident: CSTRING */
#line 19374 "preproc.y"
{ (yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\"")); }
#line 66960 "preproc.c"
break;
case 3654: /* quoted_ident_stringvar: name */
#line 19378 "preproc.y"
{ (yyval.str) = make3_str(mm_strdup("\""), (yyvsp[0].str), mm_strdup("\"")); }
#line 66966 "preproc.c"
break;
case 3655: /* quoted_ident_stringvar: char_variable */
#line 19380 "preproc.y"
{ (yyval.str) = make3_str(mm_strdup("("), (yyvsp[0].str), mm_strdup(")")); }
#line 66972 "preproc.c"
break;
case 3656: /* c_stuff_item: c_anything */
#line 19387 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66978 "preproc.c"
break;
case 3657: /* c_stuff_item: '(' ')' */
#line 19388 "preproc.y"
{ (yyval.str) = mm_strdup("()"); }
#line 66984 "preproc.c"
break;
case 3658: /* c_stuff_item: '(' c_stuff ')' */
#line 19390 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("("), (yyvsp[-1].str), mm_strdup(")")); }
#line 66990 "preproc.c"
break;
case 3659: /* c_stuff: c_stuff_item */
#line 19393 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 66996 "preproc.c"
break;
case 3660: /* c_stuff: c_stuff c_stuff_item */
#line 19395 "preproc.y"
{ (yyval.str) = cat2_str((yyvsp[-1].str), (yyvsp[0].str)); }
#line 67002 "preproc.c"
break;
case 3661: /* c_list: c_term */
#line 19398 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67008 "preproc.c"
break;
case 3662: /* c_list: c_list ',' c_term */
#line 19399 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup(","), (yyvsp[0].str)); }
#line 67014 "preproc.c"
break;
case 3663: /* c_term: c_stuff */
#line 19402 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67020 "preproc.c"
break;
case 3664: /* c_term: '{' c_list '}' */
#line 19403 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("{"), (yyvsp[-1].str), mm_strdup("}")); }
#line 67026 "preproc.c"
break;
case 3665: /* c_thing: c_anything */
#line 19406 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67032 "preproc.c"
break;
case 3666: /* c_thing: '(' */
#line 19407 "preproc.y"
{ (yyval.str) = mm_strdup("("); }
#line 67038 "preproc.c"
break;
case 3667: /* c_thing: ')' */
#line 19408 "preproc.y"
{ (yyval.str) = mm_strdup(")"); }
#line 67044 "preproc.c"
break;
case 3668: /* c_thing: ',' */
#line 19409 "preproc.y"
{ (yyval.str) = mm_strdup(","); }
#line 67050 "preproc.c"
break;
case 3669: /* c_thing: ';' */
#line 19410 "preproc.y"
{ (yyval.str) = mm_strdup(";"); }
#line 67056 "preproc.c"
break;
case 3670: /* c_anything: ecpg_ident */
#line 19413 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67062 "preproc.c"
break;
case 3671: /* c_anything: Iconst */
#line 19414 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67068 "preproc.c"
break;
case 3672: /* c_anything: ecpg_fconst */
#line 19415 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67074 "preproc.c"
break;
case 3673: /* c_anything: ecpg_sconst */
#line 19416 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67080 "preproc.c"
break;
case 3674: /* c_anything: '*' */
#line 19417 "preproc.y"
{ (yyval.str) = mm_strdup("*"); }
#line 67086 "preproc.c"
break;
case 3675: /* c_anything: '+' */
#line 19418 "preproc.y"
{ (yyval.str) = mm_strdup("+"); }
#line 67092 "preproc.c"
break;
case 3676: /* c_anything: '-' */
#line 19419 "preproc.y"
{ (yyval.str) = mm_strdup("-"); }
#line 67098 "preproc.c"
break;
case 3677: /* c_anything: '/' */
#line 19420 "preproc.y"
{ (yyval.str) = mm_strdup("/"); }
#line 67104 "preproc.c"
break;
case 3678: /* c_anything: '%' */
#line 19421 "preproc.y"
{ (yyval.str) = mm_strdup("%"); }
#line 67110 "preproc.c"
break;
case 3679: /* c_anything: NULL_P */
#line 19422 "preproc.y"
{ (yyval.str) = mm_strdup("NULL"); }
#line 67116 "preproc.c"
break;
case 3680: /* c_anything: S_ADD */
#line 19423 "preproc.y"
{ (yyval.str) = mm_strdup("+="); }
#line 67122 "preproc.c"
break;
case 3681: /* c_anything: S_AND */
#line 19424 "preproc.y"
{ (yyval.str) = mm_strdup("&&"); }
#line 67128 "preproc.c"
break;
case 3682: /* c_anything: S_ANYTHING */
#line 19425 "preproc.y"
{ (yyval.str) = make_name(); }
#line 67134 "preproc.c"
break;
case 3683: /* c_anything: S_AUTO */
#line 19426 "preproc.y"
{ (yyval.str) = mm_strdup("auto"); }
#line 67140 "preproc.c"
break;
case 3684: /* c_anything: S_CONST */
#line 19427 "preproc.y"
{ (yyval.str) = mm_strdup("const"); }
#line 67146 "preproc.c"
break;
case 3685: /* c_anything: S_DEC */
#line 19428 "preproc.y"
{ (yyval.str) = mm_strdup("--"); }
#line 67152 "preproc.c"
break;
case 3686: /* c_anything: S_DIV */
#line 19429 "preproc.y"
{ (yyval.str) = mm_strdup("/="); }
#line 67158 "preproc.c"
break;
case 3687: /* c_anything: S_DOTPOINT */
#line 19430 "preproc.y"
{ (yyval.str) = mm_strdup(".*"); }
#line 67164 "preproc.c"
break;
case 3688: /* c_anything: S_EQUAL */
#line 19431 "preproc.y"
{ (yyval.str) = mm_strdup("=="); }
#line 67170 "preproc.c"
break;
case 3689: /* c_anything: S_EXTERN */
#line 19432 "preproc.y"
{ (yyval.str) = mm_strdup("extern"); }
#line 67176 "preproc.c"
break;
case 3690: /* c_anything: S_INC */
#line 19433 "preproc.y"
{ (yyval.str) = mm_strdup("++"); }
#line 67182 "preproc.c"
break;
case 3691: /* c_anything: S_LSHIFT */
#line 19434 "preproc.y"
{ (yyval.str) = mm_strdup("<<"); }
#line 67188 "preproc.c"
break;
case 3692: /* c_anything: S_MEMBER */
#line 19435 "preproc.y"
{ (yyval.str) = mm_strdup("->"); }
#line 67194 "preproc.c"
break;
case 3693: /* c_anything: S_MEMPOINT */
#line 19436 "preproc.y"
{ (yyval.str) = mm_strdup("->*"); }
#line 67200 "preproc.c"
break;
case 3694: /* c_anything: S_MOD */
#line 19437 "preproc.y"
{ (yyval.str) = mm_strdup("%="); }
#line 67206 "preproc.c"
break;
case 3695: /* c_anything: S_MUL */
#line 19438 "preproc.y"
{ (yyval.str) = mm_strdup("*="); }
#line 67212 "preproc.c"
break;
case 3696: /* c_anything: S_NEQUAL */
#line 19439 "preproc.y"
{ (yyval.str) = mm_strdup("!="); }
#line 67218 "preproc.c"
break;
case 3697: /* c_anything: S_OR */
#line 19440 "preproc.y"
{ (yyval.str) = mm_strdup("||"); }
#line 67224 "preproc.c"
break;
case 3698: /* c_anything: S_REGISTER */
#line 19441 "preproc.y"
{ (yyval.str) = mm_strdup("register"); }
#line 67230 "preproc.c"
break;
case 3699: /* c_anything: S_RSHIFT */
#line 19442 "preproc.y"
{ (yyval.str) = mm_strdup(">>"); }
#line 67236 "preproc.c"
break;
case 3700: /* c_anything: S_STATIC */
#line 19443 "preproc.y"
{ (yyval.str) = mm_strdup("static"); }
#line 67242 "preproc.c"
break;
case 3701: /* c_anything: S_SUB */
#line 19444 "preproc.y"
{ (yyval.str) = mm_strdup("-="); }
#line 67248 "preproc.c"
break;
case 3702: /* c_anything: S_TYPEDEF */
#line 19445 "preproc.y"
{ (yyval.str) = mm_strdup("typedef"); }
#line 67254 "preproc.c"
break;
case 3703: /* c_anything: S_VOLATILE */
#line 19446 "preproc.y"
{ (yyval.str) = mm_strdup("volatile"); }
#line 67260 "preproc.c"
break;
case 3704: /* c_anything: SQL_BOOL */
#line 19447 "preproc.y"
{ (yyval.str) = mm_strdup("bool"); }
#line 67266 "preproc.c"
break;
case 3705: /* c_anything: ENUM_P */
#line 19448 "preproc.y"
{ (yyval.str) = mm_strdup("enum"); }
#line 67272 "preproc.c"
break;
case 3706: /* c_anything: HOUR_P */
#line 19449 "preproc.y"
{ (yyval.str) = mm_strdup("hour"); }
#line 67278 "preproc.c"
break;
case 3707: /* c_anything: INT_P */
#line 19450 "preproc.y"
{ (yyval.str) = mm_strdup("int"); }
#line 67284 "preproc.c"
break;
case 3708: /* c_anything: SQL_LONG */
#line 19451 "preproc.y"
{ (yyval.str) = mm_strdup("long"); }
#line 67290 "preproc.c"
break;
case 3709: /* c_anything: MINUTE_P */
#line 19452 "preproc.y"
{ (yyval.str) = mm_strdup("minute"); }
#line 67296 "preproc.c"
break;
case 3710: /* c_anything: MONTH_P */
#line 19453 "preproc.y"
{ (yyval.str) = mm_strdup("month"); }
#line 67302 "preproc.c"
break;
case 3711: /* c_anything: SECOND_P */
#line 19454 "preproc.y"
{ (yyval.str) = mm_strdup("second"); }
#line 67308 "preproc.c"
break;
case 3712: /* c_anything: SQL_SHORT */
#line 19455 "preproc.y"
{ (yyval.str) = mm_strdup("short"); }
#line 67314 "preproc.c"
break;
case 3713: /* c_anything: SQL_SIGNED */
#line 19456 "preproc.y"
{ (yyval.str) = mm_strdup("signed"); }
#line 67320 "preproc.c"
break;
case 3714: /* c_anything: SQL_STRUCT */
#line 19457 "preproc.y"
{ (yyval.str) = mm_strdup("struct"); }
#line 67326 "preproc.c"
break;
case 3715: /* c_anything: SQL_UNSIGNED */
#line 19458 "preproc.y"
{ (yyval.str) = mm_strdup("unsigned"); }
#line 67332 "preproc.c"
break;
case 3716: /* c_anything: YEAR_P */
#line 19459 "preproc.y"
{ (yyval.str) = mm_strdup("year"); }
#line 67338 "preproc.c"
break;
case 3717: /* c_anything: CHAR_P */
#line 19460 "preproc.y"
{ (yyval.str) = mm_strdup("char"); }
#line 67344 "preproc.c"
break;
case 3718: /* c_anything: FLOAT_P */
#line 19461 "preproc.y"
{ (yyval.str) = mm_strdup("float"); }
#line 67350 "preproc.c"
break;
case 3719: /* c_anything: TO */
#line 19462 "preproc.y"
{ (yyval.str) = mm_strdup("to"); }
#line 67356 "preproc.c"
break;
case 3720: /* c_anything: UNION */
#line 19463 "preproc.y"
{ (yyval.str) = mm_strdup("union"); }
#line 67362 "preproc.c"
break;
case 3721: /* c_anything: VARCHAR */
#line 19464 "preproc.y"
{ (yyval.str) = mm_strdup("varchar"); }
#line 67368 "preproc.c"
break;
case 3722: /* c_anything: '[' */
#line 19465 "preproc.y"
{ (yyval.str) = mm_strdup("["); }
#line 67374 "preproc.c"
break;
case 3723: /* c_anything: ']' */
#line 19466 "preproc.y"
{ (yyval.str) = mm_strdup("]"); }
#line 67380 "preproc.c"
break;
case 3724: /* c_anything: '=' */
#line 19467 "preproc.y"
{ (yyval.str) = mm_strdup("="); }
#line 67386 "preproc.c"
break;
case 3725: /* c_anything: ':' */
#line 19468 "preproc.y"
{ (yyval.str) = mm_strdup(":"); }
#line 67392 "preproc.c"
break;
case 3726: /* DeallocateStmt: DEALLOCATE prepared_name */
#line 19471 "preproc.y"
{ check_declared_list((yyvsp[0].str)); (yyval.str) = (yyvsp[0].str); }
#line 67398 "preproc.c"
break;
case 3727: /* DeallocateStmt: DEALLOCATE PREPARE prepared_name */
#line 19472 "preproc.y"
{ check_declared_list((yyvsp[0].str)); (yyval.str) = (yyvsp[0].str); }
#line 67404 "preproc.c"
break;
case 3728: /* DeallocateStmt: DEALLOCATE ALL */
#line 19473 "preproc.y"
{ (yyval.str) = mm_strdup("all"); }
#line 67410 "preproc.c"
break;
case 3729: /* DeallocateStmt: DEALLOCATE PREPARE ALL */
#line 19474 "preproc.y"
{ (yyval.str) = mm_strdup("all"); }
#line 67416 "preproc.c"
break;
case 3730: /* Iresult: Iconst */
#line 19477 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67422 "preproc.c"
break;
case 3731: /* Iresult: '(' Iresult ')' */
#line 19478 "preproc.y"
{ (yyval.str) = cat_str(3, mm_strdup("("), (yyvsp[-1].str), mm_strdup(")")); }
#line 67428 "preproc.c"
break;
case 3732: /* Iresult: Iresult '+' Iresult */
#line 19479 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup("+"), (yyvsp[0].str)); }
#line 67434 "preproc.c"
break;
case 3733: /* Iresult: Iresult '-' Iresult */
#line 19480 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup("-"), (yyvsp[0].str)); }
#line 67440 "preproc.c"
break;
case 3734: /* Iresult: Iresult '*' Iresult */
#line 19481 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup("*"), (yyvsp[0].str)); }
#line 67446 "preproc.c"
break;
case 3735: /* Iresult: Iresult '/' Iresult */
#line 19482 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup("/"), (yyvsp[0].str)); }
#line 67452 "preproc.c"
break;
case 3736: /* Iresult: Iresult '%' Iresult */
#line 19483 "preproc.y"
{ (yyval.str) = cat_str(3, (yyvsp[-2].str), mm_strdup("%"), (yyvsp[0].str)); }
#line 67458 "preproc.c"
break;
case 3737: /* Iresult: ecpg_sconst */
#line 19484 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67464 "preproc.c"
break;
case 3738: /* Iresult: ColId */
#line 19485 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67470 "preproc.c"
break;
case 3739: /* Iresult: ColId '(' var_type ')' */
#line 19486 "preproc.y"
{ if (pg_strcasecmp((yyvsp[-3].str), "sizeof") != 0)
mmerror(PARSE_ERROR, ET_ERROR, "operator not allowed in variable definition");
else
(yyval.str) = cat_str(4, (yyvsp[-3].str), mm_strdup("("), (yyvsp[-1].type).type_str, mm_strdup(")"));
}
#line 67480 "preproc.c"
break;
case 3740: /* execute_rest: %empty */
#line 19493 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67486 "preproc.c"
break;
case 3741: /* execute_rest: ecpg_using opt_ecpg_into */
#line 19494 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67492 "preproc.c"
break;
case 3742: /* execute_rest: ecpg_into ecpg_using */
#line 19495 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67498 "preproc.c"
break;
case 3743: /* execute_rest: ecpg_into */
#line 19496 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67504 "preproc.c"
break;
case 3744: /* ecpg_into: INTO into_list */
#line 19499 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67510 "preproc.c"
break;
case 3745: /* ecpg_into: into_descriptor */
#line 19500 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67516 "preproc.c"
break;
case 3746: /* opt_ecpg_into: %empty */
#line 19503 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67522 "preproc.c"
break;
case 3747: /* opt_ecpg_into: ecpg_into */
#line 19504 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67528 "preproc.c"
break;
case 3748: /* ecpg_fetch_into: ecpg_into */
#line 19507 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67534 "preproc.c"
break;
case 3749: /* ecpg_fetch_into: using_descriptor */
#line 19509 "preproc.y"
{
struct variable *var;
var = argsinsert->variable;
remove_variable_from_list(&argsinsert, var);
add_variable_to_head(&argsresult, var, &no_indicator);
(yyval.str) = (yyvsp[0].str);
}
#line 67547 "preproc.c"
break;
case 3750: /* opt_ecpg_fetch_into: %empty */
#line 19519 "preproc.y"
{ (yyval.str) = EMPTY; }
#line 67553 "preproc.c"
break;
case 3751: /* opt_ecpg_fetch_into: ecpg_fetch_into */
#line 19520 "preproc.y"
{ (yyval.str) = (yyvsp[0].str); }
#line 67559 "preproc.c"
break;
#line 67563 "preproc.c"
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
that yytoken be updated with the new translation. We take the
approach of translating immediately before every use of yytoken.
One alternative is translating here after every semantic action,
but that translation would be missed if the semantic action invokes
YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
incorrect destructor might then be invoked immediately. In the
case of YYERROR or YYBACKUP, subsequent parser actions might lead
to an incorrect destructor call or verbose syntax error message
before the lookahead is translated. */
YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc);
YYPOPSTACK (yylen);
yylen = 0;
*++yyvsp = yyval;
*++yylsp = yyloc;
/* Now 'shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
number reduced by. */
{
const int yylhs = yyr1[yyn] - YYNTOKENS;
const int yyi = yypgoto[yylhs] + *yyssp;
yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
? yytable[yyi]
: yydefgoto[yylhs]);
}
goto yynewstate;
/*--------------------------------------.
| yyerrlab -- here on detecting error. |
`--------------------------------------*/
yyerrlab:
/* Make sure we have latest lookahead translation. See comments at
user semantic actions for why this is necessary. */
yytoken = yychar == YYEMPTY ? YYSYMBOL_YYEMPTY : YYTRANSLATE (yychar);
/* If not already recovering from an error, report this error. */
if (!yyerrstatus)
{
++yynerrs;
yyerror (YY_("syntax error"));
}
yyerror_range[1] = yylloc;
if (yyerrstatus == 3)
{
/* If just tried and failed to reuse lookahead token after an
error, discard it. */
if (yychar <= YYEOF)
{
/* Return failure if at end of input. */
if (yychar == YYEOF)
YYABORT;
}
else
{
yydestruct ("Error: discarding",
yytoken, &yylval, &yylloc);
yychar = YYEMPTY;
}
}
/* Else will try to reuse lookahead token after shifting the error
token. */
goto yyerrlab1;
/*---------------------------------------------------.
| yyerrorlab -- error raised explicitly by YYERROR. |
`---------------------------------------------------*/
yyerrorlab:
/* Pacify compilers when the user code never invokes YYERROR and the
label yyerrorlab therefore never appears in user code. */
if (0)
YYERROR;
/* Do not reclaim the symbols of the rule whose action triggered
this YYERROR. */
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
yystate = *yyssp;
goto yyerrlab1;
/*-------------------------------------------------------------.
| yyerrlab1 -- common code for both syntax error and YYERROR. |
`-------------------------------------------------------------*/
yyerrlab1:
yyerrstatus = 3; /* Each real token shifted decrements this. */
/* Pop stack until we find a state that shifts the error token. */
for (;;)
{
yyn = yypact[yystate];
if (!yypact_value_is_default (yyn))
{
yyn += YYSYMBOL_YYerror;
if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYSYMBOL_YYerror)
{
yyn = yytable[yyn];
if (0 < yyn)
break;
}
}
/* Pop the current state because it cannot handle the error token. */
if (yyssp == yyss)
YYABORT;
yyerror_range[1] = *yylsp;
yydestruct ("Error: popping",
YY_ACCESSING_SYMBOL (yystate), yyvsp, yylsp);
YYPOPSTACK (1);
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
*++yyvsp = yylval;
YY_IGNORE_MAYBE_UNINITIALIZED_END
yyerror_range[2] = yylloc;
++yylsp;
YYLLOC_DEFAULT (*yylsp, yyerror_range, 2);
/* Shift the error token. */
YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp);
yystate = yyn;
goto yynewstate;
/*-------------------------------------.
| yyacceptlab -- YYACCEPT comes here. |
`-------------------------------------*/
yyacceptlab:
yyresult = 0;
goto yyreturn;
/*-----------------------------------.
| yyabortlab -- YYABORT comes here. |
`-----------------------------------*/
yyabortlab:
yyresult = 1;
goto yyreturn;
#if !defined yyoverflow
/*-------------------------------------------------.
| yyexhaustedlab -- memory exhaustion comes here. |
`-------------------------------------------------*/
yyexhaustedlab:
yyerror (YY_("memory exhausted"));
yyresult = 2;
goto yyreturn;
#endif
/*-------------------------------------------------------.
| yyreturn -- parsing is finished, clean up and return. |
`-------------------------------------------------------*/
yyreturn:
if (yychar != YYEMPTY)
{
/* Make sure we have latest lookahead translation. See comments at
user semantic actions for why this is necessary. */
yytoken = YYTRANSLATE (yychar);
yydestruct ("Cleanup: discarding lookahead",
yytoken, &yylval, &yylloc);
}
/* Do not reclaim the symbols of the rule whose action triggered
this YYABORT or YYACCEPT. */
YYPOPSTACK (yylen);
YY_STACK_PRINT (yyss, yyssp);
while (yyssp != yyss)
{
yydestruct ("Cleanup: popping",
YY_ACCESSING_SYMBOL (+*yyssp), yyvsp, yylsp);
YYPOPSTACK (1);
}
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
return yyresult;
}
#line 19523 "preproc.y"
void base_yyerror(const char *error)
{
/* translator: %s is typically the translation of "syntax error" */
mmerror(PARSE_ERROR, ET_ERROR, "%s at or near \"%s\"",
_(error), token_start ? token_start : base_yytext);
}
void parser_init(void)
{
/* This function is empty. It only exists for compatibility with the backend parser right now. */
}